可编程存储单元、非易失性存储系统及其控制方法与流程

文档序号:20834953发布日期:2020-05-22 16:45阅读:254来源:国知局
可编程存储单元、非易失性存储系统及其控制方法与流程

本发明涉及通信技术,更具体地,涉及可编程存储单元、非易失性存储系统以及非易失性存储系统的控制方法。



背景技术:

目前,芯片内通常设置有非易失性存储器,用于存储系统工作所需的数据。例如,在一些高精度模拟电路中,为了减少失配等现象所带来的性能影响,经常需要在芯片中设置修调电路来保证精度,该修调电路由非易失性存储器实现,使得修调信息不会在芯片掉电之后丢失。

芯片中通常采用可擦除可编程只读存储器(erasableprogrammableread-onlymemory,eprom)作为非易失性存储器,其不足之处在于:在对eprom执行相应的操作时需要提供一个高电压(高于其它电路的正常工作电压),这就对芯片的制造工艺提出了较高的耐压需求,并需要芯片提供用于产生该高电压的内部升压电路和/或用于接收该高电压的额外的压焊点,使得芯片内部电路复杂,且不利于降低芯片面积、成本和设计难度。



技术实现要素:

鉴于上述问题,本发明的目的在于提供一种可编程存储单元、非易失性存储系统及其控制方法,以减少用于通信/供电的压焊点数量,从而简化电路之间的连接关系,并降低芯片的面积、成本以及设计难度。

根据本发明的第一方面,提供了非易失性存储系统的控制方法,其特征在于,所述非易失性存储系统包括控制单元、可编程存储单元以及用于连接所述控制单元和所述可编程存储单元的通信传输线,所述可编程存储单元包括至少一个电熔丝存储器,所述控制方法包括:通过控制通信传输线的传输线电压,在所述控制单元和所述可编程存储单元之间传输串行数据;以及根据所述串行数据产生熔融电流,以将所述串行数据中的目标数据存储在对应的所述电熔丝存储器中。

在一些实施例中,所述熔融电流利用所述可编程存储单元的工作电压产生。

在一些实施例中,在传输所述串行数据的步骤之前,所述控制方法还包括:在初始化阶段,通过所述通信传输线执行握手操作,以使所述控制单元和所述可编程存储单元进入可相互通信的状态,并将所述传输线电压稳定在复位电压。

在一些实施例中,控制方法还包括:提供所述通信传输线的复位路径,从而当所述通信传输线被释放时,所述传输线电压被复位至所述复位电压。

在一些实施例中,执行所述握手操作的步骤包括:所述控制单元向所述通信传输线提供第一逻辑电压以形成邀请脉冲,随后释放所述通信传输线;所述可编程存储单元检测所述传输线电压,在检测到所述邀请脉冲之后,所述可编程存储单元向所述通信传输线提供所述第一逻辑电压以形成响应脉冲,随后释放所述通信传输线;以及所述控制单元检测到所述响应脉冲后,将所述传输线电压复位至所述复位电压。

在一些实施例中,所述控制方法还包括:在所述初始化阶段,所述控制单元检测所述响应脉冲的脉宽,并根据所述脉宽调节所述控制单元在传输数据时的数据保持时间。

在一些实施例中所述控制单元通过所述通信传输线向所述可编程存储单元传输所述串行数据的过程中,在传输所述串行数据的每个数据位时,所述控制单元执行:首先所述控制单元将所述传输线电压由所述复位电压改变为所述第一逻辑电压,并维持第一预设时间;再根据当前传输的数据位的逻辑值控制所述传输线电压,当所述逻辑值为第一逻辑值时所述控制单元将所述传输线电压维持为所述第一逻辑电压,当所述逻辑值为第二逻辑值时将所述传输线电压改变为第二逻辑电压;经历第二预设时间之后,将所述传输线电压复位至所述复位电压。

在一些实施例中,所述可编程存储单元通过所述通信传输线向所述控制单元传输所述串行数据的过程中,在传输所述串行数据的每个数据位时,所述可编程存储单元执行:首先控制单元将所述传输线电压由所述复位电压改变为所述第一逻辑电压,并维持第一预设时间;再根据当前传输的数据位的逻辑值控制所述传输线电压,当所述逻辑值为第一逻辑值时所述可编程存储单元将所述传输线电压维持为所述第一逻辑电压,当所述逻辑值为第二逻辑值时通过复位路径将所述传输线电压改变为第二逻辑电压;经历第二预设时间之后,将所述传输线电压复位至所述复位电压。

在一些实施例中,所述可编程存储单元还包括至少一个镜像寄存器,每个所述镜像寄存器分别与相应的所述电熔丝存储器相连以交换数据,由所述通信传输线提供的所述目标数据先存储在对应的所述镜像寄存器中,再由所述镜像寄存器提供给相应的所述电熔丝存储器,所述电熔丝存储器存储的所述目标数据被读出并存储至相应的所述镜像寄存器中,再由所述镜像寄存器输出。

在一些实施例中,所述串行数据至少包括以下的一种或多种:模式选择数据、镜像寄存器地址、校验位、参考数据、所述目标数据以及可变宽度编程脉冲。

在一些实施例中,所述校验位是由所述模式选择数据、所述镜像寄存器地址、所述目标数据的各位逻辑值计算得到的至少1位逻辑值。

在一些实施例中,所述校验位等于所述模式选择数据、所述镜像寄存器地址、所述目标数据的各位逻辑值进行逻辑相加获得的1位逻辑值。

