Friday, June 29, 2007

FPGAs

These things are sweet. Like, really sweet. The idea is that you write a program and the FPGA implements it in hardware (it makes a digital circuit with a portion of its hundreds of thousands of gates).

The parts I like are the cost and how much they jam on the board. All the stuff on the board can be used as either inputs or outputs (depending on what they are); also there's some mode-controlling stuff on the board, but let's ignore that for now.

I'll describe one that's just shy of $100. It has 8 LEDs, 8 switches, 4 push-buttons on the board itself. Then it has an additional 60 I/O ports that can be used for whatever. Some of these (24) are split off into groups of 6 pins that you can plug something called a Pmod into. These are extensions that they've already made for you such as video I/O or audio I/O or motor control etc. Oh yeah. It also has a 4 digit seven-segment display. This lets you make the simple squarish looking digital clock type numbers. And there's a slot for a 1/8 VGA LCD screen. Sexy.

Anyhow. I keep on coming up with reasons to buy one that aren't good enough to get me to do it. Case in point: for about $200 I can make a TV card for my monitor. I mean. OK, I could play Smash on my monitor. Or I could get a $50 TV card. But the FPGA can also do other stuff. But for $200 I could buy a new TV. *sigh* I need better arguments for myself. If anyone can come up with a compelling reason for me to get an FPGA other than their shininess, that'd be awesome.

I'm pretty sure this device has made me the happiest and most victorious-feeling for the most mundane tasks. For example, I felt accomplished after following a step-by-step screencast to make the FPGA count in binary and display the 8 MSB in LED form. And now, I'm failing to use the seven-segment display to make it count with numbers. Actually, I think I've gotten it to do it, but too fast for my eyes to resolve... I'll work on that.

No comments: