Hello
I am currently using the Piccolo 28069 McBSP module as SPI to retrieve data from external ADC.
My DSP is fed with external 20.48MHz clock oscillator, and is working at 56.32MHz with internal PLL.
The operation on McBSP is simple SPI read of single 16bits word, triggered periodically (~400kHz) using PWM + DMA.
DMA capability is the reason why I did not use SPI module but McBSP instead.
I am challenged on the capacity of this system, especially the maximum acquisition speed for which SPI frequency is important contributor (the other being conversion time from ADC)
I found the following information on reference document SPRS698G (page 116):
- [...] McBSP clock speeds are not greater than the I/O buffer speed limit (20MHz)
- Maximum McBSP module clock frequency decreases to 10MHz for internal CLKR
If I understand correctly, the McBSP in SPI mode (using clock stop mode and CLKR/CLKX generated internally) should thus fall into the 10MHz restriction.
I performed some tests however up to 18.7MHz (LSPCLK is 56.32MHz and clock divisor for McBSP is 3) and the system seems to work fine.
I used sinus waveform to feed the ADC, and I am observing the SPI clock at 18.7MHz, with sinus waveform being acquired as expected.
This comes as a bit of a (good) surprise and I would like to better understand the limitation stated in the spreadsheet. In particular I only performed the test in room temperature and did not yet tested the board at max temperature.
Is there something I missed ? What is the nature of this limitation ?
Is the limitation not perceptible due to the short duration of the communication (one single word of 16 bits) ?
Thank you in advance for your help & best regards
Sebastien