Question: I am building a humanoid robot with DC motor actuated fingers. There are 16 brushed DC motors to be position controlled with help of hall effect sensors implanted at the joints of each fingers. I need a developed driver board to control these 16, 3 watt, 12 v,DC motors.
Also each motor is equipped with an incremental encoder for speed control. 

thank you

Answer: 
Given that the brushed DC motors you are using can output a maximum power of 3 watts and are rated for 12 volts maximum, the max current will be 0.25 amps or 250 milliamps. So you need to find something that can handle those specs. 

In the most straightforward approach you have two options. Either you can opt to use a dedicated driver board (e.g. like the [adafruit motor shield](http://www.adafruit.com/products/1438)) or you can use a dedicated IC that can serve the same function but at a fraction of a cost. Given that you need to control 16 brushed DC motors, the IC route would probably be the most cost-effective. 

Personally I have used the [SN754410NE Quad Half-H Driver](http://www.ti.com/lit/ds/symlink/sn754410.pdf). The interesting thing about this IC driver is you can control 2 DC motors in either direction and with supply voltages of up 36 volts and drive currents of up to 1 amp, which is suitable for your application. If you're going to control brushless DC motors, then that's a different story.
I've had good experience with pololu motor drivers. They have a decently wide selection of brushed DC motor controllers [here](https://www.pololu.com/category/10/brushed-dc-motor-controllers). And in Particular I think [this one](https://www.pololu.com/product/1110) would suffice according to your specs. Its one of their light weight controllers and it is still capable of handling up to 3A peak current per motor channel or 1A continually. That seems plenty more than you'd need as your setup only demands 0.25A per motor. A single controller would handle two motor channels so you'd need a few of those.