CN111192619A - Programming system and method based on gate oxide breakdown type anti-fuse memory array - Google Patents

Programming system and method based on gate oxide breakdown type anti-fuse memory array Download PDF

Info

Publication number
CN111192619A
CN111192619A CN201911360816.4A CN201911360816A CN111192619A CN 111192619 A CN111192619 A CN 111192619A CN 201911360816 A CN201911360816 A CN 201911360816A CN 111192619 A CN111192619 A CN 111192619A
Authority
CN
China
Prior art keywords
data
programming
programmed
module
writing
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
CN201911360816.4A
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.)
Beijing Microelectronic Technology Institute
Mxtronics Corp
Original Assignee
Beijing Microelectronic Technology Institute
Mxtronics Corp
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 Beijing Microelectronic Technology Institute, Mxtronics Corp filed Critical Beijing Microelectronic Technology Institute
Priority to CN201911360816.4A priority Critical patent/CN111192619A/en
Publication of CN111192619A publication Critical patent/CN111192619A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/18Auxiliary circuits, e.g. for writing into memory

Landscapes

  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)

Abstract

A programming system and a method based on a gate oxide breakdown type antifuse memory array are provided, wherein the programming system comprises a programming control module, a data storage module, an antifuse unit programming module and a data judgment module, a method for writing in original data and judging the programmed data is adopted, the success rate of first programming is checked, a failed part is marked, the marked data is independently and repeatedly programmed to ensure that programming voltage and current are more concentrated in an unprogrammed successful unit, the success rate of programming can be greatly improved, the discreteness of a breakdown circuit is further reduced, and the reliability of data reading is improved.

Description