在一些实施例中,所述控制单元通过所述通信传输线向所述可编程存储单元提供所述模式选择数据,以选择所述可编程存储单元的工作模式,所述可编程存储单元的不同工作模式至少能够实现以下的一种或多种操作:镜像寄存器的写入操作,用于将所述通信传输线和/或相应的所述电熔丝存储器提供的所述目标数据存储在与所述镜像寄存器地址对应的所述镜像寄存器中;镜像寄存器的读出操作,用于将所述镜像寄存器中存储的所述目标数据读出,并提供给相应的所述电熔丝存储器或通过所述通信传输线提供至所述控制单元;对电熔丝存储器的编程操作,用于将由对应的所述镜像寄存器提供的所述目标数据存储在相应的所述电熔丝存储器中;以及从电熔丝存储器读出至镜像寄存器的提取操作,用于将存储在所述电熔丝存储器中的所述目标数据读出至相应的所述镜像寄存器中。

在一些实施例中,执行镜像寄存器的写入操作的步骤包括:所述控制单元通过所述通信传输线依次向所述可编程存储单元提供表征寄存器写入操作的所述模式选择数据、所述镜像寄存器地址、所述校验位以及所述目标数据,所述可编程存储单元对所述传输线电压进行采样,并根据所述校验位对所述模式选择数据、所述镜像寄存器地址以及所述目标数据进行校验,并将校验合格的所述目标数据存储在与所述镜像寄存器地址对应的所述镜像寄存器中。

在一些实施例中,执行镜像寄存器的读出操作的步骤包括:所述控制单元向所述通信传输线依次提供表征寄存器读出操作的所述模式选择数据以及所述镜像寄存器地址,所述可编程存储单元检测所述传输线电压以获得所述模式选择数据和所述镜像寄存器地址;以及所述可编程存储单元根据获得的所述镜像寄存器地址,向所述控制单元传输存储在对应的镜像寄存器中的目标数据,所述控制单元读取所述目标数据。

在一些实施例中,执行所述电熔丝存储器的编程操作的步骤包括:所述控制单元向所述通信传输线依次提供表征寄存器写入操作的所述模式选择数据、所述镜像寄存器地址、所述校验位以及所述目标数据;所述可编程存储单元对所述传输线电压进行采样,根据所述检验位对所述模式选择数据、所述镜像寄存器地址以及所述目标数据进行校验,并将校验合格的所述目标数据存储在相应的所述镜像寄存器中;所述控制单元向所述通信传输线依次提供表征存储器编程操作的所述模式选择数据、所述镜像寄存器地址和所述参考数据;所述控制单元生成多个用于产生所述熔融电流的所述可变宽度编程脉冲;以及所述可编程存储单元对所述传输线电压进行采样,以判断所述参考数据与所述镜像寄存器中存储的所述目标数据是否一致,若一致,则利用所述熔融电流将所述目标数据烧录至相应的所述电熔丝存储器中。

根据本发明的第二方面,提供了一种非易失性存储系统,其特征在于,包括:通信传输线;控制单元,与所述通信传输线相连;可编程存储单元,通过所述通信传输线与所述控制单元相连,所述可编程存储单元包括至少一个电熔丝存储器,其中,所述控制单元和所述可编程存储单元通过控制所述通信传输线的传输线电压实现所述控制单元和所述可编程存储单元之间的串行数据传输,相应的所述电熔丝存储器用于存储所述串行数据中的目标数据。

在一些实施例中,所述可编程存储单元利用所述可编程单元的工作电压产生与所述目标数据对应的熔融电流,以将所述目标数据写入相应的所述电熔丝存储器中。

在一些实施例中,非易失性存储系统,其中,还包括:复位路径,与所述通信传输线相连,用于在所述可编程存储单元和所述控制单元均释放所述通信传输线时,将所述传输线电压复位至复位电压。

在一些实施例中,所述复位路径由复位电阻实现,所述复位电压为低电平电压,所述复位电阻的第一端接参考地电位、第二端与所述通信传输线耦接。

在一些实施例中,所述可编程存储单元还包括:时钟电路,独立于所述控制单元,用于提供时钟信号;子控制模块,与所述通信传输线相连,用于在所述时钟信号的控制下检测所述传输线电压以接收所述串行数据和/或控制所述传输线电压以向所述控制单元提供所述串行数据;以及至少一个镜像寄存器,与所述子控制模块相连并分别与对应的所述电熔丝存储器相连,用于对由所述子控制模块提供给相应的所述电熔丝存储器的所述目标数据或由相应的所述电熔丝存储器对外提供的所述目标数据进行缓存。

在一些实施例中,在传输所述串行数据之前,所述控制单元和所述子控制模块通过握手操作进入可通信状态,并将所述传输线电压稳定在所述复位电压,在所述握手操作中,所述控制单元向所述通信传输线提供邀请脉冲;所述可编程存储单元检测所述传输线电压,并在检测到所述邀请脉冲之后向所述通信传输线提供响应脉冲。

在一些实施例中,所述控制单元包括:计数器,与所述通信传输线耦接,以便通过计数的方式获得表征所述响应脉冲的脉宽的计数值;可调时钟电路,提供数据传输时钟信号,并根据所述计数值和预存的频率查找表调节所述数据传输时钟信号;以及输出电路,基于所述数据传输时钟信号向所述通信传输线提供逻辑电压和/或所述串行数据。

在一些实施例中,所述串行数据至少包括以下的一种或多种:模式选择数据、镜像寄存器地址、校验位、参考数据、所述目标数据以及可变宽度编程脉冲。

在一些实施例中,所述校验位是由所述模式选择数据、所述镜像寄存器地址、所述目标数据的各位逻辑值计算得到的至少1位逻辑值。

在一些实施例中,所述控制单元通过所述通信传输线向所述可编程存储单元提供所述模式选择数据,以选择所述可编程存储单元的工作模式,所述可编程存储单元的不同工作模式至少能够实现以下的一种或多种操作:镜像寄存器的写入操作,用于将所述通信传输线和/或相应的所述电熔丝存储器提供的所述目标数据存储在与所述镜像寄存器地址对应的所述镜像寄存器中;镜像寄存器的读出操作,用于将所述镜像寄存器中存储的所述目标数据读出,并提供给相应的所述电熔丝存储器或通过所述通信传输线提供至所述控制单元;对电熔丝存储器的编程操作,用于将由对应的所述镜像寄存器提供的所述目标数据存储在相应的所述电熔丝存储器中;以及从电熔丝存储器读出至镜像寄存器的提取操作,用于将存储在所述电熔丝存储器中的所述目标数据读出至相应的所述镜像寄存器中。

