CN111651128A - OTP (one time programmable) implementation method for common memory and memory - Google Patents

OTP (one time programmable) implementation method for common memory and memory Download PDF

Info

Publication number
CN111651128A
CN111651128A CN202010584125.9A CN202010584125A CN111651128A CN 111651128 A CN111651128 A CN 111651128A CN 202010584125 A CN202010584125 A CN 202010584125A CN 111651128 A CN111651128 A CN 111651128A
Authority
CN
China
Prior art keywords
memory
programming
space
write
data
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.)
Pending
Application number
CN202010584125.9A
Other languages
Chinese (zh)
Inventor
王康
范建华
王观武
陈桂林
胡永扬
赵框
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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202010584125.9A priority Critical patent/CN111651128A/en
Publication of CN111651128A publication Critical patent/CN111651128A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0626Reducing size or complexity of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)

Abstract

The invention discloses a method for realizing OTP of a common memory and the memory which is formed by simply reforming the common memory, so that the common memory has a one-time programmable function, and has simple structure and low manufacturing cost. The method for realizing the OTP of the common memory comprises the following steps: (10) dividing a storage space: dividing the storage space of the common memory into a special space and a common space for storing the number of times that the memory can be programmed; (20) and (3) special space configuration: configuring the number N of times that the memory stored in the special space can be burnt into 1; (30) programming control: when data are to be programmed, determining whether the programming is allowed according to the number N of times that the memory can be programmed; (40) data reading and writing: and when the programming is allowed, writing the data to be programmed into the memory, and reducing the number N of times that the memory can be programmed by one. The memory comprises a common memory (1), a programming control module (2) and a data reading and writing module (3).

Description