Programming system and method based on gate oxide breakdown type anti-fuse memory array
Technical Field
The invention relates to a programming system and method based on a gate oxide breakdown type antifuse memory array, and belongs to the field of antifuse memory chip design.
Background
The principle of the gate oxide breakdown type antifuse memory technology is that a gate oxide layer of a memory cell is broken down by using a high-voltage signal to form an irreversible conductive channel, binary 1 and binary 0 are represented by conduction and non-conduction respectively, and nonvolatile storage of information is achieved. Because the circuit is completely compatible with a standard CMOS manufacturing process, the gate oxide breakdown type anti-fuse memory circuit can be integrated into various integrated circuit chips as a submodule IP, can also be designed into a special large-capacity memory circuit, and is widely applied to the field of important data storage such as system parameters, user information, secret information, application programs and the like.
The traditional programming method of the anti-fuse memory chip is to perform repeated programming and fixed-time programming by writing data, and two problems of the gate oxide breakdown type anti-fuse memory technology are more and more prominent along with the larger design scale of the memory array, wherein one is that the programming success rate is greatly reduced along with the enlargement of the array scale, and the other is that the breakdown resistance distribution of the programmed memory unit is more discrete.
Disclosure of Invention
The technical problem solved by the invention is as follows: aiming at the problem that the programming success rate is easy to reduce caused by the fact that the traditional programming method and system mainly depend on repeated programming of all original data in the prior art, the programming system and method based on the gate oxide breakdown type antifuse memory array are provided.
The technical scheme for solving the technical problems is as follows:
a programming system based on a gate oxide breakdown type anti-fuse memory array comprises a programming control module, a data storage module, an anti-fuse unit programming module and a data judgment module, wherein:
a programming control module: after the data storage module receives and stores the data to be written, a programming and data calling instruction is sent to the anti-fuse unit programming module; after the original data are programmed and written, sending a judgment and data calling instruction to a data judgment module; if the data programming has a part which is not successfully written, sending a data screening instruction to the data storage module;
a data storage module: receiving external input original data, and accessing the original data for calling by an anti-fuse unit programming module or a data judgment module; if the data programming has a part which is not successfully written, screening the data according to the data marked by the address in the data content of the programming data marked by the data screening instruction sent by the programming control module, and sending the data which needs to be continuously programmed after screening to the anti-fuse unit programming module;
anti-fuse cell programming module: receiving programming and data calling instructions of a programming control module, calling original data to be written in a data storage module, programming and writing the original data, and sending the programmed data to a data judgment module; if the data programming has the part which is not successfully written, receiving programming and data calling instructions of the programming control module again, reprogramming the screened data which needs to be continuously programmed, and sending the programmed data to the data judgment module;
a data judgment module: receiving a judgment and data call instruction of the programming control module, calling original data to be written in the data storage module, carrying out exclusive OR operation on the original data to be written and the programmed data, judging the data writing success rate according to the operation result, if the data programming has a writing unsuccessful part, carrying out address marking on the part which is failed to write in the programmed data, returning the marked programmed data to the data storage module, and carrying out exclusive OR operation on the data which is obtained after continuous programming and sent by the anti-fuse unit programming module by using the original data until the data writing success rate is 100%.
The method for determining the success rate of data writing comprises the following steps:
performing XOR operation on the original data and the programmed data to obtain the XOR operation result of all the data addresses, wherein if the XOR operation result is 0, the data corresponding to the data address is a data unit which is successfully programmed; if the result of the exclusive-or operation is 1, the data address corresponding to the data unit is a data unit to be marked, and the success rate of data writing can be obtained according to statistics of the result of the exclusive-or operation.
A programming method based on a gate oxide breakdown type antifuse memory array comprises the following steps:
(1) programming the gate oxide breakdown antifuse unit by taking original data to be written as basic data;
(2) reading all data addresses of the programmed data, performing XOR operation on the programmed data corresponding to each address by using the original data corresponding to each data address, judging whether the data corresponding to each address is successfully written according to the XOR operation result, and acquiring the data writing success rate;
(3) judging according to the success rate of data writing, and if the success rate of data writing is not 100%, and the situation of unsuccessful data writing exists, entering the step (4); if the success rate of data writing is 100%, performing one-time programming writing on all the original data again to finish programming the gate oxide breakdown antifuse unit;
(4) and (4) reprogramming all data addresses with unsuccessful data writing, performing XOR operation on the reprogrammed data, judging whether the data corresponding to each address is successfully written according to the XOR operation result, re-acquiring the data writing success rate, and returning to the step (3).
In the step (2), the result of the exclusive or operation is specifically:
performing XOR operation on the original data and the programmed data to obtain the XOR operation result of all the data addresses, wherein if the XOR operation result is 0, the data corresponding to the data address is a data unit which is successfully programmed; if the result of the exclusive-or operation is 1, the data address corresponding to the data unit is a data unit to be marked, and the success rate of data writing can be obtained according to statistics of the result of the exclusive-or operation.
In the step (1), the gate oxide breakdown antifuse unit is processed by adopting a standard CMOS process.
In the step (4), the number of times of reprogramming the data addresses in which all data writing is unsuccessful is N, and a value range of N is 20 to 30.
In the step (4), if the number of times of reprogramming the data addresses in which all data writing is unsuccessful exceeds the range of N, the gate oxide breakdown antifuse unit fails to program.
Compared with the prior art, the invention has the advantages that:
according to the programming system and method based on the gate oxide breakdown type antifuse memory array, the method that the mark data after programming is generated by adding judgment and exclusive-or operation in the traditional programming method and the mark data is changed again is adopted, the programmable voltage and current are more concentrated on the last unprogrammed unit in the continuous programming operation process, the breakdown success of the last unprogrammed unit is facilitated, meanwhile, the consistency of the breakdown resistance of each memory unit can be further improved by performing one-time repeated programming operation on the original data after all data are written, and the reading reliability is improved.
Drawings
FIG. 1 is a flow chart of a programming method provided by the present invention;
FIG. 2 is a schematic diagram of a programming system provided by the present invention;
Detailed Description
A programming system and method based on a gate oxide breakdown type antifuse memory array are mainly characterized in that a programming method of a gate oxide breakdown type antifuse memory technology is improved, operations such as readback, comparison, exclusive OR operation and the like are added in the programming step to automatically generate next programming data according to the programming effect, and original data are repeatedly written into the memory after programming is successful, so that the programming success rate and the programming reliability of the gate oxide breakdown type antifuse memory array can be effectively improved.
As shown in fig. 1, the specific steps of the programming method based on the gate oxide breakdown type antifuse memory array mainly include the following steps:
(1) programming a gate oxide breakdown antifuse unit by taking original data to be written as basic data, wherein the gate oxide breakdown antifuse unit is processed by adopting a standard CMOS (complementary metal oxide semiconductor) process;
(2) reading all data addresses of the programmed data, performing XOR operation on the programmed data corresponding to each address by using the original data corresponding to each data address, judging whether the data corresponding to each address is successfully written according to the XOR operation result, and acquiring the data writing success rate, wherein:
the exclusive or operation result is specifically:
performing XOR operation on the original data and the programmed data to obtain the XOR operation result of all the data addresses, wherein if the XOR operation result is 0, the data corresponding to the data address is a data unit which is successfully programmed; if the result of the exclusive-or operation is 1, the data address corresponding to the data is a data unit to be marked, and the success rate of data writing can be obtained according to the statistics of the result of the exclusive-or operation;
(3) judging according to the success rate of data writing, and if the success rate of data writing is not 100%, and the situation of unsuccessful data writing exists, entering the step (4); if the success rate of data writing is 100%, performing one-time programming writing on all the original data again, increasing the programming reliability of the gate oxide breakdown antifuse unit, and finishing programming the gate oxide breakdown antifuse unit;
(4) and (4) reprogramming all data addresses with unsuccessful data writing, performing XOR operation on the reprogrammed data, judging whether the data corresponding to each address is successfully written according to the XOR operation result, re-acquiring the data writing success rate, and returning to the step (3).
Meanwhile, the number of times of reprogramming the data is limited, the number of times of reprogramming all data write-in unsuccessful data addresses is N, the value range of N is 20-30, and after the value range is exceeded, the gate oxide breakdown antifuse unit fails to program.
The steps of the method are realized by a programming system based on a gate oxide breakdown type antifuse memory array, as shown in fig. 2, the system mainly comprises:
the programming control module, data storage module, anti-fuse unit programming module, data judge module, wherein:
a programming control module: after the data storage module receives and stores the data to be written, a programming and data calling instruction is sent to the anti-fuse unit programming module; after the original data is programmed and written, sending programming and data calling instructions to a data judgment module; if the data programming has a part which is not successfully written, sending a data screening instruction to the data storage module;
a data storage module: receiving external input original data, and accessing the original data for calling by an anti-fuse unit programming module or a data judgment module; if the data programming has a part which is not successfully written, screening the data according to the data marked by the address in the data content of the programming data marked by the data screening instruction sent by the programming control module, and sending the data which needs to be continuously programmed after screening to the anti-fuse unit programming module;
anti-fuse cell programming module: receiving programming and data calling instructions of a programming control module, calling original data to be written in a data storage module, programming and writing the original data, and sending the programmed data to a data judgment module; if the data programming has the part which is not successfully written, receiving programming and data calling instructions of the programming control module again, reprogramming the screened data which needs to be continuously programmed, and sending the programmed data to the data judgment module;
a data judgment module: receiving a judgment and data call instruction of the programming control module, calling original data to be written in the data storage module, carrying out exclusive OR operation on the original data to be written and the programmed data, judging the data writing success rate according to the operation result, if the data programming has a writing unsuccessful part, carrying out address marking on the part which is failed to write in the programmed data, returning the marked programmed data to the data storage module, and carrying out exclusive OR operation on the data which is obtained after continuous programming and sent by the anti-fuse unit programming module by using the original data until the data writing success rate is 100%.
The method for determining the success rate of data writing comprises the following steps:
performing XOR operation on the original data and the programmed data to obtain the XOR operation result of all the data addresses, wherein if the XOR operation result is 0, the data corresponding to the data address is a data unit which is successfully programmed; if the result of the exclusive-or operation is 1, the data address corresponding to the data unit is a data unit to be marked, and the success rate of data writing can be obtained according to statistics of the result of the exclusive-or operation.
The following is further illustrated with reference to specific examples:
(1) the data storage module is a memory, the data bit width of the memory is 8, the original data needing programming at the first time is 11010011, 8 gate oxide breakdown antifuse units of the first address are programmed, and the programming frequency X is recorded as 1;
(2) performing a read operation on the current address, assuming that the read back data is 10000001;
(3) performing bitwise exclusive-or operation on the read-back data 10000001 and the original 11010011 to obtain 01010010, wherein the success rate is 62.5%;
(4) performing a programming operation again by using the new data 01010010 generated after the exclusive or as programming data;
(5) reading the current address again, assuming that the read-back data is 11010001, performing bitwise exclusive-or operation on the read-back data and the original data, and obtaining a result of 00000010, wherein the success rate is 87.5%;
(6) the success rate is not 100%, so the programming times X are accumulated to be 1, new data 00000010 generated after XOR is used as programming data, and the programming operation is performed again;
(7) performing reading operation on the current address, assuming that the read-back data is 11010011, performing bitwise exclusive-or operation on the read-back data and the original data, wherein the result is 00000000, and the success rate is 100%;
(8) since the success rate is 100%, indicating that the current address has been successfully programmed, the last programming operation is performed with the original data 11010011 to improve the programming reliability.
(9) The above operation is repeated for the next address and data until all data is programmed.
The contents not mentioned in the present invention are all the common knowledge of those skilled in the art.

