12. Serial EEPROM > System Diagram
103
PEB383 User Manual
July 25, 2011
Integrated Device Technology, Inc.
Confidential - NDA Required
If the identification code obtained through the first read is a correct value, then the EEPROM
Controller determines that the EEPROM supports 9-bit addressing. The Controller then initiates one
more read transaction to read the third and fourth locations of the EEPROM, where the value of the
total number of bytes to be read (byte count) is located. Thereafter, it continuously reads all the bytes
and programs the CSR registers depending on the address provided in the EEPROM location. The
PEB383 has now determined the EEPROM Controller supports 9-bit addressing (it uses this mode for
writes as well).
If the identification code read after first read is a wrong value, and after the second read is a correct
value, then it initiates one more read transaction to get the value of total number of bytes to be read
(byte count). Thereafter it reads all the bytes from the EEPROM locations and programs the CSR
registers according to the addresses given in the EEPROM locations. The PEB383 has now determined
the EEPROM Controller supports 16-bit addressing (it uses this mode for writes as well).
In both cases just discussed, the Controller updates the
with the address
width of the EEPROM detected and signals the completion of the loading to the CSR block. During the
process of programming the CSR by the EEPROM, any configuration transactions on the
PCIe Interface that are initiated by the root complex are completed with CRRS completions
(Configuration Request Retry Status completions). All other transactions are completed with UR
completions.
The root complex can access the external EEPROM through the EEPROM Controller; that is,
EEPROM locations can be written and read by the root complex. The root complex initiates
configuration write transactions to program the
using a write command.
The EEPROM Controller initiates a WREN (Write Enable) instruction first, followed by a WRITE
instruction. The Controller sets the BUSY bit in the register when it initiates a write instruction to the
external EEPROM. It obtains the status of the write cycle from the external EEPROM by initiating
RDSR (Read Status Register) instruction to it after every write instruction. If the external EEPROM
finishes the write operation it would return the status in the form of BUSY bit as 1'b0. This information
from the external EEPROM is updated in the
; that is, this bit would reset
once the external EEPROM completes the WRITE operation. Therefore, software should poll this bit
to get BUSY status before initiating another transaction to the serial EEPROM. As a result, this bit
should indicate 1'b0 before initiating any other instruction to the external EEPROM. Software should
ensure that the CMD_VLD bit in this register is high in order to trigger the EEPROM Controller to
initiate Read/Write instructions. If a configuration write is initiated to overwrite the command in the
during the busy state, the EEPROM Controller will ignore the command.
To read the EEPROM location, the root complex initiates a configuration write transaction to the
with the READ command; this prompts the EEPROM to initiate a
READ instruction to the external EEPROM.
When the PCIe reset signal is asserted, all the CSR register values are set to their default values. When
this reset is de-asserted, the EEPROM Controller starts the EEPROM loading process in order to
re-program its CSR registers.
The EEPROM Controller does not support the WRDI (Write Disable) and WRSR (Write
Status Register) instructions.