OTP (one time programmable) implementation method for common memory and memory
Technical Field
The invention belongs to the technical field of integrated circuit memories, and particularly relates to a method for realizing OTP (one time programmable) of a common memory and a memory obtained by the method.
Background
In integrated circuits, a wide variety of memories are required. The memory device can be divided into a general memory and a One Time Programmable (OTP) memory, i.e., an OTP memory, according to the number of allowed programming times.
OTP memories are more commonly used. Are often used to store security-related critical data such as user keys, critical IDs, etc.
However, compared with the common memory, the conventional OTP memory has a complex structure and is expensive.
Therefore, the prior art has the problems that: how to realize the same function as the OTP memory by using a common memory with simple structure and low manufacturing cost, thereby reducing the manufacturing cost and simplifying the difficulty of selecting the stream slice.
Disclosure of Invention
The invention aims to provide a method for realizing OTP of a common memory, which enables the common memory to have a one-time programmable function.
Another objective of the present invention is to provide a memory, which is formed by simply modifying a common memory, has a one-time programmable function, and has a simple structure and a low cost.
The technical solution for realizing the purpose of the invention is as follows:
a common memory OTP implementation method comprises the following steps:
(10) dividing a storage space: dividing the storage space of the common memory into a special space and a common space, wherein the special space is used for storing the number of times that the memory can be written, and the common space is used for storing key data including a user key;
(20) and (3) special space configuration: configuring the number N of times that the memory stored in the special space can be burnt into 1;
(30) programming control: when data are to be programmed, determining whether the programming is allowed according to the number N of times that the memory stored in the special space can be programmed;
(40) data reading and writing: when the programming is allowed, writing the data to be programmed into the corresponding address of the memory through the read-write port, and reducing the number N of times of programming of the memory stored in the special space by one.
The technical solution for realizing another purpose of the invention is as follows:
a memory comprises a common memory 1, a programming control module 2 and a data reading and writing module 3;
the storage space of the ordinary memory 1 is divided into a dedicated space and an ordinary space;
the read and write ports of the programming control module 2 are connected with the special space of the common memory 1, and the read and write control ports are connected with the read and write enabling ports of the data read-write module 3;
the read and write ports of the data read-write module 3 are connected with the common space of the common memory 1;
the special space of the ordinary memory 1 is used for storing the memory programming times, the memory programming times N is configured to be 1, and the ordinary space is used for storing key data including a user key;
the programming control module 2 is used for determining whether to allow the programming according to the number N of times that the memory can be programmed and stored in the special space when the data is to be programmed;
and the data reading and writing module 3 is used for writing the data to be programmed into the address corresponding to the memory through the reading and writing port when the programming is allowed, and reducing the number N of times of programming of the memory stored in the special space by one.
Compared with the prior art, the invention has the following remarkable advantages:
the invention enables the common memory to have the one-time programmable function, and the OTP memory with the one-time programmable function is obtained by simply transforming the common memory, thereby reducing the manufacturing cost of the OTP memory and simplifying the difficulty of selecting the stream chip.
The invention is described in further detail below with reference to the figures and the detailed description.
Drawings
Fig. 1 is a main flow chart of a general memory OTP implementation method of the present invention.
FIG. 2 is a flowchart of the determination step of the programming authorization in FIG. 1.
FIG. 3 is a block diagram of the structure of the memory of the present invention.
In the figure, 1 a common memory, 2 a programming control module and 3 a data reading and writing module.
Detailed Description
As shown in fig. 1, the method for implementing an ordinary memory OTP of the present invention includes the following steps:
(10) dividing a storage space: dividing the storage space of the common memory into a special space and a common space, wherein the special space is used for storing the number of times that the memory can be written, and the common space is used for storing key data including a user key;
(20) and (3) special space configuration: configuring the number N of times that the memory stored in the special space can be burnt into 1;
(30) programming control: when data are to be programmed, determining whether the programming is allowed according to the number N of times that the memory stored in the special space can be programmed;
as shown in fig. 2, the step (30) of determining the programming permission includes:
(31) and (3) writing a legality check: reading a write address when data is to be programmed, and refusing the programming when the write address belongs to a special space;
(32) and (3) reading the number of times of programming: when the write address does not belong to the special space, reading the memory programming times N stored in the special space of the memory;
(33) programming allows: if the number N of times that the memory can be programmed is 1, setting the write enable to be high level 1;
(34) rejection of programming: if the number of times N of memory programming is 0, the write enable is set to 0.
(40) Data reading and writing: when the programming is allowed, writing the data to be programmed into the corresponding address of the memory through the read-write port, and reducing the number N of times of programming of the memory stored in the special space by one.
As shown in fig. 3, the memory of the present invention includes a normal memory 1, a programming control module 2 and a data reading and writing module 3;
the storage space of the ordinary memory 1 is divided into a dedicated space and an ordinary space;
the read and write ports of the programming control module 2 are connected with the special space of the common memory 1, and the read and write control ports are connected with the read and write enabling ports of the data read-write module 3;
the read and write ports of the data read-write module 3 are connected with the common space of the common memory 1;
the special space of the ordinary memory 1 is used for storing the memory programming times, the memory programming times N is configured to be 1, and the ordinary space is used for storing key data including a user key;
the programming control module 2 is used for determining whether to allow the programming according to the number N of times that the memory can be programmed and stored in the special space when the data is to be programmed;
the process of determining whether to allow the programming of this time by the programming control module 2 includes:
reading a write address when data is to be programmed, and refusing the programming when the write address belongs to a special space;
when the write address does not belong to the special space, reading the memory programming times N stored in the special space of the memory;
if the number N of times that the memory can be programmed is 1, setting the write enable to be high level 1;
if the number of times N of memory programming is 0, the write enable is set to 0.
And the data reading and writing module 3 is used for writing the data to be programmed into the address corresponding to the memory through the reading and writing port when the programming is allowed, and reducing the number N of times of programming of the memory stored in the special space by one.
In the implementation process of the method, a user is not allowed to read and write the special space, the programmable number of times is firstly written into the special space of the memory, and when the user writes data, the write enable is generated according to the programmable number of times; and when the user reads data, generating read enable according to the read address.
The method adopts two control modules, a programming control module and a data reading and writing module; the programming control module is used for reading and writing the special space of the memory, judging whether the memory is allowed to be programmed and generating programming enabling signals, wherein the ports comprise a programming enabling port, a special space reading data port, a special space writing data port and a special space address port; the data read-write module is used for executing read-write operation on the common space of the memory, controlling the read-write operation on the special space, and determining whether to execute the programming operation on the common space of the memory according to the programming enable signal of the programming control module, wherein the ports comprise a writing enable input port, a writing data input port, a reading data output port, an address port, a memory writing data port, a memory reading data port and a memory address port.
The data read-write module and the programming control module share one address port, when a user requests to read data, the programming control module judges whether the data is a special space address or not according to a read address, and if the data is read from a common space, the read enable is 1; if the space data is read, the read enable is 0, and the read is not allowed. When a user requests to write data, the writing control module generates a writing enable according to a writing address and the number of times of writing in the special space, and if the writing address is the writing special space or the number of times of writing is 0, the writing enable is 0; if the space is a common space and the number of times of writing is 1, the write enable is 1.

Claims (4)

