The proposed board. Mechanical drawing. Board size is 190 (width) x 160 height. Total height is about 32 mm (counting board width, chip width, and heatsink height of 28 mm).
1. Thanks to guys who showed me http://www.raspberrypi.org/
That controller has nice GPIO outputs, that could drive FPGA legs. And that controller can drive multiple boards at once.
So no microcontroller per-board required.
Just some GPIO pins would be used for SATA.
It costs only $25 per item.... Which is nice, so when connected to multiple boards, cost of controller would be little.
2. Thanks to DiabloD3 for SATA cables idea, so when decided over JTAG vs non-JTAG I decided to put them all!
SATA1 is input SATA2 is output to next board of following signals:
PIN1 - SCK
PIN2 - MOSI
PIN3 - MISO
PIN4 - GROUND
PIN5 - RESET
PIN6 - PROGDATA
PIN7 - PROGSCK
SPI interface to talk with bitstream and another SPI to program bitstream plus generic RESET.
And another SATA interface, again SATA3 input, SATA4 output:
PIN1 - TMS
PIN2 - TCK
PIN3 - TDI
PIN4 - GROUND
PIN5 - UNUSED
PIN6 - RST
PIN7 - TDO
On board design will contain buffers and resistors connected in a way, that connecting these cables in wrong direction won't cause problems.
3. PSU is TPS40090 based 100 Amp power supply, but used at lower amps to get performance better, in overclocked
condition performance at about 90% expected, in normal conditions about 92-94%. Amps delivered are quire high.
Also PSU input would be in 10 - 15 V range, so it can be connected to automotive power supplies / lead acid backup /
wind energy storage batteries directly if someone would like to do it.
4. Connectivity of 12 V is via MOLEX socket (4-pin) and also can be connected via bolt connection to copper bus / bar,
which could be used to mount boards as well. (This 12 V connection is specifically for Greg). However in our chassis
we may put separate cables with molex connectors and add fuses on them. If will be requested - we may add fuse on
board by adding special PCB layout, that will burn if there will go about 20-30 amps current suddenly.
5. Board has connectors on TOP to not distract airflow, and also they would sit tightly there, when pressed by chassis top.
6. There will be 3 jumpers around PSU that would select voltage level - 1.15 V to 1.5 V in 0.05 V steps. We will set it up @ 1.3 V which is safe by datasheet. That way performance could be improved up to 280-290 Mhz clock depending on chip when voltage rised to 1.5 V. TSP40090 actually useful for that.
7. Every board would have 6 jumpers to select board identifier, that can be later used by software.
8. Communicating with board will be done using 32-bit SPI. Basically you first supply 32-bit command and then either read or write 32-bit word of data. 32-bit command would contain address (6-bit board number 3-bit chip number), command type (read or write 1-bit) and register number (5-bit) totalling 15 bits AND some framesync/error check information for quick bus resetting etc.
This communication can be made practically with every GPIO software, and even with LPT-port via resistors, at any clock rates, which will not produce significant error rates. So board will be as cheap as possible then. WITHOUT any RS-485 or USB interfaces. And without any FLASH chips on it.
In next message I'll write about temperature simulations... For maximum overclocked mode - 18W per chip on 1.5 V / 18W on power supply dissipation and 1 m/s airflow...
Then I'll go drawing draft for 4-U device.