Unexpected Data in FPGA SPI Implementation

Updated Aug 9, 2019

Reported In

Hardware

  • PXI Multifunction Reconfigurable I/O Module

Issue Details

I'm running a SPI implementation on my FPGA PXI card, and the data I'm sending from my slave device doesn't match the data I'm receiving on my card. For example, when I send a hexadecimal 5A, I receive a 2D.

Solution

The data may be bit-shifting, or in this case, losing one digit of the data. This could be due to the length of the cable being used. A longer cable will introduce delays that, at high speeds, could cause data loss. If you get unexpected data at lower speeds, consider swapping your cable for a shorter cable.