在一些实施例中,当所述模式选择数据表征镜像寄存器的写入操作时,所述控制单元依次向通信传输线提供所述镜像寄存器地址、所述校验位以及所述目标数据,所述子控制模块检测通信传输线的所述传输线电压,根据所述校验位对接收到的所述模式选择数据、所述镜像寄存器地址以及所述目标数据进行校验,并将校验合格的所述目标数据存储在与所述镜像寄存器地址对应的所述镜像寄存器中。

在一些实施例中,当所述模式选择数据表征镜像寄存器的读出操作时,所述控制单元向所述通信传输线提供所述镜像寄存器地址,所述子控制模块检测所述传输线电压,并根据获得的所述镜像寄存器地址向所述控制端元传输对应的镜像寄存器中存储的目标数据,所述控制单元读取所述目标数据。

在一些实施例中,当所述模式选择数据表征电熔丝存储器的编程操作时,所述控制单元向所述通信传输线依次提供所述镜像寄存器地址、以及与所述目标数据相同的所述参考数据;所述子控制模块检测所述传输线电压,根据所述镜像寄存器地址将相应的所述镜像寄存器中存储的所述目标数据与所述参考数据进行比较,若相同,则所述控制单元根据所述参考数据生成多个用于产生所述熔融电流的所述可变脉宽编程脉冲,并利用所述熔融电流将所述目标数据烧录至相应的所述电熔丝存储器中。

根据本发明的第三方面,还提供了一种可编程存储单元,其特征在于,包括:供电端,用于接收工作电压;通信i/o端,与通信传输线相连,所述通信传输线用于传输串行数据;子控制模块,与所述通信i/o端相连,用于对所述通信传输线的传输线电压进行采样以接收串行数据和/或对所述传输线电压进行控制以通过所述通信传输线提供串行数据;以及至少一个电熔丝存储器,用于利用所述工作电压产生与串行数据中的目标数据对应的熔融电流,从而存储所述目标数据。

在一些实施例中,可编程存储单元还包括至少一个镜像寄存器,每个所述镜像寄存器与所述子控制模块和对应的所述电熔丝存储器相连,用于对所述子控制模块提供给相应的所述电熔丝存储器的目标数据或由相应的所述电熔丝存储器提供的所述目标数据进行缓存。

在一些实施例中,可编程存储单元还包括用于提供时钟信号的时钟电路,所述子控制模块在所述时钟信号的控制下对所述传输线电压进行采样。

在一些实施例中,所述可编程存储单元由单芯片实现。

本发明实施例的可编程存储单元、非易失性存储系统及其控制方法的有益效果在于:通过控制通信传输线的传输线电压实现串行数据的传输,因此无需设置多个用于通信的压焊点;并且,采用了能够在正常的工作电压下完成读写操作的电熔丝存储器作为非易失性存储器件,因此也无需额外设置用于接收其他电压(不同于工作电压)的电压端口,从而能够明显降低用于通信、供电的压焊点/端口数量,简化了电路连接关系,降低了电路的设计难度和成本。

在一些可选的实施例中,可编程存储单元采用内部的时钟电路产生时钟信号,从而不需要控制单元额外向可编程存储单元提供时钟信号,进一步减少了控制单元和可编程存储单元之间连线。进一步的,为了防止可编程存储单元的时钟信号与控制单元的数据传输时钟信号的来源不同导致可编程存储单元对传输线电压的计时偏差和/或对通信传输线上的数据的误采样,在本申请实施例的初始化阶段:控制单元向可编程存储单元提供的邀请脉冲具有足够大的脉宽,从而确保可编程存储单元能够对其作出响应以提供响应脉冲;控制单元对接收到的响应脉冲的持续时间进行检测,并根据检测结果估计可编程存储单元的时钟信号的频率,从而能够根据时钟信号的频率调节数据传输过程中的数据保持时间,使得控制单元传输至可编程存储单元的数据能够被正确地采样。

附图说明

通过以下参照附图对本发明实施例的描述,本发明的上述以及其他目的、特征和优点将更为清楚。

图1a和1b示出本发明实施例的非易失性存储系统的示意性框图。

图2示出本发明实施例的控制单元的示意性框图。

图3示出在初始化阶段,本发明实施例的非易失性存储系统中通信传输线上的传输线电压的波形示意图。

图4示出在执行镜像寄存器的写入操作时,本发明实施例的非易失性存储系统中通信传输线上串行数据的数据结构示意图。

图5a和5b示出在镜像寄存器的写入操作过程中,通信传输线在传输串行数据中的每个数据位时传输线电压vowr的波形示意图。

图6示出在执行对电熔丝存储器的编程操作时,本发明实施例的非易失性存储系统中通信传输线上串行数据的数据结构示意图。

图7a和7b示出在镜像寄存器的读出操作过程中,通信传输线在传输串行数据中每个数据位时传输线电压vowr的波形示意图。

具体实施方式

以下将参照附图更详细地描述本发明的各种实施例。在各个附图中,相同的元件采用相同或类似的附图标记来表示。为了清楚起见,附图中的各个部分没有按比例绘制。

本发明可以各种形式呈现,以下将描述其中一些示例。

图1a和1b示出本发明实施例的非易失性存储系统的示意性框图。

如图1a和1b所示,本发明实施例的非易失性存储系统100包括控制单元110、可编程存储单元120以及连接在控制单元的i/o端io1和可编程存储单元的i/o端io2之间的通信传输线130,该通信传输线130用于在控制单元110和可编程控制单元120之间提供串行传输路径。

