Other Parts Discussed in Thread: ADS8319
Hello
My customer is trying to interface an ADS8319 running at 10MHz clock speed to the F2808 using SPI.
Although this appears to work OK they are checking that the timing meets all min / max cases and have come across a problem that I am hoping you might be able to offer some suggestions / advice.
They tell us
The ADS8319, has SDI strapped high, so is configured for what is referred to as "/CS Mode", and has VBD set to 3.3V. From the ADS8319 data sheet, in this configuration, the ADS8319 changes data following the falling edge of the SPICLK, with a minimum Data Hold time of 5ns. (t2 of datasheet SLA600C table 7.7)
The next data bit is established some time later, this time being influenced by the device VBD being 3.3V, so 7.7 (SLA600C) is referenced, and this indicates that new data is valid after a maximum delay of 24ns from the same clock edge.
We have the TMS320 values set as follows:
- LSPCLK frequency of 50MHz, tC(LCO) = 20ns
- SPICLK frequency of 10MHz, tC(SPC)M = 100ns
- Clock Polarity =0
- Clock Phase = 0
And therefore from the TMS320 datasheet the required hold time from Table 6-34. SPI Master Mode External Timing (Clock Phase = 0) is 30ns.
0.5*10050ns – 0.5*20ns – 10ns = 30ns minimum data hold timemaximum
This means that following the falling edge we potentially loose the valid data after 5ns but are required to maintain this for up to 30ns for the TMS320 to acquire the sample.
From testing it looks like we are not seeing a problem so far as I would expect to see this present on all bit reads MSB to LSB . Hence either we get valid data or a gross error (please comment). We have seen the ADC hold time (t2 of datasheet SLA600C table 7.7) from negative clock edge to ADC data held as approximately 10ns with a successful read by the TMS 320. Hence well within the maximum but far short of the 30ns quoted.
In order to understand this in slightly more detail, we would be interested in what defines the hold valid parameter tv(SPCL-SOMI)M . Further:
- Is the value 30ns an extreme case defined as a sigma type parameter
- Is there a typical value which is in keeping with what we observe
- If the data was not held valid prior to TMS320 data read, is it right to predict a gross error (which would be detected).
- While our unit is working with 10ns, might problems arise if the ADS did only satisfy its data Hold minimum of 5ns?
Best Regards
Bob Bacon