S29GL01GP
S29GL512P
S29GL256P
S29GL128P
12.2 Common Flash Memory Interface
The Common Flash Interface (CFI) specification outlines device and host system software interrogation handshake, which allows
specific vendor-specified software algorithms to be used for entire families of devices. Software support can then be device-
independent, JEDEC ID-independent, and forward- and back-ward-compatible for the specified flash device families. Flash vendors
can standardize their existing interfaces for long-term compatibility.
This device enters the CFI Query mode when the system writes the CFI Query command, 98h, to address 55h any time the device
is ready to read array data. The system can read CFI information at the addresses given in Tables –). All reads outside of the CFI
address range, returns non-valid data. Reads from other sectors are allowed, writes are not. To terminate reading CFI data, the
system must write the reset command.
The system can also write the CFI query command when the device is in the autoselect mode. The device enters the CFI query
mode, and the system can read CFI data at the addresses given in Tables –. The system must write the reset command to return the
device to reading array data.
The following is a C source code example of using the CFI Entry and Exit functions. Refer to the Cypress Low Level Driver User’s
Guide (available on www.cypress.com) for general information on Cypress Flash memory software development guidelines.
/* Example: CFI Entry command */
*( (UINT16 *)base_addr + 0x55 ) = 0x0098;
/* write CFI entry command
/* write cfi exit command
*/
/* Example: CFI Exit command */
*( (UINT16 *)base_addr + 0x000 ) = 0x00F0;
*/
For further information, please refer to the CFI Specification (see JEDEC publications JEP137-A and JESD68.01and CFI Publication
100). Please contact your sales office for copies of these documents.
CFI Query Identification String
Addresses
(x16)
Addresses (x8)
Data
Description
Query Unique ASCII string “QRY”
10h
11h
12h
20h
22h
24h
0051h
0052h
0059h
13h
14h
26h
28h
0002h
0000h
Primary OEM Command Set
15h
16h
2Ah
2Ch
0040h
0000h
Address for Primary Extended Table
17h
18h
2Eh
30h
0000h
0000h
Alternate OEM Command Set (00h = none exists)
Address for Alternate OEM Extended Table (00h = none exists)
19h
1Ah
32h
34h
0000h
0000h
Document Number: 002-00886 Rev. *B
Page 72 of 83