安全芯片中密码算法的多IP核集成方法

相关专题: 芯片

信息社会中,基于密码算法设计的安全芯片,能够为用户的敏感信息提供有效的机密性与完整性保护。信息化的不断深入使得人们对信息安全服务的需求呈现使用简单化、功能多样化、高度集成化等趋势。这要求安全芯片在单一的硬件平台上,最大限度地提供多样的密码服务,并且具备标准统一的对外服务接口。功能多样化与高度集成化,已经成为当前以及今后安全芯片设计的必然要求。

安全芯片的功能多样化设计要求可以由软件方式实现,也可通过集成多个硬件密码算法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所列。

来源:中华电子网


微信扫描分享本文到朋友圈
扫码关注5G通信官方公众号,免费领取以下5G精品资料
  • 1、回复“YD5GAI”免费领取《中国移动:5G网络AI应用典型场景技术解决方案白皮书
  • 2、回复“5G6G”免费领取《5G_6G毫米波测试技术白皮书-2022_03-21
  • 3、回复“YD6G”免费领取《中国移动:6G至简无线接入网白皮书
  • 4、回复“LTBPS”免费领取《《中国联通5G终端白皮书》
  • 5、回复“ZGDX”免费领取《中国电信5GNTN技术白皮书
  • 6、回复“TXSB”免费领取《通信设备安装工程施工工艺图解
  • 7、回复“YDSL”免费领取《中国移动算力并网白皮书
  • 8、回复“5GX3”免费领取《R1623501-g605G的系统架构1
  • 本周热点本月热点

     

      最热通信招聘

      最新招聘信息

    最新技术文章

    最新论坛贴子