基于SOPC的USB密码模块硬件与固件设计
作者: 刘建国 武清芳 易青松, 出处:单片机与嵌入式系统应用, 责任编辑: 张帅,
2008-05-27 10:24
本文将介绍基于SOPC(System On a Programmable Chip)的USB密码模块设计思想,其目标是设计一款集加密存储、安全认证等功能于一体的基于SOPC的USB密码模块应用系统。
4、验证与测试
4.1 桥的基本读操作仿真时序
从图7中可以看出,Avalon总线一侧信号在ready信号有效时,S_bus总线已经将运算IP核处理好的数据写入到桥接器。这时,桥的状态检测模块进入初始状态S0,根据Avalon总线一端输入的外设地址及外设接口信号,解析出需要具体写入的外设接口模块。待数据发送到总线后,然后置读有效,表示NiosII可以将数据写入外设接口模块了,至此完成了一次数据的传输。

4.2桥的基本写操作仿真时序
从图8中可以看出,S_bus一侧在wr_vail信号有效时,Avalon总线已经将外设接口核的数据写入到桥接器中。这时,状态机从MCU中解析出需要传输到的目的IP核的地址,将数据送到S_bus总线,由S_bus总线写入到运算IP核中。

4.3数据加解密模块验证
在USB密码模块加电后,密码模块首先完成自检、配置寄存器等一系列操作。然后,便可以向数据密码模块内送入数据,按用户要求进行操作;此时开始计时,先后写入需要加密或解密的数据,以及加密、解密命令。以上操作完成后,开始写入数据。算法IP完成运算后,便可读出密/明文。如此循环,直至整个过程结束,停止计时。
输入明文向量:
00112233445566778899AABBCCDDEEFF
输入初始密钥:
000102030405060708090A0B0C0D0E0F
输出密文结果:
69C4E0D86A780430D8CDB7807084C55A
AES模块仿真结果与加密功能测试结果如图9和图10所示。

将得到的运算结果与AES仿真结果相比,以验证整个加密过程的正确性。结果表明,整个数据加密功能正确实现。
- 本文关键词:

