I’m looking at three devices that interface with the SPI bus: Aardvark I2C/SPI Host Adapter, Cheetah SPI Host Adapter and the Promira Serial Platform. So far, the Promira platform looks best for our needs. Before I make a decision, I’d like some information about I/O buffers and data handling:
Thanks for your questions! Here’s a comparison of the features you asked about:
I/O Buffer Size: volume of data (bytes) in read/write operations
Here is some information about using the Promira Software API for read/write operations.
Modifying data at the bit level during read/write operations in Master and Slave configurations:In SPI mode, the Promira Serial Platform has the capability to vary the word length between 2 and 32 bit words. You can modify the data at the bit-level during read and write operations, which you can do with the Promira Software API. Here is the Promira API function for SPI write - you queue a command that writes a stream of the same word to the downstream SPI slave device:
The function:int ps_queue_spi_write_word ( PromiraQueueHandle queue, PromiraSpiIOMode io, u08 word_size, u32 out_num_words, u32 word);
The arguments:
queue: the queue handle, io: IO mode flag. The value of flas is related to the SPI device (see the table below) word_size: number of bits per word, between 2 and 32 out_num_words: number of words to send
Regarding the values of the I/O flag:
When successful, the status code is returned with PS_APP_OK. There are no error codes.
About queuing: NOTE: before using this function, enable the outputs with ps_queue_spi_oeout_num_words: for queuing, this is number of words to send
For more information, please refer to the commands read(int ps_queue_spi_read) and SPI Master write(ps_queue_spi_write_word) in the API Documentation section of the Promira Serial Platform User Manual.
Here is a table that shows the main features of the Aardvark and Cheetah adapters, and the Promira platform and SPI Active Level 1-3 applications:
NOTE: For the Promira applications, the previous levels of the application must first be installed. For example, for SPI Active - Level 3, SPI Active - Levels 1-2 must already be installed.We hope this answers your questions. Additional resources that you may find helpful include the following:
More questions? Need more details? You can also contact us and request a demo that applies to your application, as well as ask questions about the Promira Serial Platform and other Total Phase products.