其中,可编程存储单元120包括用于非易失性地存储目标数据的至少一个电熔丝存储器123。电熔丝存储器是一种利用电可编程熔丝(efuse)技术实现的单次编程非易失性存储结构,其内部利用电子迁移特性实现了非常小的熔丝结构(例如多晶硅熔丝),通过提供熔融电流,可以使相应的熔丝结构被熔断,从而各个熔丝结构的导通/关断状态可以表征不同的逻辑值,即实现了存储功能。电熔丝存储器的优点在于:1、熔丝结构可以由多晶硅材料实现,由于在标准cmos工艺中mos器件的栅极同样是由多晶硅材料实现,因此熔丝结构的制造工艺可以与标准cmos工艺兼容;2、采用可编程存储单元的工作电压即可产生能够熔断熔丝结构的熔融电流,而无需额外提供用于读写/编程操作的高电压(这里高电压是指高于芯片工作电压的电压,由内部升压电路或独立的高压供电端提供),因此可以减少用于产生高压或支持高压传输的额外成本。

为了尽可能地减少用于通信的压焊点的数量,本实施例将通信传输线130设计为连接在控制单元110和可编程存储单元120之间的单根传输线,也就是说控制单元110的i/o端io1和可编程存储单元120的i/o端io2均由单个压焊点实现。本发明实施例的非易失性存储系统主要通过改变通信传输线130上的传输线电压vowr来实现数据传输,例如:当控制单元110/可编程存储单元120对通信传输线130提供逻辑电压(高电平电压或低电平电压)时,传输线电压vowr等于该逻辑电压以表征通信传输线130传输与该逻辑电压对应的逻辑值(1或0),从而实现控制单元110和可编程存储单元120之间的数据传输(包括控制单元110向可编程存储单元120的数据传输以及可编程存储单元120向控制单元110的数据传输);当控制单元110和可编程存储单元120均释放通信传输线130时,传输线电压vowr被复位至复位电压。

作为一种具体的实施例,通信传输线130的复位电压为低电平电压。具体地,如图1a和1b所示,复位电阻rrst的一端接参考地电位,另一端与通信传输线130耦接以形成能够放电的复位路径,当控制单元110和可编程存储单元120均释放通信传输线130时,传输线电压vowr将被复位电阻rrst拉低至低电平电压,从而实现复位。然而本发明实施例不限于此,通信传输线可以通过其他电路结构或相应的控制信号实现复位,通信传输线130的复位电压也可以为高电平电压。

可选的,如图1a所示,可编程存储单元120还包括子控制模块121和至少一个镜像寄存器122。其中,子控制模块121与可编程存储单元120的i/o端io2相连,用于在时钟信号clk的作用下检测和控制通信传输线130上的传输线电压vowr;每个镜像寄存器122工作在系统正常的工作电压下,且能够与相应的电熔丝存储器123交换数据。具体地,镜像寄存器122用于在上电时经子控制模块121获取即将提供给电熔丝存储器123的数据,或在上电时根据相应指令存储由对应的电熔丝存储器123中读取到的数据并将其提供给其它电路。镜像寄存器122的数量可以与电熔丝存储器123的数量相同,即镜像寄存器122与电熔丝存储器123一一对应,然而本发明的实施例不限于此,在一些其他的实施例中,镜像寄存器的数量也可以与电熔丝存储器的数量不同,即每个镜像寄存器对应多个电熔丝存储器或每个电熔丝存储器对应多个镜像寄存器。

可编程存储单元120可以由独立的芯片实现。可编程存储单元120仅需要一个通信i/o端io2即可实现与控制单元110之间的通信,而无需设置多个用于通信的压焊点,并且,可编程存储单元120采用了能够在正常的工作电压(由供电端p1接收,如图1b所示)下完成读写操作的电熔丝存储器123作为非易失性存储单元,因此,本发明实施例的可编程存储单元120所在的芯片也无需设置用于接收其他电压(不同于工作电压)的电压端口压焊点。可以看出,本发明实施例提供的可编程存储单元所在芯片的压焊点数量较少,简化了可编程存储单元与其它电路的连接关系,降低了电路的设计难度和成本。

下面结合附图对控制单元和可编程存储单元之间的通信方法进行具体描述。

图3示出在初始化阶段,本发明实施例的非易失性存储系统中通信传输线上的传输线电压的波形示意图。

初始化阶段:初始化阶段主要用于执行控制单元110与可编程存储单元120之间的握手操作并将传输线电压vowr稳定在复位电压。如图1a、图1b和图3所示,控制单元110首先向通信传输线130提供第一逻辑电压(例如为高电平电压),使得传输线电压vowr由复位电压变为第一逻辑电压(形成第一边沿,例如为上升沿),可编程存储单元120中的子控制模块121受到第一边沿的触发开始计时(由设置在子控制模块121中的计时振荡器实现);当计时时间达到第一预设时间trsth时,子控制模块121停止计时,并通过可编程存储单元120的i/o端io2检测传输线电压vowr是否恢复至复位电压,即子控制模块121等待控制单元110释放通信传输线130;当控制单元110释放通信传输线130后,通信传输线130的传输线电压vowr例如被复位电阻rrst拉低,从而传输线电压vowr由第一逻辑电压恢复至复位电压(形成下降沿),代表控制单元110完成向通信传输线130提供邀请脉冲的过程;当子控制模块121检测到传输线电压vowr达到复位电压(出现第二边沿,例如为下降沿)时,再次开始计时,当计时时间达到第二预设时间tpdl时,子控制模块121向通信传输线130提供第一逻辑电压,并至少维持第三预设时间tpdh;随后,子控制模块121释放通信传输线130,使得传输线电压vowr再次恢复到复位电压,代表子控制模块121完成向通信传输线130提供响应脉冲的过程。基于上述过程,通信传输线130将控制单元110提供的邀请脉冲传送给可编程存储单元120,可编程存储单元120在检测到邀请脉冲后通过通信传输线130向控制单元110提供响应脉冲,从而控制单元110和可编程存储单元120通过通信传输线130完成了握手操作,使得控制单元110和可编程存储单元120进入可以相互通信的状态。

