eFlash存储器实现OTP的装置、方法及OTP存储器与流程

文档序号:20768283发布日期:2020-05-15 19:17阅读:726来源:国知局
eFlash存储器实现OTP的装置、方法及OTP存储器与流程

本发明涉及ic设计技术领域,具体涉及一种在片上系统芯片上使用eflash存储器实现otp的装置、方法及otp存储器。



背景技术:

eflash(embeddedflash)存储器,即嵌入式闪存存储器,是掉电非易失型存储器的一种。其特点是可以多次擦写,并且掉电后,数据可以保存。

otp(onetimeprogram)存储器,即一次性可编程存储器,指的存储器中的每一位(bit)只可以被写入一次,之后便不可以被改写,清除的存储器。

随着物联网设备的广泛使用,设备的安全性也越来越重要。许多芯片设计厂商会在系统芯片上增加otp用于保存设备编号,密钥等关键信息。利用otp的特性,可以实现对芯片进行编号、一机一码等需求,反回滚防护,又可以防止信息被篡改,从而达到提高设备安全性的目的。

otp存储器实现方法一般是基于浮栅技术(floating-gatetechnology)、电熔丝技术(electric-fusetechnology)和反熔丝技术(antifusetechnology)。目前,有使用专门的物理器件实现otp存储器,其能达到的效果是每个字(word)虽然可以被写多次,但是已经被写为1的位,不可以再被写回为0,例如:可以往一个字(word)中写0x5(二进制为0101),此时如果再往同一个地址写0x0(二进制为0000),则这个字的值仍为0x5,但是如果再往同一个地址写0xa(二进制为1010),则这个字的值将变为0xf(二进制为1111),如图1举例说明。

传统的otp存储器采用特殊的电路单元实现,这带来了授权和生产成本的上升。

eflash可以在系统掉电后保存信息,但是其中数据可以被擦除,改写,无法实现每一位(bit)只能被置位一次的需求。

现有技术中也有使用eflash实现otp的方法和装置,但是无法做到和使用专用物理器件的otp存储器一致。

公开号为cn108563590a的中国专利,是基于地址保护的方法,特点是在eflash中预定义一些地址作为otp,系统总线写请求的地址送来后,与预定义的地址作比对,如果相同,则屏蔽写请求。其缺点是:

1.由于eflash的地址对应的存储空间为一个字(word),该地址一旦被屏蔽,则整个字(word)内所有位(bit)无论为0还是为1,都将无法被更改。这与otp存储器本身的特性不符。

2.保护的地址和保护地址对应的状态位需要单独保存,一旦失效,则otp空间的保护也将失效。

专公开号为cn102129486a的中国专利,是在公开号为cn108563590a专利基础上的拓展,其做法是将屏蔽地址和状态位也保存在eflash中,在系统启动时,通过软件读出这部分内容,配置到eflash控制器中。其除了具备前文提到的缺点外,软硬件协同的实现方案也拖慢了系统启动速度,同时增加了安全风险。



技术实现要素:

本发明要解决的技术问题是提供一种片上系统eflash存储器实现otp的装置、方法及otp存储器,使用eflash达到了otp存储器的效果,相较于使用特殊物理器件实现的otp节约了成本,相较于其他使用eflash实现otp的方法更接近于物理器件实现的otp,同时使用更简单,更安全,更节约eflash存储空间。

为了解决上述技术问题,本发明提供了一种片上系统eflash存储器实现otp的装置,eflash存储器内设有信息存储区,该装置包括,

直接访存模块,被配置为对所述信息存储区写操作、读操作和擦除操作;

寄存器,暂存写入的otp数据;

总线接口模块,其连接片上系统的系统总线;当系统总线有读otp请求时,所述总线接口模块返回所述寄存器中存储的otp数据;当系统总线有写otp请求时,所述总线接口模块将系统总线上的写数据与所述寄存器中的otp数据做或运算后写入所述寄存器,并通知所述直接访存模块有eflash更新请求;

所述直接访存模块收到eflash更新请求后,擦除所述信息存储区的数据,读取所述寄存器中更新后的otp数据写入所述信息存储区。

本发明一个较佳实施例中,进一步包括该装置还包括写仲裁模块,所述写仲裁模块用于切换直接访存模块对寄存器写操作或者总线接口模块对寄存器写操作;所述片上系统复位时,切换直接访存模块对寄存器写操作,对所述寄存器进行初始化;所述寄存器初始化结束后,切换总线接口模块对寄存器写操作。

本发明一个较佳实施例中,进一步包括所述直接访存模块将信息存储区中的数据写入所述寄存器内完成对寄存器的初始化。

本发明一个较佳实施例中,进一步包括该装置具有由多个寄存器组成的寄存器组,所述多个寄存器均具有各自的地址;当系统总线有写otp请求时,所述总线接口模块将系统上的写数据与相应地址寄存器中的寄存器值做或运算。

为了解决上述技术问题,本发明提供了一种片上系统otp存储器,包括,

eflash信息存储区;

直接访存模块,被配置为对所述eflash信息存储区写操作、读操作和擦除操作;

寄存器,暂存写入的otp数据;

总线接口模块,其连接片上系统的系统总线;当系统总线有读otp请求时,所述总线接口模块返回所述寄存器中存储的otp数据;当系统总线有写otp请求时,所述总线接口模块将系统总线上的写数据与所述寄存器中的otp数据做或运算后写入所述寄存器,并通知所述直接访存模块有eflash更新请求;

所述直接访存模块收到eflash更新请求后,擦除所述eflash信息存储区的数据,读取所述寄存器中更新后的otp数据写入所述eflash信息存储区。

本发明一个较佳实施例中,进一步包括还包括写仲裁模块,所述写仲裁模块用于切换直接访存模块对寄存器写操作或者总线接口模块对寄存器写操作;所述片上系统复位时,切换直接访存模块对寄存器写操作,对所述寄存器进行初始化;所述寄存器初始化结束后,切换总线接口模块对寄存器写操作。

本发明一个较佳实施例中,进一步包括所述直接访存模块将eflash信息存储区中的数据写入所述寄存器内完成对寄存器的初始化。

本发明一个较佳实施例中,进一步包括所述寄存器具有多个,所述多个寄存器均具有各自的地址;当系统总线有写otp请求时,所述总线接口模块将系统上的写数据与相应地址寄存器中的寄存器值做或运算。

为了解决上述技术问题,本发明提供了一种片上系统eflash存储器实现otp的方法,eflash存储器内设有信息存储区,所述方法包括,

通过直接访存模块将信息存储区中的数据写入寄存器,对所述寄存器进行初始化;

通过总线接口模块连接片上系统;当系统总线有读otp请求时,所述总线接口模块返回所述寄存器中存储的otp数据;当系统总线有写otp请求时,所述总线接口模块将系统总线上的写数据与所述寄存器中的otp数据做或运算后写入所述寄存器,并通知所述直接访存模块有eflash更新请求;

通过直接访存模块擦除所述信息存储区的数据,读取所述寄存器中更新后的otp数据写入所述信息存储区。

本发明一个较佳实施例中,进一步包括其还包括,

通过写仲裁模块切换直接访存模块对寄存器写操作或者总线接口模块对寄存器写操作;所述片上系统复位时,所述写仲裁模块切换切换直接访存模块对寄存器写操作,对所述寄存器进行初始化;所述寄存器初始化结束后,所述写仲裁模块切换切换总线接口模块对寄存器写操作。

本发明的有益效果:

本发明片上系统eflash存储器实现otp的装置、方法及otp存储器,使用eflash达到了otp存储器的效果,相较于使用特殊物理器件实现的otp节约了成本,更接近于物理器件实现的otp,同时使用更简单,更安全,更节约eflash存储空间。

附图说明

图1是使用专门物理器件实现otp存储器的otp存储阵列值变化示意图;

图2是本发明优选实施例中片上系统eflash存储器实现otp的装置的结构框图;

图3是本发明优选实施例中片上系统eflash存储器实现otp的方法流程图。

图中标号说明:

10-信息存储区,20-直接访存模块,30-寄存器组,40-总线接口模块,50-写仲裁模块。

具体实施方式

下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。

实施例一

本实施例公开一种在片上系统芯片上使用eflash存储器实现otp的装置,eflash存储器一般由主存储区和信息存储区组成,主存储区直接挂接在片上系统总线上,用于普通代码和数据的存储,信息存储区域一般用于保存设备信息。

该装置使用eflash存储器的信息存储区10配合外围电路来实现otp存储,在eflash存储器的信息存储区内划分出专门用于otp的区域,参照图2所示,其包括直接访存模块20、寄存器组30、总线接口模块40和写仲裁模块50。上述直接访存模块20被配置为对上述信息存储区10写操作、读操作和擦除操作。上述寄存器组30可以是一个寄存器,也可以是由多个寄存器组成的寄存器组,组成寄存器组的多个寄存器均具有带有识别作用的地址。该寄存器组30用于存储由上述直接访存模块20写入的数据和由总线接口模块40写入的数据。其中,该寄存器组30当前周期只支持一种数据写入,通过上述写仲裁模块50切换写入寄存器组30的数据:(1)片上系统复位时,直接访存模块20对寄存器组30写操作,对上述寄存器组30进行初始化;(2)上述寄存器组30初始化结束后,上述直接访存模块20控制写仲裁模块50接入系统总线,写仲裁模块50切换总线接口模块40对寄存器组30写操作。

片上系统复位时,上述直接访存模块20将信息存储区10中的数据写入上述寄存器组30内完成对寄存器组30的初始化,此时寄存器组30存储由上述直接访存模块20写入的otp数据。

