0

I want to conect my Pi and Parallella such that the Pi does the GPU side and the Parallella stack this is to be controled by a third Parallella

I think the best way to do this is through an FPGA. Is this possible and a good way to do it?

Also what structure should I use and how should I start to implement it?

I know little VHDL and Verilog and do not want to use paid software.

I am eager to learn and have a lot of time to do it though so no "simple but bad solutions".

I will up load the project on Git when done

user3666197
  • 1
  • 6
  • 50
  • 92

1 Answers1

2

The solution depends on the bandwidth and latency requirements. You are right that FPGA provides the largest bandwidth and lowest latency. However, do you really need such good performance? Maybe USB or Ethernet connections are good enough.

For the FPGA solution, consider the secondary pi and parallella as two peripherals for the primary pi, and assign different address spaces for them. The communications among three devices are based on polling initiated by the primary pi. FPGA should pass the signaling on data/address bus to the two peripherals with compatible I/O timing. Peripherals consider the FPGA as a RAM, and should listen to any data/controls with their best effort. FPGA should buffer the data/control signals if peripherals cannot respond in real-time.

Overall, it's a very tough work. I'd like to see the source code if the FPGA solution works.

Daniel
  • 619
  • 5
  • 14
  • thanks im going for the FPGA solution as there are already usb and ethernet solutions out there also would verilog or VHDL be better for this? – Light Armanov Jun 24 '15 at 13:40
  • I don't think there's any difference between verilog and VHDL. – Daniel Jun 24 '15 at 14:37
  • 2
    As an academic exercise, I find the idea of using an FPGA as a switch for a RPI fascinating. Practically, on the other hand, you are limited to the IO available to you, which is SPI up to ~25mbps. Ethernet will take far less time and risk to develop, can easily saturate the 100mbps port on the RP, with 220mbps possible via USB adapters. – Mitch Jun 30 '15 at 17:35
  • that has already been done so there would be little point developing it other than self improvement which can also be done by doing this – Light Armanov Jul 22 '15 at 14:31