We are facing an issue in the SPI interface (read instruction) of the AD9523-1 clock generation chip. The SPI clock being generated by the controller is at 20KHz.
During a read operation, the data bit from the slave (i.e., AD9523-1) is supposed to last for one clock duration. However, the last bit lasts for only half a clock cycle (and makes a transition at the rising edge of the last clock). This leads to the last bit being read as 0 instead of a 1.
The waveform as per the datasheet is as follows:
However, what we are getting is as follows:(the yellow trace is SCLK and the cyan trace is the serial data being returned by the slave).
The '1' in the green box is of the correct duration (i.e., one clock long), but the '1' in the red box is only half a clock long.
Please advise on how this can be fixed.
Thank you for your help,