9
AT94S Secure Family
2314D–FPSLI–2/04
The organization of the Data Byte is shown above. Note that in this case, the Data Byte
is clocked into the device LSB first and MSB last.
Writing Writing to the normal address space takes place in pages. A page is 128-bytes long in
the 1-Mbit part. The page boundaries are, respectively, addresses where A
E0
down to
A
EOS
are all zero, and A
E6
down to A
E0
are all zero. Writing can start at any address
within a page and the number of bytes written must be 128 for the 1-Mbit part. The first
byte is written at the transmitted address. The address is incremented in the Configura-
tor following the receipt of each Data Byte. Only the lower 7 bits of the address are
incremented. Thus, after writing to the last byte address within the given page, the
address will roll over to the first byte address of the same page. A Write Instruction con-
sists of:
a Start Condition
a Device Address Byte with R/W
= 0
An Acknowledge Bit from the Configurator
MS Byte of the EEPROM Address
An Acknowledge Bit from the Configurator
Next Byte of the EEPROM Address
An Acknowledge Bit from the Configurator
LS Byte of EEPROM Address
An Acknowledge Bit from the Configurator
One or more Data Bytes (sent to the
Configurator)
Each followed by an Acknowledge Bit from the
Configurator
a Stop Condition
WRITE POLLING: On receipt of the Stop Condition, the Configurator enters an inter-
nally-timed write cycle. While the Configurator is busy with this write cycle, it will not
acknowledge any transfers. The programmer can start the next page write by sending
the Start Condition followed by the Device Address, in effect polling the Configurator. If
this is not acknowledged, then the programmer should abandon the transfer without
asserting a Stop Condition. The programmer can then repeatedly initiate a write instruc-
tion as above, until an acknowledge is received. When the Acknowledge Bit is received,
the write instruction should continue by sending the first EEPROM Address Byte to the
Configurator.
An alternative to write polling would be to wait a period of t
WR
before sending the next
page of data or exiting the programming mode. All signals must be maintained during
the entire write cycle.
Data Byte
LSB MSB
D0 D1 D2 D3 D4 D5 D6 D7
1st 2nd 3rd 4th 5th 6th 7th 8th