RSA算法的TMS320C54x DSP实现
(2)硬件设计
在本设计中,外设提供的串行数据是标准RS232电平,经过电平转换后达到可以处理的TTL电平,直接与DSP芯片的异步接收发送引脚相连;DSP将接收到的数据进行加、解密处理,并存储在外部数据存储器中,等待中断程序进行读取。
电路原理框图如图1所示。
在本DSP系统中,SRAM与DSP芯片的接口构成32K字的外部程序存储器和16字的外部数据存储器,其中外部程序存储器的地址范围是48000H~4FFFFH,外部数据存储器的地址范围是4000H~7FFFH;并行8位EPROM与DSP芯片的接口构成32KB的引导装载EPROM,可以使DSP系统成为独立运行系统,其地址范围是8000H~FFFFH。
当DSP芯片工作在微计算机方式(MP/MC=0)下,复位时,外部并行8位引导装程序从外部EPROM中读取引导装载表,并且装载程序代码到DSP片外程序存储器中。在外部并行8位引导装载模式下,可对软件等待状态寄存器(SWWER)和切换控制寄存器(BSCR)进行配置,使高速DSP芯片能从相对较慢的外部EPROM中读取数据,缺省的设置是7个等待状态。
硬件的设计是最为重要的,必须严格分析DSP工作过程中的时序问题,而且还要考虑到指令在执行时所消耗的时间;要考虑到该时间与外围器件的运行速度是否匹配等诸多因素,若单个软件设计成功而支持软件的硬件未设计成功,也就意味着整个设计等于零。
(3)软件设计
软件开发过程包括:利用任何文本编辑器编写源代码文件,然后通过编译、汇编和链接,生成DSP可执行的COFF目标代码,最后将生成的可执行目标代码通过仿真器下载到DSP目标系统中运行,再利用调试工具进行调试,达到设计要求。待程序调试通过后,就可以将所调试通过的程序代码利用Hex转换工具转换为二进制文件,再用编程器将程序写入外部EPROM中,形成独立的DSP系统。
开发语言分为汇编语言与高级语言两类。其中汇编语言编译器的效率高,但是由于生产DSP芯片的厂家开发出的DSP芯片所支持的汇编语言差异较大,其指令、寻址方式差异更大,并且可读性与可移植性不强。为克服这个缺点,厂家大都开发出支持高级语言的工具,典型的如“C语言”;而C语言的编译器效率比不上汇编语言;特别是在处理低层硬件中就显得苍白无力,所以一个优化高效的DSP应用程序都采用高级语言与汇编语言共同完成。
结语
本文介绍了RSA算法的基本原理以及用TMS320C5402 DSP芯片的实现方法。DSP芯片因其特有的硬件结构和灵活的软件编程功能,比较适合于RSA算法的实现。实践证明,以这种方式实现的RSA算法在速度和安全性能上都有较大提高,因此可应用于互联网和分散控制系统等领域。
《RSA算法的TMS320C54x DSP实现(第3页)》