Tuesday, January 01, 2008

Xilinx Spartan 3 FPGA eval board

I was thinking I wanted to do something with the ARM91SAM7 eval board and a Xilinx FPGA, and I discovered that Xilinx also sells a eval board for their Spartan-3 FPGAs for $150. Here's the user guide (PDF). Big surprise, it's available at Digikey.

The Spartan-3 series has hardware multipliers, blocks of RAM, and "distributed RAM bits" which you can spread around your design as needed. Pretty sweet. As I mentioned in an earlier posting, there are readily available HDL tools for FPGA design on a Linux platform. Hardware design shouldn't necessitate the indignities of Windows.

Here is a ridiculously affordable SAM7 board that I need to investigate. It lacks RS-232 level converters, and you need to kludge the JTAG stuff (probably drive it with a parallel port somehow or other). Also interesting are these two open-source simulators for the ARM7 architecture.

The idea would be to use the SAM7 eval board to program the FPGA on the Spartan-3 eval board. FPGA programs are pretty large, so maybe this should be done by feeding the bits through the USB cable. Then you have some GPIO bits on the SAM7 connect to IO pins on the FPGA, and other IO pins on the FPGA to the outside world.

Some years ago, there was a guy who got his hands on some prototyping hardware of this sort (PowerPC based, I think I recall) and he set up a paid-subscription website where subscribers could submit compiled code and run it on his hardware. The cost of a subscription was small compared to the price of buying one's own hardware. According to EE Times Asia, Hitachi was doing the same thing in 2002.
Hitachi Semiconductor America Inc. is trying to move remote engineering to the next level by letting customers tinker with microcontroller hardware and software tools via a Web browser.

Working with DevelopOnline, Hitachi has set up several remote development stations for its H8 microcontroller family. For a fee, engineers can access these remote engineering laboratories from a PC at any time. Hitachi launched the service with its H8/3664 microcontroller device and plans to expand the program during the next several months to include other members of the H8 line and the company's SuperH devices.
One could make two of these gadgets and connect one to an Apache box to set up a remote development website like this. The second gadget is used to tweak/observe GPIO pins, interact with serial debug, etc. There would need to be some mechanism for allocating time fairly among multiple subscribers. The website would want lots of example code (or pointers to code findable on the web) for people to get started.

No comments: