Claims
- 1. An apparatus comprising:
- a non-volatile memory array including a plurality of blocks, one or more blocks of said plurality of blocks being capable of being placed in a locked state or an unlocked state;
- a volatile lock register coupled to a block of said one or more blocks;
- a volatile lock-down register coupled to said block of said one or more blocks;
- a hardware override line coupled to said lock register and said lock-down register, said hardware override line temporarily disabling said lock-down register when said hardware override line transmits a signal set to a first logic state;
- a block lock control line coupled to said lock register and transmitting a lock control signal to said lock resister;
- a block lock-down control line coupled to said lock-down register and transmitting a lock-down control signal to said lock-down register; and
- a block select control line coupled to each of said lock register and said lock-down register.
- 2. The apparatus of claim 1 further comprising a logic circuit coupled to an output of said lock register and an output of said lock down register, said logic circuit transmitting a lock status control signal to said block, and wherein said hardware override line is coupled to said logic circuit.
- 3. The apparatus of claim 2 wherein,
- said lock control signal programs said lock register to a first lock state or a second lock state, said first lock state preventing said block from being programmed or erased; and
- said lock-down control signal programs said lock-down register to a first lock-down state or a second lock-down state, said first lock-down state preventing said block from being programmed or erased and further preventing programming of said lock register to allow said block to be programmed or erased.
- 4. The apparatus of claim 3 wherein said hardware override line transmits a write protect signal having a first write protect state or a second write protect state, said first write protect state preventing said lock-down register from preventing said lock register to allow said block to be programmed or erased.
- 5. The apparatus of claim 4 wherein said non-volatile memory array is a flash memory and said lock register and said lock-down register are both embodied in static random access memory circuits.
- 6. An apparatus comprising:
- a non-volatile memory array including a plurality of blocks, one or more blocks of said plurality of blocks being capable of being placed in a locked state or an unlocked state;
- a set of volatile lock registers, each lock register of said set of lock registers coupled to a corresponding block of said one or more blocks, and operable to prevent corresponding blocks from being modified;
- a set of volatile lock-down registers, each lock-down register of said set of lock-down registers being associated with a lock register of said set of volatile lock registers and operable to prevent said corresponding blocks from being modified, and further operable to prevent said set of lock registers to be programmed to allow said corresponding blocks to modified;
- a hardware override line coupled to said set of lock registers and said set of lock-down registers, said hardware override line operable to temporarily disable operation of said set of lock-down registers; and
- a command buffer coupled to said set of lock registers and said set of lock-down registers, said command buffer operable to transmit a two-cycle command to each register of both said set of lock registers and said set of lock-down registers, wherein the first cycle comprises a command specifying whether a lock configuration of said non-volatile memory array is to be changed, and the second cycle comprises a command specifying whether a block of said memory array is to be placed in a lock state, an unlocked state, or a locked-down state.
- 7. The apparatus of claim 6 wherein said locked state corresponds to a lock register of said set of lock registers being programmed to a first logic state, said unlocked state corresponds to said lock register being programmed to a second logic state, and said locked-down state corresponds to a lock-down register of said set of lock-down registers being programmed to a first logic state.
- 8. The apparatus of claim 7 wherein said lock-down state prevents programming of lock registers to allow corresponding blocks of said non-volatile memory array to be modified.
- 9. The apparatus of claim 8 wherein said hardware override line is operable to temporarily override said lock-down state to thereby allow programming of said lock registers to allow said corresponding blocks of said non-volatile memory to be modified regardless of the lock-down state of corresponding lock-down registers.
- 10. The apparatus of claim 9 wherein said non-volatile memory array is a flash memory and said first set of lock registers and said set of lock-down registers are embodied in static random access memory circuits.
- 11. The apparatus of claim 10 wherein said lock-down registers are capable of being set to a lock-down only once during a period in which said apparatus is powered-up.
CROSS REFERENCE TO RELATED APPLICATIONS
The present application is related to the following co-pending U.S. patent applications entitled, "Volatile Lock Architecture for Individual Block Locking on Flash Memory", having application Ser. No. 09/076,330, filed on May 11, 1998; and "A Method and Apparatus for Hardware Block Locking in a Non-Volatile Memory", having application Ser. No. 09/078,094, filed on May 11, 1998, both applications of which are assigned to the assignee of the present invention.
US Referenced Citations (9)