|
ABSTRACT
In
the popular cartoon series "Dilbert", the intrepid engineer
and his colleagues were always working on a project called the
"Gruntmaster 6000". Noone ever seemed to know exactly what it
was or what it did. But, of course, that didn't stop sales and
marketing from advertising or selling it! Sometimes real-life
is a bit like that too. Engineers are occasionally expected
to design hardware before a specification is complete. Enough
flexibility needs to be built into the design to accommodate
any changes in function or specification. This is where the
Field Programmable Gate Array (FPGA) comes into its own. Generic
hardware can be designed around the FPGA, and a functional design
can be implemented when the specification is complete, or when
changes are made, without modifying the PCB or other hardware.
Recently, I began experimenting with embedded systems using
Linux. I needed to replace some obsolete ISA cards, and I wanted
my new design able to be used for a variety of different interfaces
and protocols, because I didn't want to have to design a new
card for each. Designing a PCI interface card from scratch is
not a trivial exercise, especially for the hobbyist. The hardware
design and PCB, logic design for the FPGA, and driver software,
all need to be completed before you can even test it with a
line of application code! The Gruntmaster has been designed
with the hobbyist in mind, and provides a generic hardware platform,
which takes care of the difficulty of PCI interfacing, and allows
the hobbyist to concentrate on the FPGA logic design. The sample
application, describing an X.21 interface, with a driver for
Linux, can be adapted easily for different purposes. Even non-communications
applications are possible!
Some
possible uses are:
- RS232,
RS485, X.21/X.22 communications
- Protocol
conversion
- Communications
encryption
- Replacement
of obsolete ISA cards for legacy support
- PCI
prototyping
- FPGA
experimentation
|