CN111352594A - eFuse中写入数据、读取数据的方法及装置 - Google Patents

eFuse中写入数据、读取数据的方法及装置 Download PDF

Info

Publication number
CN111352594A
CN111352594A CN202010169012.2A CN202010169012A CN111352594A CN 111352594 A CN111352594 A CN 111352594A CN 202010169012 A CN202010169012 A CN 202010169012A CN 111352594 A CN111352594 A CN 111352594A
Authority
CN
China
Prior art keywords
data
index area
area
written
address
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.)
Granted
Application number
CN202010169012.2A
Other languages
English (en)
Other versions
CN111352594B (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.)
Shanghai Zanxin Electronic Technology Co ltd
Original Assignee
Shanghai Luhong Electronic Technology 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 Shanghai Luhong Electronic Technology Co ltd filed Critical Shanghai Luhong Electronic Technology Co ltd
Priority to CN202010169012.2A priority Critical patent/CN111352594B/zh
Publication of CN111352594A publication Critical patent/CN111352594A/zh
Application granted granted Critical
Publication of CN111352594B publication Critical patent/CN111352594B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/0614Improving the reliability 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/0629Configuration or reconfiguration 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]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种eFuse中写入数据、读取数据的方法及装置,涉及半导体芯片技术领域。本发明中,当eFuse中的任一目标地址写入数据时,可以读取目标地址的写入数据,判断目标地址的写入数据与写入数据对应的原始数据是否一致;若目标地址的写入数据与写入数据对应的原始数据不一致,则判断目标地址是否处于根索引区;若目标地址处于根索引区,则可以将目标地址的标志位全部置“1”,并在目标地址的下一地址重新写入数据;若目标地址不处于根索引区,则可以将目标地址存入上一级索引区,并在目标地址的下一地址重新写入数据,从而实现了在eFuse中存在不良bit的情况下,记录并跳过不良bit,重新正确存储数据,能够有效提高芯片良率。

Description

