![](http://datasheet.mmic.net.cn/170000/S29PL032J65BFI150_datasheet_9723052/S29PL032J65BFI150_48.png)
46
S29PL-J
S29PL-J_00_A8 July 29, 2005
Ad van c e
Inf o rmation
The PPB Lock bit adds an additional level of protection. Once all PPBs are programmed to the
desired settings, the PPB Lock may be set to “1”. Setting the PPB Lock disables all program and
erase commands to the non-volatile PPBs. In effect, the PPB Lock Bit locks the PPBs into their
current state. The only way to clear the PPB Lock is to go through a power cycle. System boot
code can determine if any changes to the PPB are needed; for example, to allow new system
code to be downloaded. If no changes are needed then the boot code can set the PPB Lock to
disable any further changes to the PPBs during system operation.
The WP#/ACC write protect pin adds a final level of hardware protection to sectors SA1-133,
SA1-134, SA2-0 and SA2-1. When this pin is low it is not possible to change the contents of these
sectors. These sectors generally hold system boot code. The WP#/ACC pin can prevent any
changes to the boot code that could override the choices made while setting up sector protection
during system initialization.
For customers who are concerned about malicious viruses there is another level of security - the
persistently locked state. To persistently protect a given sector or sector group, the PPBs asso-
ciated with that sector need to be set to “1”. Once all PPBs are programmed to the desired
settings, the PPB Lock should be set to “1”. Setting the PPB Lock automatically disables all pro-
gram and erase commands to the Non-Volatile PPBs. In effect, the PPB Lock “freezes” the PPBs
into their current state. The only way to clear the PPB Lock is to go through a power cycle.
It is possible to have sectors that have been persistently locked, and sectors that are left in the
dynamic state. The sectors in the dynamic state are all unprotected. If there is a need to protect
some of them, a simple DYB Write command sequence is all that is necessary. The DYB write
command for the dynamic sectors switch the DYBs to signify protected and unprotected, respec-
tively. If there is a need to change the status of the persistently locked sectors, a few more steps
are required. First, the PPB Lock bit must be disabled by either putting the device through a
power-cycle, or hardware reset. The PPBs can then be changed to reflect the desired settings.
Setting the PPB lock bit once again will lock the PPBs, and the device operates normally again.
The best protection is achieved by executing the PPB lock bit set command early in the boot code,
and protect the boot code by holding WP#/ACC = VIL.
Table 17 contains all possible combinations of the DYB, PPB, and PPB lock relating to the status
of the sector.
In summary, if the PPB is set, and the PPB lock is set, the sector is protected and the protection
can not be removed until the next power cycle clears the PPB lock. If the PPB is cleared, the sec-
tor can be dynamically locked or unlocked. The DYB then controls whether or not the sector is
protected or unprotected.
If the user attempts to program or erase a protected sector, the device ignores the command
and returns to read mode. A program command to a protected sector enables status polling for
approximately 1 s before the device returns to read mode without having modified the contents
of the protected sector. An erase command to a protected sector enables status polling for ap-
proximately 50 s after which the device returns to read mode without having erased the
protected sector.
The programming of the DYB, PPB, and PPB lock for a given sector can be verified by writing a
DYB/PPB/PPB lock verify command to the device. There is an alternative means of reading the
protection status. Take RESET# to VIL and hold WE# at VIH.(The high voltage A9 Autoselect
Mode also works for reading the status of the PPBs). Scanning the addresses (A18–A11) while
(A6, A1, A0) = (0, 1, 0) will produce a logical ‘1” code at device output DQ0 for a protected sector
or a “0” for an unprotected sector. In this mode, the other addresses are don’t cares. Address
location with A1 = VIL are reserved for autoselect manufacturer and device codes.