CN100440180C - 处理器、存储器、计算机系统、系统lsi及其验证方法 - Google Patents

处理器、存储器、计算机系统、系统lsi及其验证方法 Download PDF

Info

Publication number
CN100440180C
CN100440180C CNB2006100683403A CN200610068340A CN100440180C CN 100440180 C CN100440180 C CN 100440180C CN B2006100683403 A CNB2006100683403 A CN B2006100683403A CN 200610068340 A CN200610068340 A CN 200610068340A CN 100440180 C CN100440180 C CN 100440180C
Authority
CN
China
Prior art keywords
memory
authorization information
processor
power supply
nonvolatile memory
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.)
Expired - Fee Related
Application number
CNB2006100683403A
Other languages
English (en)
Other versions
CN1841348A (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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Publication of CN1841348A publication Critical patent/CN1841348A/zh
Application granted granted Critical
Publication of CN100440180C publication Critical patent/CN100440180C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本申请涉及处理器、存储器、计算机系统、系统LSI及其验证方法。该处理器连接到非易失性存储器,该非易失性存储器存储有第一存储器验证信息,用于验证该非易失性存储器,该处理器包括:利用该非易失性存储器中存储的信息执行操作的操作单元;与该操作单元整体形成的验证存储器,存储有用于验证该非易失性存储器的第二存储器验证信息;用于从该非易失性存储器获取第一存储器验证信息的验证信息获取单元;用来比较所述第一存储器验证信息与所述第二存储器验证信息以验证该非易失性存储器的存储器验证单元;以及存储器访问控制单元,用来在存储器验证单元验证成功时允许对所述非易失性存储器的访问。

Description

处理器、存储器、计算机系统、系统LSI及其验证方法
技术领域
本发明涉及处理器、存储器、计算机系统、系统大规模集成电路(LSI)及其验证方法。
背景技术
计算机已被集成到各种设备中,比如数字照相机、数字电视、数字通用盘(DVD)播放器、DVD/HDD记录器、游戏控制台、便携式电话、便携式音频播放器以及汽车的控制单元。集成有计算机的设备和系统处理的数据包括需要保护其版权的内容。另外,这些设备和系统处理诸如个人信息和收费信息这样的重要信息。
当使用这些设备和系统时,用户有可能进行非法活动,比如非法地篡改设备和系统、非法地复制解密内容、执行非法程序以获取个人信息,以及改变收费信息等,这些都越来越成问题。
有一种传统的技术旨在保护设备和系统免受非法活动的侵害,例如,该技术是对设备和系统中的上面集成有LSI芯片的衬底进行树脂涂覆,为设备制造难以拆解的外壳,从而使得篡改行为更难以进行。
根据另一种传统的技术,数字信号处理器(DSP)从内部只读存储器(ROM)读出引导软件,该引导软件基于设备/制造商识别码来对设备进行验证。只有当设备通过验证时,才执行引导(例如见日本专利申请公开2003-108257)。
另外,根据另一种传统技术,对于通过验证的合法程序代码之外的程序代码,安全引导系统阻止其执行,以防止执行改写的非法程序代码。已知有一种名为“可信平台模块(TPM,Trusted PlatformModule)的安全芯片,用于实现安全引导。
用树脂涂覆和加强外壳的方法是不好的,因为这增加制造成本,而且容易被特殊的处理技术克服。
另一方面,安全引导技术也有一些缺点,因为其要求诸如TPM这样的专用硬件模块。每一个设备的TPM都有专用的在各设备之间不同的加密密钥。因此,当在设备上执行的程序需要更新时,要分发的更新后的程序必须被构建为允许用各设备的不同加密密钥来进行验证,因此维护费用大大提高。
另外,尽管安全引导技术能够确认预定程序的激活,但是不能容易地检测程序的泄漏或者对硬件的篡改。
发明内容
根据本发明的一个方面,一种处理器连接到非易失性存储器,该非易失性存储器存储有第一存储器验证信息,用于验证该非易失性存储器,该处理器包括:利用该非易失性存储器中存储的信息执行操作的操作单元;与该操作单元整体形成的验证存储器,存储有用于验证该非易失性存储器的第二存储器验证信息;用于从该非易失性存储器获取第一存储器验证信息的验证信息获取单元;用来比较所述第一存储器验证信息与所述第二存储器验证信息以验证该非易失性存储器的存储器验证单元;以及存储器访问控制单元,用来在存储器验证单元验证成功时允许对所述非易失性存储器的访问。
根据本发明的另一个方面,一种存储器连接到处理器,该处理器存储有第一处理器验证信息,用于验证该处理器,该存储器包括:存储由操作单元使用的信息的非易失性存储器;与该非易失性存储器整体形成的验证存储器,存储有用于验证该操作单元的第二处理器验证信息;用于从该操作单元获取第一处理器验证信息的验证信息获取单元;用来比较所述第一处理器验证信息与所述第二处理器验证信息以验证该操作单元的处理器验证单元;以及处理器访问控制单元,用来在处理器验证单元验证成功时允许来自所述操作单元的访问。
根据本发明的另一个方面,一种计算机系统包括处理器和存储由该处理器使用的信息的存储器,该存储器包括存储由该处理器使用的信息的非易失性存储器,以及与该非易失性存储器整体形成的、存储用于该非易失性存储器的验证的第一存储器验证信息的第一验证存储器,该处理器包括用来利用存储在所述非易失性存储器中的信息执行操作的操作单元,与该操作单元整体形成、存储有用于验证该非易失性存储器的第二存储器验证信息的第二验证存储器,用于获取所述第一验证存储器存储的第一存储器验证信息的存储器验证信息获取单元,用来比较所述存储器验证信息获取单元获取的所述第一存储器验证信息与所述第二存储器验证信息以验证该非易失性存储器的存储器验证单元,以及存储器访问控制单元,用来在存储器验证单元验证所述非易失性存储器成功时允许对所述非易失性存储器的访问。
根据本发明的另一方面,包括操作单元的计算机系统中的一种验证方法,包括:通过比较第一验证信息和第二验证信息执行操作单元和非易失性存储器之间的验证,所述第一验证信息被存储在与存储操作单元所使用的信息的所述非易失性存储器整体形成的第一验证存储器中,所述非易失性存储器还存储有用于所述操作单元和所述非易失性存储器之间的验证的第二验证信息,所述第二验证信息被存储在与所述操作单元整体形成的、存储第二验证信息的第二验证信息存储器中;当在上述执行验证的步骤中验证成功时,对访问进行控制,以允许所述非易失性存储器和所述操作单元之间的访问。
根据本发明的另一方面,一种系统大规模集成电路,包括:用来利用存储在非易失性存储器中的信息执行操作的处理器核心;与该处理器核心整体形成的、存储用于验证该非易失性存储器的第一存储器验证信息的第一验证存储器;与该非易失性存储器整体形成的、存储用于验证该非易失性存储器的第二存储器验证信息的第二验证存储器;用来获取第二验证信息的验证信息获取单元;用来比较验证信息获取单元获取的第二验证信息和第一存储器验证信息的存储器验证单元;以及存储器访问控制单元,用来在存储器验证单元的验证成功时允许对该非易失性存储器的访问。
根据本发明的另一方面,一种计算机系统包括系统大规模集成电路以及存储在该系统大规模集成电路中使用的信息的存储器,该存储器包括用来存储处理器核心使用的信息的非易失性存储器以及与该非易失性存储器整体形成的、存储用于验证该非易失性存储器的第一验证信息的第一验证存储器,该系统大规模集成电路包括:用来利用所述非易失性存储器存储的信息执行操作的处理器核心,与该处理器核心整体形成的、存储用于验证该非易失性存储器的第二验证信息的第二验证存储器,用于获取第一验证存储器存储的第一验证信息的验证信息获取单元,用于比较验证信息获取单元所获取的第一存储器验证信息和第二验证信息以验证该非易失性存储器的存储器验证单元,以及在存储器验证单元对非易失性存储器的验证成功时允许对该非易失性存储器的访问的存储器访问控制单元。
根据本发明的另一方面,一种计算机系统包括系统大规模集成电路和存储该系统大规模集成电路中使用的信息的存储器,该系统大规模集成电路包括用于执行操作的处理器核心,以及与该处理器核心整体形成的、存储用于该处理器核心的验证的第一验证信息的第一验证存储器,该存储器包括:存储由处理器核心使用的信息的非易失性存储器,与该非易失性存储器整体形成的、存储用于所述操作单元的验证的第二验证信息的第二验证存储器,用于获取所述第一验证信息的验证信息获取单元,用于比较所述验证信息获取单元获取的第一验证信息和所述第二验证信息以验证所述操作单元的处理器验证单元,以及在所述处理器验证单元的验证成功时允许来自所述操作单元的访问的处理器访问控制单元。
附图说明
图1是根据第一实施方案的计算机系统的总体结构的示意图;
图2是在第一实施方案的计算机系统中,当切断电力供应时执行的中止处理的流程图;
图3是在第一实施方案的计算机系统中,当切断电力供应之后又恢复电力供应时执行的验证处理的流程图;
图4是其中只有处理器生成验证信息的计算机系统的总体结构的示意图;
图5是根据第二实施方案的计算机系统的总体结构的示意图;
图6是在第二实施方案的计算机系统中,当切断电力供应时执行的中止处理的流程图;
图7是在第二实施方案的计算机系统中,当切断电力供应之后又恢复电力供应时执行的验证处理的流程图;
图8是当处理器向存储器发送存储器验证信息(A)、存储器向处理器发送处理器验证信息(C)时的操作流的示意图;
图9是当交换随机数等时的操作流的示意图;
图10是在第三实施方案的计算机系统中的验证信息生成处理的流程图;
图11是在第三实施方案的计算机系统中,当切断电力供应时执行的中止处理的流程图;
图12是根据第四实施方案的计算机系统的总体结构的示意图;
图13是在第四实施方案的计算机系统中,当切断电力供应时执行的中止处理的流程图;
图14是在第四实施方案的计算机系统中,当切断电力供应之后又恢复电力供应时执行的验证处理的流程图;
图15是在根据第四实施方案的计算机系统中,系统LSI的功能结构的详细示意图;
图16是根据第四实施方案的计算机系统的第二种变型的计算机系统的说明性示意图;
图17是根据第四实施方案的计算机系统的第三种变型的计算机系统的说明性示意图;
图18是根据第五实施方案的计算机系统的总体结构的示意图;
图19是根据第五实施方案的第一种变型的计算机系统的总体结构的示意图。
具体实施方式
下面结合附图具体描述本发明的举例的实施方案的处理器、存储器、计算机系统、系统LSI及其验证方法。应当注意本发明不受具体实施例的限制。
图1是根据第一实施方案的计算机系统100的总体结构的示意图。该计算机系统100包括处理器10、存储器20、电源单元30和总线40。
处理器10包括存储器控制器11、操作单元12、控制器13、启动中止控制器14,存储器验证信息生成单元15以及验证信息存储器16。存储器控制器11从存储器20读出程序或者数据,将数据写入存储器20。操作单元12具有临时存储数据的寄存器。操作单元12从存储器20获取数据并利用所述寄存器处理数据。控制器13管理程序在操作单元12上的执行。
启动中止控制器14在处理器10启动和中止操作时执行处理。具体地,启动中止控制器14管理存储器验证信息生成单元15和验证信息存储器16,以在启动操作时验证存储器20,并生成用于中止操作时的验证的验证信息。启动中止控制器14还通过总线40向存储器20发送信息或者从之接收信息。
这样,启动中止控制器14可以用作至少下述之一:存储器验证信息获取单元,存储器验证单元,存储器访问控制单元,电力供应开始检测单元,电力供应中止检测单元以及传输单元。
存储器验证信息生成单元15根据来自启动中止控制器14的指令生成用于存储器20的验证的存储器验证信息。验证信息存储器16存储由存储器验证信息生成单元15生成的存储器验证信息。验证信息存储器16还存储处理器验证信息。处理器验证信息是存储器20用来验证处理器10的信息。处理器验证信息由启动中止控制器14从存储器20获取。
验证信息存储器16是非易失性存储器。因此,即使在电力供应停止时,存储在验证信息存储器16中的数据也不会被擦除而是保持。非易失性存储器例如是电可擦可编程只读存储器(EEPROM),或者闪存。验证信息存储器16可以是任何非易失性存储器,其类型不限于这里的实施方案。
处理器10作为单一器件整体制造。更具体地,处理器10的各个元件安装在一个芯片上。或者,处理器10的各个元件被形成为一个封装件。这里,整体形成处理器10的各元件指的是所述元件的物理集成。最好,处理器10被形成为这样的,使得每一个元件在与其他元件分开时不能工作。
存储器20包括非易失性存储器21,启动中止控制器24,处理器验证信息生成单元25以及验证信息存储器26。
非易失性存储器21是高速存储器。具体地,非易失性存储器21例如是磁随机存取存储器(MRAM)、铁电RAM(FeRAM)或者相变RAM(PRAM)。因此,即使电力供应停止,存储在非易失性存储器21中的数据也不会被擦除而是保持。这样,非易失性存储器21能够存储电源截止时的状态,并且在电源恢复时,设备能够从电源截止时的状态重新开始操作。
非易失性存储器21通过总线40连接到处理器10。在总线40上发送三种类型的信号,也就是:用于指定存储器的地址信号,对应于指定的地址的数据信号,以及指定是读还是写的控制信号。
启动中止控制器24在存储器20的操作开始和中止时执行处理。具体地,启动中止控制器24管理处理器验证信息生成单元25和验证信息存储器26,以在操作开始时验证处理器10,并生成在操作中止时用于验证的验证信息。启动中止控制器24还通过总线40从处理器10接收信息或者向其发送信息。
处理器验证信息生成单元25根据来自启动中止控制器24的指令生成用于处理器10的验证的处理器验证信息。验证信息存储器26存储由处理器验证信息生成单元25生成的处理器验证信息。验证信息存储器26还存储存储器验证信息。存储器验证信息是由启动中止控制器24从处理器10获取的。验证信息存储器26是类似于验证信息存储器16的非易失性存储器。类似于处理器10,存储器20由其各元件整体形成。
电源单元30包括电源31,电源控制器32以及电容器33。电容器33存储从电源31供应的电能,并具有足以向处理器10和存储器20提供电力充分的时间以供处理器10和存储器20执行中止处理的电容。中止处理将在后面描述。电源控制器32控制电源31和电容器33。
计算机系统100还包括未图示的其他各种输入输出设备。输入输出设备例如是在显示设备上显示在存储器20中处理的视频数据的视频处理器。
图2是当电力供应停止时第一实施方案的计算机系统100执行的中止处理的流程图。
当电源控制器32检测到电源截断时,也就是检测到电源31的电力供应中止时(步骤S100),存储在电容器33中的电能被提供给处理器10和存储器20(步骤S101)。然后,处理器10和存储器20的操作继续。电源控制器32还向启动中止控制器14和24发送有关电源的截断的信息(步骤S102)。
从电源控制器32接收到有关电源的截断的信息后,启动中止控制器14和24认识到电源的截断,从而停止当接收到有关电源的截断的信息时正在进行中的正常操作(步骤S110,步骤S120)。
启动中止控制器14和24待机,直到处理器和存储器进入稳定状态,也就是直到处理器和存储器准备好在电源再次打开时从与接收到有关电源的截止的信息时的状态相同的状态恢复正常操作(步骤S111,步骤S121)。
例如,如果在接收到有关电源的截止的信息时计算机系统正在执行一个存储器存取周期,则启动中止控制器14和24待机,直到该存储器存取周期结束。如果计算机系统正在执行位于处理器的流水线的中间的指令,则启动中止控制器14和24待机,直到有关的指令处理结束。
另外,当处理器10中所包括的存储器比如寄存器或者高速缓冲存储器是易失性存储器时,寄存器和高速缓冲存储器的内部状态被保存在存储器20中,以为下一次操作的开始作准备。
当处理器10和存储器20停止正常操作而进入稳定状态时,存储器验证信息生成单元15根据来自启动中止控制器14的指令新生成存储器验证信息(步骤S112)。类似地,处理器验证信息生成单元25根据来自启动中止控制器24的指令新生成处理器验证信息(步骤S122)。
这样,存储器验证信息生成单元15在来自电源31的电力供应截止之后、来自电容器33的电力供应截止之前生成存储器验证信息。处理器验证信息生成单元25在来自电源31的电力供应截止之后、来自电容器33的电力供应截止之前生成处理器验证信息。
然后,验证信息存储器16存储由存储器验证信息生成单元15生成的存储器验证信息(步骤S113)。类似地,验证信息存储器26存储由处理器验证信息生成单元25生成的处理器验证信息(步骤S123)。这里,存储器验证信息和处理器验证信息是用于处理器10和存储器20之间的相互验证的秘密信息。因此,存储器验证信息和处理器验证信息需要是不能为处理器和存储器之外的设备所知的信息。
然后启动中止控制器14通过总线40向启动中止控制器24发送存储在验证信息存储器16中的存储器验证信息。启动中止控制器24将从启动中止控制器14获取的存储器验证信息存储在验证信息存储器26中。
类似地,启动中止控制器24通过总线40向启动中止控制器14发送验证信息存储器26中存储的处理器验证信息。启动中止控制器14将从启动中止控制器24获取的处理器验证信息存储在验证信息存储器16中。
通过上述处理,处理器10和存储器20共享处理器验证信息和存储器验证信息(步骤S114,步骤S124)。然后,处理器10和存储器20停止操作(步骤S115,步骤S125)。这样,就完成了中止处理。
这里,处理器验证信息和存储器验证信息是通过安全手段传送的,以防止,例如,由于对信号的非法监视而泄漏到外部。具体地,在传输之前可以对验证信息进行加密。
或者,可以使用秘密密钥,也就是,处理器10和存储器20可以预先设置和共享秘密密钥。在传输之前用共享的秘密密钥对验证信息加密。
或者,可以使用公开密钥密码体系。根据公开密钥密码体系,处理器10和存储器20分别存储自己的秘密密钥和另一方的公开密钥。在传输之前用对方的公开密钥对验证信息加密。
尽管这里在第一实施方案中是通过总线40传输处理器验证信息和存储器验证信息的,计算机系统100还可以包括专用于传输验证信息的信号线。那么,处理器验证信息和存储器验证信息可以通过专用于传输验证信息的信号线传送。
图3是在电源截断之后在恢复电源时,由第一实施方案的计算机系统100执行的验证处理的流程图。当恢复电源时,处理器10和存储器20通过总线40交换在电源的中止处理中共享的存储器验证信息和处理器验证信息(步骤S210,步骤S220)。具体地,启动中止控制器14通过总线40向启动中止控制器24发送存储在验证信息存储器16中的处理器验证信息。
另一方面,启动中止控制器24通过总线40向启动中止控制器14发送存储在验证信息存储器26中的存储器验证信息。这里,存储器验证信息和处理器验证信息是以安全方式(例如通过加密)传输的。
然后,启动中止控制器14比较从启动中止控制器24接收的存储器验证信息以及由存储器验证信息生成单元15生成并存储在验证信息存储器16中的存储器验证信息(步骤S211)。如果两个存储器验证信息匹配,则启动中止控制器14判定对存储器20的验证是成功的(步骤S212中的是),并恢复正常操作(步骤S213)。这样,允许对存储器20的访问,开始对存储器20的数据读写。
另一方面,如果两个存储器验证信息不匹配,则启动中止控制器14判定存储器20的验证失败(步骤S212中的否),并停止操作(步骤S214)。如果两个存储器验证信息不匹配,则存储器20处于与电源中止之前的状态不同的状态。换句话说,存储器20在断电期间可能被进行了非法操作。例如,有可能有恶意的第三方非法地访问了存储器20。或者,存储器20有可能与其他存储器进行了交换。因此,在这种情况下,处理器10停止操作。换句话说,处理器10不访问存储器20。这样,就能够防止非法活动,比如通过存储器20非法侵入处理器10。
存储器20的从步骤S221到步骤S224的处理类似于处理器10的从步骤S211到步骤S214的处理。在这些步骤中,启动中止控制器24比较从启动中止控制器14接收的处理器验证信息和由处理器验证信息生成单元25生成、存储在验证信息存储器26中的处理器验证信息(步骤S221)。如果这两个处理器验证信息匹配,则启动中止控制器24判定处理器10的验证成功(步骤S222中的“是”),并恢复正常操作(步骤S223)。换句话说,允许处理器10的访问,开始处理器10的数据读写。
另一方面,如果两个处理器验证信息不匹配,则启动中止控制器24判定处理器10的验证失败(步骤S222中的“否”),并停止操作(步骤S224)。这样就完成了验证处理。
在前面,结合举例的实施方式描述了本发明。但是,对于上述实施方案,可以有各种各样的修改或者变化。
在第一实施方案中,在处理器10中生成的验证信息和在存储器20中生成的验证信息被分别用作存储器验证信息和处理器验证信息。但是,在第一实施方案的一种变型中,处理器10和存储器20生成的验证信息可以被用作用于处理器10和存储器20的相互验证的信息。
例如,存储器20可以使用存储器验证信息,也就是在处理器中生成的验证信息,来验证处理器10。另一方面,处理器10可以使用处理器验证信息,也就是在存储器中生成的验证信息,来验证存储器20。
或者,处理器10可以同时使用处理器验证信息和存储器验证信息来验证存储器20。类似地,存储器20可以同时使用处理器验证信息和存储器验证信息来验证处理器10。
或者,处理器10和存储器20中只有一个可以生成验证信息。图4是其中只有处理器10生成验证信息的计算机系统101的总体结构的示意图。
在这种情况下,处理器10的存储器验证信息生成单元15生成的存储器验证信息被存储在验证信息存储器16中。存储器20启动中止控制器24将从启动中止控制器14获取的存储器验证信息存储在验证信息存储器26中。在开始电力供应时,处理器10获取存储在验证信息存储器26中的存储器验证信息。在判定出验证成功之后,处理器10开始正常操作。类似地,存储器20获取存储在验证信息存储器16中的存储器验证信息。在判定出验证成功之后,存储器20开始正常操作。
或者,只有存储器20可以生成验证信息。在这种情况下,根据存储器20生成的验证信息进行存储器20和处理器10之间的验证。具体地,存储器20利用存储器20生成的验证信息验证处理器10。处理器10利用存储器20生成的验证信息验证存储器20。
不管是处理器10和存储器20二者都生成验证信息还是在处理器10和存储器20中只有一个生成验证信息,所生成的验证信息都被发送给对方设备并由处理器10和存储器20共享。
在第二变型中,不同于第一种实施方案(其中,启动中止控制器14验证连接到处理器10的存储器,启动中止控制器24验证连接到存储器20的处理器),只执行一种验证。
例如,只有启动中止控制器14验证存储器20。在这种情况下,启动中止控制器14比较存储在验证信息存储器16中的存储器验证信息和存储在验证信息存储器26中的存储器验证信息,来验证存储器20,而存储器20不需要验证处理器10。换句话说,启动中止控制器24可以不比较存储在验证信息存储器26中的处理器验证信息和存储在验证信息存储器16中的处理器验证信息。当启动中止控制器14判定验证成功时,不仅处理器10而且存储器20开始正常操作。
或者,只有启动中止控制器24可以验证处理器10。在这种情况下,启动中止控制器24比较存储在验证信息存储器26中的处理器验证信息和存储在验证信息存储器16中的处理器验证信息,来验证处理器10,而处理器10可以不验证存储器20。换句话说,启动中止控制器14可以不比较存储在验证信息存储器16中的存储器验证信息和存储在验证信息存储器26中的存储器验证信息。当启动中止控制器24判定验证成功时,不仅存储器20而且处理器10开始正常操作。
在第三种变型中,不同于第一实施方案(其中,启动中止控制器14和24通过总线40交换存储器验证信息和处理器验证信息),启动中止控制器14和24可以通过专用信号线交换信息。
在第四变型中,不同于第一实施方案的计算机系统100(其中,处理器验证信息和存储器验证信息被存储在验证信息存储器26中),信息可以存储在作为存储器的一部分的非易失性存储器的一部分中。
在第五变型中,不同于第一实施方案的计算机系统100(其只包括一个存储器),可以提供多个处理器。在这种情况下,存储器验证信息和处理器验证信息可以在每一个处理器和存储器20之间进行交换,以相互验证。
在第六变型中,不同于第一实施方案的计算机系统100(其只包括一个存储器),可以提供多个存储器。在这种情况下,处理器10可以与所述多个存储器中的每一个交换存储器验证信息和处理器验证信息,以相互验证。
在第七变型中,计算机系统可以包括多个处理器和多个存储器。在这种情况下,所述多个处理器中的每一个与所述多个存储器中的每一个交换存储器验证信息和处理器验证信息,来验证所连接的设备。
图5是第二实施方案的计算机系统200的总体结构的示意图。第二实施方案的计算机系统200的处理器10包括取代第一实施方案的处理器10的存储器验证信息生成单元15和验证信息存储器16的存储器验证随机数发生器17、存储器验证随机数存储器18和处理器验证随机数存储器19。
另外,第二实施方案的计算机系统200的存储器20包括取代第一实施方案的存储器20的处理器验证信息生成单元25和验证信息存储器26的处理器验证随机数发生器27、处理器验证随机数存储器28以及存储器验证随机数存储器29。
第二实施方案的存储器验证随机数发生器17对应于第一实施方案的存储器验证信息生成单元15。第二实施方案的存储器验证随机数存储器18和处理器验证随机数存储器19对应于第一实施方案的验证信息存储器16。第二实施方案的处理器验证随机数发生器27对应于第一实施方案的处理器验证信息生成单元25。第二实施方案的处理器验证随机数存储器28和存储器验证随机数存储器29对应于第一实施方案的验证信息存储器26。
存储器验证随机数存储器18、处理器验证随机数存储器19、处理器验证随机数存储器28和存储器验证随机数存储器29是非易失性存储器。非易失性存储器的使用是为了防止在断电时丢失数据。
存储器验证随机数发生器17生成随机数。存储器验证随机数发生器17生成的随机数被称为存储器验证随机数。存储器验证随机数被存储在存储器验证随机数存储器18中。类似地,处理器验证随机数发生器27生成随机数。处理器验证随机数发生器27生成的随机数被称为处理器验证随机数。处理器验证随机数被存储在处理器验证随机数存储器28中。
启动中止控制器14从启动中止控制器24获取处理器验证随机数发生器27生成的处理器验证随机数,以将其存储在处理器验证随机数存储器19中。启动中止控制器24从启动中止控制器14获取存储器验证随机数发生器17生成的存储器验证随机数,以将其存储在存储器验证随机数存储器29中。在第二实施方式中,存储器验证随机数和处理器验证随机数被用作验证信息。
存储器验证随机数发生器17生成的存储器验证随机数和处理器验证随机数发生器27生成的处理器验证随机数的长度(比特长度)最好为例如40位或者128位。随机数可以为任何所需的长度。考虑到安全性,一般优选更长的随机数。但是,如果随机数的长度太大,处理和通信所需的时间可能会过多,用于处理所需的硬件将会变得很巨大。因此,随机数的长度最好基于安全性和处理时间来确定。随机数的长度不限于本实施方式。
在第二实施方式中,存储器验证随机数发生器17和处理器验证随机数发生器27是任何传统的随机数发生器。考虑到增强系统的安全性,随机数的生成最好基于某种物理现象:其中难以估计随机数的生成体系。生成随机数的方式不限于本实施方式。
图6是在根据第二实施方案的计算机系统200断电时执行的中止处理的流程图。当电源控制器32检测到断电时,处理器10和存储器20待机,直到达到稳定状态。这里的处理类似于参考图2所描述的根据第一实施方案的处理(步骤S110到步骤S111,步骤S120到步骤S121)。
之后在第二实施方案的计算机系统200中执行的处理不同于在第一实施方案的计算机系统100中的处理。下面描述在实现稳定状态之后执行的处理。
当在处理器10和存储器20的正常操作的中止之后达到稳定状态时(步骤S111),启动中止控制器14使存储器验证随机数发生器17生成新随机数,也就是存储器验证随机数(NRM)(步骤S130)。然后,启动中止控制器14得到新生成的存储器验证随机数(NRM)和存储器验证随机数存储器18中存储的存储器验证随机数(RM)的“异或”(A)(步骤S131)。
作为先决条件,应当注意,存储器验证随机数存储器18存储存储器验证随机数发生器17在最后一次启动操作的验证处理中生成的存储器验证随机数(RM)。
然后,该异或值(A)被发送到启动中止控制器24(步骤S132)。这里,得到NRM和RM的异或,并发送,以防止从外部的观测。如果原样发送NRM,则可能从外部观测到NRM。因此,使用作为只有处理器10和存储器20知道的秘密数的RM作为共享加密密钥在传输之前对NRM加密。但是,也可以原样发送NRM。
在第二实施方式中,使用希望加密的数据和共享密钥的异或。但是,加密方式不限于此,可以使用任何加密方式。
另一方面,一旦达到稳定状态(步骤S121),启动中止控制器24就使得处理器验证随机数发生器27生成新随机数,也就是处理器验证随机数(NRP)(步骤S140)。然后,启动中止控制器24得到新生成的处理器验证随机数(NRP)和处理器验证随机数存储器28中存储的处理器验证随机数(RP)的异或(C)(步骤S141)。然后,启动中止控制器24将该异或结果(C)发送到启动中止控制器14(步骤S142)。
作为步骤S141的前提条件,应当注意,处理器验证随机数存储器28存储在前一次操作启动时的验证处理时处理器验证随机数发生器27生成的处理器验证随机数(RP)。
收到所述异或结果(C)之后(步骤S133),处理器10计算处理器验证随机数存储器19中存储的处理器验证随机数(RP)和该异或(C)的异或,以获得新的处理器验证随机数(NRP),后者据估计已为处理器验证随机数发生器27所产生(步骤S134)。然后,处理器10在存储器验证随机数存储器18中存储所获取的NRM作为RM(步骤S135),处理器10在处理器验证随机数存储器19中存储所获取的NRP作为RP(步骤S136),并停止操作(步骤S137)。
另一方面,在收到该异或结果(A)后(步骤S143),存储器20计算存储器验证随机数存储器29中存储的存储器验证随机数(RM)和异或结果(A)的异或,以获得新的存储器验证随机数(NRM)(步骤S144)。然后存储器20在处理器验证随机数存储器28中存储所获取的NRP作为RP(步骤S145),存储器20在存储器验证随机数存储器29中存储所获取的NRM作为RM(步骤S146),并停止操作(步骤S147)。这样就完成了在电源截断时的中止处理。
图7是在电源截断后恢复电源时第二实施方案的计算机系统200执行的验证处理的流程图。一旦电源启动,处理器10的启动中止控制器14就使得存储器验证随机数发生器17生成新的存储器验证随机数(NRM)(步骤S230)。然后,启动中止控制器14得到存储器验证随机数存储器18中存储的存储器验证随机数(RM)和存储器验证随机数发生器17新生成的存储器验证随机数(NRM)的异或(A)(步骤S231)。
另外,处理器10得到处理器验证随机数存储器19中存储的处理器验证随机数(RP)和存储器验证随机数发生器17新生成的存储器验证随机数(NRM)的异或(B)(步骤S232)。然后,启动中止控制器14将所生成的异或结果(A)和异或结果(B)发送给启动中止控制器24(步骤S233)。
存储器20的启动中止控制器24,类似于启动中止控制器14,使得处理器验证随机数发生器27生成新的处理器验证随机数(NRP)(步骤S250)。然后,启动中止控制器24得到处理器验证随机数存储器28中存储的处理器验证随机数(RP)和处理器验证随机数发生器27新生成的处理器验证随机数(NRP)的异或(C)(步骤S251),并且还得到存储器验证随机数存储器29中存储的存储器验证随机数(RM)和处理器验证随机数发生器27新生成的处理器验证随机数(NRP)的异或(D)(步骤S252)。然后,启动中止控制器24将所生成的异或结果(C)和异或结果(D)发送给启动中止控制器14(步骤S253)。
一旦获得异或结果(C)和异或结果(D)(步骤S234),处理器10得到处理器验证随机数存储器19中存储的处理器验证随机数(RP)和所获得的异或结果(C)的异或,以识别在步骤S250中生成的处理器验证随机数(NRP)(步骤S235)。然后,处理器10得到所识别的处理器验证随机数(NRP)和所获得的异或结果(D)的异或(RM′)(步骤S236)。
然后,处理器10比较这样得到的异或结果(RM′)和存储器验证随机数存储器18中存储的存储器验证随机数(RM)。如果发现异或结果(RM’)和存储器验证随机数存储器18中存储的存储器验证随机数(RM)相互匹配(步骤S237中的“是”),则处理器10判定处理器所连接到的对方是合法的存储器20,并将NRM作为RM存储在存储器验证随机数存储器18中(步骤S238)。另外,处理器10将NRP作为RP存储在处理器验证随机数存储器19中(步骤S239)。然后,处理器10开始正常操作(步骤S240)。
如果处理器10判定异或结果(RM’)和存储器验证随机数存储器18中存储的存储器验证随机数(RM)相互不匹配(步骤S237中的“否”),则处理器10停止操作(步骤S241)。
另一方面,当存储器20获取异或结果(A)和异或结果(B)(步骤S254)时,存储器20得到存储器验证随机数存储器29中存储的存储器验证随机数(RM)和所获得的异或结果(A)的异或,以识别在步骤S230中生成的存储器验证随机数(NRM)(步骤S255)。然后,存储器20得到所识别的存储器验证随机数(NRM)和所获得的异或结果(B)的异或(RP’)(步骤S256)。
然后,存储器20比较这样得到的异或结果(RP’)和处理器验证随机数存储器28中存储的处理器验证随机数(RP)。如果判定异或结果(RP’)和处理器验证随机数存储器28中存储的处理器验证随机数(RP)相互匹配(步骤S257中的“是”),则存储器20判定存储器20所连接到的对方是合法处理器10,并将NRP作为RP存储在处理器验证随机数存储器28中(步骤S258)。另外,存储器20将NRM作为RM存储在存储器验证随机数存储器29中(步骤S259)。然后,存储器20开始正常操作(步骤S260)
如果在步骤S257中判定异或结果(RP’)和处理器验证随机数存储器28中存储的处理器验证随机数(RP)相互不匹配(步骤S257中的否),则存储器20停止操作(步骤S261)。这样就完成了验证过程。
从前面可以看到,当用作验证信息的异或结果相互不匹配时,处理器10和存储器20均停止操作从而,在第二实施方案中,也能防止非法活动。
或者,当用总线连接处理器和存储器时,除了用于处理器对存储器的读和写的普通周期外,可以定义专用于交换验证信息的用于读(READ)和写(WRITE)的周期(在下面分别称为CREAD和CWRITE),用以实现上述处理。
图8是处理器10执行的将存储器验证信息(A)发送到存储器20,以及存储器20执行的将处理器验证信息(C)发送到处理器10的操作流的示意图。当执行这样的操作时,在总线上发送作为控制信号的指示CWRITE的信号。还发送指示该信息是存储器验证信息(A)的具体地址CAa,作为地址信号,并发送存储器验证信息(A)作为数据信号。
之后,处理器10通过CREAD操作从存储器20读出处理器验证信息(C)。然后,在总线上,发送指示CREAD的信号作为控制信号。发送指示该信息是处理器验证信息(C)的具体地址CAc,作为地址信号,并发送处理器验证信息(C)作为数据信号。
这里,最好是利用某些技术,例如通过提供用于联合测试工作组(Joint Test Action Group(JTAG))测试的专用信号线,防止从外部读出存储在处理器10或者存储器20中的验证信息或者写入验证信息。
图9是交换随机数等的操作流的示意图。如图9所示,当处理器10将异或结果(A)和异或结果(B)发送给存储器20,存储器20将异或结果(C)和异或结果(D)发送给处理器10时,处理器10首先通过CWRITE操作将异或结果(A)发送给存储器20。在总线上,发送指示CWRITE的信号作为控制信号,发送指示其为异或结果(A)的具体地址CAa作为地址信号,并发送异或结果(A)作为数据信号。
然后,处理器10通过CWRITE操作将异或结果(B)发送给存储器20。在总线上,发送指示CWRITE的信号作为控制信号,发送指示其为异或结果(B)的具体地址CAb作为地址信号,并发送异或结果(B)作为数据信号。
之后,处理器10通过CREAD操作从存储器20读出异或结果(C)。在总线上,发送指示CREAD的信号作为控制信号,发送指示其为异或结果(C)的具体地址CAc作为地址信号,并发送异或结果(C)作为数据信号。
最后,处理器10通过CREAD操作从存储器20读出异或结果(D)。在总线上,发送指示CREAD的信号作为控制信号,发送指示其为异或结果(D)的具体地址CAd作为地址信号,并发送异或结果(D)作为数据信号。
在上面如果没有另外说明,第二实施方案的计算机系统200的结构和处理与第一实施方案的计算机系统100的结构和处理是一样的。
图10是第三实施方案的计算机系统中的电源截断时执行的中止处理的流程图。下面描述第三实施方案的计算机系统。第三实施方案的计算机系统的总体结构与上面参照图1所描述的第一实施方案的计算机系统100的总体结构一样。
电源控制器32指令启动中止控制器14和15在合适的定时交换新的验证信息(步骤S104)。在从电源控制器32收到交换新的验证信息的指令后,启动中止控制器14停止正常操作(步骤S110)。一旦处理器达到稳定状态(步骤S111),启动中止控制器14就生成存储器验证信息(步骤S112),并将其存储在验证信息存储器16中(步骤S113)。
类似地,在从电源控制器32收到交换新的验证信息的指令后,启动中止控制器24停止正常操作(步骤S120)。一旦存储器达到稳定状态(步骤S121),启动中止控制器24就生成处理器验证信息(步骤S122)并将其存储在验证信息存储器26中(步骤S123)
然后,启动中止控制器14在验证信息存储器16中存储处理器验证信息生成单元25生成的处理器验证信息(步骤S114)。类似地,启动中止控制器24在验证信息存储器26中存储存储器验证信息生成单元15生成的存储器验证信息(步骤S124)。通过上述处理,处理器10和存储器20共享处理器验证信息和存储器验证信息。
上述处理与第一实施方案中参照图2描述的由处理器10执行的从步骤S110到步骤S114的处理以及由存储器20执行的从步骤S120到步骤S 124的处理一样。一旦处理器10和存储器20完成验证信息的共享,则处理器10和存储器20各自恢复正常操作(步骤S116,步骤S126)。这样,就完成了验证信息生成处理。
电源控制器32可以按照预定间隔指令启动中止控制器14和24,例如,每10秒钟交换一次新验证信息。或者,可以在操作单元12没有执行任何处理时给出指令。
或者,尽管在第三实施方案中启动中止控制器14和24根据来自电源控制器32的指令执行验证信息的交换,但是处理器10也可以确定交换验证信息的定时。
图11是在第三实施方案的计算机系统300中当电源停止时执行的中止处理的流程图。在第三实施方案的计算机系统300中,在正常操作过程中已经完成了处理器验证信息和存储器验证信息的交换。因此,在从电源控制器32收到中止前处理的指令后,处理器10和存储器20各自停止正常操作(步骤S110,步骤S120),在达到稳定状态后(步骤S111,步骤S121),停止操作(步骤S115,步骤S125)。这样就完成了中止处理。
这样,在第三实施方案的计算机系统300中,由于中止前处理的运算量小,可以减小电容器33的电容。
另外,在第二实施方案的计算机系统200中,类似于第三实施方案,可以在电源截断定时之前执行随机数的交换。
在上面如果没有另外说明,根据第三实施方案的计算机系统300的结构和处理与第一实施方案的计算机系统100的结构和处理相同。
图12是第四实施方案的计算机系统400的总体结构的示意图。在第四实施方案的计算机系统400中,在包括处理器核心的系统LSI中提供了实现处理器和存储器之间的验证的机制。
这里,系统LSI被形成为单芯片LSI,其中,传统上在单独的LSI芯片上制造的处理器和外围设备被合为一体。传统上,一个或者多个LSI芯片总体上构成处理器。但是,LSI的越来越高的集成度实现了系统LSI。系统LSI也称为单片式系统(System on Chip(SoC)),包含在其中的处理器被称为处理器核心。
如图12所示,计算机系统400包括系统LSI50、存储器20和电源单元30。系统LSI50包括处理器核心51,启动中止单元52,存储器控制器53以及芯片内高速总线54。进一步,启动中止单元52包括启动中止控制器14,存储器验证信息生成单元15以及验证信息存储器16。
这样,启动中止控制器14、存储器验证信息生成单元15和验证信息存储器16被结合到系统LSI50中,作为独立于处理器核心51的独立电路。
处理器核心51包括存储器控制器11、操作单元12和控制器13。处理器核心51是具有与普通处理器等效的功能的电路。处理器核心51通过芯片内高速总线54连接到其他的外围电路。处理器核心51通过芯片内高速总线54和存储器控制器53访问连接到系统LSI50的存储器20,以读写数据等。存储器控制器53执行芯片内高速总线54的传输协议和外部访问存储器20的系统LSI50的传输协议之间的转换。
启动中止单元52中的启动中止控制器14被连接到芯片内高速总线54。启动中止控制器14还被连接到电源单元30。启动中止单元52还通过启动中止控制器14被连接到存储器20。通过芯片内高速总线54实现启动中止控制器14和存储器控制器53之间的数据交换,以及启动中止控制器14和处理器核心51之间的数据交换。
图13是在第四实施方案的计算机系统400中电源截止时执行的中止处理的流程图。在第四实施方案中,当开始从电容器33供电时(步骤S101),电源控制器32向启动中止单元52的启动中止控制器14和24发送有关电源中止的信息(步骤S102)。
在从电源控制器32接收到有关电源中止的信息之后,启动中止控制器14指令处理器核心51中止操作(步骤S160)。具体地,作为中断等,启动中止控制器14向处理器核心51发送中止操作的指令。
在收到中止指令后,处理器核心51停止当前正在进行的正常操作(步骤S110)。然后,处理器核心51待机,直到达到稳定状态(步骤S111)。然后,一旦达到稳定状态,则处理器核心51向启动中止单元52通知处理器核心51的操作停止(步骤S161)。
具体地,例如,处理器核心51通过向启动中止控制器14的具体寄存器进行写入来向启动中止控制器14通知所述操作的中止。然后,处理器核心51停止操作(步骤S162)。
在从处理器核心51收到有关操作中止的通知后(步骤S161),启动中止单元52的启动中止控制器14指令存储器控制器53停止操作(步骤S163)。具体地,例如,启动中止控制器14通过向存储器控制器53的具体寄存器进行写入来指令存储器控制器53停止操作。
然后,启动中止单元52的存储器验证信息生成单元15根据来自启动中止控制器14的指令新生成存储器验证信息(步骤S112)。之后,执行从步骤S113到步骤S115的处理,停止启动中止单元52的操作。
在从启动中止单元52接收到中止指令后(步骤S163),存储器控制器53停止操作(步骤S164)。这样就完成了中止处理。其他处理与参照图2所描述的第一实施方案一样。
由于处理器核心51停止了其操作,如果系统LSI不包括除了处理器核心51之外的访问存储器20的外围设备,则可能没有必要中止存储器控制器53的操作。
在图12所述的结构中,启动中止控制器14和24通过总线40相互交换验证信息。可以通过存储器控制器53由启动中止控制器14交换验证信息。在这种情况下,启动中止控制器14发出的中止存储器控制器53的指令(步骤S163)可以在图13所示的中止处理的流程图中在共享验证信息的处理(步骤S114)之后执行。
图14是在第四实施方案的计算机系统400中在电源截断之后恢复电源时执行的验证处理的流程图。在第四实施方案中,启动中止控制器14比较启动中止控制器24接收的存储器验证信息和存储器验证信息生成单元15生成并存储在验证信息存储器16中的存储器验证信息(步骤S211)。如果判定两个存储器验证信息相互匹配,则启动中止控制器14判定对存储器20的验证成功(步骤S212中的“是”),并指令处理器核心51和存储器控制器53恢复正常操作(步骤S270)。
具体地,启动中止控制器14可以通过访问存储器控制器53中的具体寄存器指令恢复正常操作。启动中止控制器14通过中断来指令处理器核心51。或者,处理器核心51可以执行对启动中止控制器14的具体寄存器的值的轮询,以获取恢复正常操作的指令。
在接收到恢复正常操作的指令后(步骤S270),处理器核心51开始正常操作(步骤S213)。在接收到恢复正常操作的指令后(步骤S270),存储器控制器53开始正常操作(步骤S271)
如果步骤S212的验证失败(步骤S212中的“否”),则处理器核心51和存储器控制器53不开始操作。
或者,存储器控制器53可以不开始正常操作,而处理器核心51可以开始正常操作。由于存储器控制器53停止,就没有对存储器20的访问。另外,由于处理器核心51具有下面将要描述的局部存储器,处理器核心51可以利用该局部存储器进行操作。
上面所描述的处理之外的处理与参照图3对第一实施方案的处理的描述相同。
图15是根据第四实施方案的计算机系统400的系统LSI50的功能结构的详细示意图。例如,图15所示的系统LSI50除了参照图12所描述的功能之外还包括图形控制器60、局部存储器61和网络控制器62。图形控制器60执行与显示有关的处理。网络控制器62控制网络访问。
当系统LSI50中处理器核心51之外的外围电路(例如图形控制器60)从外部访问存储器20时,通过存储器控制器53进行访问。
系统LSI50具有多条总线。第四实施方案的系统LSI50除了芯片内高速总线54之外,还包括芯片内外围总线64,连接低速外围电路,比如定时器、串行输入输出(I/O)和键盘等。芯片内外围总线64独立于芯片内高速总线54提供。芯片内高速总线54和芯片内外围总线64通过总线桥63连接起来。另外,芯片内外围总线64被连接到定时器65、串行I/O 66以及键盘I/O 67。
如果上面没有另外说明,则第四实施方案的计算机系统400的结构和处理与第一实施方案的计算机系统100的结构和处理是一样的。
在第四实施方案的计算机系统400的第一种变型中,系统LSI50可以包括多个处理器核心。每一个处理器核心通过存储器控制器53从外部访问存储器20。
图16是第四实施方案的第二种变型的计算机系统402的示意图。如图16所示,在该第二变型的计算机系统402中,启动中止单元52通过专用信号线41被连接到处理器核心51。另外,启动中止单元52通过专用信号线42被连接到存储器控制器53。启动中止单元52分别通过专用信号线41和42与处理器核心51和存储器控制器53交换数据。
图17是根据第四实施方案的第三种变型的计算机系统403的示意图。如图17所示,在根据第三变型的计算机系统403中,启动中止控制器14可以通过芯片内高速总线54连接到其他外围电路,同时可以分别在启动中止控制器14和处理器核心51之间以及启动中止控制器14和存储器控制器53之间提供专用信号线41和42。
启动中止控制器14可以通过启动中止控制器14和处理器核心51之间的专用信号线41,或者通过芯片内高速总线54,来与处理器核心51交换数据。另外,启动中止控制器14可以通过启动中止控制器14和存储器控制器53之间的专用信号线42,或者通过芯片内高速总线54,来与存储器控制器53交换数据。
根据第四实施方案的计算机系统400可以使用随机数发生器生成验证信息,这类似于第二实施方案的计算机系统200。或者,第四实施方案的计算机系统400可以在正常操作期间而不是在电源31的电力供应中止期间来定期交换验证信息,这类似于第三实施方案的计算机系统300。这样,不同实施方案中的计算机系统的处理可以组合起来。
图18是第五实施方案的计算机系统500的总体结构的示意图。在第五实施方案的计算机系统500中,验证机制被结合在系统LSI中的存储器控制器中。
如图18所示,第五实施方案的系统LSI50包括处理器核心51、存储器控制器53以及芯片内高速总线54。另外,存储器控制器53包括启动中止控制器14、存储器验证信息生成单元15、验证信息存储器16以及总线转换单元55。
启动中止控制器14通过总线转换单元55和芯片内高速总线54被连接到处理器核心51。这样,验证机制可以被结合到存储器控制器53中。
如果上面没有另外说明,则第五实施方案的计算机系统500的结构和处理与第四实施方案的计算机系统400的结构和处理是一样的。
图19是第一种变型的计算机系统501的总体结构的示意图。启动中止控制器14可以如图19所示通过专用信号线45连接到处理器核心51。那么,处理器核心51通过专用信号线45与启动中止控制器14交换数据。
在第五实施方案中,启动中止控制器14通过总线转换单元55被连接到芯片内高速总线54。但是,在第二变型中,启动中止控制器14可以直接连接到芯片内高速总线54。
对于本领域普通技术人员来说,其他的优点和变型是显而易见的。因此,本发明在其广义方面不限于这里所图示和描述的具体细节和代表性实施方案。因此,在不脱离所附权利要求及其等效方案所限定的总体发明构思的精神实质和范围的前提下可以做出各种修改。

Claims (23)

1.一种处理器,连接到第一非易失性存储器,该处理器包括:
利用该第一非易失性存储器中存储的信息执行操作的操作单元;
存储器验证信息生成单元,用于生成用于验证该第一非易失性存储器的第一存储器验证信息;
验证信息发送单元,用于将第一存储器验证信息发送到该第一非易失性存储器,以存储为第二存储器验证信息;
与该操作单元整体形成的验证存储器,存储第一存储器验证信息,该验证存储器是第二非易失性存储器;
用于从该第一非易失性存储器获取第二存储器验证信息的验证信息获取单元;
用来比较所述第一存储器验证信息与所述第二存储器验证信息以验证该第一非易失性存储器的存储器验证单元;以及
存储器访问控制单元,用来在存储器验证单元验证成功时允许对所述第一非易失性存储器的访问。
2.如权利要求1所述的处理器,还包括:
用来检测向操作单元提供电力的电源的电力供应的开始的电力供应开始检测单元,
其中,当电力供应开始检测单元检测到电力供应开始时,所述验证信息获取单元获取第二存储器验证信息。
3.如权利要求1所述的处理器,
其中,所述处理器借助于来自电源和电容器的电力来工作,所述电源向所述操作单元提供电力,当电源向操作单元的电力供应停止时,所述电容器向操作单元提供电力,并且,该处理器还包括:
用来检测电源的电力供应的中止定时的电源中止检测单元;
其中
该存储器验证信息生成单元在电力供应中止定时之前生成第一存储器验证信息;以及
该验证信息发送单元在电力供应的中止定时之前将所述存储器验证信息生成单元生成的第一存储器验证信息发送到所述第一非易失性存储器。
4.如权利要求1所述的处理器,其中,
所述处理器借助于来自电源和电容器的电力来工作,所述电源向所述操作单元提供电力,当电源向操作单元的电力供应停止时,所述电容器向操作单元提供电力,并且,该处理器还包括:
用来检测电源的电力供应的中止定时的电源中止检测单元;
其中
该存储器验证信息生成单元在电力供应中止定时之后生成第一存储器验证信息;以及
该验证信息发送单元在电力供应的中止定时之后将所述存储器验证信息生成单元生成的第一存储器验证信息发送到所述第一非易失性存储器。
5.如权利要求3所述的处理器,其中,所述验证信息生成单元按照预定的时间间隔生成第一存储器验证信息。
6.如权利要求3所述的处理器,其中,当所述操作单元不执行处理时验证信息生成单元生成所述第一存储器验证信息。
7.如权利要求3所述的处理器,其中,验证信息生成单元是随机数发生器。
8.如权利要求1所述的处理器,其中,所述处理器借助于来自电源和电容器的电力来工作,所述电源向所述操作单元提供电力,当电源向操作单元的电力供应停止时,所述电容器向操作单元提供电力,并且,该处理器还包括:
用来检测电源的电力供应的中止定时的电源中止检测单元;
其中,在电力供应的中止定时之前,所述验证信息获取单元从所述第一非易失性存储器获取所述第二存储器验证信息。
9.如权利要求1所述的处理器,其中,所述处理器借助于来自电源和电容器的电力来工作,所述电源向所述操作单元提供电力,当电源向操作单元的电力供应停止时,所述电容器向操作单元提供电力,并且,该处理器还包括:
用来检测电源的电力供应的中止定时的电源中止检测单元;
其中,在电力供应的中止定时之后,所述验证信息获取单元从所述第一非易失性存储器获取所述第二存储器验证信息。
10.一种存储器,连接到处理器,该存储器包括:
存储由处理器的操作单元使用的信息的第一非易失性存储器;
处理器验证信息生成单元,用于生成用于验证该处理器的第一处理器验证信息;
验证信息发送单元,用于将第一处理器验证信息发送到所述处理器,以存储为第二处理器验证信息;
与该第一非易失性存储器整体形成的验证存储器,存储有第一处理器验证信息,该验证存储器是第二非易失性存储器;
用于从该处理器获取第二处理器验证信息的验证信息获取单元;
用来比较所述第一处理器验证信息与所述第二处理器验证信息以验证该处理器的处理器验证单元;以及
处理器访问控制单元,用来在处理器验证单元验证成功时允许来自所述处理器的访问。
11.如权利要求10所述的存储器,还包括:
用来检测向第一非易失性存储器提供电力的电源的电力供应的开始的电力供应开始检测单元,
其中,当电力供应开始检测单元检测到电力供应开始时,所述验证信息获取单元获取第二处理器验证信息。
12.如权利要求10所述的存储器,其中,
所述存储器借助于来自电源和电容器的电力来工作,所述电源向所述第一非易失性存储器提供电力,当电源向所述第一非易失性存储器的电力供应停止时,所述电容器向所述第一非易失性存储器提供电力,并且,该存储器还包括:
用来检测电源的电力供应的中止定时的电源中止检测单元;
其中
该处理器验证信息生成单元在电力供应中止定时之前生成第一处理器验证信息;以及
该验证信息发送单元在电力供应的中止定时之前将所述处理器验证信息生成单元生成的第一处理器验证信息发送到所述处理器。
13.如权利要求10所述的存储器,其中,
所述存储器借助于来自电源和电容器的电力来工作,所述电源向所述第一非易失性存储器提供电力,当电源向所述第一非易失性存储器的电力供应停止时,所述电容器向所述第一非易失性存储器提供电力,并且,该存储器还包括:
用来检测电源的电力供应的中止定时的电源中止检测单元;
其中
该处理器验证信息生成单元在电力供应中止定时之后生成第一处理器验证信息;以及
该验证信息发送单元在电力供应的中止定时之后将所述处理器验证信息生成单元生成的第一处理器验证信息发送到所述处理器。
14.如权利要求10所述的存储器,其中,
所述存储器借助于来自电源和电容器的电力来工作,所述电源向所述第一非易失性存储器提供电力,当所述电源向所述第一非易失性存储器的电力供应停止时,所述电容器向所述第一非易失性存储器提供电力,并且,该存储器还包括:
用来检测电源的电力供应的中止定时的电源中止检测单元;
其中,在电力供应的中止定时之后,所述验证信息获取单元从所述处理器获取所述第二处理器验证信息。
15.如权利要求10所述的存储器,其中,
所述存储器借助于来自电源和电容器的电力来工作,所述电源向所述第一非易失性存储器提供电力,当所述电源向所述第一非易失性存储器的电力供应停止时,所述电容器向所述第一非易失性存储器提供电力,并且,该存储器还包括:
用来检测电源的电力供应的中止定时的电源中止检测单元;
其中,在电力供应的中止定时之后,所述验证信息获取单元从所述处理器获取所述第二处理器验证信息;并且
所述验证存储器存储所述验证信息获取单元获取的第二处理器验证信息。
16.一种计算机系统,包括处理器和存储由该处理器使用的信息的存储器,该存储器包括:
存储由该处理器使用的信息的第一非易失性存储器,以及
与该第一非易失性存储器整体形成的第一验证存储器,该第一验证存储器是第二非易失性存储器,并且
该处理器包括:
用来利用存储在所述第一非易失性存储器中的信息执行操作的操作单元,
存储器验证信息生成单元,用于生成用于验证该第一非易失性存储器的第一存储器验证信息;
验证信息发送单元,用于将第一存储器验证信息发送到该存储器,以存储在第一验证存储器中作为第二存储器验证信息;
与该操作单元整体形成、存储有用于验证该第一非易失性存储器的第一存储器验证信息的第二验证存储器,该第二验证存储器是第三非易失性存储器,
用于获取所述第一验证存储器存储的第二存储器验证信息的存储器验证信息获取单元,
用来比较所述第一存储器验证信息与所述存储器验证信息获取单元获取的所述第二存储器验证信息以验证该第一非易失性存储器的存储器验证单元,以及
存储器访问控制单元,用来在存储器验证单元验证所述第一非易失性存储器成功时允许对所述第一非易失性存储器的访问。
17.如权利要求16所述的计算机系统,其中,所述处理器还包括:
与所述操作单元整体形成的第三验证存储器,该第三验证存储器是第四非易失性存储器,并且,
所述存储器还包括:
处理器验证信息生成单元,用于生成用于验证该处理器的第一处理器验证信息;
验证信息发送单元,用于将第一处理器验证信息发送到所述处理器,以存储在所述第三验证存储器中作为第二处理器验证信息;
与所述第一非易失性存储器整体形成、存储用于所述处理器的验证的第一处理器验证信息的第四验证存储器,该第四验证存储器是第五非易失性存储器,并且,
用于获取所述第三验证存储器存储的第二处理器验证信息的处理器验证信息获取单元;
用于比较所述第一处理器验证信息和所述第二处理器验证信息以验证所述处理器的处理器验证单元;以及
在处理器验证单元对处理器的验证成功时允许处理器访问所述第一非易失性存储器的处理器访问控制单元。
18.一种计算机系统,包括:
操作单元;
存储由该操作单元使用的信息的第一非易失性存储器;
与所述操作单元整体形成的存储器验证信息生成单元,用于生成用于验证该第一非易失性存储器的第一验证信息;
与所述操作单元整体形成的第一发送单元,用于将第一验证信息发送到该第一非易失性存储器;
与该第一非易失性存储器整体形成的第一验证存储器,存储所述第一验证信息作为第二验证信息,该第一验证存储器是第二非易失性存储器;
与该第一非易失性存储器整体形成的处理器验证信息生成单元,用于生成用于验证该操作单元的第三验证信息,该第一验证存储器存储该第三验证信息;
与该第一非易失性存储器整体形成的第二发送单元,用于将第三验证信息发送到所述操作单元;
与该操作单元整体形成的第二验证存储器,存储所述第三验证信息作为第四验证信息,该第二验证存储器是第三非易失性存储器;
与该操作单元整体形成的第一获取单元,用于从所述第一验证存储器获取所述第二验证信息;
与该操作单元整体形成的第一验证单元,用来比较所述第一验证信息与所述第二验证信息以验证该第一非易失性存储器;
与该操作单元整体形成的第一访问控制单元,用来在第一验证单元验证成功时允许访问所述第一非易失性存储器;
与该第一非易失性存储器整体形成的第二获取单元,用于从所述第二验证存储器获取所述第四验证信息;
与该第一非易失性存储器整体形成的第二验证单元,用于比较所述第三验证信息和所述第四验证信息以验证该操作单元;以及
与该第一非易失性存储器整体形成的第二访问控制单元,用于在第二验证单元验证成功时允许访问所述操作单元。
19.一种包括处理器和存储器的计算机系统中的验证方法,该存储器具有存储由该处理器利用的信息的第一非易失性存储器,该方法包括:
在该处理器中生成用于验证该第一非易失性存储器的第一验证信息;
将该第一验证信息从该处理器发送到该存储器;
在与该第一非易失性存储器整体形成的第一验证存储器中存储所述第一验证信息作为第二验证信息,该第一验证存储器是第二非易失性存储器;
在与该处理器整体形成的第二验证存储器中存储第一验证信息;
在该存储器中生成用于验证该处理器的第三验证信息,该第一验证存储器存储该第三验证信息;
将该第三验证信息从该存储器发送到该处理器,第二验证存储器存储所述第三验证信息作为第四验证信息;
从所述第一验证存储器获取所述第二验证信息以提供给该处理器;
从所述第二验证存储器获取所述第四验证信息以提供给该存储器;
通过比较所述第一验证信息和所述第二验证信息并且比较所述第三验证信息和所述第四验证信息来执行该处理器和该第一非易失性存储器之间的验证;以及
对访问进行控制,以便当在上述执行验证的步骤中验证成功时,允许所述第一非易失性存储器和所述处理器之间的访问。
20.一种系统大规模集成电路,包括:
用来利用存储在第一非易失性存储器中的信息执行操作的处理器核心;
存储器验证信息生成单元,用于生成用于验证该第一非易失性存储器的第一存储器验证信息;
验证信息发送单元,用于将第一存储器验证信息发送到该第一非易失性存储器,以存储为第二存储器验证信息;
与该处理器核心整体形成的、存储第一存储器验证信息的第一验证存储器,该第一验证存储器是第二非易失性存储器;
用来从该第一非易失性存储器获取第二验证信息的验证信息获取单元;
用来比较验证信息获取单元获取的第二验证信息和第一存储器验证信息的存储器验证单元;以及
存储器访问控制单元,用来在存储器验证单元的验证成功时允许对该第一非易失性存储器的访问。
21.如权利要求20所述的系统大规模集成电路,还包括:
控制所述第一非易失性存储器的存储器控制器;
其中,该控制器包括所述第一验证存储器、所述验证信息获取单元、所述存储器验证单元以及所述存储器访问控制单元。
22.一种计算机系统,包括系统大规模集成电路以及存储在该系统大规模集成电路中使用的信息的存储器,
该存储器包括:
用来存储处理器核心使用的信息的第一非易失性存储器,以及
与该第一非易失性存储器整体形成的第一验证存储器,该第一验证存储器是第二非易失性存储器,并且,
该系统大规模集成电路包括:
用来利用所述第一非易失性存储器中存储的信息执行操作的处理器核心,
存储器验证信息生成单元,用于生成用于验证该第一非易失性存储器的第一存储器验证信息;
验证信息发送单元,用于将第一存储器验证信息发送到该第一验证存储器,以存储为第二存储器验证信息;
与该处理器核心整体形成的、存储该第一存储器验证信息的第二验证存储器,该第二验证存储器是第三非易失性存储器,
用于获取第一验证存储器存储的第二验证信息的验证信息获取单元,
用于比较第一存储器验证信息和验证信息获取单元所获取的第二存储器验证信息以验证该第一非易失性存储器的存储器验证单元,以及
在存储器验证单元对第一非易失性存储器的验证成功时允许对该第一非易失性存储器的访问的存储器访问控制单元。
23.一种计算机系统,包括系统大规模集成电路和存储该系统大规模集成电路中使用的信息的存储器,
该系统大规模集成电路包括:
用于执行操作的处理器核心,以及
与该处理器核心整体形成的第一验证存储器,该第一验证存储器是第一非易失性存储器,
该存储器包括:
存储由处理器核心使用的信息的第二非易失性存储器,
处理器验证信息生成单元,用于生成用于验证该处理器核心的第一处理器验证信息;
验证信息发送单元,用于将第一处理器验证信息发送到该系统大规模集成电路,以存储在所述第一验证存储器中作为第二处理器验证信息;
与该第二非易失性存储器整体形成的、存储第一处理器验证信息的第二验证存储器,该第二验证存储器是第三非易失性存储器,
用于从该第一验证存储器获取所述第二处理器验证信息的验证信息获取单元,
用于比较第一处理器验证信息和所述验证信息获取单元获取的所述第二处理器验证信息以验证所述处理器核心的处理器验证单元,以及
在所述处理器验证单元的验证成功时允许来自所述处理器核心的访问的处理器访问控制单元。
CNB2006100683403A 2005-03-29 2006-03-29 处理器、存储器、计算机系统、系统lsi及其验证方法 Expired - Fee Related CN100440180C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2005096355 2005-03-29
JP2005096355 2005-03-29
JP2005228669 2005-08-05

Publications (2)

Publication Number Publication Date
CN1841348A CN1841348A (zh) 2006-10-04
CN100440180C true CN100440180C (zh) 2008-12-03

Family

ID=37030385

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006100683403A Expired - Fee Related CN100440180C (zh) 2005-03-29 2006-03-29 处理器、存储器、计算机系统、系统lsi及其验证方法

Country Status (1)

Country Link
CN (1) CN100440180C (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8813260B2 (en) * 2006-11-20 2014-08-19 International Business Machines Corporation Self-contained device security
CN100461118C (zh) * 2007-07-05 2009-02-11 华为技术有限公司 控制访问寄存器的装置、方法及集成电路芯片
JP6720776B2 (ja) 2016-08-26 2020-07-08 コニカミノルタ株式会社 画像処理装置、起動制御方法および起動制御プログラム
CN109784063A (zh) * 2018-12-30 2019-05-21 联想(北京)有限公司 信息处理方法、装置及电子设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5734819A (en) * 1994-10-12 1998-03-31 International Business Machines Corporation Method and apparatus for validating system operation
WO2002099735A1 (en) * 2001-06-05 2002-12-12 Mediasec Technologies, Llc Digital authentication with digital and analog documents
JP2005050148A (ja) * 2003-07-29 2005-02-24 Nec Access Technica Ltd 外部記憶装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5734819A (en) * 1994-10-12 1998-03-31 International Business Machines Corporation Method and apparatus for validating system operation
WO2002099735A1 (en) * 2001-06-05 2002-12-12 Mediasec Technologies, Llc Digital authentication with digital and analog documents
JP2005050148A (ja) * 2003-07-29 2005-02-24 Nec Access Technica Ltd 外部記憶装置

Also Published As

Publication number Publication date
CN1841348A (zh) 2006-10-04

Similar Documents

Publication Publication Date Title
JP4537908B2 (ja) プロセッサ、メモリ、コンピュータシステムおよびシステムlsi
US7389536B2 (en) System and apparatus for limiting access to secure data through a portable computer to a time set with the portable computer connected to a base computer
CN100421102C (zh) 便携式存储装置和使用该便携式存储装置的内容管理方法
KR100397316B1 (ko) 기억 장치, 암호화ㆍ복호화 장치 및 불휘발성 메모리의액세스 방법
US7461268B2 (en) E-fuses for storing security version data
CN100465938C (zh) 搜索存储在便携式存储装置中的权限对象的方法和设备
US8060925B2 (en) Processor, memory, computer system, and method of authentication
CN101103584A (zh) 安全及后向兼容处理器以及在其上的安全软件的执行
JP2004104539A (ja) メモリカード
JP2004013744A (ja) デジタルコンテンツの発行システム及び発行方法
JP2011522469A (ja) 保護されたソフトウエアイメージを有する集積回路及びそのための方法
CN109583162B (zh) 一种基于国密算法的身份识别方法及系统
US20170099151A1 (en) Authentication apparatus based on public key cryptosystem, mobile device having the same and authentication method
CN109977702B (zh) 一种基于ds2432芯片的fpga设备加密认证系统
CN107832589A (zh) 软件版权保护方法及其系统
CN100440180C (zh) 处理器、存储器、计算机系统、系统lsi及其验证方法
CN106657551A (zh) 一种防止移动终端解锁的方法及系统
JP5164372B2 (ja) 遊技機制御用チップ及びそのromライタ
WO2016107749A1 (en) Secure element
CN102047267B (zh) 认证系统、信息处理装置及方法、存储装置、认证方法
CN101883357A (zh) 一种终端与智能卡之间的相互认证方法、装置及系统
US20080137838A1 (en) Portable storage device and system with hardware key and copyright management function
JP2010160765A (ja) システムlsi及びこのデバッグ方法
CN107330318A (zh) 一种数字信号处理板卡及其调试系统的绑定加密方法
CN103236113B (zh) Ic卡智能电能表信息安全管理模块

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081203

Termination date: 20170329