eFuse中写入数据、读取数据的方法及装置
技术领域
本发明涉及半导体芯片技术领域,具体而言,涉及一种eFuse中写入数据、读取数据的方法及装置。
背景技术
电子熔丝(eFuse)是一种一次性可编程非易失性存储器,eFuse保存的信息不会因为系统掉电而丢失,且每个比特(bit)只能编程一次。eFuse被广泛应用于芯片制造中,用于保存数据。eFuse中,每个bit对应一根熔丝,熔丝导通时,在本文档中代表数据“0”,熔丝熔断后,在本文档中代表数据“1”,初始状态的eFuse所有数据都是“0”,写入数据时可以把需要改写为“1”的熔丝熔断。
现有技术条件下,集成电路生产良率无法达到100%,集成在芯片上的eFuse也会夹杂坏的bit;而一个芯片只要有一个bit不良,就可能造成数据无法正确保存,从而导致整个芯片故障。假设单个bit不良率为0.005‰(典型值),对一个256bit的eFuse存储器而言,其不良率可以上升为1.28‰,发生故障的可能性会很高。
然而现有技术中并没有一种有效的方法能够提高芯片良率,降低芯片发生故障的可能性。
发明内容
本发明提供一种eFuse中写入数据、读取数据的方法及装置,可以有效提高芯片良率,降低芯片发生故障的可能性。
第一方面,本发明实施例提供一种eFuse中写入数据的方法,所述eFuse包括:数据区和M级索引区,M为大于0的整数;M级所述索引区中,第1级索引区为根索引区,第M-1级索引区为第M级索引区的上一级索引区,第M级索引区为所述数据区的上一级索引区;所述根索引区中每个字节byte的前m个比特bit是标志位,后(8-m)个bit是索引信息,m为大于0、小于8的整数,且每个byte中标志位的初始状态为全“0”;所述方法包括:当eFuse中的任一目标地址写入数据时,读取目标地址的写入数据;判断所述目标地址的写入数据与写入数据对应的原始数据是否一致;若所述目标地址的写入数据与写入数据对应的原始数据不一致,则判断所述目标地址是否处于根索引区;若所述目标地址处于根索引区,则将所述目标地址的标志位全部置“1”,并在所述目标地址的下一地址重新写入数据;若所述目标地址不处于根索引区,则将所述目标地址存入上一级索引区,并在所述目标地址的下一地址重新写入数据。
可选地,所述方法还包括:若所述目标地址的写入数据与写入数据对应的原始数据一致,则确定所述目标地址写入数据正确。
第二方面,本发明实施例提供一种eFuse中读取数据的方法,所述eFuse包括:数据区和M级索引区,M为大于0的整数;M级所述索引区中,第1级索引区为根索引区,第M-1级索引区为第M级索引区的上一级索引区,第M级索引区为所述数据区的上一级索引区;所述根索引区中每个字节byte的前m个比特bit是标志位,后(8-m)个bit是索引信息,m为大于0、小于8的整数,且每个byte中标志位的初始状态为全“0”;所述方法包括:根据所述根索引区中的数据,以及所述根索引区中的数据中标志位为非全“0”的地址中的数据,获取第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址;读取所述数据区中的数据,并剔除第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据。
可选地,所述根据所述根索引区中的数据,以及所述根索引区中的数据中标志位为非全“0”的地址中的数据,得到第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址,包括:当M等于1时:读取所述根索引区中的数据,并剔除所述根索引区中的数据中标志位为非全“0”的地址中的数据,得到所述根索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址;相应地,所述读取所述数据区中的数据,并剔除第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据,包括:读取所述数据区中的数据,并剔除所述根索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据。
可选地,所述根据所述根索引区中的数据,以及所述根索引区中的数据中标志位为非全“0”的地址中的数据,得到第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址,还包括:当M大于1时:读取所述根索引区中的数据,并剔除所述根索引区中的数据中标志位为非全“0”的地址中的数据,得到所述根索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址;根据所述根索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址,依次从除所述根索引区和所述数据区之外的索引区中,获取上一级索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址,直至得到第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址。
第三方面,本发明实施例提供一种eFuse中写入数据的装置,所述eFuse包括:数据区和M级索引区,M为大于0的整数;M级所述索引区中,第1级索引区为根索引区,第M-1级索引区为第M级索引区的上一级索引区,第M级索引区为所述数据区的上一级索引区;所述根索引区中每个字节byte的前m个比特bit是标志位,后(8-m)个bit是索引信息,m为大于0、小于8的整数,且每个byte中标志位的初始状态为全“0”;所述装置包括:读取模块,用于当eFuse中的任一目标地址写入数据时,读取目标地址的写入数据;第一判断模块,用于判断所述目标地址的写入数据与写入数据对应的原始数据是否一致;第二判断模块,用于若所述目标地址的写入数据与写入数据对应的原始数据不一致,则判断所述目标地址是否处于根索引区;写入模块,用于若所述目标地址处于根索引区,则将所述目标地址的标志位全部置“1”,并在所述目标地址的下一地址重新写入数据;以及,用于所述目标地址不处于根索引区,则将所述目标地址存入上一级索引区,并在所述目标地址的下一地址重新写入数据。
可选地,所述写入模块,还用于若所述目标地址的写入数据与写入数据对应的原始数据一致,则确定所述目标地址写入数据正确。
第四方面,本发明实施例提供一种eFuse中读取数据的装置,所述eFuse包括:数据区和M级索引区,M为大于0的整数;M级所述索引区中,第1级索引区为根索引区,第M-1级索引区为第M级索引区的上一级索引区,第M级索引区为所述数据区的上一级索引区;所述根索引区中每个字节byte的前m个比特bit是标志位,后(8-m)个bit是索引信息,m为大于0、小于8的整数,且每个byte中标志位的初始状态为全“0”;所述装置包括:第一获取模块,用于根据所述根索引区中的数据,以及所述根索引区中的数据中标志位为非全“0”的地址中的数据,获取第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址;第二获取模块,用于读取所述数据区中的数据,并剔除第M级索引区中记录的数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据。
可选地,所述第一获取模块具体用于,当M等于1时:读取所述根索引区中的数据,并剔除所述根索引区中的数据中标志位为非全“0”的地址中的数据,得到所述根索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址;相应地,所述第二获取模块,具体用于读取所述数据区中的数据,并剔除所述根索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据。
可选地,所述第一获取模块具体还用于,当M大于1时:读取所述根索引区中的数据,并剔除所述根索引区中的数据中标志位为非全“0”的地址中的数据,得到所述根索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址;根据所述根索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址,依次从除所述根索引区和所述数据区之外的索引区中,获取上一级索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址,直至得到第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址。
第五方面,本发明实施例提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储介质之间通过所述总线通信,所述处理器执行所述机器可读指令,以执行如第一方面所述的eFuse中写入数据的方法、或如第二方面所述的eFuse中读取数据的方法。
第六方面,本发明实施例还提供一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如第一方面所述的eFuse中写入数据的方法、或如第二方面所述的eFuse中读取数据的方法。
本发明的有益效果是:
本发明实施例中,当eFuse中的任一目标地址写入数据时,可以读取目标地址的写入数据,判断目标地址的写入数据与写入数据对应的原始数据是否一致;若目标地址的写入数据与写入数据对应的原始数据不一致,则判断目标地址是否处于根索引区;若目标地址处于根索引区,则可以将目标地址的标志位全部置“1”,并在目标地址的下一地址重新写入数据;若目标地址不处于根索引区,则可以将目标地址存入上一级索引区,并在目标地址的下一地址重新写入数据,从而实现了在eFuse中存在不良bit的情况下,记录并跳过不良bit,重新正确存储数据,能够有效提高芯片良率,降低芯片发生故障的可能性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的eFuse的结构示意图;
图2示出了本发明实施例提供的eFuse中写入数据的方法的流程示意图;
图3示出了本发明实施例提供的eFuse的另一结构示意图;
图4示出了本发明实施例提供的eFuse中读取数据的方法的流程示意图;
图5示出了本发明实施例提供的eFuse中写入数据的装置的结构示意图;
图6示出了本发明实施例提供的eFuse中读取数据的装置的结构示意图;
图7示出了本发明实施例提供的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
常见的芯片存储器包括:带电可擦可编程只读存储器(Electrically ErasableProgrammable read only memory,EEPROM)、闪存(Flash)、电子熔丝(eFuse)等。相比于EEPROM与Flash而言,eFuse更适合低成本、高稳定性的应用场景。
eFuse中,每个bit对应一根熔丝,熔丝导通时,在本文档中代表数据“0”,熔丝熔断后,在本文档中代表数据“1”,初始状态的eFuse所有数据都是“0”,写入数据时可以把需要改写为“1”的熔丝熔断。但是,集成电路生产良率无法达到100%,集成在芯片上的eFuse也会夹杂坏的bit;而一个芯片只要有一个bit不良,就可能造成数据无法正确保存,从而导致整个芯片故障。假设单个bit不良率为0.005‰(典型值),对一个256bit的eFuse存储器而言,其不良率可以上升为1.28‰,发生故障的可能性会很高。
基于此,本发明实施例提供一种eFuse中写入数据的方法,可以在eFuse中存在一定数量的坏bit时,也能正确保存与读取数据,从而可以提高芯片良率,降低芯片发生故障的可能性。该方法的执行主体可以是某个或多个处理器、集成芯片等,本发明对此不作限制。
图1示出了本发明实施例提供的eFuse的结构示意图。
如图1所示,本发明实施例中,可以将eFuse划分为M个索引区和1个数据区,M为大于0的整数。其中,数据区及每个索引区可以分别包括多个字节(byte)的地址,每byte包括8个bit。数据区可以用于保存需要存储的数据。索引区M可以用于记录数据区中写入数据错误的byte地址。索引区1为根索引区,索引区1中每个byte的前m个bit是标志位,m为大于0且小于8的整数,后(8-m)个bit是索引信息;标志位的初始状态为全“0”,即,初始状态下的标志位bit全部为“0”。索引区1可以记录索引区2中写入数据错误的byte地址,索引区2可以记录索引区3中写入数据错误的byte地址,以此类推,索引区M-1可以记录索引区M中写入数据错误的byte地址。
图2示出了本发明实施例提供的eFuse中写入数据的方法的流程示意图。
如图2所示,该eFuse中写入数据的方法,可以包括:
S201、当eFuse中的任一目标地址写入数据时,读取目标地址的写入数据。
S202、判断目标地址的写入数据与写入数据对应的原始数据是否一致。
若否,即目标地址的写入数据与写入数据对应的原始数据不一致,则执行步骤S203;若是,即目标地址的写入数据与写入数据对应的原始数据一致,则执行步骤S206。
当目标地址的写入数据与写入数据对应的原始数据不一致时,表示目标地址写入数据时出错,此时可以根据目标地址处于数据区、根索引区或其他索引区,将出错的目标地址进行记录。具体如下:
S203、判断目标地址是否处于根索引区。
若是,即目标地址处于索引区1时,则可以执行步骤S204;若否,即目标地址处于除索引区1外的其他索引区或数据区时,则可以执行步骤S205。
S204、将目标地址的标志位全部置“1”,并在目标地址的下一地址重新写入数据。
如上所述,根索引区(即索引区1)中每个byte的前m(0<m<8)个bit是标志位,后8-m个bit是索引信息,且标志位的初始状态为全“0”,即,初始状态下的标志位bit全部为“0”。可选地,当后面8-m个bit的索引信息中有坏的bit时,该byte中写入数据时会出现错误,则可以将该byte中的所有标志位全部置“1”,用于标志该byte信息错误。同时,跳过该byte,并在下一个byte中重新写入数据。
S205、将目标地址存入上一级索引区,并在目标地址的下一地址重新写入数据。
如上所述,当目标地址处于数据区时,则可以将目标地址存入数据区的上一级索引区,也即,第M级索引区,在第M级索引区中对数据区中的出错地址进行记录;同时,跳过目标地址,在数据区中目标地址的下一地址(下一byte)重新写入数据。
可选地,可以根据数据区的大小,合理设置第M索引区中的最大写入错误数,当超过该最大写入错误数时,可以认为整个索引区坏掉进而整个eFuse坏掉,以此类推。
S206、确定目标地址写入数据正确。
下面对本发明实施例提供的eFuse中写入数据的方法进行举例说明:
图3示出了本发明实施例提供的eFuse的另一结构示意图。
如图3所示,假设eFuse的读/写最小单位是1byte(1byte中包含8个bit),整个eFuse大小为N个byte,N大于0。每个byte的全局地址为1到N。整个eFuse分为三个部分:第1个byte至第x个byte为索引区Ⅰ,x大于0;第x+1个byte至第x+y个byte为索引区Ⅱ,y大于0;第x+y+1个byte至第x+y+z个byte为数据区,z大于0;其中,x+y+z=N。在索引区Ⅰ内,每个字节的区内地址为1到x;在索引区Ⅱ内,每个字节的区内地址为1到y;在数据区内,每个字节的区内地址为1到z。
存储数据时,可以先从数据区的首地址(x+y+1)开始依次写入,每次写入1byte数据。每写入一次数据,都需要读取刚写入的数据,并与原始数据进行对比,若刚写入的数据与原始数据一致,则表明写入数据正确;若刚写入的数据与原始数据不一致,则表明写入数据错误,当前写入数据的地址中存在坏的bit。假设向地址为x+y+2的byte中写入数据时出现错误,则可以将地址x+y+2存入索引区Ⅱ中,即,在索引区Ⅱ中记录数据区中的地址x+y+2出错。同时,在地址x+y+3中重新写入数据。
与数据区类似,在索引区Ⅱ中写入数据时,每写入一次数据,也需要读取刚写入的数据,并与原始数据进行对比,若刚写入的数据与原始数据一致,则表明写入数据正确;若刚写入的数据与原始数据不一致,则表明写入数据错误,当前写入数据的地址中存在坏的bit。假设向地址为x+5的byte中写入数据时出现错误,则可以将地址x+5存入索引区Ⅰ中,即,在索引区Ⅰ中记录索引区Ⅱ中的地址x+5出错。同时,在地址x+6中重新写入数据。
与数据区和索引区Ⅱ的相同之处在于,在索引区Ⅰ中每写入一次数据时,也需要读取刚写入的数据,并与原始数据进行对比,若刚写入的数据与原始数据一致,则表明写入数据正确;若刚写入的数据与原始数据不一致,则表明写入数据错误,当前写入数据的地址中存在坏的bit。但与数据区和索引区Ⅱ的不同之处在于,索引区Ⅰ为根索引区,当索引区Ⅰ中的某个地址写入数据错误时,不存在用于记录该出错地址的上一级索引区,所以,需要将出错地址的标志位全部置“1”,用于标志该出错地址。以向索引区Ⅰ中地址为7的byte中写入数据时出现错误为例,则可以将地址为7的byte中的标志位全部置为“1”;同时,在地址8中重新写入数据。
由上所述,本发明实施例中,当eFuse中的任一目标地址写入数据时,可以读取目标地址的写入数据,判断目标地址的写入数据与写入数据对应的原始数据是否一致;若目标地址的写入数据与写入数据对应的原始数据不一致,则判断目标地址是否处于根索引区;若目标地址处于根索引区,则可以将目标地址的标志位全部置“1”,并在目标地址的下一地址重新写入数据;若目标地址不处于根索引区,则可以将目标地址存入上一级索引区,并在目标地址的下一地址重新写入数据,从而实现了在eFuse中存在不良bit的情况下,记录并跳过不良bit,重新正确存储数据,能够有效提高芯片良率,降低芯片发生故障的可能性。
基于前述实施例中所述的eFuse中写入数据的方法、以及图3所示的索引区Ⅰ、索引区Ⅱ、以及数据区组成的eFuse结构,本发明实施例还对应提供一种eFuse中读取数据的方法,图4示出了本发明实施例提供的eFuse中读取数据的方法的流程示意图。
如图4所示,该eFuse中读取数据的方法,可以包括:
S401、读取索引区Ⅰ中的数据。
S402、剔除索引区Ⅰ的数据中标志位为非全“0”的byte中的数据,得到索引区Ⅱ中出错的byte。
可选地,由前述实施例中所述的eFuse中写入数据的方法可知:当根索引区的byte中写入数据出错时,对byte中的标志位全部置为了“1”,则,相应地在eFuse中读取数据时,应该剔除根索引区(索引区Ⅰ)的数据中标志位全为“1”的byte中的数据;但考虑到根索引区的标志位中也存在坏的bit无法置为“1”的情况,可以认为只要某个byte的标志位中存在有置为“1”的bit(即该byte的标志位非全“0”),即可认为该byte为出错的byte,所以,步骤S402中可以剔除非全“0”的byte中的数据。
S403、读取索引区Ⅱ中的数据。
S404、剔除索引区Ⅱ的数据中出错的byte中的数据,得到数据区中出错的byte。
S405、读取数据区中的数据。
S406、剔除数据区中出错的byte中的数据,得到eFuse中写入的正确数据。
需要说明的是,本发明对索引区的个数、大小,以及索引区和数据区中每个地址的大小均不作限制。例如,索引区的数量可以是1个、2个或更多,索引区或数据区中的每个地址也可以是2byte、3byte等,byte仅仅是本发明中示例性的一种表示存储单位的方法。
也即,在一些实施例中,eFuse也可以为只包含根索引区和数据区的结构,从eFuse中读取数据时,可以先读取根索引区中的数据,并剔除根索引区中的数据中标志位为非全“0”的地址中的数据,直接得到根索引区中记录的数据区中写入数据与写入数据对应的原始数据不一致的地址。然后,可以读取数据区中的数据,并剔除根索引区中记录的数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据。
由于本发明实施例提供的eFuse中读取数据的方法,对应于前述实施例所述的eFuse中写入数据的方法,因此,具有与前述实施例相同的有益效果,在此不再赘述。
基于前述实施例中所述的eFuse中写入数据的方法,本发明实施例对应提供一种eFuse中写入数据的装置,图5示出了本发明实施例提供的eFuse中写入数据的装置的结构示意图。
如图5所示,该eFuse中写入数据的装置,可以包括:读取模块11,用于当eFuse中的任一目标地址写入数据时,读取目标地址的写入数据;第一判断模块12,用于判断目标地址的写入数据与写入数据对应的原始数据是否一致;第二判断模块13,用于若目标地址的写入数据与写入数据对应的原始数据不一致,则判断目标地址是否处于根索引区;写入模块14,用于若目标地址处于根索引区,则将目标地址的标志位全部置“1”,并在目标地址的下一地址重新写入数据;以及,用于目标地址不处于根索引区,则将目标地址存入上一级索引区,并在目标地址的下一地址重新写入数据。
可选地,写入模块14,还可以用于若目标地址的写入数据与写入数据对应的原始数据一致,则确定目标地址写入数据正确。
基于前述实施例中所述的eFuse中读取数据的方法,本发明实施例对应还提供一种eFuse中读取数据的装置,图6示出了本发明实施例提供的eFuse中读取数据的装置的结构示意图。
如图6所示,该eFuse中读取数据的装置,可以包括:第一获取模块21,用于根据根索引区中的数据,以及根索引区中的数据中标志位为非全“0”的地址中的数据,获取第M级索引区中记录的数据区中写入数据与写入数据对应的原始数据不一致的地址;第二获取模块21,用于读取数据区中的数据,并剔除第M级索引区中记录的数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据。
可选地,第一获取模块21具体可以用于,当M等于1时:读取根索引区中的数据,并剔除根索引区中的数据中标志位为非全“0”的地址中的数据,得到根索引区中记录的数据区中写入数据与写入数据对应的原始数据不一致的地址;相应地,第二获取模块,具体用于读取数据区中的数据,并剔除根索引区中记录的数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据。
可选地,第一获取模块21具体还可以用于,当M大于1时:读取根索引区中的数据,并剔除根索引区中的数据中标志位为非全“0”的地址中的数据,得到根索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址;根据根索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址,依次从除根索引区和数据区之外的索引区中,获取上一级索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址,直至得到第M级索引区中记录的数据区中写入数据与写入数据对应的原始数据不一致的地址。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置的具体工作过程,可以参考前述方法实施例中方法的对应过程,本发明中不再赘述。
本发明实施例提供的eFuse中写入数据的装置对应于前述方法实施例中所述的eFuse中写入数据的方法,eFuse中读取数据的装置对应于前述方法实施例中所述的eFuse中读取数据的方法,因此,装置实施例具有前述方法实施例中所述的全部有益效果,在此亦不再赘述。
本发明实施例还提供一种电子设备,图7示出了本发明实施例提供的电子设备的结构示意图。
如图7所示,该电子设备可以包括:处理器100、存储介质200和总线(图中未示出),存储介质200存储有处理器100可执行的机器可读指令,当电子设备运行时,处理器100与存储介质200之间通过总线通信,处理器100执行机器可读指令,以执行如前述方法实施例中所述的eFuse中写入数据的方法、或eFuse中读取数据的方法。具体实现方式和技术效果类似,在此不再赘述。
为了便于说明,在上述电子设备中仅描述了一个处理器。然而,应当注意,本发明中的电子设备还可以包括多个处理器,因此本发明中描述的一个处理器执行的步骤也可以由多个处理器联合执行或单独执行。例如,电子设备的处理器执行步骤A和步骤B,则应该理解,步骤A和步骤B也可以由两个不同的处理器共同执行或者在一个处理器中单独执行。例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一处理器和第二处理器共同执行步骤A和B等。
在一些实施例中,处理器可以包括一个或多个处理核(例如,单核处理器(S)或多核处理器(S))。仅作为举例,处理器可以包括中央处理单元(Central Processing Unit,CPU)、专用集成电路(Application Specific Integrated Circuit,ASIC)、专用指令集处理器(Application Specific Instruction-set Processor,ASIP)、图形处理单元(Graphics Processing Unit,GPU)、物理处理单元(Physics Processing Unit,PPU)、数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field ProgrammableGate Array,FPGA)、可编程逻辑器件(Programmable Logic Device,PLD)、控制器、微控制器单元、简化指令集计算机(Reduced Instruction Set Computing,RISC)、或微处理器等,或其任意组合。
本发明实施例还提供一种存储介质,存储介质上存储有计算机程序,计算机程序被处理器运行时执行如前述方法实施例中所述的eFuse中写入数据的方法、或eFuse中读取数据的方法。具体实现方式和技术效果类似,在此同样不再赘述。
可选地,该存储介质可以是U盘、移动硬盘、ROM、RAM、磁碟或者光盘等。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种电子熔丝eFuse中写入数据的方法,其特征在于,所述eFuse包括:数据区和M级索引区,M为大于0的整数;M级所述索引区中,第1级索引区为根索引区,第M-1级索引区为第M级索引区的上一级索引区,第M级索引区为所述数据区的上一级索引区;所述根索引区中每个字节byte的前m个比特bit是标志位,后(8-m)个bit是索引信息,m为大于0、小于8的整数,且每个byte中标志位的初始状态为全“0”;所述方法包括:
当eFuse中的任一目标地址写入数据时,读取目标地址的写入数据;
判断所述目标地址的写入数据与写入数据对应的原始数据是否一致;
若所述目标地址的写入数据与写入数据对应的原始数据不一致,则判断所述目标地址是否处于根索引区;
若所述目标地址处于根索引区,则将所述目标地址的标志位全部置“1”,并在所述目标地址的下一地址重新写入数据;
若所述目标地址不处于根索引区,则将所述目标地址存入上一级索引区,并在所述目标地址的下一地址重新写入数据。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若所述目标地址的写入数据与写入数据对应的原始数据一致,则确定所述目标地址写入数据正确。
3.一种eFuse中读取数据的方法,其特征在于,所述eFuse包括:数据区和M级索引区,M为大于0的整数;M级所述索引区中,第1级索引区为根索引区,第M-1级索引区为第M级索引区的上一级索引区,第M级索引区为所述数据区的上一级索引区;所述根索引区中每个字节byte的前m个比特bit是标志位,后(8-m)个bit是索引信息,m为大于0、小于8的整数,且每个byte中标志位的初始状态为全“0”;所述方法包括:
根据所述根索引区中的数据,以及所述根索引区中的数据中标志位为非全“0”的地址中的数据,获取第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址;
读取所述数据区中的数据,并剔除第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据。
4.根据权利要求3所述的方法,其特征在于,所述根据所述根索引区中的数据,以及所述根索引区中的数据中标志位为非全“0”的地址中的数据,得到第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址,包括:
当M等于1时:
读取所述根索引区中的数据,并剔除所述根索引区中的数据中标志位为非全“0”的地址中的数据,得到所述根索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址;
相应地,所述读取所述数据区中的数据,并剔除第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据,包括:
读取所述数据区中的数据,并剔除所述根索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据。
5.根据权利要求4所述的方法,其特征在于,所述根据所述根索引区中的数据,以及所述根索引区中的数据中标志位为非全“0”的地址中的数据,得到第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址,还包括:
当M大于1时:
读取所述根索引区中的数据,并剔除所述根索引区中的数据中标志位为非全“0”的地址中的数据,得到所述根索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址;
根据所述根索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址,依次从除所述根索引区和所述数据区之外的索引区中,获取上一级索引区中记录的下一级索引区中写入数据与写入数据对应的原始数据不一致的地址,直至得到第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址。
6.一种eFuse中写入数据的装置,其特征在于,所述eFuse包括:数据区和M级索引区,M为大于0的整数;M级所述索引区中,第1级索引区为根索引区,第M-1级索引区为第M级索引区的上一级索引区,第M级索引区为所述数据区的上一级索引区;所述根索引区中每个字节byte的前m个比特bit是标志位,后(8-m)个bit是索引信息,m为大于0、小于8的整数,且每个byte中标志位的初始状态为全“0”;所述装置包括:
读取模块,用于当eFuse中的任一目标地址写入数据时,读取目标地址的写入数据;
第一判断模块,用于判断所述目标地址的写入数据与写入数据对应的原始数据是否一致;
第二判断模块,用于若所述目标地址的写入数据与写入数据对应的原始数据不一致,则判断所述目标地址是否处于根索引区;
写入模块,用于若所述目标地址处于根索引区,则将所述目标地址的标志位全部置“1”,并在所述目标地址的下一地址重新写入数据;以及,用于所述目标地址不处于根索引区,则将所述目标地址存入上一级索引区,并在所述目标地址的下一地址重新写入数据。
7.根据权利要求6所述的装置,其特征在于,所述写入模块,还用于若所述目标地址的写入数据与写入数据对应的原始数据一致,则确定所述目标地址写入数据正确。
8.一种eFuse中读取数据的装置,其特征在于,所述eFuse包括:数据区和M级索引区,M为大于0的整数;M级所述索引区中,第1级索引区为根索引区,第M-1级索引区为第M级索引区的上一级索引区,第M级索引区为所述数据区的上一级索引区;所述根索引区中每个字节byte的前m个比特bit是标志位,后(8-m)个bit是索引信息,m为大于0、小于8的整数,且每个byte中标志位的初始状态为全“0”;所述装置包括:
第一获取模块,用于根据所述根索引区中的数据,以及所述根索引区中的数据中标志位为非全“0”的地址中的数据,获取第M级索引区中记录的所述数据区中写入数据与写入数据对应的原始数据不一致的地址;
第二获取模块,用于读取所述数据区中的数据,并剔除第M级索引区中记录的数据区中写入数据与写入数据对应的原始数据不一致的地址中的数据,得到eFuse中写入的正确数据。
9.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储介质之间通过所述总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1或2所述的eFuse中写入数据的方法、或如权利要求3-5任一项所述的eFuse中读取数据的方法。
10.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1或2所述的eFuse中写入数据的方法、或如权利要求3-5任一项所述的eFuse中读取数据的方法。
CN202010169012.2A 2020-03-12 2020-03-12 eFuse中写入数据、读取数据的方法及装置 Active CN111352594B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010169012.2A CN111352594B (zh) 2020-03-12 2020-03-12 eFuse中写入数据、读取数据的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010169012.2A CN111352594B (zh) 2020-03-12 2020-03-12 eFuse中写入数据、读取数据的方法及装置