作为可选的实施例,初始化阶段的持续时间例如为2-bit数据位的传输时间,在第一个数据位传输时间内控制单元110提供邀请脉冲,在第二个数据位传输时间内可编程存储单元120提供响应脉冲且控制单元110在接到响应脉冲后释放通信传输线130,从而将传输线电压vowr稳定为复位电压。

作为可选的实施例,可编程存储单元120采用内部的时钟电路124(独立于控制单元110)产生时钟信号clk,从而不需要控制单元110额外向可编程存储单元120提供时钟信号,进一步减少了控制单元110和可编程存储单元120之间连线。

进一步地,在时钟信号clk由可编程存储单元120内部的时钟电路124提供的情况下,由于可编程存储单元120的时钟信号clk与控制单元110的数据传输时钟信号的来源不同,因此可编程存储单元120提供的时钟信号clk与控制单元110的数据传输时钟信号(控制单元110基于数据传输时钟信号输出串行数据)之间可能存在频率偏差,这将可能导致可编程存储单元120的计时时间存在偏差,在这种情况下,控制单元110基于数据传输时钟信号设置的数据保持时间(在传输每个数据位时传输线电压vowr维持不变的预设时间)有可能与可编程存储单元120提供的时钟信号clk不能良好地对应(例如数据保持时间超出可编程存储单元120基于时钟信号clk进行准确采样的上限时间值),从而可编程存储单元120不能基于时钟信号clk对控制单元110在通信传输线130上提供的电压进行准确的计时和采样,导致可编程存储单元120采样得到错误的数据。

为避免可编程存储单元120的错误采样,本发明实施例的控制单元110可以在初始化阶段向可编程存储单元120提供具有足够脉宽的邀请脉冲,从而确保可编程存储单元120能够对该邀请脉冲作出响应以提供响应脉冲;另一方面,控制单元110对接收到的响应脉冲的脉宽进行检测,并根据检测结果估计可编程存储单元120的时钟信号clk的频率,从而能够根据时钟信号clk的频率调节数据传输过程中的数据保持时间,使得控制单元110传输至可编程存储单元120的数据能够被正确地采样。

基于此,图2示出了本发明实施例的控制单元的一种示意性框图。

如图2所示,在可选的实施例中,控制单元110可以包括计数器111、可调时钟电路112以及输出电路113。

计数器111与通信传输线130耦接以通过计数的方式获得表征响应脉冲的脉宽的计数值nclk。

可调时钟电路112提供用于传输串行数据的数据传输时钟信号clk_host,并可以根据计数器111提供的计数值nclk和预存的频率查找表调节数据传输时钟信号clk_host。示例性的调节方式例如为:可调时钟电路112可以判断计数值nclk是否小于第一设定阈值,若是,则说明可编程存储单元120的时钟信号clk的频率相对于当前的数据传输时钟信号clk_host的频率f1过快,则可调时钟电路112可以在预存的查找表中选择比当前频率f1更高的频率f2作为数据传输时钟信号clk_host的频率;另一方面,若可调时钟电路112判断出计数值nclk大于第二设定阈值(可以大于/等于第一设定阈值),说明可编程存储单元120的时钟信号clk的频率相对于当前的数据传输时钟信号clk_host的频率f1过低,则可调时钟电路112可以在预存的查找表中选择比当前频率f1更低的频率f3作为数据传输时钟信号clk_host的频率,基于此调节方式,可调时钟电路112可以通过不断调节数据传输时钟信号clk_host的频率使数据保持时间能够与时钟信号clk匹配,防止可编程存储单元120错误地采样通信传输线130上的数据。

输出电路113基于数据传输时钟信号clk_host向通信传输线130提供逻辑电压和/或串行数据。

为方便描述,下文主要以复位电压等于低电平电压进行说明。然而本发明实施例不限于此,在其它实施例中,上述第一边沿/第二边沿也可以是下降沿/上升沿,复位电压和第一逻辑电压等电压均可以基于与上述技术方案相同的原理设置为不同的电压。

本发明实施例的非易失性存储系统能够实现多种操作,包括:镜像寄存器122的读出/写入操作、对电熔丝存储器123的编程操作以及从电熔丝存储器123读出至镜像寄存器122的提取操作等。在执行不同操作时,控制单元110向子控制模块121提供不同的模式选择数据,模式选择数据例如由2位逻辑值组成:当执行镜像寄存器122的写入操作时,模式选择数据例如为′00′;当执行镜像寄存器122的读出操作时,模式选择数据例如为′01′;当执行对电熔丝存储器123的编程操作时,模式选择数据例如为′10′;当执行从电熔丝存储器123读出至镜像寄存器122的提取操作时,模式选择数据例如为′11′。下文以此为例进行说明,然而本发明实施例不限于此。

首先对镜像寄存器122的写入操作进行说明。

图4示出在执行镜像寄存器122的写入操作时,本发明实施例的非易失性存储系统中通信传输线130上串行数据的数据结构示意图。需要说明的是,图4以传输8位目标数据为例示出了本发明实施例中串行数据的数据结构示意图,然而本发明实施例不限于此,目标数据还可以是4位、16位或其他位数,串行数据中的其他部分例如镜像寄存器地址的位数)也可以相应改变。

在完成初始化阶段之后,控制单元110和可编程存储单元120进入可通信状态,且传输线电压vowr稳定在复位电压。其中,初始化阶段例如经历2-bit数据位的传输时间,即等同于在串行数据中设置两个初始位st[1:0](如图4所示的bit7和bit6)。

在这一前提下,控制单元110开始通过通信传输线130向子控制模块121依次发送模式选择数据rwpb[1:0]的高位逻辑值′0′和低位逻辑值′0′(分别对应于图4所示的bit5和bit4);同时,子控制模块121通过可编程存储单元120的i/o端io2检测传输线电压vowr,从而接收到模式选择数据rwpb[1:0];随后,控制单元110释放通信传输线130,使得传输线电压vowr恢复至复位电压。

