FPGA_ASIC-基于FPGA的片上系统的无线保密通信终端.pdfVIP

FPGA_ASIC-基于FPGA的片上系统的无线保密通信终端.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
电子发烧友 电子技术论坛 基于 FPGA 的片上系统的无线保密通信终端 作者:毋杰 康丙寅 王昭婧 黄克军 电子科技大学 来源:电子产品世界 摘要:本系统以 AES 加密算法为例,使用 Xilinx SPARTAN 3E 为开发平台,以 xilinx 的 嵌入式软核 microblaze 为主控制器,调用 FPGA 的硬件VHDL 编程实现的 AES 加解 密和控制 CC2420 来实现高速有效的数据通信。 关键词:FPGA,片上系统,AES,Xilinx,SPARTAN 3E 引言 利用软件实施加密算法已经成为实时安全通信系统的重要瓶颈。标准的商品化 CPU 和 DSP 无法跟上数据加密算法的计算速度要求。此外,CPU 和 DSP 需要完成太多的 其他任务。基于 FPGA 高度优化的可编程的硬件安全性解决方案提供了并行处理能力, 并且可以达到所要求的加密处理性能基准[1].然而如果仅使用 FPGA 可编程 VHDL 来实 现的话,系统就不够灵活,升级困难,况且实现起来有很大的难度,本系统以 AES 加密 算法为例,使用 Xilinx SPARTAN 3E 为开发平台,以 xilinx 的嵌入式软核 microblaze 为主控制器,调用 FPGA 的硬件VHDL 编程实现的 AES 加解密和控制 CC2420 来实现高 速有效的数据通信。 系统设计思想 本设计使用硬件描述语言 VHDL 在 FPGA 数字逻辑层面上实现 AES 加解密,为了 系统的扩展性和构建良好的人机交互,设计通过 PS/2 键盘输入加密密钥,并将其显示 在 LCD 上。在软核 MicroBlaze 上,通过 SPI 总线读写 FIFO 和 RAM 控制射频芯片 CC2420,使系统具有信道选择、地址识别、自动 CRC 校验功能,使系统更加安全、通 信误码率更低。 数据帧结构设计 电子发烧友 电子技术论坛 为了更好的提高本系统数据的传输率,在官方 zigbee 的数据帧格式基础上做了修 改。采用如表 5-2 所示的数据帧格式。数据帧发送时,CC2420 自动在数据包的开始处 加上前导码和帧起始分隔符在数据包末尾加 CRC 检验。 表 1 数据帧结构 数据可靠传输 为了确保数据不出错和不丢失,本设计采用了 CRC 校验、超时重传、返回 ACK 和 NOACK 等措施来确保数据的不出错和丢失, 系统模块构成 加密端通过串口和网口从发送段接收数据,当接收够 16 字节(128bit),或不足时 能自动补零成 128bit 后送给硬件 AES 加密模块。在软核 Microblaze 的控制下通过 VHDL 编程的 AES 加密后将数据进行组帧打包,通过软核对 CC2420 的寄存器的读写将 数据通过无线发送端 CC2420 发送出去,同时等待发送段确认。接收端在接收到数据以 后,从数据包中将数据提取,进行快速 AES 解密,解密完成后进行 CRC 校验,如果校验 正确则向源地址发送 ACK 确认。将正确数据送出,如果校验失败,则返回 NOACK。 为了确保安全,AES 加解密算法需要的密钥 key 由键盘输入和修改,同时可以在 LCD 上显示出来。必须保证两端 key 相同才能保证正常通信。 电子发烧友 电子技术论坛 图 1 系统总体控制数据流图 AES 加解密模块 3.1.1 AES 简介 AES 加解密算法(Rijndael 算法)对待加密的明文先进行分段然后加密,明文的长 度可以是 l28 位、192 位或 256 位。同样,用于加密的密钥长度也有 l28 位、192 位 或 256 位。根据明文及密钥长度不同的组合,加密的轮次有 10 轮、12 轮和 l4 轮。在 圈函数的每一圈迭代中,包括 4 步变换,分别是字节代换运算、行变换、列混合以及圈 密钥的加法变换。经过验证,选用 l28 位的明文和密钥是几种组合中加解密速度最快的 [2]。所以在本系统设计中使用的为 128 位明文和 128 位密文的组合。由于 AES 为对 称加解密,所以在此文中我们只讨论 AES 的加密方法,解密就是与AES 对称的方式来 进行的。 3.1.2 AES 加解密模块设计 电子发烧友 电子技术论坛 在本系统中,使用了 FPGA 的硬件描述语言

文档评论(0)

docindoc + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档