Claims (7)

1. A programming system based on a gate oxide breakdown type antifuse memory array, comprising: the anti-fuse unit programming device comprises a programming control module, a data storage module, an anti-fuse unit programming module and a data judgment module, wherein:
a programming control module: after the data storage module receives and stores the data to be written, a programming and data calling instruction is sent to the anti-fuse unit programming module; after the original data are programmed and written, sending a judgment and data calling instruction to a data judgment module; if the data programming has a part which is not successfully written, sending a data screening instruction to the data storage module;
a data storage module: receiving external input original data, and accessing the original data for calling by an anti-fuse unit programming module or a data judgment module; if the data programming has a part which is not successfully written, screening the data according to the data marked by the address in the data content of the programming data marked by the data screening instruction sent by the programming control module, and sending the data which needs to be continuously programmed after screening to the anti-fuse unit programming module;
anti-fuse cell programming module: receiving programming and data calling instructions of a programming control module, calling original data to be written in a data storage module, programming and writing the original data, and sending the programmed data to a data judgment module; if the data programming has the part which is not successfully written, receiving programming and data calling instructions of the programming control module again, reprogramming the screened data which needs to be continuously programmed, and sending the programmed data to the data judgment module;
a data judgment module: receiving a judgment and data call instruction of the programming control module, calling original data to be written in the data storage module, carrying out exclusive OR operation on the original data to be written and the programmed data, judging the data writing success rate according to the operation result, if the data programming has a writing unsuccessful part, carrying out address marking on the part which is failed to write in the programmed data, returning the marked programmed data to the data storage module, and carrying out exclusive OR operation on the data which is obtained after continuous programming and sent by the anti-fuse unit programming module by using the original data until the data writing success rate is 100%.
2. The programming system of claim 1, wherein: the method for determining the success rate of data writing comprises the following steps:
performing XOR operation on the original data and the programmed data to obtain the XOR operation result of all the data addresses, wherein if the XOR operation result is 0, the data corresponding to the data address is a data unit which is successfully programmed; if the result of the exclusive-or operation is 1, the data address corresponding to the data unit is a data unit to be marked, and the success rate of data writing can be obtained according to statistics of the result of the exclusive-or operation.
3. A programming method based on a gate oxide breakdown type antifuse memory array is characterized by comprising the following steps:
(1) programming the gate oxide breakdown antifuse unit by taking original data to be written as basic data;
(2) reading all data addresses of the programmed data, performing XOR operation on the programmed data corresponding to each address by using the original data corresponding to each data address, judging whether the data corresponding to each address is successfully written according to the XOR operation result, and acquiring the data writing success rate;
(3) judging according to the success rate of data writing, and if the success rate of data writing is not 100%, and the situation of unsuccessful data writing exists, entering the step (4); if the success rate of data writing is 100%, performing one-time programming writing on all the original data again to finish programming the gate oxide breakdown antifuse unit;
(4) and (4) reprogramming all data addresses with unsuccessful data writing, performing XOR operation on the reprogrammed data, judging whether the data corresponding to each address is successfully written according to the XOR operation result, re-acquiring the data writing success rate, and returning to the step (3).
4. The method of claim 3, wherein the method comprises: in the step (2), the result of the exclusive or operation is specifically:
performing XOR operation on the original data and the programmed data to obtain the XOR operation result of all the data addresses, wherein if the XOR operation result is 0, the data corresponding to the data address is a data unit which is successfully programmed; if the result of the exclusive-or operation is 1, the data address corresponding to the data unit is a data unit to be marked, and the success rate of data writing can be obtained according to statistics of the result of the exclusive-or operation.
5. The method of claim 3, wherein the method comprises: in the step (1), the gate oxide breakdown antifuse unit is processed by adopting a standard CMOS process.
6. The method of claim 3, wherein the method comprises: in the step (4), the number of times of reprogramming the data addresses in which all data writing is unsuccessful is N, and a value range of N is 20 to 30.
7. The method of claim 3, wherein the method comprises: in the step (4), if the number of times of reprogramming the data addresses in which all data writing is unsuccessful exceeds the range of N, the gate oxide breakdown antifuse unit fails to program.
CN201911360816.4A 2019-12-25 2019-12-25 Programming system and method based on gate oxide breakdown type anti-fuse memory array Pending CN111192619A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911360816.4A CN111192619A (en) 2019-12-25 2019-12-25 Programming system and method based on gate oxide breakdown type anti-fuse memory array

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911360816.4A CN111192619A (en) 2019-12-25 2019-12-25 Programming system and method based on gate oxide breakdown type anti-fuse memory array