在完成模式选择数据rwpb[1:0]的传输之后,传输线电压vowr稳定在复位电压,控制单元110开始向可编程存储单元120提供镜像寄存器地址a[m-1:0],以将对应的镜像寄存器122与控制单元110关联,其中m表示镜像寄存器地址的位数且为正整数。例如当可编程存储单元120包括8个镜像寄存器时,控制单元110向通信传输线130依次提供3位的镜像寄存器地址对应如图4所示的bit3至bit1)。子控制模块121通过检测传输线电压vowr获得镜像寄存器122地址,从而能够根据模式选择数据′00′对相匹配的镜像寄存器122提供写使能信号,使得该镜像寄存器122进入写入模式。

在完成镜像寄存器地址的传输之后,传输线电压vowr再次稳定在复位电压,控制单元110开始向可编程存储单元120依次提供校验位pt和目标数据tg[n-1:0]的各位逻辑值,n表示目标数据的位数且为正整数。作为一种具体的实施例,校验位pt等于模式选择数据rwpb[1:0]的各位逻辑值、镜像寄存器地址a[m-1:0]的各位逻辑值以及目标数据tg[n-1:0]的各位逻辑值相加得到的至少1bit逻辑值(例如对应于图4所示的bit0),即pt=rwpb[1]+rwpb[0]+a[m-1]+a[m-2]+…+a[0]+tg[n-1]+tg[n-2]+…+tg[0]。在镜像寄存器的写入操作下,该校验位pt由控制单元110计算得出,子控制模块121通过可编程存储单元120的i/o端io2接收该校验位pt和目标数据tg[n-1:0],并根据接收到的校验位pt检验模式选择数据rwpb[1:0]、镜像寄存器地址a[m-1:0]和目标数据tg[n-1:0]是否正确,若正确,则子控制模块121将目标数据tg[n-1:0]写入到相应的镜像寄存器122中。

根据上述描述,在镜像寄存器122的写入操作过程中,控制单元110通过通信传输线130向可编程存储单元120提供串行数据的各位逻辑值,其中串行数据例如包括依次传输的前缀字节byte0(由初始位st[1:0]、模式选择数据rwpb[1:0]、镜像寄存器地址a[3:0]以及校验位st[1:0]构成)以及目标数据tg[7:0](byte1)。下面将具体描述通信传输线130的数据传输方式。

图5a和5b示出在镜像寄存器的写入操作过程中,通信传输线在传输串行数据中的每个数据位时传输线电压vowr的波形示意图。

在传输串行数据之前,传输线电压vowr稳定在复位电压(例如低电平电压)。在这一前提下,如图5a和5b所示,控制单元110首先向通信传输线提供第一逻辑电压(高电平电压),使得传输线电压被拉高,并维持前置时间tdly;随后,若传输的1位数据位的逻辑值为′0′(如图5b所示),则控制单元110向通信传输线130提供第二逻辑电压低电平电压)以使传输线电压vowr被下拉至第二逻辑电压(即恢复至复位电压),若传输的1位数据位的逻辑值为′1′(如图5a所示),则控制单元110继续向通信传输线提供第一逻辑电压,使传输线电压vowr等于第一逻辑电压,并在采样时间tssmp内维持传输线电压vowr的状态;在采样时间tssmp内,如图5a和5b所示,子控制模块121通过可编程存储单元120的i/o端io2进行采样,以获得当前传输的1位数据位的逻辑值;经历采样时间tssmp之后,如图5a和5b所示,控制单元110和子控制模块121均释放通信传输线130,从而传输线电压vowr能够在复位电阻rrst的作用下恢复至复位电压,并持续后置时间trec。至此,通信传输线完成了对1位数据位的传输过程。当传输串行数据的下一位数据位逻辑值时,重新执行上述过程,从而能够依次将模式选择数据rwpb[1:0]的各位逻辑值、镜像寄存器地址a[m-1:0]的各位逻辑值、校验位pt的逻辑值以及目标数据tg[n-1:0]的各位逻辑值通过单独的通信传输线130提供给可编程存储单元120的子控制模块121。

在执行了镜像寄存器的写入操作之后,通常需要将镜像寄存器122中的数据存储至对应的电熔丝存储器123中(即执行对电熔丝存储器123的编程操作)。下面具体结合图6和图1a对这一编程操作进行说明。

图6示出在执行对电熔丝存储器的编程操作时,本发明实施例的非易失性存储系统中通信传输线上串行数据的数据结构示意图。需要说明的是,图6以传输8位目标数据为例示出了本发明实施例中串行数据的数据结构示意图,然而本发明实施例不限于此,目标数据还可以是4位、16位或其他位数,串行数据中的其他部分(例如镜像寄存器地址的位数)也可以相应改变。

在完成初始化之后,控制单元110和可编程存储单元120进入可通信状态,且传输线电压vowr稳定为复位电压。其中,初始化阶段例如经历2-bit数据位的传输时间,即等同于在串行数据中设置两个初始位st[1:0](如图6所示的bit7和bit6)。

在这一前提下,控制单元110开始通过通信传输线130向子控制模块121依次发送模式选择数据rwpb[1:0]的高位逻辑值′1′和低位逻辑值′0′(分别对应于图6所示的bit5和bit4);同时,子控制模块121通过可编程存储单元的i/o端io2检测传输线电压vowr,从而接收到对应于编程操作的模式选择数据rwpb[1:0];随后,控制单元110释放通信传输线130,使得传输线电压vowr恢复至复位电压。

在完成模式选择数据rwpb[1:0]的传输之后,传输线电压vowr稳定在复位电压,控制单元110开始向可编程存储单元120提供镜像寄存器地址a[m-1:0],以将对应的镜像寄存器122与控制单元110关联。子控制模块121通过检测传输线电压vowr获得镜像寄存器地址a[m-1:0],从而能够根据模式选择数据′10′识别相匹配的镜像寄存器122。例如当可编程存储单元120包括8个镜像寄存器时,控制单元110向通信传输线130依次提供3位的镜像寄存器地址(对应如图6所示的bit3至bit1)。

