+

US8190840B2 - Memory devices with data protection - Google Patents

Memory devices with data protection Download PDF

Info

Publication number
US8190840B2
US8190840B2 US13/155,404 US201113155404A US8190840B2 US 8190840 B2 US8190840 B2 US 8190840B2 US 201113155404 A US201113155404 A US 201113155404A US 8190840 B2 US8190840 B2 US 8190840B2
Authority
US
United States
Prior art keywords
register
bit
protection
status
write
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
US13/155,404
Other versions
US20110238939A1 (en
Inventor
Yu-Lan Kuo
Chun-yi Lee
Kuen-Long Chang
Chun-Hsiung Hung
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Macronix International Co Ltd
Original Assignee
Macronix International Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Macronix International Co Ltd filed Critical Macronix International Co Ltd
Priority to US13/155,404 priority Critical patent/US8190840B2/en
Assigned to MACRONIX INTERNATIONAL CO., LTD. reassignment MACRONIX INTERNATIONAL CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: KUO, YU-LAN, CHANG, KUEN-LONG, HUNG, CHUN-HSIUNG, LEE, CHUN-YI
Publication of US20110238939A1 publication Critical patent/US20110238939A1/en
Application granted granted Critical
Publication of US8190840B2 publication Critical patent/US8190840B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/20Address safety or protection circuits, i.e. arrangements for preventing unauthorized or accidental access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • G06F21/79Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data in semiconductor storage media, e.g. directly-addressable memories
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells

Definitions

  • This application relates generally to memory devices and more particularly relates to the data protection of nonvolatile memory devices.
  • Nonvolatile memories use a variety of memory cell designs. Examples of nonvolatile memories include read only memory, flash memory, etc.
  • a nonvolatile memory device may be accessed by a central processor unit (CPU) or other devices or processors for various purposes during the operation of a computer system.
  • the term “access” includes read, write, erase and rewrite execution commands to the nonvolatile memory device.
  • Nonvolatile memories can retain the stored information without being erased even in the absence of power supply. In other words, once electrically programmed, the nonvolatile memory may retain the stored data until it is electrically erased. In addition, data stored in the nonvolatile memory may be changed at any time when the power supply is resumed.
  • One of the many applications for nonvolatile memories include serving as storage media in digital cameras, music players, cellular phones, etc. and serving as system memories in computing systems, personal digital assistants (PDAs), phones, etc.
  • BIOS Basic Input Output System
  • BIOS memory may have various sizes and configurations, such as 16 Megabits (MB) or 32 MB.
  • a BIOS memory may include a set of contiguous memory blocks. Depending on its applications and design, a typical memory block granularity or unit may be 64 KB. And a 16 MB BIOS memory may therefore have 32 memory blocks.
  • BIOS memories may be used to store many types of information, such as critical boot codes, peripheral “plug and play” data, unique serial number of a computer system, etc. If information stored in BIOS memory is improperly altered or overwritten, the computer system may not function properly. Therefore, there may be a need for protecting data in a BIOS memory or other nonvolatile memory devices to ensure the data is protected from improper alteration or deletion.
  • a memory device includes a register-protection bit for locking a protection area until a resetting of the memory device.
  • a memory device may include a memory array, a status register, a status-register write-protect bit and a security register.
  • the memory array contains a number of memory blocks.
  • the status register includes at least one protection bit indicative of a protection status of at least one corresponding block of the memory blocks.
  • the status-register write-protect bit is coupled with the status register for preventing a state change of the at least one protection bit.
  • the security register includes at least one register-protection bit for preventing the state change in one of the at least one protection bit of the status register and the status-register write-protect bit.
  • a memory device may include a first means, a first-means write-protect element and a second means.
  • the first means includes one protection element for showing a protection status of a block in a memory array.
  • the first-means write-protect element determines the changeability the state of said protection element.
  • the second means includes one register-protection element for determining the changeability in one of said first-means-write-protect element and said one protection element of the first means.
  • a memory device may include a memory array, a status register, and a security register.
  • the memory array contains a number of memory blocks.
  • the status register includes at least one protection bit indicative of a write-protection status of at least one corresponding block of the memory blocks.
  • the security register is coupled with the memory array and the status register, and includes at least one register-protection bit for preventing the state change in one of the status-register write-protect bit and the at least one protection bit of the status register, and a security protection bit for controlling the change of contents in a secured area in the memory array.
  • FIG. 1 is a block diagram of an exemplary memory device consistent with embodiments of the invention
  • FIG. 2 is an exemplary diagram illustrating various memory blocks and a protection area of a memory array consistent with embodiments of the invention
  • FIG. 3 is an exemplary diagram illustrating status registers of a memory device consistent with embodiments of the invention.
  • FIG. 4 is an exemplary diagram illustrating a security register of a memory device consistent with embodiments of the invention.
  • FIG. 5 is an exemplary diagram illustrating various memory blocks and a protected area of a memory device consistent with embodiments of the invention.
  • Embodiments of a memory device may include a register-protection bit for preventing the memory device or some areas of the memory device from being written intentionally or accidentally.
  • the register-protection bit may be configured to remain in a register protection state until a reset or a power-off and power-on event of the memory device.
  • FIG. 1 is a block diagram illustrating an embodiment of a memory device 10 .
  • the memory device 10 includes a memory array 100 containing a number of memory blocks 105 .
  • Each memory block 105 may be configured to have independent access control, e.g. write accessibility or read accessibility.
  • the memory device 10 may include a status register 200 coupled with the memory array 100 and a security register 300 coupled with the memory array 100 as well as the status register 200 .
  • Status register 200 may include one or more protection bits.
  • a block-protect bit is served as the protection bit.
  • Block-protect bit(s) 210 of the status register 200 may indicate a write-protection status of the memory blocks 105 .
  • the size of the protection area of the memory array 100 may be defined to protect against access based on the values of the block-protect bits 210 .
  • FIG. 2 illustrates an example of the protection area of the memory array.
  • the top two memory blocks i.e. the 30 th memory block and the 31 st memory block are prevented from being written.
  • block-protect bits 210 when block-protect bits 210 equal to 0101, top 16 memory blocks that include the 16 th memory block through the 31 st memory block are defined as a protection area.
  • the state change of block-protect bits 210 may be decided by a status-register write-protect bit 220 of the status register 200 as illustrated in FIG. 3 .
  • the status-register write-protect bit 220 is defined to enable or disable “write” to the status register 200 .
  • the status-register write-protect bit 220 may be disabled from being written or erased.
  • the block-protect bits 210 contained in the status register 200 is protected against the update.
  • the status-register write-protect bit 220 may work in connection with a write protect pin (not shown) of the memory device 10 for providing various protection modes.
  • the status register 200 When the status-register write-protect bit 220 is low, no matter what the state of the write protection pin is, the status register 200 can be accessed by executing some instruction commands. Accordingly, the contents stored in the status register 200 , which includes the block-protect bits 210 , may be rewritten by executing some instruction commands. However, in some other embodiments, once the status-register write-protect bit 220 is set, the accessibility of the status register 200 depends on the write protect pin. The values of the status register 200 may be modified when the write protect pin is high. In contrast, any attempted changes to the status register 200 is rejected when the write protect pin is low, allowing the protection area be locked.
  • a register-protection bit of the security register 300 may provide an additional mechanism to prevent the protection area of the memory array 100 from being changed.
  • a write lock-down bit 310 is served as a register-protection bit as shown in FIG. 4 . Once the write down lock bit 310 is set to a register protection state, any operations that attempt to change the block-protect bits 210 and the status-register write-protect bit 220 are prevented.
  • a “write” to the memory blocks that corresponds to the block-protect bits 210 is be locked until the write lock-down bit 310 is cleared.
  • the write lock-down bit 310 seems to function in a similar way as the status-register write-protect bit 220 , i.e. protect the block-protect bits 210 against unexpected change, they may differ in how the block-protect bits 210 are unlocked.
  • the state change of the status-register write-protect bit 220 may be performed by executing instructions while the write lock-down bit 310 may be cleared by a resetting of the memory device 10 .
  • the resetting of the memory device 10 may include a reset event, a power-off and power-on event or other signal events that may make the memory device 10 re-enter the initial state.
  • a read-lock bit 320 contained by the security register 300 may be defined to provide the protection in one embodiment.
  • the read-lock bit 320 is programmed to a read-protection state, the read operation of the corresponding memory blocks 105 is ignored or rejected.
  • the protection area that corresponds to the read-lock bit 320 may be included in a write protection area. For example, two memory blocks, the 29 th memory block and the 30 th memory block, may be prevented from being read by setting the read-lock bit 320 to a read-protection state.
  • the 28 th through the 31 st memory blocks may be defined as a write protection area. Since both read and write restrictions are applied to the 29 th memory block and the 30 th memory block, these two memory blocks are unlocked to be read and may in a write protection area. Therefore, the 28 th through the 31 st memory blocks are all prevented from being written.
  • the read-lock bit 320 like the write lock-down bit 310 , may prevent maliciously or unintentionally alteration to the read status of a read protection area.
  • the state change of the read-lock bit 320 may not be updated or modified by executing instructions, i.e. the state change may not be performed when the computer system is powered on.
  • the read-lock bit 320 may be cleared by a resetting of the memory device 10 .
  • the resetting of the memory device 10 may include a reset event, a power-off and power-on event or other signal events that may make the memory device 10 re-enter the initial state.
  • Embodiments of the memory device may include a one-time programmable area as a secured area for setting specific information of the memory device. For example, a serial number of the device. This type of information may not be updated or accessed once it is locked.
  • the security register 300 includes a security indicator bit 330 for indicating a status of the one-time programmable area. The security indicator bit 330 may be set to indicate a manufacturer-originated lock of the one-time programmable area.
  • the security register 300 may also include a security protection bit 340 . Once the security protection bit 340 is set, the secured, one-time programmable area and the security protection bit 340 can not be accessed any more.
  • the protection area of the memory array 100 may be selected through the n th memory block to the top most memory block (n is a positive number) of the memory array 100 during the access operations.
  • memory blocks 28 through 32 or memory blocks 24 through 32 may be defined as protection areas.
  • the access operations to the memory blocks are executed on one or more top most contiguous memory blocks.
  • the memory blocks set as a protection area may include bottom-most or top-most contiguous memory blocks. As illustrated in FIG. 5 , if the block-protect bits 210 are set to 1010, bottom-most memory blocks 0 through 15 are defined as a protection area. Similarly, bottom-most memory blocks 0 through 23 are under protection if the value of the block-protect bits 210 equal to 1011. The selection of the bottom-most contiguous memory blocks may provide more selections of the protection area.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

A memory device comprises a memory array, a status register, a status-register write-protect bit and a security register. The memory array contains a number of memory blocks. The status register includes at least one protection bit indicative of a protection status of at least one corresponding block of the memory blocks. The status-register write-protect bit is coupled with the status register for preventing a state change of the at least one protection bit. The security register includes at least one register-protection bit for preventing the state change in one of the at least one protection bit of the status register and the status-register write-protect bit.

Description

CROSS-REFERENCE TO RELATED APPLICATION
This is a continuation application of and claims the priority benefit of U.S. application Ser. No. 11/863,254, filed on Sep. 28, 2007, now pending. The entirety of the above-mentioned patent application is hereby incorporated by reference herein and made a part of this specification.
TECHNICAL FIELD
This application relates generally to memory devices and more particularly relates to the data protection of nonvolatile memory devices.
BACKGROUND
Nonvolatile memories use a variety of memory cell designs. Examples of nonvolatile memories include read only memory, flash memory, etc. A nonvolatile memory device may be accessed by a central processor unit (CPU) or other devices or processors for various purposes during the operation of a computer system. The term “access” includes read, write, erase and rewrite execution commands to the nonvolatile memory device. Nonvolatile memories can retain the stored information without being erased even in the absence of power supply. In other words, once electrically programmed, the nonvolatile memory may retain the stored data until it is electrically erased. In addition, data stored in the nonvolatile memory may be changed at any time when the power supply is resumed. One of the many applications for nonvolatile memories include serving as storage media in digital cameras, music players, cellular phones, etc. and serving as system memories in computing systems, personal digital assistants (PDAs), phones, etc.
Without limiting the scope of invention, the use of a nonvolatile memory as a BIOS memory in a computing system is illustrated below. In order for a computer system to operate properly, its operating system needs to be properly configured to communicate with the computer system's hardware devices. Basic Input Output System (BIOS) codes or other boot codes are typically the codes used for such configuration. To retain the codes without the need of power supply, the BIOS codes are typically stored in a nonvolatile memory device on the motherboard of a computer system.
As illustrative examples, a BIOS memory may have various sizes and configurations, such as 16 Megabits (MB) or 32 MB. A BIOS memory may include a set of contiguous memory blocks. Depending on its applications and design, a typical memory block granularity or unit may be 64 KB. And a 16 MB BIOS memory may therefore have 32 memory blocks. BIOS memories may be used to store many types of information, such as critical boot codes, peripheral “plug and play” data, unique serial number of a computer system, etc. If information stored in BIOS memory is improperly altered or overwritten, the computer system may not function properly. Therefore, there may be a need for protecting data in a BIOS memory or other nonvolatile memory devices to ensure the data is protected from improper alteration or deletion.
BRIEF SUMMARY
In various embodiments of the invention, a memory device includes a register-protection bit for locking a protection area until a resetting of the memory device.
In one embodiment, a memory device may include a memory array, a status register, a status-register write-protect bit and a security register. The memory array contains a number of memory blocks. The status register includes at least one protection bit indicative of a protection status of at least one corresponding block of the memory blocks. The status-register write-protect bit is coupled with the status register for preventing a state change of the at least one protection bit. The security register includes at least one register-protection bit for preventing the state change in one of the at least one protection bit of the status register and the status-register write-protect bit.
In another embodiment, a memory device may include a first means, a first-means write-protect element and a second means. The first means includes one protection element for showing a protection status of a block in a memory array. The first-means write-protect element determines the changeability the state of said protection element. The second means includes one register-protection element for determining the changeability in one of said first-means-write-protect element and said one protection element of the first means.
In still another embodiment, a memory device may include a memory array, a status register, and a security register. The memory array contains a number of memory blocks. The status register includes at least one protection bit indicative of a write-protection status of at least one corresponding block of the memory blocks. The security register is coupled with the memory array and the status register, and includes at least one register-protection bit for preventing the state change in one of the status-register write-protect bit and the at least one protection bit of the status register, and a security protection bit for controlling the change of contents in a secured area in the memory array.
BRIEF DESCRIPTION OF THE DRAWINGS
The foregoing summary, as well as the following detailed description of the invention, will be better understood when read in conjunction with the appended drawings. For the purpose of illustrating the invention, there are shown in the drawings embodiments which are presently preferred. It should be understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown.
In the drawings:
FIG. 1 is a block diagram of an exemplary memory device consistent with embodiments of the invention;
FIG. 2 is an exemplary diagram illustrating various memory blocks and a protection area of a memory array consistent with embodiments of the invention;
FIG. 3 is an exemplary diagram illustrating status registers of a memory device consistent with embodiments of the invention;
FIG. 4 is an exemplary diagram illustrating a security register of a memory device consistent with embodiments of the invention; and
FIG. 5 is an exemplary diagram illustrating various memory blocks and a protected area of a memory device consistent with embodiments of the invention.
DETAILED DESCRIPTION
Reference will now be made in detail to the invention and the presently preferred embodiments thereof, examples of which are illustrated in the accompanying drawings. Wherever possible, the same or similar reference numbers are used in the drawings and the description to refer to the same or like parts.
Embodiments of a memory device may include a register-protection bit for preventing the memory device or some areas of the memory device from being written intentionally or accidentally. The register-protection bit may be configured to remain in a register protection state until a reset or a power-off and power-on event of the memory device.
FIG. 1 is a block diagram illustrating an embodiment of a memory device 10. The memory device 10 includes a memory array 100 containing a number of memory blocks 105. Each memory block 105 may be configured to have independent access control, e.g. write accessibility or read accessibility. In one embodiment, the memory device 10 may include a status register 200 coupled with the memory array 100 and a security register 300 coupled with the memory array 100 as well as the status register 200. Status register 200 may include one or more protection bits. In one embodiment, a block-protect bit is served as the protection bit. Block-protect bit(s) 210 of the status register 200 may indicate a write-protection status of the memory blocks 105. In other words, the size of the protection area of the memory array 100 may be defined to protect against access based on the values of the block-protect bits 210.
FIG. 2 illustrates an example of the protection area of the memory array. Referring to FIG. 2, when the values of the block-protect bits 210 equal to 0010, the top two memory blocks, i.e. the 30th memory block and the 31st memory block are prevented from being written. Similarly, when block-protect bits 210 equal to 0101, top 16 memory blocks that include the 16th memory block through the 31st memory block are defined as a protection area.
In some embodiments, the state change of block-protect bits 210 may be decided by a status-register write-protect bit 220 of the status register 200 as illustrated in FIG. 3. The status-register write-protect bit 220 is defined to enable or disable “write” to the status register 200. When the status-register write-protect bit 220 is disabled, the status register 200 may be prevented from being written or erased. Thus the block-protect bits 210 contained in the status register 200 is protected against the update. In one embodiment, the status-register write-protect bit 220 may work in connection with a write protect pin (not shown) of the memory device 10 for providing various protection modes. When the status-register write-protect bit 220 is low, no matter what the state of the write protection pin is, the status register 200 can be accessed by executing some instruction commands. Accordingly, the contents stored in the status register 200, which includes the block-protect bits 210, may be rewritten by executing some instruction commands. However, in some other embodiments, once the status-register write-protect bit 220 is set, the accessibility of the status register 200 depends on the write protect pin. The values of the status register 200 may be modified when the write protect pin is high. In contrast, any attempted changes to the status register 200 is rejected when the write protect pin is low, allowing the protection area be locked.
However, since the state of the status-register write-protect bit 220 can be changed at any time during the computer system power-on, the status-register write-protect bit 220 may be modified by accident in some instances, which may result in the change of the contents stored in the protection area. In some other embodiments, a register-protection bit of the security register 300 may provide an additional mechanism to prevent the protection area of the memory array 100 from being changed. In this embodiment, a write lock-down bit 310 is served as a register-protection bit as shown in FIG. 4. Once the write down lock bit 310 is set to a register protection state, any operations that attempt to change the block-protect bits 210 and the status-register write-protect bit 220 are prevented. Accordingly, a “write” to the memory blocks that corresponds to the block-protect bits 210 is be locked until the write lock-down bit 310 is cleared. Though the write lock-down bit 310 seems to function in a similar way as the status-register write-protect bit 220, i.e. protect the block-protect bits 210 against unexpected change, they may differ in how the block-protect bits 210 are unlocked. As an example, the state change of the status-register write-protect bit 220 may be performed by executing instructions while the write lock-down bit 310 may be cleared by a resetting of the memory device 10. This distinction may effectively avoid malicious or unintentional alteration to the protection area of the memory array 100 when the computer system is powered on. In some embodiments, the resetting of the memory device 10 may include a reset event, a power-off and power-on event or other signal events that may make the memory device 10 re-enter the initial state.
Some data stored in the memory array may need to be protected from being read. For example, it may desirable to restrict access to a user's password stored in the memory device. A read-lock bit 320 contained by the security register 300 may be defined to provide the protection in one embodiment. When the read-lock bit 320 is programmed to a read-protection state, the read operation of the corresponding memory blocks 105 is ignored or rejected. In some embodiments, the protection area that corresponds to the read-lock bit 320 may be included in a write protection area. For example, two memory blocks, the 29th memory block and the 30th memory block, may be prevented from being read by setting the read-lock bit 320 to a read-protection state. However, according to the block-protect bits 210, the 28th through the 31st memory blocks may be defined as a write protection area. Since both read and write restrictions are applied to the 29th memory block and the 30th memory block, these two memory blocks are unlocked to be read and may in a write protection area. Therefore, the 28th through the 31st memory blocks are all prevented from being written. The read-lock bit 320, like the write lock-down bit 310, may prevent maliciously or unintentionally alteration to the read status of a read protection area. The state change of the read-lock bit 320 may not be updated or modified by executing instructions, i.e. the state change may not be performed when the computer system is powered on. The read-lock bit 320, however, may be cleared by a resetting of the memory device 10. In some embodiments, the resetting of the memory device 10 may include a reset event, a power-off and power-on event or other signal events that may make the memory device 10 re-enter the initial state.
Embodiments of the memory device may include a one-time programmable area as a secured area for setting specific information of the memory device. For example, a serial number of the device. This type of information may not be updated or accessed once it is locked. In this embodiment, the security register 300 includes a security indicator bit 330 for indicating a status of the one-time programmable area. The security indicator bit 330 may be set to indicate a manufacturer-originated lock of the one-time programmable area. The security register 300 may also include a security protection bit 340. Once the security protection bit 340 is set, the secured, one-time programmable area and the security protection bit 340 can not be accessed any more.
Generally, the protection area of the memory array 100 may be selected through the nth memory block to the top most memory block (n is a positive number) of the memory array 100 during the access operations. Referring to FIG. 5, for example, memory blocks 28 through 32 or memory blocks 24 through 32 may be defined as protection areas. Thus, the access operations to the memory blocks are executed on one or more top most contiguous memory blocks. However, in some embodiments of the present invention, the memory blocks set as a protection area may include bottom-most or top-most contiguous memory blocks. As illustrated in FIG. 5, if the block-protect bits 210 are set to 1010, bottom-most memory blocks 0 through 15 are defined as a protection area. Similarly, bottom-most memory blocks 0 through 23 are under protection if the value of the block-protect bits 210 equal to 1011. The selection of the bottom-most contiguous memory blocks may provide more selections of the protection area.
It will be appreciated by those skilled in the art that changes could be made to the embodiments described above without departing from the broad inventive concept thereof. It is understood, therefore, that this invention is not limited to the particular embodiments disclosed, but it is intended to cover modifications within the spirit and scope of the present invention as defined by the appended claims.

Claims (11)

1. A memory device comprising:
a memory array containing a number of memory blocks;
a status register including at least one protection bit indicative of a protection status of at least one corresponding block of the memory blocks;
a status-register write-protect bit coupled with the status register for preventing a state change of the at least one protection bit; and
a security register including at least one register-protection bit for preventing the state change in one of the at least one protection bit of the status register and the status-register write-protect bit.
2. The memory device of claim 1, wherein the register-protection bit is configured to remain in the memory-protection state until a resetting of the memory device.
3. The memory device of claim 1, wherein the status-register write-protect bit is included in the status register.
4. The memory device of claim 1, wherein the security register comprises at least one write lock-down bit to serve as the at least one register-protection bit.
5. The memory device of claim 1, wherein the security register further comprises a read-lock bit, the read-lock bit being programmable to a read-protection state for preventing at least one corresponding block of the memory blocks from being read, wherein the read-lock bit is configured to remain in the read-protection state until a resetting of the memory device.
6. The memory device of claim 5, wherein the read-protection state is configured to be unlocked when the at least one corresponding block that corresponds to the read-lock bit becomes a part of a write protection area.
7. The memory device of claim 1, wherein the security register further comprises a security indicator bit indicative of a status of a secured area of the memory device.
8. The memory device of claim 1, wherein the security register further comprises a security protection bit for controlling the change of contents in the secured area.
9. The memory device of claim 1, wherein the status register further includes at least one of a continuous program bit indicative of a continuous program status, a write-enable bit indicative of a write-enable status, and a write-progress bit indicative of a write-progress status.
10. A memory device comprising:
a first means including one protection element for showing a protection status of a block in a memory array;
a first-means write-protect element for determining the changeability of the state of said protection element; and
a second means including one register-protection element for determining the changeability in one of said first-means-write-protect element and said one protection element of the first means.
11. A memory device comprising:
a memory array containing a number of memory blocks;
a status register including at least one protection bit indicative of a write-protection status of at least one corresponding block of the memory blocks; and
a security register coupled with the memory array and the status register, the security register including at least one register-protection bit for preventing a state change in one of a status-register write-protect bit and the at least one protection bit of the status register, the status-register write-protect bit for preventing a state change of the at least one protection bit and a security protection bit for controlling the change of contents in a secured area in the memory array.
US13/155,404 2007-09-28 2011-06-08 Memory devices with data protection Active US8190840B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US13/155,404 US8190840B2 (en) 2007-09-28 2011-06-08 Memory devices with data protection

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/863,254 US8041912B2 (en) 2007-09-28 2007-09-28 Memory devices with data protection
US13/155,404 US8190840B2 (en) 2007-09-28 2011-06-08 Memory devices with data protection

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/863,254 Continuation US8041912B2 (en) 2007-09-28 2007-09-28 Memory devices with data protection

Publications (2)

Publication Number Publication Date
US20110238939A1 US20110238939A1 (en) 2011-09-29
US8190840B2 true US8190840B2 (en) 2012-05-29

Family

ID=40509702

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/863,254 Active 2030-03-04 US8041912B2 (en) 2007-09-28 2007-09-28 Memory devices with data protection
US13/155,404 Active US8190840B2 (en) 2007-09-28 2011-06-08 Memory devices with data protection

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/863,254 Active 2030-03-04 US8041912B2 (en) 2007-09-28 2007-09-28 Memory devices with data protection

Country Status (3)

Country Link
US (2) US8041912B2 (en)
CN (1) CN101399084B (en)
TW (1) TWI380319B (en)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8375189B2 (en) * 2005-12-30 2013-02-12 Intel Corporation Configuring levels of program/erase protection in flash devices
US9627081B2 (en) * 2007-10-05 2017-04-18 Kinglite Holdings Inc. Manufacturing mode for secure firmware using lock byte
TW201020777A (en) * 2008-11-27 2010-06-01 Inventec Corp Software protection method
US8756391B2 (en) * 2009-05-22 2014-06-17 Raytheon Company Multi-level security computing system
KR20120069954A (en) * 2010-12-21 2012-06-29 에스케이하이닉스 주식회사 Non-volatile memory system having block protection function and block status control method thereof
GB2487530A (en) * 2011-01-19 2012-08-01 Nds Ltd Detection of illegal memory readout by using permanently programmed cells
JP5674919B2 (en) * 2011-03-04 2015-02-25 ルネサスエレクトロニクス株式会社 Semiconductor device for preventing malfunction of nonvolatile memory due to momentary power interruption
CN103959199B (en) * 2011-11-30 2017-08-15 英特尔公司 Power saving method and device for first in first out (FIFO) memory
CN103377688B (en) * 2012-04-17 2016-01-06 华邦电子股份有限公司 Serial interface flash memory device and method for writing state buffer thereof
US9129071B2 (en) * 2012-10-24 2015-09-08 Texas Instruments Incorporated Coherence controller slot architecture allowing zero latency write commit
US10257192B2 (en) * 2014-05-29 2019-04-09 Samsung Electronics Co., Ltd. Storage system and method for performing secure write protect thereof
US9747967B2 (en) 2014-09-26 2017-08-29 Intel Corporation Magnetic field-assisted memory operation
US20160188890A1 (en) * 2014-12-26 2016-06-30 Intel Corporation Security mode data protection
US9904586B2 (en) * 2015-10-28 2018-02-27 Intel Corporation Interfacing with block-based storage in a processor
US10691447B2 (en) * 2016-10-07 2020-06-23 Blackberry Limited Writing system software on an electronic device
US20190066632A1 (en) * 2017-08-28 2019-02-28 HKC Corporation Limited Method and system for protecting software data in display panel
US10621354B2 (en) * 2018-02-22 2020-04-14 Dell Products, L.P. Verifying basic input/output system (BIOS) boot block code
CN112703490B (en) * 2018-09-18 2024-06-25 华为技术有限公司 Apparatus and method for memory protection
US10839877B1 (en) * 2019-04-23 2020-11-17 Nxp Usa, Inc. Register protection circuit for hardware IP modules
US20210026543A1 (en) * 2020-09-25 2021-01-28 Intel Corporation Secure address translation services permission table for trust domain extensions
US12050784B2 (en) * 2022-04-27 2024-07-30 Micron Technology, Inc. Data masking for memory
FR3151417A1 (en) * 2023-07-20 2025-01-24 Stmicroelectronics International N.V. Method of securing programs in a memory

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026016A (en) * 1998-05-11 2000-02-15 Intel Corporation Methods and apparatus for hardware block locking in a nonvolatile memory
US6446179B2 (en) * 1998-05-11 2002-09-03 Intel Corporation Computing system with volatile lock architecture for individual block locking on flash memory
CN1496517A (en) 2001-03-22 2004-05-12 �ֹ��� System and method for data synchronization for computer architecture for braadband networks
CN1534492A (en) 2003-03-31 2004-10-06 英特尔公司 High speed buffer storage of nondirect storuge access

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026016A (en) * 1998-05-11 2000-02-15 Intel Corporation Methods and apparatus for hardware block locking in a nonvolatile memory
US6446179B2 (en) * 1998-05-11 2002-09-03 Intel Corporation Computing system with volatile lock architecture for individual block locking on flash memory
CN1496517A (en) 2001-03-22 2004-05-12 �ֹ��� System and method for data synchronization for computer architecture for braadband networks
CN1534492A (en) 2003-03-31 2004-10-06 英特尔公司 High speed buffer storage of nondirect storuge access

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"First Office Action of China Counterpart Application", issued on Jun. 24, 2010, p. 1-p. 10, in which the listed references were cited.

Also Published As

Publication number Publication date
CN101399084B (en) 2011-03-16
CN101399084A (en) 2009-04-01
TW200915341A (en) 2009-04-01
US20090089526A1 (en) 2009-04-02
US20110238939A1 (en) 2011-09-29
TWI380319B (en) 2012-12-21
US8041912B2 (en) 2011-10-18

Similar Documents

Publication Publication Date Title
US8190840B2 (en) Memory devices with data protection
US20070174573A1 (en) Nonvolatile memory system
EP2867776B1 (en) Memory protection
KR100408223B1 (en) A method and apparatus for hardware block locking in a nonvolatile memory
US8375189B2 (en) Configuring levels of program/erase protection in flash devices
KR100489757B1 (en) Memory device having programmable access protection and method of operating the same
EP2263187B1 (en) Peripheral device locking mechanism
US7580281B2 (en) Flash memory device with write protection
EP1606822B1 (en) Universal memory device having a profile storage unit
US5890191A (en) Method and apparatus for providing erasing and programming protection for electrically erasable programmable read only memory
US6453397B1 (en) Single chip microcomputer internally including a flash memory
US8417902B2 (en) One-time-programmable memory emulation
JPH09500469A (en) Memory card and operating method thereof
CN101238473A (en) A secure terminal, a routine and a method of protecting a secret key
US7249231B2 (en) Semiconductor memory with access protection scheme
US6948041B2 (en) Permanent memory block protection in a flash memory device
US12061803B2 (en) System with increasing protected storage area and erase protection
US20100312978A1 (en) Computer system, information protection method, and program
JP3695931B2 (en) Microcomputer
JPS63266562A (en) semiconductor integrated circuit

Legal Events

Date Code Title Description
AS Assignment

Owner name: MACRONIX INTERNATIONAL CO., LTD., TAIWAN

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KUO, YU-LAN;LEE, CHUN-YI;CHANG, KUEN-LONG;AND OTHERS;SIGNING DATES FROM 20110531 TO 20110602;REEL/FRAME:026420/0360

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 8

CC Certificate of correction
MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment: 12

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载