375
SAM4CP [DATASHEET]
43051E–ATPL–08/14
23.3.5 Device Operations
Several commands on the Flash memory are available. These commands are summarized in
Table 23-3 on page 373
.
Each command is driven by the programmer through the parallel interface running several read/write handshaking
sequences.
When a new command is executed, the previous one is automatically achieved. Thus, chaining a read command after
a write automatically flushes the load buffer in the Flash.
23.3.5.1 Flash Read Command
This command is used to read the contents of the Flash memory. The read command can start at any valid address in
the memory plane and is optimized for consecutive reads. Read handshaking can be chained; an internal address buffer
is automatically increased.
Table 23-5.
Read Handshake
Step
Programmer Action
Device Action
DATA I/O
1
Sets MODE and DATA signals
Waits for NCMD low
Input
2
Clears NCMD signal
Latch MODE and DATA
Input
3
Waits for RDY low
Clears RDY signal
Input
4
Sets DATA signal in tristate
Waits for NOE Low
Input
5
Clears NOE signal
Tristate
6
Waits for NVALID low
Sets DATA bus in output mode and outputs the flash contents
Output
7
Clears NVALID signal
Output
8
Reads value on DATA Bus
Waits for NOE high
Output
9
Sets NOE signal
Output
10
Waits for NVALID high
Sets DATA bus in input mode
X
11
Sets DATA in output mode
Sets NVALID signal
Input
12
Sets NCMD signal
Waits for NCMD high
Input
13
Waits for RDY high
Sets RDY signal
Input
Table 23-6.
Read Command
Step
Handshake Sequence
MODE[3:0]
DATA[15:0]
1
Write handshaking
CMDE
READ
2
Write handshaking
ADDR0
Memory Address LSB
3
Write handshaking
ADDR1
Memory Address
4
Read handshaking
DATA
*Memory Address++
5
Read handshaking
DATA
*Memory Address++
...
...
...
...
n
Write handshaking
ADDR0
Memory Address LSB
n+1
Write handshaking
ADDR1
Memory Address
n+2
Read handshaking
DATA
*Memory Address++
n+3
Read handshaking
DATA
*Memory Address++
...
...
...
...