在完成镜像寄存器地址的传输之后,传输线电压vowr再次稳定在复位电压,控制单元110开始向可编程存储单元120依次提供校验位pt和目标数据tg[n-1:0]的各位逻辑值。在对电熔丝存储器的编程操作下,该校验位pt同样由控制单元110计算得出,子控制模块121通过可编程存储单元120的i/o端io2接收该校验位pt和目标数据tg[n-1:0],并根据接收到的校验位pt对模式选择数据rwpb[1:0]、镜像寄存器地址a[m-1:0]和目标数据tg[n-1:0]进行检验,若正确,则子控制模块121会对相应的镜像寄存器122中存储的数据与本次数据传输接收到的目标数据进行比较。

当子控制模块121确认镜像寄存器122中存储的数据与本次数据传输接收到目标数据一致之后,控制单元110通过通信传输线130向子控制模块121发送k个可变宽度编程脉冲(每个可变宽度编程脉冲的脉冲宽度由控制单元110控制),使得子控制模块121控制相应的镜像寄存器122将校验合格的目标数据tg[n-1:0]存入匹配的电熔丝存储器123中,从而完成对电熔丝存储器123的编程操作。其中,对应于各个电熔丝存储器123的熔融电流由可变宽度编程脉冲与目标数据共同决定,即:当可变宽度编程脉冲有效时,根据目标数据中对应位的逻辑值产生相应的熔融电流。其中,k为自然数且与电熔丝的数量对应,在如图6所示的实施例中,k例如为8。

在一些实施例中,控制单元110可以直接提供k个可变宽度编程脉冲而无需等待目标数据的确认结果,可编程存储单元仅提取k个可变宽度编程脉冲的脉宽,再判断本次数据传输接收到的目标数据与镜像寄存器122中存储的数据是否一致,若一致,则基于k个可变宽度编程脉冲的脉宽对相应的电熔丝进行熔断,熔断时间分别等于相应的脉宽。

需要说明的是,本公开实施例将可变宽度编程脉冲描述为串行数据的一部分,但由于控制单元110通常设置在可编程存储单元120所在的芯片之外,因此控制单元110能够灵活地选取每个可变宽度编程脉冲的脉冲宽度,该脉冲宽度不受限于各个数据位的数据保持时间或其他有关数据位传输的时间参数,可变宽度编程脉冲的脉宽决定了产生熔融电流的时间长度。

根据上述描述,在电熔丝存储器123的编程过程中,控制单元110通过通信传输线130向可编程存储单元120提供串行数据的各位逻辑值和可变宽度编程脉冲,其中串行数据例如包括依次传输的前缀字节byte0(由初始位st[1:0]、模式选择数据rwpb[1:0]、镜像寄存器地址a[3:0]以及校验位st[1:0]构成)以及目标数据tg[7:0](byte1)。具体的各位数据位的数据传输方式与上述镜像寄存器的写入操作中的数据传输方式相同,在此不再赘述。

需要说明的是,由于在对电熔丝存储器123进行编程操作之前,需要将控制单元110提供的目标数据预先存储在对应的镜像寄存器中,因此,电熔丝存储器的编程过程通常需要两组串行数据(每组串行数据例如为2字节)完成:第一组串行数据用于将控制单元110提供的目标数据写入至对应的镜像寄存器122中,第二组串行数据(作为参考数据)用于根据镜像寄存器122中存储的目标数据对本次传输的目标数据进行校验,并利用校验合格的目标数据对相应的电熔丝存储器进行编程操作,以保证本次数据传输接收到的目标数据是准确无误的,从而通过校验步骤确定即将用于编程操作的目标数据能够对具有单次编程能力的电熔丝存储123数据进行准确编程,避免因错误编程而造成需要更换电熔丝存储器等不可逆的后果。

在一些应用中,控制单元110需要从可编程存储单元120中读取数据,在本发明实施例中,控制单元110可以通过通信传输线130从可编程存储单元120中相应的镜像寄存器122中读取数据。下面结合图4具体对镜像寄存器的读取操作进行说明。

同样地,在完成初始化之后,传输线电压vowr稳定在复位电压,控制单元110和可编程存储单元120进入可通信状态。在这一前提下,控制单元110开始通过通信传输线向子控制模块121依次发送模式选择数据rwpb[1:0]的高位逻辑值′0′和低位逻辑值′1′;同时,子控制模块121通过可编程存储单元120的i/o端io2检测传输线电压vowr,从而接收到模式选择数据rwpb[1:0];随后,控制单元110释放通信传输线,使得传输线电压vowr恢复至复位电压。

在完成模式选择数据rwpb[1:0]的传输之后,传输线电压vowr稳定在复位电压,控制单元110开始向可编程存储单元120提供镜像寄存器地址a[m-1:0],以将对应的镜像寄存器122与控制单元110关联。子控制模块121通过检测传输线电压vowr获得镜像寄存器地址a[m-1:0],从而能够根据模式选择数据′01′对相匹配的镜像寄存器122提供读使能信号,使得该镜像寄存器进入可读模式。

在完成镜像寄存器地址的传输之后,传输线电压vowr再次稳定在复位电压,子控制模块121开始将校验位pt以及被镜像寄存器地址a[m-1:0]指定的镜像寄存器中存储的目标数据tg[n-1:0](例如由对应的电熔丝存储器提供)的各位逻辑值通过通信传输线130提供给控制单元110或其他电路。作为一种具体的实施例,校验位pt等于模式选择数据rwpb[1:0]的各位逻辑值、镜像寄存器地址的各位逻辑值以及目标数据的各位逻辑值相加得到的1bit逻辑值,即pt=rwpb[1]+rwpb[0]+a[m-1]+a[m-2]+…+a[0]+tg[n-1]+tg[n-2]+…+tg[0]。在镜像寄存器的读出操作下,该校验位pt由子控制模块121计算得出,控制单元110通过其i/o端io1接收该校验位pt和目标数据tg[n-1:0],并根据校验位pt对控制单元110产生的模式选择数据rwpb[1:0]、镜像寄存器地址a[m-1:0]以及控制单元110接收到的目标数据tg[n-1:0]进行检验,若校验合格,则控制单元110存储其接收到的目标数据tg[n-1:0];若校验失败,则重新执行上述步骤直至校验合格。