Publications (2)

Publication Number Publication Date
CN111352594A true CN111352594A (zh) 2020-06-30
CN111352594B CN111352594B (zh) 2023-06-20

Family

ID=71194405

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010169012.2A Active CN111352594B (zh) 2020-03-12 2020-03-12 eFuse中写入数据、读取数据的方法及装置

Country Status (1)

Country Link
CN (1) CN111352594B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113010121A (zh) * 2021-05-25 2021-06-22 高拓讯达(北京)科技有限公司 一种数据修改方法、装置、设备及存储介质
CN114625385A (zh) * 2022-03-17 2022-06-14 集睿致远(厦门)科技有限公司 一种芯片efuse数据烧写方法、装置及存储介质
CN117111857A (zh) * 2023-09-15 2023-11-24 上海合芯数字科技有限公司 读取数据信息的方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130173970A1 (en) * 2012-01-01 2013-07-04 Mosys, Inc. Memory device with background built-in self-testing and background built-in self-repair
CN103729303A (zh) * 2014-01-20 2014-04-16 飞天诚信科技股份有限公司 一种Flash的数据写入和读取方法
WO2014101420A1 (zh) * 2012-12-28 2014-07-03 华为技术有限公司 一种元数据的构建系统及其方法
WO2016101283A1 (zh) * 2014-12-27 2016-06-30 华为技术有限公司 一种数据处理方法装置及系统
CN110569398A (zh) * 2019-09-09 2019-12-13 广州虎牙科技有限公司 数据处理方法、装置、计算机设备和可读存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130173970A1 (en) * 2012-01-01 2013-07-04 Mosys, Inc. Memory device with background built-in self-testing and background built-in self-repair
WO2014101420A1 (zh) * 2012-12-28 2014-07-03 华为技术有限公司 一种元数据的构建系统及其方法
CN103729303A (zh) * 2014-01-20 2014-04-16 飞天诚信科技股份有限公司 一种Flash的数据写入和读取方法
WO2016101283A1 (zh) * 2014-12-27 2016-06-30 华为技术有限公司 一种数据处理方法装置及系统
CN110569398A (zh) * 2019-09-09 2019-12-13 广州虎牙科技有限公司 数据处理方法、装置、计算机设备和可读存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
任小西;张克环;李仁发;: "基于FPGA的一种存储器字节访问方法" *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113010121A (zh) * 2021-05-25 2021-06-22 高拓讯达(北京)科技有限公司 一种数据修改方法、装置、设备及存储介质
CN113010121B (zh) * 2021-05-25 2021-09-07 高拓讯达(北京)科技有限公司 一种数据修改方法、装置、设备及存储介质
CN114625385A (zh) * 2022-03-17 2022-06-14 集睿致远(厦门)科技有限公司 一种芯片efuse数据烧写方法、装置及存储介质
CN117111857A (zh) * 2023-09-15 2023-11-24 上海合芯数字科技有限公司 读取数据信息的方法、装置、设备及存储介质
CN117111857B (zh) * 2023-09-15 2024-05-07 上海合芯数字科技有限公司 读取数据信息的方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN111352594B (zh) 2023-06-20

