7.5 Locking the Security Register
The Lock command is an irreversible sequence that will permanently prevent all future writing to the upper 16 bytes of the Security register on the AT21CS01/AT21CS11. Once the Lock command has been executed, the entire 32-byte Security register becomes read-only. Once the Security register has been locked, it is not possible to unlock it.
The Lock command protocol emulates a byte write operation to the Security
register; however, the opcode 0010b
(2h) is required along with the A7
through A4 bits of the memory address being set to 0110b
(6h). The
remaining bits of the memory address as well as the data byte are “don’t care” bits. Even
though these bits are “don’t cares”, they still must be transmitted to the device. An ACK
response to the memory address and data byte indicates the Security register is not
currently locked. A NACK response indicates the Security register is already locked. Refer
to Check Lock
Command for details about determining the Lock status of the Security
register.
The sequence completes with a Stop condition to initiate a self-timed internal write cycle. If a Stop condition is sent at any other time, the Lock operation is aborted. Since a Stop condition is defined as a null bit frame with SI/O pulled high, the host does not need to drive the SI/O line to accomplish this. Upon completion of the write cycle, taking a time of tWR, the Lock operation is complete, and the Security register will become permanently read-only.