根据上述描述,在镜像寄存器122的读出操作过程中,控制单元110通过通信传输线130向可编程存储单元120提供串行数据中各个数据位的数据传输方式与图4所示的数据传输方式相同,在此不再赘述。不同的是,在镜像寄存器122的读出操作过程中,可编程存储单元120中的子控制模块121会向控制单元110提供目标数据tg[n-1:0]的各位逻辑值,下面将具体描述这一过程中通信传输线130的数据传输方式。

图7a和7b示出在镜像寄存器122的读出操作过程中,通信传输线130在传输串行数据中每个数据位时传输线电压vowr的波形示意图。

在传输目标数据之前,传输线电压vowr稳定在复位电压例如低电平电压)。在这一前提下,如图7a和7b所示,控制单元110首先向通信传输线130提供第一逻辑电压,使得传输线电压vowr被拉高,并维持前置时间tdly;随后,若子控制模块121传输的1位逻辑值为′0′如图7b所示),则子控制模块121释放通信传输线130以使传输线电压vowr恢复至复位电压,若子控制模块121传输的1位逻辑值为′1′(如图7a所示),则子控制模块121向通信传输线130提供第一逻辑电压,并在控制单元110的采样时间tmsmp内维持传输线电压vowr的状态;在采样时间tmsmp内,如图7a和7b所示,控制单元110通过其i/o端io1进行采样,以获得当前传输的1位逻辑值;经历采样时间tmsmp之后,如图7a和7b所示,控制单元110和子控制模块121均释放通信传输线130,从而传输线电压vowr能够在复位电阻rrst的作用下恢复至复位电压(即低电平电压),并持续后置时间trec。至此,子控制模块121通过通信传输线130向控制单元110传输了目标数据tg[n-1:0]中的1位数据位的逻辑值。当传输目标数据tg[n-1:0]的下一位数据位的逻辑值时,重新执行上述过程,从而能够依次将目标数据tg[n-1:0]中的各位逻辑值通过单独的通信传输线130提供给控制单元110。

在一些应用中,外部电路与可编程存储单元120中的各个镜像寄存器122直接相连,以通过各个镜像寄存器122获取保存在电熔丝存储器123中的数据。在这一过程中,需要控制单元110通过通信传输线130向子控制模块121提供与上述各实施例不同的模式选择数据rwpb[1:0],使得相应的镜像寄存器122先从电熔丝存储器123中读取数据,再将读取到的数据提供给外部电路。下面简要对这一过程执行从电熔丝存储器读出至镜像寄存器的提取操作)进行说明。

同样地,在完成初始化之后,传输线电压vowr稳定在复位电压,控制单元110和可编程存储单元120进入可通信状态。在这一前提下,控制单元110开始通过通信传输线向子控制模块121依次发送模式选择数据rwpb[1:0]的高位逻辑值′1′和低位逻辑值′1′;同时,子控制模块121通过可编程存储单元120的i/o端io2检测传输线电压vowr,从而接收到模式选择数据rwpb[1:0];随后,控制单元110释放通信传输线130,使得传输线电压vowr恢复至复位电压。

在完成模式选择数据rwpb[1:0]的传输之后,传输线电压vowr稳定在复位电压,控制单元110开始向可编程存储单元120提供镜像寄存器地址a[m-1:0],以将对应的镜像寄存器122与控制单元110关联。子控制模块121通过检测传输线电压vowr获得镜像寄存器地址,从而能够根据模式选择数据′11′对相匹配的镜像寄存器122提供读使能信号,使得该镜像寄存器从对应的电熔丝存储器123中读出目标数据tg[n-1:0]并存储该目标数据,也就是说,外部电路能够通过读取镜像寄存器122获得电熔丝存储器123中存储的目标数据。这一过程通常发生在非易失性存储系统所在芯片或电路的上电过程中,能够使该芯片或电路获得初始化数据或程序。

本发明实施例的可编程存储单元、非易失性存储系统及上述各实施例提出的控制方法的有益效果在于:通过控制通信传输线的传输线电压实现串行数据的传输,因此无需设置多个用于通信的压焊点;并且,采用了能够在正常的工作电压下完成读写操作的电熔丝存储器作为非易失性存储器件,因此也无需设置用于接收不同于工作电压的电源电压端,从而能够明显降低用于通信、供电的压焊点/端口数量,简化了电路连接关系,降低了电路的设计难度和成本。

在一些可选的实施例中,可编程存储单元采用内部的时钟电路产生时钟信号,从而不需要控制单元额外向可编程存储单元提供时钟信号,进一步减少了控制单元和可编程存储单元之间连线。进一步的,在本申请实施例的初始化阶段:控制单元向可编程存储单元提供的邀请脉冲具有足够大的脉宽,从而确保可编程存储单元能够对其作出响应以提供响应脉冲;控制单元对接收到的响应脉冲的持续时间进行检测,并根据检测结果估计可编程存储单元的时钟信号的频率,从而能够根据时钟信号的频率调节数据传输过程中的数据保持时间,使得控制单元传输至可编程存储单元的数据能够被正确地采样,防止可编程存储单元的时钟信号与控制单元的数据传输时钟信号的频率偏差导致可编程存储单元对传输线电压的计时偏差或对通信传输线上的数据的误采样,。

发明的实施例如上文所述,这些实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施例。显然,根据以上描述,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地利用本发明以及在本发明基础上的修改使用。本发明的保护范围应当以本发明权利要求所界定的范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1