与fpga结合的flash芯片及指令处理方法

文档序号:8257895阅读:2810来源:国知局
与fpga结合的flash芯片及指令处理方法
【技术领域】
[0001]本发明涉及芯片技术领域,特别是涉及一种与FPGA结合的FLASH芯片及指令处理方法。
【背景技术】
[0002]RPMC (Replay Protect1n Monotonic Counter,应答保护单调计数器)是 Intel 主推的基本输入输出系统(Basic Input-Output System, B1S)芯片的一个新功能。它包含一个大容量的Flash芯片和RPMC电路。其中,Flash芯片的容量为8M、16M、32M、64M、128M、256M或者更高,用来存储CPU B1S的代码和数据;RPMC电路保证读写数据的机密性和完整性。RPMC电路与其集成的FLASH —起构成了个人计算机(Personal Computer, PC)系统中B1S的硬件平台。
[0003]在设计具有RPMC功能的FLASH芯片时,设计者通常会把大容量Flash和RPMC集成在一个芯片上,即RPMC电路和Flash —起设计。
[0004]但是,这种设计方法存在以下缺点:由于需要将FLASH和RPMC集成在一个芯片上,因此单片芯片的面积大、封装成本高,导致设计成本较高;并且RPMC电路和FLASH —起设计,导致芯片设计复杂度高、设计周期长;芯片在一个时刻只能做一种操作;另外,芯片的重复利用性差,功能升级困难,并且该芯片的Flash的容量不可扩展。
[0005]因此,本领域技术人员迫切需要解决的问题之一在于,提出一种与FPGA结合的FLASH芯片及指令处理方法,用以解决设计复杂度高,设计周期长,设计成本高,通用性弱,工作效率低等问题。

【发明内容】

[0006]本发明所要解决的技术问题是提供一种与FPGA结合的FLASH芯片及指令处理方法,用以解决设计复杂度高,设计周期长,设计成本高,通用性弱,工作效率低等问题。
[0007]为了解决上述问题,本发明公开了一种与FPGA结合的FLASH芯片,包括:
[0008]现场可编程门阵列FPGA,第一存储芯片Flash-Ι,以及,第二存储芯片Flash-2 ;所述FPGA中设置有应答保护单调计数器RPMC及配置信息;所述第一存储芯片Flash-1中存储有所述RPMC的值,其中,
[0009]所述Flash-1和所述FPGA各自包括内部10引脚,所述Flash-1的内部10引脚与所述FPGA的内部10引脚互连,所述FPGA与所述Flash-1之间通过互连的内部10引脚对进行内部相互通信;
[0010]所述FPGA与所述Flash-2中相同的10引脚相连,并且连接到所述芯片的同一外部共享引脚上;
[0011 ] 外部指令通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中;外部指令通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中,所述Flash-2与所述FPGA分别判断是否执行所述外部指令;
[0012]其中,所述外部指令包括RPMC验证指令;若所述外部指令为所述Flash-2无法识别的RPMC验证指令,则所述FPGA依据配置信息与所述RPMC的值生成第一 RPMC验证值,并判断是否与所述RPMC验证指令中的第二 RPMC验证值一致;若不一致,则所述芯片为非法芯片。
[0013]优选地,当通过外部共享引脚接收到外部指令时,所述FPGA通过与所述Flash-1之间互连的内部1引脚通知将所述RPMC的值加I。
[0014]优选地,所述外部指令包括RPMC更新指令;
[0015]当通过外部共享引脚接收到外部指令为所述Flash-2无法识别的RPMC更新指令,则所述FPGA通过与所述Flash-1之间互连的内部1引脚通知依据RPMC更新指令对所述RPMC的值进行更新。
[0016]优选地,所述Flash-1及所述Flash-2为NOR型非易失性存储器N0R_Flash、NAND型非易失性存储器NAND-Flash,或者,电可擦只读存储器EEPR0M。
[0017]优选地,所述FPGA中还存储有纠错码ECC,和/或,坏块管理BBM。
[0018]本发明实施例还公开了一种与FPGA结合的FLASH芯片外部指令处理的方法,所述芯片包括现场可编程门阵列FPGA,第一存储芯片Flash-Ι,以及,第二存储芯片Flash-2 ;所述FPGA中设置有应答保护单调计数器RPMC及配置信息;所述第一存储芯片Flash-1中存储有所述RPMC的值,所述的方法包括:
[0019]接收外部指令;
[0020]若所述外部指令为RPMC验证指令,则获取所述配置信息及RPMC的值;
[0021 ] 依据所述配置信息与RPMC的值生成第一 RPMC验证值;
[0022]判断所述第一 RPMC验证值与所述RPMC验证指令中的第二 RPMC验证值是否一致;若不一致,则判定所述芯片为非法芯片。
[0023]优选地,所述的方法还包括:
[0024]当接收到所述外部指令时,所述RPMC的值加I。
[0025]优选地,所述的方法还包括:
[0026]若所述外部指令为RPMC更新指令,则依据所述RPMC更新指令对所述RPMC的值进行更新并存储。
[0027]优选地,所述的方法还包括:
[0028]在预置的时间段接收到所述RPMC更新指令。
[0029]优选地,所述的方法还包括:
[0030]当接收到多个外部指令时,分别判断是否执行所述多个外部指令。
[0031]与现有技术相比,本发明包括以下优点:
[0032]1、本发明实施例所提出的与FPGA结合的FLASH芯片可以包括现场可编程门阵列FPGA,第一存储芯片Flash-Ι,以及,第二存储芯片Flash-2 ;Flash_l和FPGA各自包括内部1引脚,所述Flash-1的内部1引脚与所述FPGA的内部1引脚互连,所述FPGA与所述Flash-1之间通过互连的内部1引脚对进行内部相互通信;所述FPGA与Flash-2中相同的1引脚相连,并且连接到所述芯片的同一外部共享引脚上;外部指令通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中。在具体实现中,还将定期接收到RPMC验证指令,FPGA依据本地配置以及Flash-1中的RPMC的值生成验证值,并与RPMC验证指令中的验证值进行比对,判断是否一致,若一致,说明该芯片为合法芯片,可以继续运行,若不一致,说明该芯片为非法芯片,为了保证数据的机密性和完整性,可以禁止该芯片继续运行。另外,由于在本发明实施例中可以利用现有的Flash芯片即可实现,并且,不需要像流水线一样需通过一系列工艺步骤制造芯片,因此,芯片设计复杂度低、设计周期短、成本低。
[0033]2、Flash-1及Flash-2的容量可以扩展,通用性强,例如,可以增加单片Flash的容量,或者将多个Flash封装在一起。
[0034]3、选择 Flash-1 及 Flash-2 的自由度高,例如可以选择 NOR-Flash, NAND-Flash,或者EEPROM等其他存储器类型芯片。
[0035]4、FPGA可以多次重开发,并且速度快,只需对FPGA开发即可实现算法的升级,成本低。
[0036]5,Flash和FPGA中的RPMC还可以同时执行不同的指令,即Flash和RPMC可以并行工作,因此,提高了芯片的性能。
[0037]6、利用FPGA与通用Flash来实现特殊功能的FLASH芯片,提升了开发速度,降低了开发成本。
【附图说明】
[0038]图1是本发明的一种与FPGA结合的FLASH芯片的结构图;
[0039]图2是本发明的一种与FPGA结合的FLASH芯片外部指令处理的方法实施例的步骤流程图。
【具体实施方式】
[0040]为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和【具体实施方式】对本发明作进一步详细的说明。
[0041]本发明实施例的核心构思之一在于,与FPGA结合的FLASH芯片包括现场可编程门阵列FPGA,第一存储芯片Flash-1,以及,第二存储芯片Flash-2 ;Flash_l和FPGA各自包括内部1引脚,所述Flash-1的内部1引脚与所述FPGA的内部1引脚互连,所述FPGA与所述Flash-1之间通过互连的内部1引脚对进行内部相互通信;所述FPGA与Flash-2中相同的1引脚相连,并且连接到所述芯片的同一外部共享引脚上;外部指令通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中。在本发明实施例中可以利用现有的Flash芯片即可实现,并且,不需要像流水线一样需通过一系列工艺步骤制造芯片,因此,芯片设计复杂度低、设计周期短、成本低。
[0042]参照图1,示出了本发明一种与FPGA结合的FLASH芯片的结构图,所述芯片可以包括:
[0043]现场可编程门阵列FPGA,第一存储芯片Flash-Ι,以及,第二存储芯片Flash-2 ;所述FPGA中可以设置有应答保护单调计数器RPMC及配置信息;所述第一存储芯片Flash-1中可以存储有所述RPMC的值;
[0044]本发明实施例中,Flash-1,Flash-2和RPMC可以是各自独立的芯片。Flash-1和Flash-2可以选择不同的容量来满足不同系统的需求,由于可以复用已设计好的Flash芯片,因此不必重新设计,大大减少了开发周期;FPGA中的设计了 RPMC,故具备了应答保护单调计数的功能,也可以单独使用。
[00
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1