CN104572015B - 与fpga结合的flash芯片及指令处理方法 - Google Patents

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

Info

Publication number
CN104572015B
CN104572015B CN201310495546.4A CN201310495546A CN104572015B CN 104572015 B CN104572015 B CN 104572015B CN 201310495546 A CN201310495546 A CN 201310495546A CN 104572015 B CN104572015 B CN 104572015B
Authority
CN
China
Prior art keywords
flash
rpmc
fpga
chip
pin
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.)
Active
Application number
CN201310495546.4A
Other languages
English (en)
Other versions
CN104572015A (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.)
Zhaoyi Innovation Technology Group Co ltd
Original Assignee
GigaDevice Semiconductor Beijing Inc
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 GigaDevice Semiconductor Beijing Inc filed Critical GigaDevice Semiconductor Beijing Inc
Priority to CN201310495546.4A priority Critical patent/CN104572015B/zh
Publication of CN104572015A publication Critical patent/CN104572015A/zh
Application granted granted Critical
Publication of CN104572015B publication Critical patent/CN104572015B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提供了一种与FPGA结合的FLASH芯片,所述FPGA与Flash‑1之间通过互连的内部IO引脚对进行内部相互通信;所述FPGA与Flash‑2中相同的IO引脚相连,并且连接到所述芯片的同一外部共享引脚上;外部指令通过所述芯片的外部共享引脚传输到Flash‑2与FPGA中,Flash‑2与FPGA分别判断是否执行所述外部指令;若所述外部指令为所述Flash‑2无法识别的RPMC验证指令,则FPGA依据配置信息与RPMC的值生成第一RPMC验证值,并判断是否与RPMC验证指令中的第二RPMC验证值一致;若不一致,则所述芯片为非法芯片。本发明用以解决设计复杂度高,设计周期长,设计成本高,通用性弱,工作效率低等问题。

Description

