This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ADS1274: Maximum speed with SPI communication

Part Number: ADS1274

Dear all,

I am designing a data acquisition system based on the ADS1274 which is a 24 bits, 4 channels, up to 144 kS/s ADC.

My requirements are the follwing:

- I need the 4 channels

- The sampling frequency will be 128 KHz (128 kS/s)

After reading the datasheet, I have the choice between 2 communication interfaces: SPI or Frame-Sync Interface

Due to the speed requirement, I do need to use the "high-speed mode". It would be good to use the SPI because my microcontroller (FX3 from Cypress) is ready to use SPI directly up to 33 MHz. SPI with ADS1274 can run up to 27 MHz according to the datasheet. So I made calculation:

4 channels * 24 bits * 128000 samples / s = 12'288'000 bits/s which is okay according to the 27 MHz (if I transfert 1 bit / cycle).

But... I saw 2 weird things in the datasheet http://www.ti.com/lit/ds/symlink/ads1274.pdf :

- page 8/51: tconv (the time to aquire 24 bits of the 4 channels) is 256 clock cycles minimum with SPI. I do not understand, why is it not 96 clock cycles ? 4 channels * 24 bits = 96.

- page 30/51: SPI can run up to 27 MHz which is okay but... page 3/51: 27 MHz can transfert up to 105'461 S/s and I need 32.768 MHz to get 128 kS/s...

According to these facts, it means that during a "transfert" of 256 clock cycles, the SPI can tranfert only during 96 clock cycles and the interface is idle during 160 clock cycles? If I make a new calculation:

256/96 (ratio of total clock cycles and "transfert clock cycles") * 4 channels * 24 bits * 128'000 samples / s = 32.768 MHz which matchs perfectly with the information in the datasheet.

Finally, my questions are the following:

- Do I need to use the Sync-frame interface in my case ?

- Why are there 160 'idle' clock cycles during a tranfert of 256 clock cycles?

Sorry for the long post,

Best,

Christian

  • Hi Christian,

    Thanks for your post and detailed questions.

    The minimum requirement for the number of CLK cycles in each conversion period (1/fDATA) comes from the relationship between the master clock (CLK), the modulator frequency (fMOD), and the digital filter's oversampling ratio (OSR). fMOD is the frequency at which the modulator in the ADS1274/78 actually samples the input voltage. These samples are averaged in the digital filter to produce the final output word. The ratio of fCLK / fMOD and the OSR vary depending on the MODE[1:0] and CLKDIV selection. To help make these relationships more clear, I've summarized Table 3, 6, and 8 below. From the "fCLK / fDATA" column, you can see where the min and max CLK cycles per conversion period come from (notice that they are not dependent on the number of device channels or resolution).

    MODE[1:0]

    Mode Selection

    Max fCLK

    (MHz)

    CLKDIV

    fCLK/fDATA

    fMOD

    Max fMOD (MHz)

    OSR

    Max fDATA

    (SPS)

    00

    High-Speed

    37

    1

    256

    fCLK/4

    9.25

    64

    144,531

    01

    High-Resolution

    27

    1

    512

    fCLK/4

    6.75

    128

    52,734

    10

    Low-Power

     

    27

    13.5

    1

    0

    512

    256

    fCLK/8

    fCLK/4

    3.375

    64

    64

    52,734

    11

    Low-Speed

    27

    5.4

    1

    0

    2,560

    512

    fCLK/40

    fCLK/8

    0.675

    64

    64

    10,547

    To achieve 128kSPS, you will need a minimum CLK input frequency of 128,000 x 256 = 32.768MHz. I'm not sure why the limit for SPI is only 27MHz, but it looks like you will need to use Frame-Sync Mode.
    Please let us know if you have additional questions about using the Frame-Sync interface.
    Best Regards,
  • Dear Ryan,

    Thank you very much for your response!

    It is clear now! I will try to implement the Frame-Sync interface on my FX3 microcontroller and if I have any issue, I will ask you.

    Best,

    Christian