一种适用于多系统的加速可信度量电路

文档序号:135421 发布日期:2021-10-22 浏览:27次 >En<

阅读说明:本技术 一种适用于多系统的加速可信度量电路 (Acceleration credibility measurement circuit suitable for multi-system ) 是由 贾旭 赵逢阳 张新建 董博 祁春慧 于 2021-07-22 设计创作,主要内容包括:本发明涉及一种适用于多系统的加速可信度量电路,涉及可信计算机系统及信息安全相关技术领域。本发明通过电路设计,可实现计算机系统中多个分系统的加速度量功能,从而实现计算机系统固件、BMC电路固件的可信度量,缩短系统的开机时间,将系统度量时间由分钟级缩短到秒级,优化用户开机体验。(The invention relates to an accelerated credibility measuring circuit applicable to multiple systems, and relates to the technical field of credible computer systems and information security related technologies. The invention can realize the acceleration measurement function of a plurality of subsystems in the computer system through circuit design, thereby realizing the credibility measurement of computer system firmware and BMC circuit firmware, shortening the starting time of the system, shortening the measurement time of the system from minute level to second level, and optimizing the starting experience of a user.)

一种适用于多系统的加速可信度量电路

技术领域

本发明涉及可信计算机系统及信息安全相关技术领域,具体涉及一种适用于多系统的加速可信度量电路。

背景技术

随着信息时代的到来,信息安全在国防事业中占有的地位越来越高,保证信息传输的机密性、完整性、可用性、真实性和可控性是武器装备的基本要求。

计算机系统在国防、教育、金融、医疗、科研等各个领域均被广泛应用,为实现计算机安全可靠,需要对某些专用计算机进行可信度量,可信度量包括对计算机系统固件、内核以及应用软件的全面度量,其中计算机固件度量是影响计算机启动时间的关键步骤,目前采用可信密码芯片直接读取BIOS的度量方式较为缓慢,严重影响计算机系统启动时间。

发明内容

(一)要解决的技术问题

本发明要解决的技术问题是:如何加速完成多系统可信计算机或其他信息安全设备的度量过程。

(二)技术方案

为了解决上述技术问题,本发明提供了一种适用于多系统的加速可信度量电路,包括固件切换模块1、接口加速模块2、可信度量模块3;

所述固件切换模块1用于将固件Flash分别切换至CPLD和CPU,实现固件Flash在度量阶段和正常启动阶段的切换;

所述接口加速模块2用于实现将可信度量模块3读取固件Flash的过程进行加速处理;

所述可信度量模块3用于读取加速后的固件Flash数据,实现对CPU的可信度量功能。

优选地,所述固件切换模块1具体用于实现固件Flash的SPI/QSPI信号切换,即将固件Flash在CPLD与CPU之间切换,以实现CPLD和CPU在不同阶段对固件Flash的读取。

优选地,所述固件切换模块1包括模拟开关、固件Flash,以及用于控制该模拟开关的CPLD。

优选地,所述固件Flash为GD25Q127C系列Flash,所述模拟开关为SGM6505。

优选地,所述固件Flash的CSN、SCK、SI、SO、HOLD、WP信号,连接至模拟开关SGM6505的公共端引脚COM1~COM6;CPLD的CPLD_CSN、CPLD_CLK、CPLD_IO0~CPLD_IO3引脚连接至模拟开关SGM6505的NC1~NC6;模拟开关SGM6505的EN#信号和IN1、IN2连接至CPLD,由CPLD控制模拟开关是否工作和将公共端信号切换至NC或NO。

优选地,所述接口加速模块2具体用于通过SPI接口读取固件Flash,再经过CPLD内部逻辑转换将QSPI协议转换为EBC接口与可信度量模块3连接,并用于控制CPU的复位信号确定CPU是否正常启动,接口加速模块2包括CPLD,该CPLD与固件切换模块1的CPLD为同一个。

优选地,所述接口加速模块2进一步具体用于将模拟开关切换过来的固件Flash的信号以Quad SPI的方式读取。

优选地,所述可信度量模块3具体用于将接口加速模块2传输的加速后的固件Flash的信号进行解析,完成固件Flash的可信度量。

优选地,所述可信度量模块3选用的可信密码芯片与CPLD的接口为EBC接口,由于CPLD的通用管脚的输入输出可配置,可信密码芯片的EBC接口的EBC_D[31..16]、EBC_ADD[31..0]、EBC_CLK、EBC_WB_PULSE、EBC_WBE_N[3..0]、EBC_RW、EBC_OE、EBC_READY、EBC_CS1管脚连接至CPLD的IO引脚。

本发明还提供了一种利用所述的电路实现计算机系统可信度量的方法,计算机系统上电工作后,由CPLD控制模拟开关SGM6505的EN#信号为低,使模拟开关SGM6505工作,控制模拟开关SGM6505的IN1和IN2为低电平,将固件Flash相关信号切换至CPLD后执行度量流程,度量完成后,CPLD控制模拟开关SGM6505的IN1和IN2为高电平,将固件Flash的相关信号切换至CPU,CPU读取固件Flash后正常启动,其中,度量过程由可信密码芯片的内部引擎实现,度量完成后,由可信密码芯片判断该固件Flash是否被篡改,确认固件Flash可信后可信密码芯片通过GPIO将度量完成信号发送至CPLD,CPLD释放CPU的复位引脚,CPU开始正常启动,完成整个可信度量流程。

(三)有益效果

