Field-Programmable Analog Arrays: A Floating-Gate Approach