与FPGA结合的FLASH芯片及指令处理方法
技术领域
本发明涉及芯片技术领域,特别是涉及一种与FPGA结合的FLASH芯片及指令处理方法。
背景技术
RPMC(Replay Protection Monotonic Counter,应答保护单调计数器)是Intel主推的基本输入输出系统(Basic Input-Output System,BIOS)芯片的一个新功能。它包含一个大容量的Flash芯片和RPMC电路。其中,Flash芯片的容量为8M、16M、32M、64M、128M、256M或者更高,用来存储CPU BIOS的代码和数据;RPMC电路保证读写数据的机密性和完整性。RPMC电路与其集成的FLASH一起构成了个人计算机(Personal Computer,PC)系统中BIOS的硬件平台。
在设计具有RPMC功能的FLASH芯片时,设计者通常会把大容量Flash和RPMC集成在一个芯片上,即RPMC电路和Flash一起设计。
但是,这种设计方法存在以下缺点:由于需要将FLASH和RPMC集成在一个芯片上,因此单片芯片的面积大、封装成本高,导致设计成本较高;并且RPMC电路和FLASH一起设计,导致芯片设计复杂度高、设计周期长;芯片在一个时刻只能做一种操作;另外,芯片的重复利用性差,功能升级困难,并且该芯片的Flash的容量不可扩展。
因此,本领域技术人员迫切需要解决的问题之一在于,提出一种与FPGA结合的FLASH芯片及指令处理方法,用以解决设计复杂度高,设计周期长,设计成本高,通用性弱,工作效率低等问题。
发明内容
本发明所要解决的技术问题是提供一种与FPGA结合的FLASH芯片及指令处理方法,用以解决设计复杂度高,设计周期长,设计成本高,通用性弱,工作效率低等问题。
为了解决上述问题,本发明公开了一种与FPGA结合的FLASH芯片,包括:
现场可编程门阵列FPGA,第一存储芯片Flash-1,以及,第二存储芯片Flash-2;所述FPGA中设置有应答保护单调计数器RPMC及配置信息;所述第一存储芯片Flash-1中存储有所述RPMC的值,其中,
所述Flash-1和所述FPGA各自包括内部IO引脚,所述Flash-1的内部IO引脚与所述FPGA的内部IO引脚互连,所述FPGA与所述Flash-1之间通过互连的内部IO引脚对进行内部相互通信;
所述FPGA与所述Flash-2中相同的IO引脚相连,并且连接到所述芯片的同一外部共享引脚上;
外部指令通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中;外部指令通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中,所述Flash-2与所述FPGA分别判断是否执行所述外部指令;
其中,所述外部指令包括RPMC验证指令;若所述外部指令为所述Flash-2无法识别的RPMC验证指令,则所述FPGA依据配置信息与所述RPMC的值生成第一RPMC验证值,并判断是否与所述RPMC验证指令中的第二RPMC验证值一致;若不一致,则所述芯片为非法芯片。
优选地,当通过外部共享引脚接收到外部指令时,所述FPGA通过与所述Flash-1之间互连的内部IO引脚通知将所述RPMC的值加1。
优选地,所述外部指令包括RPMC更新指令;
当通过外部共享引脚接收到外部指令为所述Flash-2无法识别的RPMC更新指令,则所述FPGA通过与所述Flash-1之间互连的内部IO引脚通知依据RPMC更新指令对所述RPMC的值进行更新。
优选地,所述Flash-1及所述Flash-2为NOR型非易失性存储器NOR-Flash、NAND型非易失性存储器NAND-Flash,或者,电可擦只读存储器EEPROM。
优选地,所述FPGA中还存储有纠错码ECC,和/或,坏块管理BBM。
本发明实施例还公开了一种与FPGA结合的FLASH芯片外部指令处理的方法,所述芯片包括现场可编程门阵列FPGA,第一存储芯片Flash-1,以及,第二存储芯片Flash-2;所述FPGA中设置有应答保护单调计数器RPMC及配置信息;所述第一存储芯片Flash-1中存储有所述RPMC的值,所述的方法包括:
接收外部指令;
若所述外部指令为RPMC验证指令,则获取所述配置信息及RPMC的值;
依据所述配置信息与RPMC的值生成第一RPMC验证值;
判断所述第一RPMC验证值与所述RPMC验证指令中的第二RPMC验证值是否一致;若不一致,则判定所述芯片为非法芯片。
优选地,所述的方法还包括:
当接收到所述外部指令时,所述RPMC的值加1。
优选地,所述的方法还包括:
若所述外部指令为RPMC更新指令,则依据所述RPMC更新指令对所述RPMC的值进行更新并存储。
优选地,所述的方法还包括:
在预置的时间段接收到所述RPMC更新指令。
优选地,所述的方法还包括:
当接收到多个外部指令时,分别判断是否执行所述多个外部指令。
与现有技术相比,本发明包括以下优点:
1、本发明实施例所提出的与FPGA结合的FLASH芯片可以包括现场可编程门阵列FPGA,第一存储芯片Flash-1,以及,第二存储芯片Flash-2;Flash-1和FPGA各自包括内部IO引脚,所述Flash-1的内部IO引脚与所述FPGA的内部IO引脚互连,所述FPGA与所述Flash-1之间通过互连的内部IO引脚对进行内部相互通信;所述FPGA与Flash-2中相同的IO引脚相连,并且连接到所述芯片的同一外部共享引脚上;外部指令通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中。在具体实现中,还将定期接收到RPMC验证指令,FPGA依据本地配置以及Flash-1中的RPMC的值生成验证值,并与RPMC验证指令中的验证值进行比对,判断是否一致,若一致,说明该芯片为合法芯片,可以继续运行,若不一致,说明该芯片为非法芯片,为了保证数据的机密性和完整性,可以禁止该芯片继续运行。另外,由于在本发明实施例中可以利用现有的Flash芯片即可实现,并且,不需要像流水线一样需通过一系列工艺步骤制造芯片,因此,芯片设计复杂度低、设计周期短、成本低。
2、Flash-1及Flash-2的容量可以扩展,通用性强,例如,可以增加单片Flash的容量,或者将多个Flash封装在一起。
3、选择Flash-1及Flash-2的自由度高,例如可以选择NOR-Flash,NAND-Flash,或者EEPROM等其他存储器类型芯片。
4、FPGA可以多次重开发,并且速度快,只需对FPGA开发即可实现算法的升级,成本低。
5、Flash和FPGA中的RPMC还可以同时执行不同的指令,即Flash和RPMC可以并行工作,因此,提高了芯片的性能。
6、利用FPGA与通用Flash来实现特殊功能的FLASH芯片,提升了开发速度,降低了开发成本。
附图说明
图1是本发明的一种与FPGA结合的FLASH芯片的结构图;
图2是本发明的一种与FPGA结合的FLASH芯片外部指令处理的方法实施例的步骤流程图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明实施例的核心构思之一在于,与FPGA结合的FLASH芯片包括现场可编程门阵列FPGA,第一存储芯片Flash-1,以及,第二存储芯片Flash-2;Flash-1和FPGA各自包括内部IO引脚,所述Flash-1的内部IO引脚与所述FPGA的内部IO引脚互连,所述FPGA与所述Flash-1之间通过互连的内部IO引脚对进行内部相互通信;所述FPGA与Flash-2中相同的IO引脚相连,并且连接到所述芯片的同一外部共享引脚上;外部指令通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中。在本发明实施例中可以利用现有的Flash芯片即可实现,并且,不需要像流水线一样需通过一系列工艺步骤制造芯片,因此,芯片设计复杂度低、设计周期短、成本低。
参照图1,示出了本发明一种与FPGA结合的FLASH芯片的结构图,所述芯片可以包括:
现场可编程门阵列FPGA,第一存储芯片Flash-1,以及,第二存储芯片Flash-2;所述FPGA中可以设置有应答保护单调计数器RPMC及配置信息;所述第一存储芯片Flash-1中可以存储有所述RPMC的值;
本发明实施例中,Flash-1,Flash-2和RPMC可以是各自独立的芯片。Flash-1和Flash-2可以选择不同的容量来满足不同系统的需求,由于可以复用已设计好的Flash芯片,因此不必重新设计,大大减少了开发周期;FPGA中的设计了RPMC,故具备了应答保护单调计数的功能,也可以单独使用。
其中,FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input OutputBlock)和内部连线(Interconnect)三个部分。FPGA是可编程器件,与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的结构。FPGA利用小型查找表(16×1RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程。
由于FPGA还可以编程来实现多种特殊功能,因此,所述FPGA中还可以存储有纠错码ECC,和/或,坏块管理BBM,以实现不同的功能。并且,如果实现特殊功能算法需要存储大量的中间数据可以选择RAM容量大的FPGA,如果算法需要较高的工作频率则可以选择高速FPGA。
所述Flash-1和所述FPGA可以各自包括内部IO引脚,所述Flash-1的内部IO引脚可以与所述FPGA的内部IO引脚互连,所述FPGA可以与所述Flash-1之间通过互连的内部IO引脚对进行内部相互通信。
FPGA和Flash-1之间有IO接口,用于实现特殊数据的存储与控制(根据系统需求也可以使用或不使用Flash-1)。其中,对于Flash-1和FPGA的内部IO引脚的互连,可以是将Flash-1和FPGA中表示同一个状态位的内部IO引脚互连。
例如,Flash-1中的内部IO引脚IO_0用于状态位busy的输出,FPGA中的内部IO引脚IO_2用于状态位busy的输入,因此,可以将Flash-1中的内部IO引脚IO_0和FPGA中的内部IO引脚IO_2互连,IO_0和IO_2即为互连的内部IO引脚对。互连后Flash-1即可将自身的状态位busy通过其内部IO引脚IO_0输出至FPGA的内部IO引脚IO_2,FPGA即可获知Flash-1当前的状态。
再例如,Flash-1中的内部IO引脚IO_1用于状态位busy的输入,FPGA中的内部IO引脚IO_3用于状态位busy的输出,因此,可以将Flash-1中的内部IO引脚IO_1和FPGA中的内部IO引脚IO_3互连,IO_1和IO_3即为互连的内部IO引脚对。互连后FPGA即可将自身的状态位busy通过其内部IO引脚IO_3输出至Flash-1的内部IO引脚IO_1,Flash-1即可获知FPGA当前的状态。
外部指令通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中;外部指令通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中,所述Flash-2与所述FPGA分别判断是否执行所述外部指令;
外部指令可以通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中,然后Flash-2和FPGA分别判断是否执行所述外部指令,并根据判断的结果控制Flash-2和FPGA执行相应操作。在具体实现中,通过共用接口对FPGA与Flash-2进行数据读写与控制,并实现特殊功能的运算与控制。Flash-2和FPGA中可以具有相同的IO引脚,对于这些相同的IO引脚可以将其互连,并且连接到所述芯片的同一外部共享引脚上。本发明实施例中,Flash-2和FPGA中的相同的IO引脚可以指功能相同的IO引脚,例如,Flash-2中的IO引脚CE可以实现串行外设接口(Serial Peripheral Interface,SPI)接口的功能,FPGA中的IO引脚CSE也可以实现SPI接口的功能,此时,Flash-2中的IO引脚CE和FPGA中的IO引脚CSE即可为相同的IO引脚,因此,可以将这两个引脚CE和CSE互连。
在本发明的一种优选示例中,所述外部指令可以包括RPMC验证指令;
若所述外部指令为所述Flash-2无法识别的RPMC验证指令,则所述FPGA依据配置信息可以与所述RPMC的值生成第一RPMC验证值,并判断是否与所述RPMC验证指令中的第二RPMC验证值一致;若不一致,则所述芯片为非法芯片。
若外部指令为RPMC验证指令,则Flash-2无法识别的,故不会进行相应的操作,而FPGA则可识别出该指令为RPMC验证指令,将通过与Flash-1之间通过互连的内部IO引脚对的获取RPMC的值,依据配置信息与RPMC的值生成RPMC验证值,并判断与RPMC验证指令中的RPMC验证值是否一致,若一致,则说明该芯片为合法芯片,可以该芯片的继续运行;若不一致,则说明该芯片为非法芯片,为了保证数据的机密性和完整性,可以禁止该芯片继续运行。
本发明实施例中,所述芯片的引脚可以包括以下两种:
1、外部共享引脚
本发明实施例中,Flash-2和FPGA中包括相同的IO引脚,所述Flash-2与所述FPGA中的相同IO引脚互连,并且连接到所述芯片的同一外部共享引脚上,所述外部共享引脚可以为多个。
例如,图1中的IO_F_0,IO_F_1,...,IO_F_n即为所述的芯片的外部共享接口,Flash-2中与IO_F_0,IO_F_1,...,IO_F_n连接的IO接口、以及FPGA中与IO_F_0,IO_F_1,...,IO_F_n连接的IO接口,即为Flash-2和FPGA中相同的IO接口。
需要说明的是,由于图1为芯片的逻辑连接示意图,因此其中的IO_F_0,IO_F_1,...,IO_F_n均称为接口,该逻辑连接图中的这些接口在芯片的物理连接上即称为引脚。
优选地,当所述芯片通过外部共享引脚接收到外部指令时,可以执行以下过程:
所述FPGA可以与所述Flash-2中相同的IO引脚相连,并且可以连接到所述芯片的同一外部共享引脚上;外部指令可以通过所述芯片的外部共享引脚传输到所述Flash-2与所述FPGA中;所述外部指令可以包括RPMC验证指令;
其中,若所述外部指令为所述Flash-2无法识别的RPMC验证指令,则所述FPGA依据配置信息可以与所述RPMC的值生成第一RPMC验证值,并判断是否与所述RPMC验证指令中的第二RPMC验证值一致;若不一致,则所述芯片为非法芯片。
例如,如果芯片接收到外部指令a(RPMC验证指令),此时外部指令a会通过外部共享引脚分别传输到所述Flash-2与所述FPGA中,Flash-2和FPGA的都会对该外部指令a进行识别。若Flash-2的无法识别外部指令a,而FPGA的可以识别外部指令a,则FPGA针对该外部指令a执行对应指令a的操作;
如果芯片接收到外部指令b(程序PROGRAM或者擦除ERASE),此时Flash-2判断为需要执行外部指令b,FPGA判断为不需要执行外部指令b,则由Flash-2按照所述外部指令b执行对应指令b的操作。
在Flash-2执行所述外部指令b的过程中,如果芯片又接收到外部指令c,Flash-2判断为不需要执行外部指令c,而FPGA判断为需要执行外部指令c,则可以由FPGA按照所述外部指令c执行对应指令c的操作。
同样的,如果芯片接收到外部指令d,此时通过Flash-2判断为不需要执行外部指令d,而FPGA判断为需要执行外部指令d,则可以由FPGA按照所述外部指令d执行对应指令d的操作。在FPGA执行所述外部指令d的过程中,如果芯片又接收到外部指令e,Flash-2判断为需要执行外部指令e,而FPGA判断为不需要执行外部指令e,则可以由Flash-2按照所述外部指令e执行对应指令e的操作。
因此,通过上述过程,Flash-2和FPGA可以同时执行相同的指令或不同的指令,从而实现Flash-2和FPGA并行执行指令的过程。例如,Flash-2在执行程序(PROGRAM)或擦除(ERASE)的过程中,FPGA可以执行指令。
2、互连的内部IO引脚对
本发明实施例中,所述Flash-1和所述FPGA各自还包括内部IO引脚,所述Flash-1的内部IO引脚与所述FPGA的内部IO引脚互连,所述Flash-1与所述FPGA之间通过互连的内部IO引脚对进行内部相互通信。
例如,图1中Flash-1中的内部IO接口(即引脚)IO_#和与其互连的FPGA中的内部IO接口IO_#即组成所述的芯片上互连的内部IO接口对(即互连的内部IO引脚对),所述互连的内部IO接口对为多个。所述Flash-1与所述FPGA之间可以通过Flash-1中的内部IO接口IO_#和与其互连的FPGA中的内部IO接口IO_#进行内部相互通信。
本发明实施例中,Flash-1与FPGA之间可以通过互连的内部IO引脚对进行内部相互通信。例如,可以将Flash-1中用于状态位busy的输出的内部IO引脚IO_0和FPGA中用于状态位busy的输入的内部IO引脚IO_2互连;并将Flash-1中用于状态位busy的输入的内部IO引脚IO_1和RPMC中用于状态位busy的输出的内部IO引脚IO_3互连。IO_0和IO_2、以及IO_1和IO_3分别为互连的内部IO引脚对。因此,FLASH与RPMC之间可以通过上述互连的内部IO引脚对IO_0和IO_2、以及IO_1和IO_3进行内部相互通信,将自身的状态位busy的值通知对方。
因此,当FPGA接收到外部指令时,可以通过与Flash-1之间可以通过互连的内部IO引脚对进行通信,获取机传输相应的数据,或者通知对方执行相应的操作。
在本发明的一种优选实施例中,当通过外部共享引脚接收到外部指令时,所述FPGA可以通过与所述Flash-1之间互连的内部IO引脚通知将所述RPMC的值加1。
为了保证数据的机密性和完整性,RPMC的值在每次通过外部共享引脚接收到外部指令时,FPGA可以通过与所述Flash-1之间互连的内部IO引脚通知将所述RPMC的值加1,以便保证与外部的主机进行相互通信的芯片为合法的芯片。
在本发明的一种示例中,所述外部指令可以包括RPMC更新指令;
当通过外部共享引脚接收到外部指令为所述Flash-2无法识别的RPMC更新指令,则所述FPGA通过与所述Flash-1之间互连的内部IO引脚通知依据RPMC更新指令对所述RPMC的值进行更新。
若外部指令为RPMC更新指令,则Flash-2无法识别,故不会进行相应的操作,而FPGA则可识别出该指令为RPMC更新指令,将通过与Flash-1之间通过互连的内部IO引脚对通知Flash-2更新RPMC的值,以保持与外部主机RPMC的值一致。
本发明实施例中可以利用现有的Flash芯片即可实现,所述Flash-1及所述Flash-2可以为NOR型非易失性存储器NOR-Flash、NAND型非易失性存储器NAND-Flash,或者,电可擦只读存储器EEPROM等存储器芯片。在实际中,可以选择不同的容量的存储器来满足不同系统的需求,如果数据量特别大可以使用NAND-Flash,如果运算复杂、数据量小可以使用NOR-Flash或EEPROM。当然,也可以利用其他的Flash芯片,本发明实施例对此不作限制。
参照图2,示出了本发明的一种与FPGA结合的FLASH芯片外部指令处理的方法实施例的步骤流程图,所述芯片可以包括现场可编程门阵列FPGA,第一存储芯片Flash-1,以及,第二存储芯片Flash-2;所述FPGA中可以设置有应答保护单调计数器RPMC及配置信息;所述第一存储芯片Flash-1中可以存储有所述RPMC的值,所述的方法可以包括如下步骤:
步骤101,接收外部指令;
在本发明的一种优选实施例中,所述方法还可以包括:
步骤S11,当接收到所述外部指令时,所述RPMC的值加1。
在本发明的一种优选实施例中,所述方法还可以包括:
步骤S21,在接收到多个外部指令时,分别判断是否执行所述多个外部指令。
步骤102,在所述外部指令为RPMC验证指令时,则获取所述配置信息及RPMC的值;
步骤103,依据所述配置信息与RPMC的值生成第一RPMC验证值;
步骤104,判断所述第一RPMC验证值与所述RPMC验证指令中的第二RPMC验证值是否一致;若不一致,则执行步骤105
步骤105,判定所述芯片为非法芯片。
在本发明的一种优选实施例中,所述方法还可以包括:
步骤S31,在所述外部指令为RPMC更新指令时,依据所述RPMC更新指令对所述RPMC的值进行更新并存储。
在本发明的一种优选实施例中,所述方法还可以包括:
步骤S41,在预置的时间段接收到所述RPMC更新指令。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请所必须的。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
以上对本发明所提供的一种与FPGA结合的FLASH芯片及指令处理方法,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种与FPGA结合的FLASH芯片,其特征在于,包括:
现场可编程门阵列FPGA,第一存储芯片Flash-1,以及,第二存储芯片Flash-2;所述FPGA中设置有应答保护单调计数器RPMC及配置信息;所述第一存储芯片Flash-1中存储有所述RPMC的值,其中,
所述Flash-1和所述FPGA各自包括内部IO引脚,所述Flash-1的内部IO引脚与所述FPGA的内部IO引脚互连,所述FPGA与所述Flash-1之间通过互连的内部IO引脚对进行内部相互通信;
所述FPGA与所述Flash-2中相同的IO引脚相连,并且连接到所述FLASH芯片的同一外部共享引脚上;
外部指令通过所述FLASH芯片的外部共享引脚传输到所述Flash-2与所述FPGA中,所述Flash-2与所述FPGA分别判断是否执行所述外部指令;
其中,所述外部指令包括RPMC验证指令;若所述外部指令为所述Flash-2无法识别的RPMC验证指令,则所述FPGA依据配置信息与所述RPMC的值生成第一RPMC验证值,并判断是否与所述RPMC验证指令中的第二RPMC验证值一致;若不一致,则所述FLASH芯片为非法芯片。
2.根据权利要求1所述的一种与FPGA结合的FLASH芯片,其特征在于,
当通过外部共享引脚接收到外部指令时,所述FPGA通过与所述Flash-1之间互连的内部IO引脚通知将所述RPMC的值加1。
3.根据权利要求1或2所述的一种与FPGA结合的FLASH芯片,其特征在于,所述外部指令包括RPMC更新指令;
当通过外部共享引脚接收到外部指令为所述Flash-2无法识别的RPMC更新指令,则所述FPGA通过与所述Flash-1之间互连的内部IO引脚通知依据RPMC更新指令对所述RPMC的值进行更新。
4.根据权利要求1或2所述的与FPGA结合的FLASH芯片,其特征在于,所述Flash-1及所述Flash-2为NOR型非易失性存储器NOR-Flash、NAND型非易失性存储器NAND-Flash,或者,电可擦只读存储器EEPROM。
5.根据权利要求1所述的与FPGA结合的FLASH芯片,其特征在于,所述FPGA中还存储有纠错码ECC,和/或,坏块管理BBM。
6.一种与FPGA结合的FLASH芯片外部指令处理的方法,其特征在于,所述FLASH芯片包括现场可编程门阵列FPGA,第一存储芯片Flash-1,以及,第二存储芯片Flash-2;所述FPGA中设置有应答保护单调计数器RPMC及配置信息;所述第一存储芯片Flash-1中存储有所述RPMC的值,所述的方法包括:
接收外部指令;
若所述外部指令为RPMC验证指令,则获取所述配置信息及RPMC的值;
依据所述配置信息与RPMC的值生成第一RPMC验证值;
判断所述第一RPMC验证值与所述RPMC验证指令中的第二RPMC验证值是否一致;若不一致,则判定所述FLASH芯片为非法芯片。
7.根据权利要求6所述的方法,其特征在于,还包括:
当接收到所述外部指令时,所述RPMC的值加1。
8.根据权利要求6所述的方法,其特征在于,还包括:
若所述外部指令为RPMC更新指令,则依据所述RPMC更新指令对所述RPMC的值进行更新并存储。
9.根据权利要求8所述的方法,其特征在于,还包括:
在预置的时间段接收到所述RPMC更新指令。
10.根据权利要求6-9任一权利要求所述的方法,其特征在于,还包括:
当接收到多个外部指令时,分别判断是否执行所述多个外部指令。
CN201310495546.4A 2013-10-21 2013-10-21 与fpga结合的flash芯片及指令处理方法 Active CN104572015B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310495546.4A CN104572015B (zh) 2013-10-21 2013-10-21 与fpga结合的flash芯片及指令处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310495546.4A CN104572015B (zh) 2013-10-21 2013-10-21 与fpga结合的flash芯片及指令处理方法

Publications (2)

Publication Number Publication Date
CN104572015A CN104572015A (zh) 2015-04-29
CN104572015B true CN104572015B (zh) 2018-08-03

Family

ID=53088194

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310495546.4A Active CN104572015B (zh) 2013-10-21 2013-10-21 与fpga结合的flash芯片及指令处理方法

Country Status (1)

Country Link
CN (1) CN104572015B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111370051B (zh) * 2018-12-25 2022-02-18 北京兆易创新科技股份有限公司 一种非易失存储器验证系统及方法
CN111159720B (zh) * 2020-03-27 2020-07-24 深圳市芯天下技术有限公司 对应答保护单调计数器rpmc进行测试的系统
CN112270152B (zh) * 2020-10-29 2022-06-21 厦门紫光展锐科技有限公司 芯片io引脚验证系统和方法
CN113448895A (zh) * 2021-06-25 2021-09-28 武汉新芯集成电路制造有限公司 存储集成芯片及其通信方法、封装结构及封装方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1700642A (zh) * 2005-05-25 2005-11-23 北京兆日科技有限责任公司 一种单调计数器的实现方法
CN101222698A (zh) * 2007-01-12 2008-07-16 展讯通信(上海)有限公司 一种基于硬件序列号的imei码保护方法
CN102110055A (zh) * 2009-12-25 2011-06-29 比亚迪股份有限公司 闪存芯片存储配置方法以及闪存芯片存储配置装置
CN102646085A (zh) * 2011-02-22 2012-08-22 海力士半导体有限公司 半导体装置
CN103219333A (zh) * 2013-04-09 2013-07-24 北京兆易创新科技股份有限公司 增强型Flash芯片、封装方法和指令执行方法
CN103236428A (zh) * 2013-04-09 2013-08-07 北京兆易创新科技股份有限公司 一种含有RPMC的增强型Flash芯片及其封装方法
CN103247612A (zh) * 2013-04-09 2013-08-14 北京兆易创新科技股份有限公司 一种增强型flash芯片和一种芯片封装方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070162964A1 (en) * 2006-01-12 2007-07-12 Wang Liang-Yun Embedded system insuring security and integrity, and method of increasing security thereof
US9411748B2 (en) * 2011-12-20 2016-08-09 Intel Corporation Secure replay protected storage

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1700642A (zh) * 2005-05-25 2005-11-23 北京兆日科技有限责任公司 一种单调计数器的实现方法
CN101222698A (zh) * 2007-01-12 2008-07-16 展讯通信(上海)有限公司 一种基于硬件序列号的imei码保护方法
CN102110055A (zh) * 2009-12-25 2011-06-29 比亚迪股份有限公司 闪存芯片存储配置方法以及闪存芯片存储配置装置
CN102646085A (zh) * 2011-02-22 2012-08-22 海力士半导体有限公司 半导体装置
CN103219333A (zh) * 2013-04-09 2013-07-24 北京兆易创新科技股份有限公司 增强型Flash芯片、封装方法和指令执行方法
CN103236428A (zh) * 2013-04-09 2013-08-07 北京兆易创新科技股份有限公司 一种含有RPMC的增强型Flash芯片及其封装方法
CN103247612A (zh) * 2013-04-09 2013-08-14 北京兆易创新科技股份有限公司 一种增强型flash芯片和一种芯片封装方法

Also Published As

Publication number Publication date
CN104572015A (zh) 2015-04-29

Similar Documents

Publication Publication Date Title
CN104572015B (zh) 与fpga结合的flash芯片及指令处理方法
CN103137203B (zh) 非易失性存储装置、存储系统和控制器操作方法
EP2997469B1 (en) Dynamic reconfiguration of applications on a multi-processor embedded system
CN107589905A (zh) 存储器系统及其操作方法
CN108447523A (zh) 用来控制一记忆装置的方法以及记忆装置与控制器
CN103247612B (zh) 一种增强型flash芯片和一种芯片封装方法
CN106128505A (zh) 包括半导体存储器件的存储系统以及其编程方法
CN105930186A (zh) 多cpu的软件加载方法及基于多cpu的软件加载装置
CN103530164A (zh) 一种fpga配置文件远程更新的方法及装置
CN105373338A (zh) 一种flash的控制方法和控制器
CN107301042A (zh) 一种带自检功能的SoC应用程序引导方法
CN103236428B (zh) 一种含有RPMC的增强型Flash芯片及其封装方法
CN106293505A (zh) 存储系统和操作其的方法
CN103258820A (zh) SPI接口的增强型Flash芯片及芯片封装方法
CN106257833A (zh) 高速工作的时钟门控电路
CN106648758A (zh) 一种多核处理器boot启动系统及方法
CN102681941A (zh) 一种可扩展的嵌入式仿真测试系统
CN104461660A (zh) 一种异构系统的多模式动态加载方法
CN104050006A (zh) 一种fpga的更新系统及其更新方法
CN106528217B (zh) 一种现场可编程门阵列程序加载系统和方法
CN103219333B (zh) 增强型Flash芯片、封装方法和指令执行方法
CN105825895A (zh) 测试模式电路及包括该测试模式电路的半导体器件
CN103247611B (zh) 一种增强型flash芯片和一种芯片封装方法
CN104916321B (zh) 可再编程存储器中的一次编程
CN205103653U (zh) 汽车控制器数据处理系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Room 101, Floor 1-5, Building 8, Yard 9, Fenghao East Road, Haidian District, Beijing 100094

Patentee after: Zhaoyi Innovation Technology Group Co.,Ltd.

Address before: 100083 12 Floors, Block A, Tiangong Building, Science and Technology University, 30 College Road, Haidian District, Beijing

Patentee before: GIGADEVICE SEMICONDUCTOR(BEIJING) Inc.