1. A method for realizing OTP (one time programmable) of a common memory is characterized by comprising the following steps:
(10) dividing a storage space: dividing the storage space of the common memory into a special space and a common space, wherein the special space is used for storing the number of times that the memory can be written, and the common space is used for storing key data including a user key;
(20) and (3) special space configuration: configuring the number N of times that the memory stored in the special space can be burnt into 1;
(30) programming control: when data are to be programmed, determining whether the programming is allowed according to the number N of times that the memory stored in the special space can be programmed;
(40) data reading and writing: when the programming is allowed, writing the data to be programmed into the corresponding address of the memory through the read-write port, and reducing the number N of times of programming of the memory stored in the special space by one.
2. The OTP method of claim 1 wherein the (30) programming authority determining step comprises:
(31) and (3) writing a legality check: reading a write address when data is to be programmed, and refusing the programming when the write address belongs to a special space;
(32) and (3) reading the number of times of programming: when the write address does not belong to the special space, reading the memory programming times N stored in the special space of the memory;
(33) programming allows: if the number N of times that the memory can be programmed is 1, setting the write enable to be high level 1;
(34) rejection of programming: if the number of times N of memory programming is 0, the write enable is set to 0.
3. A memory, characterized by:
the device comprises a common memory (1), a programming control module (2) and a data read-write module (3);
the storage space of the ordinary memory (1) is divided into a special space and an ordinary space;
the read and write ports of the programming control module (2) are connected with the special space of the common memory (1), and the read and write control ports are connected with the read and write enabling ports of the data read-write module (3);
the read and write ports of the data read-write module (3) are connected with the common space of the common memory (1);
the special space of the ordinary memory (1) is used for storing the memory programming times, the memory programming times N is configured to be 1, and the ordinary space is used for storing key data including a user key;
the programming control module (2) is used for determining whether to allow the programming according to the number N of times that the memory can be programmed and stored in the special space when the data is to be programmed;
and the data reading and writing module (3) is used for writing the data to be programmed into the corresponding address of the memory through the reading and writing port when the programming is allowed, and reducing the number N of times of programming of the memory stored in the special space by one.
4. The memory according to claim 3, wherein the process of determining whether to allow the current programming by the programming control module (2) comprises the following steps:
reading a write address when data is to be programmed, and refusing the programming when the write address belongs to a special space;
when the write address does not belong to the special space, reading the memory programming times N stored in the special space of the memory;
if the number N of times that the memory can be programmed is 1, setting the write enable to be high level 1;
if the number of times N of memory programming is 0, the write enable is set to 0.
CN202010584125.9A 2020-06-24 2020-06-24 OTP (one time programmable) implementation method for common memory and memory Pending CN111651128A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010584125.9A CN111651128A (en) 2020-06-24 2020-06-24 OTP (one time programmable) implementation method for common memory and memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010584125.9A CN111651128A (en) 2020-06-24 2020-06-24 OTP (one time programmable) implementation method for common memory and memory

Publications (1)

Publication Number Publication Date
CN111651128A true CN111651128A (en) 2020-09-11

Family

ID=72352437

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010584125.9A Pending CN111651128A (en) 2020-06-24 2020-06-24 OTP (one time programmable) implementation method for common memory and memory

Country Status (1)

Country Link
CN (1) CN111651128A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050105331A1 (en) * 2003-11-13 2005-05-19 Lee Chul-Ho Memory system having flash memory where a one-time programmable block is included
CN102866864A (en) * 2012-08-24 2013-01-09 深圳市江波龙电子有限公司 One-time programmable storage implementation method and storage equipment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050105331A1 (en) * 2003-11-13 2005-05-19 Lee Chul-Ho Memory system having flash memory where a one-time programmable block is included
CN102866864A (en) * 2012-08-24 2013-01-09 深圳市江波龙电子有限公司 One-time programmable storage implementation method and storage equipment

Similar Documents

Publication Publication Date Title
US10324641B2 (en) SRAM-based authentication circuit
CN111009269B (en) Apparatus and method for storing and writing multiple parameter codes of memory operating parameters
TW202020867A (en) Write training in memory devices
KR20070063464A (en) Nonvolatile semiconductor memory
KR102500058B1 (en) Semiconductor device with secure access key and related method and system
US6968435B2 (en) Non-volatile semiconductor memory device
CN116048386A (en) Efuse read-write access control circuit and SoC system thereof
JP2022542155A (en) METHOD OF TESTING MEMORY DEVICE USING LIMITED NUMBER OF TEST PINS AND MEMORY DEVICE USING SAME
JP2784550B2 (en) Semiconductor storage device
CN111651128A (en) OTP (one time programmable) implementation method for common memory and memory
JP5010263B2 (en) Nonvolatile semiconductor memory device
CN102237867A (en) Semiconductor module including module control circuit and method for controlling the same
KR100564033B1 (en) Semiconductor memory having a single buffer selecting input terminal and method of testing the same
US11487469B2 (en) Apparatus and method for controlling access to memory module
US10895998B2 (en) Controller and operating method thereof
US20140286113A1 (en) Semiconductor device having roll call circuit
US6751130B2 (en) Integrated memory device, method of operating an integrated memory, and memory system having a plurality of integrated memories
US20040114418A1 (en) Ferroelectric memory and method of reading data in the same
US20240087625A1 (en) Test mode security circuit
US11714555B2 (en) Control module and control method thereof for synchronous dynamic random access memory
US6870383B2 (en) Semiconductor device with high speed switching of test modes
CN108665934B (en) Device and method for programming EFUSE
US20230162800A1 (en) Secure memory device and erase method thereof
JPH04313891A (en) Ic card
US9287010B1 (en) Repair system for semiconductor apparatus and repair method using the same

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination