当前位置:首页 > EDA > 电子设计自动化
[导读] 信息社会中,基于密码算法设计的安全芯片,能够为用户的敏感信息提供有效的机密性与完整性保护。信息化的不断深入使得人们对信息安全服务的需求呈现使用简单化、功能多样化、高度集成化等趋势。这要求安全芯片在

    信息社会中,基于密码算法设计的安全芯片,能够为用户的敏感信息提供有效的机密性与完整性保护。信息化的不断深入使得人们对信息安全服务的需求呈现使用简单化、功能多样化、高度集成化等趋势。这要求安全芯片在单一的硬件平台上,最大限度地提供多样的密码服务,并且具备标准统一的对外服务接口。功能多样化与高度集成化,已经成为当前以及今后安全芯片设计的必然要求。
    安全芯片的功能多样化设计要求可以由软件方式实现,也可通过集成多个硬件密码算法IP核完成。由于密码算法IP核集成安全性较高,在向外提供密码服务时,数据处理速度较快,且不占用主控制器运算资源,相对于软件实现方法,更适合于安全芯片的实际应用需要。因此,在已有的多功能安全芯片设计中,一般采取多密码算法IP核集成,实现安全芯片功能多样化。

1 密码算法多IP核集成要求及方法
    在单一硬件平台上集成多个密码算法IP核,需要满足三条基本设计要求:
    第一,硬件平台运行频率与IP核运算频率的不一致要求。通常情况下,设计者在进行IP核实现时,出于数据处理速度的需要,一般都会尽量提高IP核运算频率,以实现对数据的高速处理。要求硬件平台与IP核具备同样的时钟频率是不现实的,因为硬件平台的运行频率往往依赖于这一平台所采用的主控制器运行频率,而要提高主控制器的运行频率,以达到与不同IP核运算频率一致,不具有实际可行性。在具体实现多IP核集成时,密码算法IP核运算频率会远高于硬件平台的运行频率,各IP核的运算频率也不尽相同。因此,要实现IP核与硬件平台挂接集成,需首先解决硬件平台与IP核的时钟不一致问题。

    第二,硬件平台与IP核、不同IP核之间处理数据位宽的不一致要求。同样是出于提高数据处理速度考虑,设计者在设计IP核时,一般采用较大的数据位宽。实现不同数据位宽的转换,是IP核能否正确处理数据的基本条件。
    第三,能够灵活调用不同IP核的功能,对目标数据进行相应处理。单一硬件平台与多IP核的挂接集成,需要相应机制来最终实现对不同IP核功能的灵活调用。通过IP功能调用机制,硬件平台可以完成多个IP核对不同数据的同步运算处理,也可以单独调用某一IP核进行数据处理。
    基于上述多IP核集成设计要求,当前文献中已有的实现方法主要有:
    方法一,使用第三方专用系统总线,实现多IP核集成。采用第三方专用系统总线,将不同IP核与总线挂接,实现多IP核集成。其优点在于:专用系统总线功能强大,支持不同频率、不同端口的IP核集成,能够进行多个IP核对不同数据的同步运算处理,便于系统设计与实现。但由于需要采用第三方总线,因而芯片的研发成本会相应增加。
    方法二,为每个IP核配备专用双端口数据存储器,实现多IP核集成。采用配备双端口存储器可以满足硬件平台与IP核异频处理要求,能够实现不同数据位宽之间的转换,能够进行多个IP核对不同数据的同步运算处理。在进行系统前端设计时,设计简单且实现方便。但由于密码服务是一个有序的过程,为每个IP核均配备专用存储区,会造成系统资源浪费,且极大地增加了芯片后端设计中的布局布线难度。
    在分析上述两种集成方法基础上,本文基于方法二,给出了一种改进的多IP核集成设计方法。方法采用IP桥接技术,将同一双端口存储器与不同IP核进行动态重构,实现多IP核集成。与方法一相比,采用IP桥接技术实现多IP核集成可以显著减少芯片的研发成本;与方法二相比,改进方法不仅能够有效整合芯片内部资源,还可以降低系统功耗,提高芯片的整体性能。