Publications (1)

Publication Number Publication Date
CN111192619A true CN111192619A (en) 2020-05-22

Family

ID=70707646

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911360816.4A Pending CN111192619A (en) 2019-12-25 2019-12-25 Programming system and method based on gate oxide breakdown type anti-fuse memory array

Country Status (1)

Country Link
CN (1) CN111192619A (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100524525C (en) * 2004-04-07 2009-08-05 株式会社东芝 Semiconductor integrated circuit device including OPT memory, and method of programming OPT memory
CN101561796A (en) * 2008-05-27 2009-10-21 威盛电子股份有限公司 A micro processor and a method for writing a new value of a duplicable non volatile state of the micro processor thereof
US20110235388A1 (en) * 2010-03-24 2011-09-29 Kabushiki Kaisha Toshiba Nonvolatile semiconductor storage device
CN104425029A (en) * 2013-09-10 2015-03-18 美格纳半导体有限公司 Memory programming method and apparatus
CN106952665A (en) * 2017-03-16 2017-07-14 成都信息工程大学 A kind of circuit for accessing otp memory
CN109524050A (en) * 2018-11-13 2019-03-26 中国电子科技集团公司第四十七研究所 A kind of antifuse memory self-test and self-repair method

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100524525C (en) * 2004-04-07 2009-08-05 株式会社东芝 Semiconductor integrated circuit device including OPT memory, and method of programming OPT memory
CN101561796A (en) * 2008-05-27 2009-10-21 威盛电子股份有限公司 A micro processor and a method for writing a new value of a duplicable non volatile state of the micro processor thereof
US20110235388A1 (en) * 2010-03-24 2011-09-29 Kabushiki Kaisha Toshiba Nonvolatile semiconductor storage device
CN104425029A (en) * 2013-09-10 2015-03-18 美格纳半导体有限公司 Memory programming method and apparatus
CN106952665A (en) * 2017-03-16 2017-07-14 成都信息工程大学 A kind of circuit for accessing otp memory
CN109524050A (en) * 2018-11-13 2019-03-26 中国电子科技集团公司第四十七研究所 A kind of antifuse memory self-test and self-repair method

Similar Documents

Publication Publication Date Title
US10074443B2 (en) Semiconductor device including fuse circuit
US7180775B2 (en) Different numbers of bits per cell in non-volatile memory devices
US20140325118A1 (en) Data writing method, memory controller and memory storage apparatus
US8189362B2 (en) Data encoding scheme to reduce sense current
US4998223A (en) Programmable semiconductor memory apparatus
US9281075B2 (en) Memory programming method and apparatus
US7236418B2 (en) Reduced area, reduced programming voltage CMOS eFUSE-based scannable non-volatile memory bitcell
US20150135040A1 (en) Semiconductor memory device and method of operating the same
JP3969240B2 (en) Semiconductor memory device
US10290363B2 (en) Non-volatile memory device and error compensation method for verifying the same
US7161857B2 (en) Memory redundancy programming
US20140140139A1 (en) Interconnection matrix using semiconductor non-volatile memory
US20120206971A1 (en) Programmable memory device and memory access method
TW202032565A (en) Semiconductor memory device
CN106558341A (en) Semiconductor storage unit
US8169829B2 (en) Memory controller, memory system, recording and reproducing method for memory system, and recording apparatus
US20060259847A1 (en) Data storing method for a non-volatile memory cell array having an error correction code
US20140369143A1 (en) Apparatuses and methods for mapping memory addresses to redundant memory
CN111192619A (en) Programming system and method based on gate oxide breakdown type anti-fuse memory array
US6320791B1 (en) Writing apparatus for a non-volatile semiconductor memory device
US9679646B2 (en) Nonvolatile semiconductor storage device and rewriting method thereof
CN110400595B (en) Anti-cause circuit with correction function
JP2007122640A (en) Storage device
CN103000224A (en) Memory chip erasing method
US20200219561A1 (en) Method of compensating charge loss and source line bias in programing of non-volatile memory device

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200522

RJ01 Rejection of invention patent application after publication