SPI FIFO can configure serial clock signal
Digital Core Design, the Poland-based IP core design house, has developed the DSPI_FIFO, a fully configurable SPI master/slave device, which allows the SoC designer to configure polarity and phase of a serial clock signal SCK.
The core enables microcontroller to communicate with serial peripheral devices, but also to communicate with an interprocessor in a multi-master system.
It supports all the features of SPI and transmission/reception FIFOs, to significantly reduce the CPU time.
The system can be configured as a master or as a slave device, with data rates as high as CLK/4. The clock control logic allows to select clock polarity and choose two fundamentally different clocking protocols, to accommodate most available, synchronous serial peripheral devices.
When the SPI is configured as a master, the software selects one of eight different bit rates for the serial clock.
“A serial clock line (SCK) synchronizes shifting and sampling of the information on two independent serial data lines,” said Jacek Hanke, CEO, Digital Core Design, “so the data is simultaneously transmitted and received.”
The DSPI_FIFO automatically drives selected by the SSCR (Slave Select Control Register) slave outputs (SS7O – SS0O) and addresses the SPI slave device to exchange serially shifted data. Error-detection logic is included to support interprocessor communication.
A write collision detector indicates, when an attempt is made to write data to the serial shift register, while a transfer is in progress.
A multiple-master mode-fault detector automatically disables DSPI output drivers, if more than one SPI device simultaneously attempts to become a bus master.
The DSPI_FIFO supports two DMA modes: single transfer and multi-transfer. These modes allow the DSPI_FIFO to interface to higher performance DMA units, which can interleave their transfers between CPU cycles or execute multiple byte transfers.