Hi,
I try to speed up the communication frequency for the SPI communication between the DSP and one of the slave.
I notice that when I set the baudrate as 30 MHz, the SSI station gets the wrong value
Here is how i test:
- Set baudrate 20 MHz, DSP sends a read command to a slave. Slave sends back a value 170 = 0b_1010_1010. SSI station decodes and gets a value 170 and it's right.
- Set baudrate 30 MHz, DSP sends a read command to a slave. Slave sends back the same value. SSI Station decodes and gets a value 85 = 0b_0101_0101 which is wrong.
After that I check the real signal to see which part goes wrong.
note that:
- We are using comm. mode 3, means sample at positive edge and shifting bit at negative edge.
- ch1: clock; ch2: CS; ch3: MOSI; ch4: MISO
From the signal, we notice there is a shift-bit delay about 13 ns between clock negedge and MISO,
However, even with this delay, the SSI station should still get the value 170 if it follows the rule of comm. mode 3 as illustrated in attached graph
Is there any setting may cause this problem?
Thank you.