Hard Processor System Technical Reference Manual: Agilex™ 5 SoCs

ID 814346
Date 4/01/2024
Public
Document Table of Contents

A.2.6.5. Configuring the Flash Device

For read and write accesses, software must initialize the device read instruction register (devrd) and the device write instruction register (devwr). These registers include fields to initialize the instruction opcodes that should be used as well as the instruction type, and whether the instruction uses single, dual, or quad pins for address and data transfer. To ensure the QSPI controller can operate from a reset state, the opcode registers reset to opcodes compatible with single I/O Flash devices.

The QSPI Flash controller uses the instruction transfer width field (instwidth) of the devrd register to set the instruction transfer width for both reads and writes. There is no instwidth field in the devwr register. If instruction type is set to dual or quad mode, the address transfer width (addrwidth) and data transfer width (datawidth) fields of both registers are redundant because the address and data type is based on the instruction type. Thus, software can support the less common Flash instructions where the opcode, address, and data are sent on two or four lanes. For most instructions, the opcodes are sent serially to the Flash device, even for dual and quad instructions.