I have an esp32 connected to an FPGA about 2 cm on a PCB. I am trying to send a constant data stream to the FPGA at a throughput of around 1.5 MB/s.

This is too fast for UART, I've been considering SPI but I don't really know how I can implement it in the FPGA.

Are there any other fast data communication protocols over wires available to me, or even a parallel protocol ?

  • An SPI receiver-only port is little more than a shift register. Jul 5, 2023 at 9:45
  • @EdgarBonet I will give SPI a go then, sounds like the most obvious choice Jul 5, 2023 at 9:56
  • I believe there are wider SPI bus implementations. Like 2 data lines or maybe even more. Maybe that will give you more through put. But do you need full-duplex? I2C is half-duplex and uses fewer pins. But timing is more critical. There is also an audio serial bus protocol. Maybe you should look into that one.
    – st2000
    Jul 5, 2023 at 12:13
  • @st2000 thanks, I am only using a half duplex set up, I very briefly looked at I2S but it seemed a little too slow, I may well have overlooked something. I think SPI may be the one. Jul 5, 2023 at 13:26


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.