User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 350
UG585 (v1.11) September 27, 2016
Chapter 12: Quad-SPI Flash Controller
12.3.5 Rx/Tx FIFO Response to I/O Command Sequences
Example command and sequences:
Write Enable Command
Read Status Command
Read Data Sequence
In these examples, YY can have any value. Each YY pair could have a different value.
To receive data in serial legacy mode, the value is sampled from MISO/DQ1 line into RxFIFO
synchronous to clock, while the command and address transactions occur on MOSI/DQ0.
Example: Write Enable Command (code 0x06)
1. Send the Write Enable Command (WREN). Write 0xYYYY_YY06 to the qspi.TXD1 register.
a. WREN command = 0x06.
b. YY = 0.
c. The controller shifts one byte out of the TxFIFO to the device and receives one byte in the
RxFIFO.
2. Read Status. Reads the qspi.RXD register and receive 0xYYPP_PPPP.
a. Value is 0x0000_0000 when YY = 0x0 (the status) and PP_PPPP = 0x0 (previous state of the
bits).
b. Software remembers that one byte resulted from the Write Enable command and returns
0xYY to the calling function.
The content in the RxFIFO after sending the WREN command follows. (Previous means that the value
has not changed from the register's previous value.)
Example: Read Status Command (code 0x05)
1. Send the Read Status Command (RDSR). Write 0xYYYY_DD05 to the qspi.TXD2 register.
a. Command is 0x05, DD = dummy data, YY =0
b. The controller shifts two bytes out of the TxFIFO to the flash memory and receives two bytes
in the RxFIFO.
2. Read Status Value. Read 0xZZYY_PPPP from the qspi.RXD register.
a. Value is 0x0300_0000 when ZZ = 0x03, YY == 0x0 and PPPP = 0x0.
b. Software remembers that two bytes are valid and returns 0x00, 0x03 to the calling function.
The content in the RxFIFO after sending the RDSR command is shown in the table (previous means
the value has not changed from the register's previous value):
RxFIFO Entry MSB LSB
1
Invalid Invalid Invalid Invalid
0
00 Previous Previous Previous