I2C SPI USB CAN eSPI Cable Testing View All Videos Quick Start Guides Software Downloads App Notes White Papers User Manuals Knowledge Base Sales Support About Us
Products Blog Sales Support Contact Search
Support Question of the Week: Is the Aardvark I2C/SPI Host Adapter or the Cheetah SPI Host Adapter Better for High Speed Sequential SPI Accesses?
Rena

We are trying to do consecutive SPI accesses as quickly as possible and minimize the time between SS going from inactive to active again. We’re looking at the specifications of both the Aardvark I2C/SPI Host Adapter and the Cheetah SPI Host Adapter, but we could use more details and would appreciate your help on our questions below:

  • Are the host adapters programmable – can we set them up to send multiple sequential SPI accesses from a single call?
  • What is the minimum time between SPI accesses?

Thanks for your questions! For your application, if you are using the SPI host adapter as an SPI master, we recommend using the Cheetah adapter.

Although both host adapters are programmable, the Cheetah adapter can operate at much higher speeds as an SPI master and can communicate with up to three SPI slaves. The minimum time between access is 250us compared to 2ms for the Aardvark adapter. The Aardvark adapter is more of a general-purpose host adapter that can operate as either an SPI Master or an SPI Slave (in addition to supporting I2C as well). Software APIs are available for both adapters, which allow you to create custom programs to meet your specifications. The following summaries describe the key features of the adapters.

Cheetah SPI Host Adapter Figure 1: Cheetah SPI Host Adapter
Cheetah SPI Host Adapter:

When using the adapter as an SPI master and higher speed is needed, we recommend using the Cheetah SPI master adapter. The key features of the Cheetah adapter are listed below.

  • The Cheetah adapter operates up to 50 MHz, can provide gapless shifting, and provides control over the timing of the data that is shifted out.
  • The Cheetah adapter can send multiple transactions of 8-bit data without delay.
  • This adapter use a high-speed USB link between the adapter and the computer - the USB latency is about 250us.
  • An asynchronous interface is provided, which can increase the operational speed for your application.
  • Cheetah API Software is available, which includes examples that can be customized for your system specification.

For additional information about Cheetah SPI signaling characteristics, please refer to section 2.5 of the Cheetah SPI Host Adapter User Manual. For information about the Cheetah API software, please refer to section 5 of the user manual.

The Aardvark Host Adapter GPIO Feature Can Be Used to Send Interrupt Signals Figure 1: Aardvark I2C/SPI Host Adapter
Aardvark I2C/SPI Host Adapter:

The key features of the Aardvark adapter are listed below.

  • The Aardvark adapter can operate at bitrates up to 8 MHz as an SPI master and 4 MHz as an SPI slave.
  • The Aardvark adapter can transfer up to 8-bit data without td delay. There are timing limitations, which is why we recommend the Cheetah adapter specifically for your application:

    • When the Aardvark adapter transfers 16-bit data, there is a delay. The maximum bitrates occur within each individual byte – the bitrates do not extend across bytes.
    • There are various overheads and delays that decrease the overall speed of data transfer, such as SS# assertion to the first clock, setup time for each byte, the last clock to SS# deassertion and the time between the start of the bytes.
    • The GUI and the OS may add additional delay due to internal overhead. In addition, the Aardvark adapter also has a 2ms round-trip latency, which is caused by the full-speed USB link between the computer and the Aardvark adapter. These delays further reduce the throughput across multiple transactions.
  • To achieve the fastest throughput, you can use the Aardvark API Software to send many bytes as possible in a single transaction.

For additional information about the Aardvark SPI signaling characteristics, please refer to section 2.4 of the Aardvark I2C/SPI Host Adapter User Manual. For information about the Aardvark API Software, please refer to section 5 of the user manual.

For more information, please refer to the following sources:

We hope this answers your questions. If you have other questions about our host adapters or other Total Phase products, feel free to email us at sales@totalphase.com or submit a request for technical support.