On 12/28/13 6:54 PM, Philipp Hachtmann wrote:
All registers
and supported peripherals are obviously soft. The configuration
is stored on the SD, along with the FPGA bitstream. Everything should be
reconfigurable through transactions across the Ethernet by updating files on
the SD card.
Hm.... This is where I don't like the approach: I'd prefer
having an MII or GMII interface on the FPGA. And I'd think of using a larger FPGA
instead of an external ARM SoC.
The coolest way would probably be an onboard ethernet switch, external ARM with ethernet,
a CPLD that glues the ARM's memory interface to the FPGA and FPGA configuration logic.
With such a setup you
could to just everything.
WHAT to use for the microprocessor and FPGA has been the stumbling block for the 10 or so
years of false
starts that I've had with microcontroller/FPGA projects. There never seems to be the
right way to glue the
two together. I thought a TI LM3 interface was the way to go, then TI dropped the series.
Current thought
is just connect the two boards with SPI and not try to tie the two boards together as
intimately.
I just went through my annual X86 PC SOC vs ARM microcontroller thrash when I saw the
Intel Galileo boards
at Frys for $60. It is the standard problem with them (and RPi) not enough I/O. Then I
thought maybe glue
it together with PCI-e, since there is a connector on the bottom. Then I looked at how
f'ing complicated
PCI-e is. So then, since like a fool I bought a couple of the Intel boards, I looked at
PCI-e - PCI bridges
at which point I said this is all getting WAY too complicated.
So I'm back to a couple of bus translator PCBs with the actual microcontroller and
FPGA on separate mezanine
cards so whatever the silicon is that the bus translators stay the same. At least
that's the theory.
I'm currently finishing the design of the DECtape G888 replacements to get those sent
off for fab. Again, KISS.
One channel on a mezzanine card with a MC3470 for the read channel with JFET switches to
isolate it during writes,
and a high side +12v 100mA driver.
I also think I understand what C10 and R12 on the G888 are for, and why the output
oscillates when the tape isn't moving :-)
I knew they used this fact on the clock channel for the up-to-speed circuit.