The QSPI-XIP core implements a quad Serial Peripheral Interface (SPI) module that either controls a serial data link as a master, or reacts to a serial data link as a slave.
Users can configure the core via software control to be a master or slave device. Reading and writing the core is done on the AMBA® AHB or AXI bus interface. The core operates in various data modes from 4 to 32 bits (eight modes are supported in multiples of four data bits). The data is then serialized and transmitted, either LSB or MSB first, using the standard four-wire SPI bus interface or the extended Dual or Quad Bus modes.
The QSPI-XIP core is compatible with various industry-standard DMA controllers. Enabling DMA operation assists a DMA controller in the loading (writing) of the transmit FIFO, and the unloading (reading) of the receive FIFO.
The Execute in Place (XIP) Mode allows an AHB or AXI Master to directly read the contents of any of several industry-standard flash devices (such as Winbond, Macronix, Spansion, and Micron devices) simply by reading from the address space of the QSPI Controller.
The QSPI-XIP core can be used with up to four SPI slave devices.