上述总线接口模块40连接片上系统的系统总线,当系统总线有读otp请求时,上述总线接口模块40返回上述寄存器中存储的otp数据;当系统总线有写otp请求时,上述总线接口模块40将系统总线上的写数据与上述寄存器中的otp数据做或运算后写入上述寄存器;或者,上述总线接口模块40将系统上的写数据与相应地址寄存器中的寄存器值做或运算后写入上述寄存器;并通知上述直接访存模块20有eflash更新请求;上述直接访存模块20收到eflash更新请求后,擦除上述信息存储区10的数据,读取上述寄存器中更新后的otp数据写入上述信息存储区10。

实施例二

本实施例公开一种片上系统otp存储器,使用eflash存储器的信息存储区(简称“eflash信息存储区”)配合外围电路来实现otp存储,在eflash存储器的信息存储区内划分出专门用于otp的区域,片上系统otp存储器包括直接访存模块20、寄存器组30、总线接口模块40和写仲裁模块50。上述直接访存模块20被配置为对上述信息存储区10写操作、读操作和擦除操作。上述寄存器组30可以是一个寄存器,也可以是由多个寄存器组成的寄存器组,组成寄存器组的多个寄存器均具有带有识别作用的地址。该寄存器组30用于存储由上述直接访存模块20写入的数据和由总线接口模块40写入的数据。其中,该寄存器组30当前周期只支持一种数据写入,通过上述写仲裁模块50切换写入寄存器组30的数据:(1)片上系统复位时,直接访存模块20对寄存器组30写操作,对上述寄存器组30进行初始化;(2)上述寄存器组30初始化结束后,上述直接访存模块20控制写仲裁模块50接入系统总线,写仲裁模块50切换总线接口模块40对寄存器组30写操作。

片上系统复位时,上述直接访存模块20将信息存储区10中的数据写入上述寄存器组30内完成对寄存器组30的初始化,此时寄存器组30存储由上述直接访存模块20写入的otp数据。

上述总线接口模块40连接片上系统的系统总线,当系统总线有读otp请求时,上述总线接口模块40返回上述寄存器中存储的otp数据;当系统总线有写otp请求时,上述总线接口模块40将系统总线上的写数据与上述寄存器中的otp数据做或运算后写入上述寄存器;或者,上述总线接口模块40将系统上的写数据与相应地址寄存器中的寄存器值做或运算后写入上述寄存器;并通知上述直接访存模块20有eflash更新请求;上述直接访存模块20收到eflash更新请求后,擦除上述信息存储区10的数据,读取上述寄存器中更新后的otp数据写入上述信息存储区10。

实施例三

本实施例公开一种在片上系统芯片上使用eflash存储器实现otp的方法,eflash存储器内设有信息存储区,在eflash存储器的信息存储区内划分出专门用于otp的区域,参照图3所示,上述方法包括,

s01:片上系统上电复位;

s02:直接访存模块将信息存储区中的数据写入寄存器用作otp数据,对上述寄存器进行初始化;

s03:直接访存模块控制写仲裁模块接入系统总线;

s04:写仲裁模块切换总线接口模块对寄存器写操作;

s05:当系统总线有读otp请求时,上述总线接口模块返回上述寄存器中存储的otp数据;当系统总线有写otp请求时,上述总线接口模块将系统总线上的写数据与上述寄存器中的otp数据做或运算后写入上述寄存器,并通知上述直接访存模块有eflash更新请求;

s06:直接访存模块擦除上述信息存储区的数据,读取上述寄存器中更新后的otp数据写入上述信息存储区。

以上设计的装置、方法及otp存储器,具有以下技术优势:

(1)直接访存模块20可自动完成对eflash信息存储区10的读取,擦除,编写,没有软件参与,eflash更新的内部过程对外部透明,留给外部读写只有总线接口,使用上和传统otp一致。

(2)写仲裁模块50受直接访存模块20控制,在系统复位时直接访存模块20可对寄存器组写入,直接访存模块20对寄存器组完成初始化后,写仲裁模块50才切换为可由系统总线接口模块40写入。

(3)系统复位时,寄存器组初始值由直接访存模块20从信息存储区10中搬入;总线接口模块40对寄存器组30写入后,其值为其本身值和系统总线写入值做特定运算,或运算,确保已经写为1的位,不可再被写为0,满足物理器件所要求的otp功能。

(4)系统总线接口模块40完成对寄存器组30写入后,将发eflash更新使能通知直接访存模块20将更新后的寄存器组中数据搬回eflash的信息存储区10,以保障系统掉电后,数据不丢失。

(5)用于实现otp功能的这部分eflash信息存储区10,只有直接访存模块20可以访问,保证otp的内部不会被其它方式篡改。

以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。

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