2 IP桥接技术设计原理与具体实现
    IP桥接技术的核心是IP桥(IP_bridge)的设计与实现。IP_bridge是主控制器与各IP核协处理器的连接桥梁,同时也是各IP核协处理器与专用双端口存储器的连接桥梁。
2.1 IP桥接技术设计原理
    IP_bridge是IP桥接技术设计与实现的核心,是主控制器与各IP核协处理器,以及各IP核协处理器与专用双端口存储器之间的连接桥梁。为实现这一目的,IP_bridge需完成以下功能:IP核选择参数译码;不同IP核与同一数据处理区的动态可重构;根据IP选择参数,配置选定IP核控制指令与运行时钟。
    在IP_bridge满足上述设计要求的前提下,IP桥接技术具体设计原理可作如下表述:将各IP核与IP_bridge、dual_ramx(双端口存储区)整合为系统的一个密码算法IP核重构模块,模块输入为系统输出数据、地址、读/写使能、系统时钟与IP时钟、IP控制指令与IP选择参数,输出为 IP核处理完成数据与协处理器运行状态标识。
    在系统对某一IP核功能进行调用时,密码算法IP核重构模块按如下步骤进行操作:a.根据系统的输入地址与读/写使能,将输入的待处理数据存储于 dual_ramx中;b.IP桥译码IP选择参数,重构选定IP核控制指令为输入的IP控制指令,dual_ramx为选定IP核数据处理区.c.选定 IP核将duaLramx中数据读入IP核内部,根据IP控制指令,完成数据处理;d.选定IP核将已处理数据输出到dual_ramx中,置相应状态完成信号为有效.e.系统判断状态信号有效,通过dual_ramx将处理完成数据读出,完成IP功能调用。
    与本文第一部分中方法二相比较,IP桥接技术增加了IP_bridge对选定IP核重构数据处理区与控制指令这一过程。该设计可以实现不同IP核与 dual_ramx的动态重构,通过引入IP桥,对IP核调用指令进行解释,进而配置被调用IP核的地址、数据、指令与时钟等各种接口信号,完成系统对 IP核的功能调用。不同IP核与同一数据处理区的动态可重构可以有效节省片内存储资源,提高存储区利用效率。
    采用IP桥接技术实现密码算法多IP核集成,不仅可能节省系统资源消耗,在密码服务提供方面也具有一定优势。密码服务通常是一个有序的过程,在提供密码服务时,由于减少了在不同IP专用数据处理区之间的数据转移操作,因而可以有效提高系统对数据的处理效率。例如,在完成一次签名服务时,一般先对签名数据进行杂凑值运算,再调用公钥密码算法对杂凑结果进行签名,完成对签名数据的签名服务。在这一过程中,将签名服务作为一个完整的基本服务功能进行调用,系统将签名数据写入dual_ramx后,仅需完成对IP选择参数的配置与完成信号的判断操作,便可实现数据签名,极大地简化了系统在向外提供密码服务时的软件控制过程,提高了服务的完成效率。相比较于方法二,所要完成的密码服务越复杂,这一优势越明显。