本发明通过电路设计,可实现计算机系统中多个分系统的加速度量功能,从而实现计算机系统固件、BMC电路固件的可信度量,缩短系统的开机时间,将系统度量时间由分钟级缩短到秒级,优化用户开机体验。

附图说明

图1为本发明的电路实现及其在计算机系统中的应用框架示意图;

图2为本发明的电路中固件Flash与模拟开关连接的原理图;

图3为本发明电路中的模拟开关与CPU和CPLD连接的原理图;

图4为本发明电路中的CPLD与可信密码芯片连接的原理图。

具体实施方式

为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。

本发明提供的可信度量电路可应用于计算机系统,如图1所示,该电路包括固件切换模块1、接口加速模块2、可信度量模块3,其系统实现框图如图1所示。

所述固件切换模块1用于将固件Flash分别切换至CPLD和CPU,实现固件Flash在度量阶段和正常启动阶段的切换;

所述接口加速模块2用于替代常规的密码芯片直接通过SPI接口读取固件Flash,实现对多系统度量的扩展,提高对固件Flash的读取速度,实现加速度量;

所述可信度量模块3用于读取加速后的固件Flash数据,实现对CPU的可信度量功能,从而保证计算机系统的可信。

所述固件切换模块1用于实现固件Flash的SPI/QSPI信号切换,即将固件Flash在CPLD与CPU之间切换,以实现CPLD和CPU在不同阶段对固件Flash的读取;固件切换模块1包括模拟开关、固件Flash,以及用于控制该模拟开关的CPLD;

CPU的固件一般存储在串行Flash中,该固件Flash对外提供SPI/QSPI接口,本实施例中选用兆易创新的GD25Q127C系列Flash,该Flash支持标准SPI接口、Dual SPI接口和Quad SPI接口,最高传输速率达416Mbit/s,该固件切换模块1中选用的模拟开关为圣邦微的SGM6505,该芯片可实现6路数据的2切1功能,工作电压范围为2.0~5.0V,最高传输速率为[email protected] Bandwidth。

将固件Flash的CSN、SCK、SI(IO0)、SO(IO1)、HOLD(IO3)、WP(IO2)信号,连接至模拟开关SGM6505的公共端引脚COM1~COM6;将CPLD的CPLD_CSN、CPLD_CLK、CPLD_IO0~CPLD_IO3引脚连接至模拟开关SGM6505的NC1~NC6;将CPU(或其他控制器)的CPU_SPI_CSN0、CPU_SPI_SCK、CPU_SPI_SDI和CPU_SPI_SDO分别连接至模拟开关SGM6505的NO1~NO4;模拟开关SGM6505的EN#信号和IN1、IN2连接至CPLD,由CPLD控制模拟开关是否工作和将公共端信号切换至NC或NO。

计算机系统上电工作后,由CPLD控制模拟开关SGM6505的EN#信号为低,使模拟开关SGM6505工作。控制模拟开关SGM6505的IN1和IN2为低电平,将固件Flash相关信号切换至CPLD执行度量流程。度量完成后,CPLD控制模拟开关SGM6505的IN1和IN2为高电平,将固件Flash的相关信号切换至CPU,CPU读取固件Flash后正常启动。

所述接口加速模块2用于实现将可信度量模块3读取固件Flash的过程进行加速处理,缩短可信度量的时间,并控制CPU的复位信号确定CPU是否正常启动,接口加速模块2包括CPLD,该CPLD与固件切换模块1的CPLD为同一个。

常规的度量过程是经过模拟开关后将固件Flash的信号直接接至可信度量模块3标准的SPI接口,该接口最大传输速率为十几Mbit/s,对于多子系统计算机来说,该度量过程可能长达2~3分钟,再加上度量完成后系统正常启动时间,计算机启动过程较长,影响用户使用体验。

接口加速模块2则将模拟开关切换过来的固件Flash的信号以Quad SPI的方式读取,读取速度最高可达400Mbit/s,再经过CPLD内部逻辑转换将QSPI协议转换为EBC接口或者其他高速并行接口与可信度量模块3连接,由可信度量模块3执行可信度量过程。

所述可信度量模块3用于将接口加速模块2传输的数据加速后的固件Flash的信号进行解析,完成固件Flash的可信度量。主流的可信密码芯片对外提供EBC或其他并行接口,本实例可信度量模块3选用的可信密码芯片与CPLD的接口为EBC接口,由于CPLD的通用管脚的输入输出可配置,所以将可信密码芯片的EBC接口的EBC_D[31..16]、EBC_ADD[31..0]、EBC_CLK、EBC_WB_PULSE、EBC_WBE_N[3..0]、EBC_RW、EBC_OE、EBC_READY、EBC_CS1管脚连接至CPLD的普通IO引脚,度量过程由可信密码芯片的内部引擎实现。度量完成后,由可信密码芯片判断该固件Flash是否被篡改,确认固件Flash可信后可信密码芯片通过GPIO将度量完成信号发送至CPLD,CPLD释放CPU的复位引脚,CPU开始正常启动,完成整个可信度量流程。

可以看出,本发明实施例的电路可应用于多子系统环境。常规可信度量电路只能依次顺序完成固件Flash的度量,度量时间是叠加的,因此度量时间较长,而本发明的电路可同时并行度量多个固件Flash,整个系统的度量时间大大缩短,提高系统度量效率,因此较常规可信度量电路具有明显优势。

以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

8页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:供电切换系统、USB插座和电子设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!