an ordinary oscilloscope into a four-channel digital logic
storage scope (Figure 3). Not bad for a one IC project!
Before you can tackle something of that complexity, you
need to get your tools assembled and learn the basics.
For both projects, we'll use a Xilinx XC9572 IC. If you
prefer, you can substitute an XC95108, which has more
gates than you need, but is physically the same size and
costs only a few dollars more (a 9572 costs under $10.00).
As I mentioned earlier, you'll need some way to build a
circuit with an 84-pin PLCC to use these chips. In addition,
you need a JTAG programmer. This programmer connects
to a PC and allows you to download a program to the chip.
Once programmed, the chip retains its configuration until
you program it again.
Xilinx will sell you a cable for around $100.00;
however, you can easily build your own clone of the cable
using the schematics provided by Xilinx on the web (see
Resources). If you are using the PBX- 84 board, you can
also get the matching JTAG adapter that plugs directly
into the board.
The most important piece you'll need isn't hardware at
all — it’s software. Just as you use an assembler or
compiler to program a microprocessor, you'll use a special
piece of software to configure a PLD. There are several
ways you can tell the software what you want it to do. For
example, you can draw a schematic and let the software
build the circuit you've drawn. This seems appealing when
you first start out, since it closely mirrors the way you
design and build circuits without PLDs. However, most
experienced designers prefer to use hardware description
languages (HDLs) — like Verilog or VHDL — to create
quasi-programs that the software converts into hardware.
Keep in mind that this software doesn't create a
program per se. Although a PLD is programmable, it
doesn't execute a program. Instead, the configuration data
creates connections between logic cells (known as
macrocells) to implement your design. Macrocells are like
logic-based Tinkertoys and the program simply connects
the pieces together in different ways.
Xilinx provides free software (known as the WebPack)
that allows you to enter circuits as schematics or use an
HDL (along with several other methods). The steps you
take are known as the design flow. In general, developing
a PLD design requires several steps:
1. Develop a schematic or HDL module that performs a task.
2. Use the software to synthesize the design into simple
logic components (known as synthesis).
3. Simulate the design on the PC using the synthesis data.
This is known as functional simulation. If the design does
not behave as expected, you'll go back to Step 1 until the
circuit seems to behave.
4. Run the synthesis data through the fitter. The fitter actually
Figure 3. Next month's logic scope in action.
maps the raw design into the specific device you are using.
5. Simulate the design on the PC using the fitter data (a
post-fit simulation). This type of synthesis takes chip-