2.2 IP桥接技术具体实现
    以2.1中IP桥接技术设计原理为指导,本文在一个8位SoC系统上实现了TDES、SHA1、RSA三个IP核的系统集成设计。为简化 IP_bridge设计,三个IP核的数据位宽均统一为32位,执行频率统一为50 MHz。图1为密码算法IP核重构区RTL图。


    如图1所示,密码算法IP核重构区由TDES、SHA1、RSA三个IP核与IP_bridge、asis_ramx共同构成,根据输入的控制参数,完成同一双端口存储区与不同IP核之间的动态重构。其输入输出如表1所列。

    以调用SHA1为例,系统完成对数据块杂凑值计算的操作步骤为:
    ①MCU执行指令
    MOV FUNCCHOOSE,#05H
    选择当前调用IP核为SHA1。
    ②将一个16字节待处理数据块输入双端口存储区asis_ramx中,此时输入数据长度必须为16字节。
    ③执行指令
    MOV INSTUCT,#80H
    MOV INSTRUCT,#01H
    前一条指令将SHA1进行复位,后一条指令使能SHA1,将待处理数据读入IP核内部寄存器,进而对其进行SHA1运算处理。
    ④对FUNCSTATE最低位进行判断,为1时输入下一个16字节数据块,执行指令
    MOV INSTRUCT,#01H
    复位SHA1完成信号,继续进行SHA1运算处理。
    ⑤最后一个16字节数据块输入,执行指令
    MOV INSTRUCT,#01H
    判断FUNCSTATE最低位,为1时读出双端口存储区中处理完成数据。
    ⑥执行指令
    MOV INSTRUCT,#00H
    关闭SHA1协处理器,完成SHA1调用。
    对TDES及RSA的功能调用类似于SHA1,仅在指令配置时稍有不同。TDES增加了密钥生成过程的指令配置与完成信号判断,RSA增加了对模长与模幂的参数配置。由上可知,与方法二相比较,IP桥接技术在调用实现IP核功能时,需要增加的仅为一条IP选择参数配置指令。


3 测试与仿真
    本文采用软件仿真与FPGA下载测试两种手段,对2.2中的设计进行了功能正确性验证。图2给出了该设计中IP_bridge在quartus II 5.0下的仿真波形图。


    在图2中,FUNCCHOOSE为系统功能区的IP选择参数输入,INSTRUCT为IP控制指令。当IP选择参数值为07H、06H、05H时,对应的选定IP为RSA、TDES、SHA1。以选定SHA1为例,当IP选择参数为05H时,IP_bridge模块重构asis_ramx为SHA1专用数据处理区,且此时SHA1控制指令shal_instruct_o被配置为当前IN-STRUCT值,完成对SHA1的接口配置;当IP选择参数为 06H、07H时,IP_bridge置SHA1控制指令shal_in-struct_o为00H,使SHA1协处理器处于休眠状态。对 IP_bridge仿真波形图的分析表明,其逻辑功能正确。由于在初次FPGA下载测试时发现,允许IP_bridge对IP核进行时钟配置会导致协处理器功能不稳定,因而取消了IP_bridge的IP核时钟配置功能。除此以外,其余部分均满足本文2.1中的功能要求。
    为进一步验证设计的正确性,本文选用Altera公司Cyclone II系列EP2C35F672C6器件,对其进行了FPGA下载测试。在初次测试时发现,各IP核虽然可以完成功能调用,但执行结果不稳定,测试结果的最后5~10字节与标准测试对的结果不符。经分析发现,导致IP核功能错误的原因为IP_bridge在对时钟进行配置时,会产生时钟延迟。因此,取消了 IP_bridge的时钟配置功能,在Qu-artus II 5.0下进行编译仿真与综合下载,再次进行FPGA下载测试。测试结果显示,各IP核功能均正确无误。采用选定器件,IP_bridge逻辑资源消耗为 200 LE,最大路径延迟为16.838 ns。

结 语
    本文在总结多IP核集成设计方法的基础上,提出了一种IP桥接技术,用于实现多IP核集成;并以其为指导,基于一个8位SoC系统,具体实现了三个IP核集成。功能仿真与FPGA测试表明该技术具备实际可行性,且相比较于现有多IP核集成方法,IP桥接技术具备可有效提高片内资源利用率,降低系统功耗与开发成本等优势;其缺点在于,当不同IP核的数据接口不一致时,IP_bridge的逻辑设计会比较复杂,且不能实现对IP核的变频时钟配置。初步分析表明,通过修改IP核的双端口存储区数据写入环节,延长数据写入完成至done信号有效这一时间段,可解决这一问题。方法的有效性检测与具体实现,是笔者下一步工作的重点研究内容。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