For some time I had shopped around for such a board to start learning to use VHDL and FPGA chips. In a newsgroup, someone suggested the B3 board from BurchEd in Australia. This has a Xilinx XC2S200 device. It was 5.25 x 5.25" and had two prototyping areas. I supposed the size was chosen to fit in standard disk-drive bays.
I then asked BurchEd about practical considerations. I've come across various board form factors in my time and found various irritating problems with all. Some features were confirmed, but the board was sold out and in the stage of being replaced by the next generation product. By sheer good luck I had the chance to stick my oar in and make totally unrequited suggestions as to what I thought it should be like.
By even better luck, these ideas were taken on board and incorporated in the new design.
All connectors use 0.1" pitch connectors
All connectors on 0.1" grid
Mates with standard Eurocard prototyping board
Good Power and Ground connection
Standard single-Eurocard width (100mm)
Suitable for rack mounting
Mechanical fixing holes on 0.1" grid
Simple mechanical geometry
Careful mechanical design
Careful thermal design
Scope lead ground tags
Clear labelling
Header-programmable Oscillator
Reasonable cost: Introductory Price: US$149.00 (about £102 UK£)
This is by far the most convenient pitch for most users. At the time of writing, ribbon cable, IDC sockets and hearers are most widely available in this pitch. All prototyping boards I have seen are drilled in this pitch, since components with pins on any other pitch seem to be surface mount. There may be metric-pitch drilled prototyping boards somewhere, but I'll bet they are pretty expensive.
I/O connections are in groups of 20 pins, convenient for ribbon-cable mounted sockets.
This allows a board to mate with sockets mounted in common prototyping board holes. This is very useful because it allows the prototyping to be done on boards that are cheaper. Protoboards are generally made with two copper layers making them much cheaper than four-layer construction used in more complex boards such as the B5.
It is also more economical to keep your own prototyping areas detachable from the B5 board, because you can re-use the B5 for new projects simply by unplugging it instead of unsoldering prototyping components.
In particular, the square-pad protoboards produced by Vero and readily available. These can provide prototyping areas larger than the B5 board itself, for about a tenth of the cost.
In the UK, the RS components stock number for the Vero 100x160 mm square-pad protoboard is RS 434-605. Along the 100 mm axis, there are 34 holes symmetrically placed with respect to the longitudinal centre line. The inner 32 holes are aligned with the DIN41612 connector holes.
The B5 board uses four copper layers, the middle two for power and ground planes. This provides good power distribution and grounding, both of which are essential in modern digital components. Xilinx chips have evolved with this in mind: if you look at the XC3042, you'll find that it cannot always be replaced by the near-equivalent XC4025. The XC4025 belongs to a later generation, which were given more power and ground pins at the expense of I/O pins. They wouldn't have done that if they did not need to, so one can assume that they really did.
Of course it makes sense to have a standard width so that it
can be mounted in standard enclosures. For example in Eurocard
racks, boxes, or the excellent yet reasonably-priced aluminium
extrusions boxes
The latter items are of the high quality one has come to expect
of German engineering, being robust and having a very
professional heavy-duty look when assembled. Good for conducting
heat away too.
Components on the longer edges have been placed at about 1.5 mm away from the edge, to allow the board to be mounted in Eurocard-width racks and enclosures. I have seen products that have Eurocard sizing but they have placed components in such a way that it would never slide into Eurocard slots. One board I have seen even put D-type connectors on the edges that were supposed to slide, thereby ensuring they could not.
This allows the pre-drilled holes one prototyping boards to accurately provide a pilot hole for the larger holes that you will need to drill for the 3 mm. This may not sound like much, unless you've tried drilling the holes for mounting a PC104 board on a prototyping board. In which case you'll know how the existing holes try to pull your drill away from the place you intend it to be.
A typical Eurocard has a DIN41612 connector at one end, so the protoboards have their 0.1" grid fixed with respect to that. The imperial and metric grids have a common origin on the longitudinal centre line. The B5 board places its common origin right in its centre, underneath the FPGA chip.
Symmetry is a
key feature. This makes it simpler to describe mechanically.
The board is a 100 mm x 5.25" rectangle.
The fixing holes are at the corners of a 4.9" x 3.5"
rectangle.
The FPGA signal connectors sit on the edges of 2.9" and
2.7" squares.
The squares and rectangles mentioned above have a common centre.
Having fewer critical dimensions means fewer details to make mistakes about.
There is a degree of rotational symmetry as well - the FPGA connectors are aligned in a square, allowing four possible ways to plug into another board. The B5 board is design so that each orientation simply rotates the connections but the power and ground connections stay the same (instead of changing in probably damaging ways).
You can download a pdf of the mechanical details, print it at full scale, cut it out and see how neatly the B5 connections and mounting holes align with a standard grid. You can also stick it to some thin cardboard and experiment with how you would like to fit it in your target system. The pdf file does not include the silk-screen legend but this and other useful details may be forthcoming from BurchEd as time
The board has connectors on all sides, so it can connect to others and often not need further mechanical support such as pillars. The mounting holes accept the common M3 size bolts and tapped pillars.
Compare that with the PC104 form factor, which has the signal bus on one side only and so PC104 boards sag to one side without support pillars.
The B5 board length is slightly shorter than a standard 160 mm
long Eurocard.
This is deliberately done so that the B5 board sits only over the
prototyping area and not the area used by DIN41612 connectors.
Thus the mounting holes and pillars do not conflict with DIN41612
connectors. However, you should not that if your board will not
be able to accommodate a large connector such as a 50-way Berg
header with ejector tabs on the front-panel side of a 160 mm
Eurocard as well, because the mechanical mounting holes would
conflict with the B5. You would have to use the tabless form or
omit the front pillars for the B5.
If you do design your board to plug to the B5 with component-sides facing, remember that:
I'm told that the FPGA does not get noticeably warm, even when clocked around 60 MHz and most of the latches changing. This is worth checking because when mated with another board, the components will be on facing sides of the board sandwich. There will be restricted airflow inside the square formed by the FPGA signal headers, so make sure you don't put anything in that area if it is likely to need significant airflow.
Once you've cobbled your design together and it needs debugging, you'll probably need to apply scope probes. Every wished they'd design things with ground tags for probe ground croc-clips? On the B5, that wish is granted!
As you can see from the picture, everything is well labelled on the board.
This is very convenient as it allows you to have many clock frequencies from the 20 MHz quartz crystal. No more rummaging around in your junk box for crystals you haven't got! There's an on-line calculator to work out the appropriate header links at: www.icst.com/products/ics525inputForm.html.
I avoid getting things unless they are exactly what I want or they are not good enough value. In the first case I can't argue because all the features I said it should have are there. As for price a rule of thumb is that the cost of products is typically split 3 ways roughly equally between parts, labour and sales. So out of the price of about £102, you'd have to pay at least £34 for parts and £68 for your own labour to make it yourself. It's just not worth quibbling about. And as you can re-cycle the board by detaching it from the prototyping board, it becomes even better value.
Yes, I did buy one! The delivery lady charged me £35.29 for UK customs. This was comprised of £2.74 Import Duty, £21.30 VAT, and £11.25 ParcelForce Clearance Fee. If you do decide to buy one, be prepared for these surcharges. You may be able to avoid them if you are exempt from VAT.
The outermost numbers are the pin numbers of the FPGA chip. You will need to know these when assigning pins in your FPGA design.
J12: JTAG
Port Everyone has their own JTAG connector and pinout, and this is no exception. In its favour are the fact that 10-way ribbon cable and headers are readily available. |
|
||||||||||||||||||||||||||||||
J7: Serial Download
Port The pinout is conveniently arranged so that it can connect via IDC sockets and D-type connectors. A small detail that avoids having to hand solder inconvenient signal orderings to solder-bucket D-type connectors. |
|
||||||||||||||||||||||||||||||
J13: Alternative Power
Connector This provides access to the power rails. The +5V connection allows the B5 to power boards to which it connects (if the B5 is itself powered from the co-axial inlet J1. Alternatively the B5 can take power in from a mated board. The 3V3 and 2V5 pins are always power outlets, allowing a mated board to use or sense these power rails, if that is an advantage for a particular application. Boards are shipped with a headers across pins 5 and 6, so that users won't accidentally plug the configuration cable into this header. |
|
||||||||||||||||||||||||||||||
Mode Configuration This
sets how the device is configured. |
|
||||||||||||||||||||||||||||||
JP6, JP8: Clock
Frequency Selection This is set to 48MHz by default. |
|||||||||||||||||||||||||||||||
JP12: Clock Selection This is not linked by default. |
I/O Connectors
PWR is either 3V3 or 2V5, as per the link corresponding to
each I/O connector.
I'm told these are compatible with HP logic analysers too, which
could be convenient.
J5
|
J8
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
J10
|
J11
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
J9
|
J6
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
J4
|
J3
|
Example connections to 128K x 16-bit Static RAM
These are the connections used by the BurchEd RAM boards. These have two 150ns 3V3 CMOS RAM chips providing a quarter megabyte of RAM in total.
Address bus
|
Data Bus
|
Pillar Bases
The metal lands around the mounting holes are all directly
connected to 0V on the board.
These will contact guide rails if rack-mounted. This is no
problem in plastic casings.
However, in metal casings it will mean that the case is
electrically connected to you local power supply GND. Even if
they are nominally the same voltage (e.g. 0V) it is generally
avoided so that if a PSU fails by going 'live' there is not a low
resistance to the case and thence to people.
Good practice is to connect cases and local GND through a parallel RC network. A small cap to short RF, and a large R to drain static charge imbalances. This may not be a problem in non-extreme environments: I've noticed my PC has the case connected to the power supply GND. However, in hostile environments or where several devices are connected via communication buses, you do not want their local GND and VCC rails connected. This can give rise to grounds loops, which are highly undesirable.
If you do need to isolate the B5 from a slide-in metal case, you may want to file away the offending contact areas. But for almost all R&D work this won't be needed.