Similar Documents

Publication Publication Date Title
JP4840859B2 (ja) 半導体装置、及び起動方法
US6917547B2 (en) Non-volatile semiconductor memory device
CN111352594B (zh) eFuse中写入数据、读取数据的方法及装置
US8122303B2 (en) Data structure for flash memory and data reading/writing method thereof
US20070061498A1 (en) Method and System for NAND-Flash Identification without Reading Device ID Table
US7725646B2 (en) Method of using a flash memory for a circular buffer
US9613720B2 (en) Semiconductor storage device
WO2008030377A2 (en) Defective block isolation in a non-volatile memory system
US9514843B2 (en) Methods for accessing a storage unit of a flash memory and apparatuses using the same
US20100195411A1 (en) Semiconductor memory device and fail bit detection method in semiconductor memory device
US20090164869A1 (en) Memory architecture and configuration method thereof
EP3057100B1 (en) Memory device and operating method of same
CN116978435A (zh) 一种eFuse烧写方法
US11669392B2 (en) Non-volatile memory
CN113870931A (zh) 数据写入和数据读取方法及装置、电子设备和存储介质
CN108108118B (zh) 数据写入方法以及存储控制器
CN113380317B (zh) 修复电路和包括修复电路的存储器设备
CN114203252A (zh) 非易失存储器的坏块检测方法、装置、设备及存储介质
CN115705914A (zh) 闪存坏块的检测方法、检测设备和计算机存储介质
US8131954B2 (en) Memory device and data reading method
CN111949198A (zh) 一种坏块管理方法、装置和存储设备
CN118193403B (zh) 数据烧写验证方法、数据烧写验证装置和电子设备
CN118506847B (zh) 存储器存储装置的检测方法及非瞬时计算机可读取记录媒体
CN114267402B (zh) 闪存的坏存储单元测试方法、装置、设备及存储介质
TWI779610B (zh) 偵測快閃記憶體模組的方法及相關的系統晶片

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
TA01 Transfer of patent application right

Effective date of registration: 20201009

Address after: 313300 Zhongde Kechuang building, Xiaoyuan village, Xiaoyuan street, Anji County, Huzhou City, Zhejiang Province

Applicant after: HUZHOU MINHE TECHNOLOGY Co.,Ltd.

Address before: 201203 room 707, building B, 2305 Zuchongzhi Road, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai

Applicant before: SHANGHAI LUHONG ELECTRONIC TECHNOLOGY Co.,Ltd.

TA01 Transfer of patent application right
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240829

Address after: Room 607, 6th Floor, Building 1, No. 560 Shengxia Road, China (Shanghai) Pilot Free Trade Zone, Pudong New Area, Shanghai, 201210

Patentee after: Shanghai zanxin Electronic Technology Co.,Ltd.

Country or region after: China

Address before: 313300 Zhongde Kechuang building, Xiaoyuan street, Xiaoyuan village, Anji County, Huzhou City, Zhejiang Province

Patentee before: HUZHOU MINHE TECHNOLOGY Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right