首 页       用户登录  |  用户注册
设为首页
加入收藏
联系我们
按字母检索 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
按声母检索 A B C D E F G H J K L M N O P Q R S T W X Y Z 数字 符号
您的位置: 5VAR论文频道论文中心理工论文电子通信
   用单片机实现SRAM工艺FPGA的加密应用      ★★★ 【字体: 】  
用单片机实现SRAM工艺FPGA的加密应用
收集整理:佚名    来源:本站整理  时间:2009-01-10 23:50:40   点击数:[]    

系统加电时,单片机将ASET置为低电平,经过一个非门,变成高电平使移位寄存器处于置位状态。在配置完成后,单片机将ASET信号置为高电平,经非门使移位寄存器正常工作。

利用移位寄存器电路产生伪随机码的电路非常简单,反馈逻辑也便于修改。

5 单片机验证伪码的程序

在位寻址区(20H~2FH)定义了字节变量WORD1、WORD2、WORD3、WORD4、WORD5,用来存储移位寄存器的40个状态。其中Q0对应WORD1.0,Q1对应WORD1.1……Q39对应WORD5.7。同时,在位寻址区定义了WORD6、WORD7、WORD8、WORD9,用来进行后面的反馈逻辑计算。

    单片机一上电,首先将ASET脚清零,同时,也将PNMA脚清零,将初值55H作为移位寄存器的初始状态,接着完成FPGA的上电配置工作。配置完成后,单片机检测来自FPGA的外部中断CONFDONE。如果配置完成,CONFDONE为高电;否则,为低电平。在检测到CONFDONE为高电平,即配置完成后,单片机将ASET脚置为1,使能FPGA内的伪码发生电路工作,单片机产生伪随机码的流程。配置完成后,首先将Q0输出到PNMA引脚,接着计算反馈逻辑输入,将参与反馈运算的几个状态运算结果存在中间变量MID_VARY中。然后,对各个状态进行右移,为了提高运算效率,使用了带进位C的字节循环右移指令。移位完成后,将MID_VARY存入Q39,再将新的Q0输出到PNMA引脚,程序循环执行产生伪随机码。

单片机核心源程序如下:

CLR ASET ;单片机上电后将ASET位清0

CLR PNMA

MOV WORD1,#55h

MOV WORD2,#0

MOV WORD3,#0

MOV WORD4,#0

MOV WORD5,#0;将55H作为移位寄存器的初值PEIZHI:

…… ;进行FPGA的配置工作

JB CONFDONE,PNPRODUCE;根据CONFDONE判断配置是否完成

LJMP PEIZHI ;否则继续配置

PNPRODUCE:SETB ASET ;配置完成后,将ASET脚置1

XMQLOOP:MOV C,Q0

MOV PNMA,C ;将Q0输出到PNMA引脚,作为PN码

MOV C,Q0

MOV WORD6.0,C ;用WORD6单元的0位来存Q0的状态

MOV C,Q2

MOV WORD7.0,C ;用WORD7单元的0位来存Q2的状态

MOV C,Q21

MOV WORD8.0,C ;用WORD8单元的0位来存Q21的状态

MOV C,Q23

MOV WORD9.0,C ;用WORD9单元的0位来存Q23的状态

MOV ACC,WORD6

XRL A,WORD7

XRL A,WORD8

XRL A,WORD9 ;通过异或指令,计算反馈逻辑

MOV C,ACC.0 ;反馈逻辑为Qin=Q0

;XOR Q2 XOR Q21 XOR Q23

MOV MID_VARY,C ;将运算后的状态存到MID_VARY中右移运算

MOV ACC,WORD1

RRC A ;移位Q7~Q0

MOV WORD1,A ;移位后,保存到WORD1单元中

MOV ACC,WORD2

RRC A ;移位Q15~Q8

MOV WORD2,A ;移位后,保存到WORD2单元中

MOV Q7,C ;将Q8的值赋到Q7

MOV ACC,WORD3

RRC A ;移位Q23~Q16

MOV WORD3,A ;移位后,保存到WORD3单元中

MOV Q15,C ;将Q16的值赋到Q15

MOV ACC,WORD4

RRC A ;移位Q31~Q24

MOV WORD4,A ;移位后,保存到WORD4单元中

MOV Q23,C ;将Q24的值赋到Q23

MOV ACC,WORD5

RRC A ;移位Q39~Q32

MOV WORD5,A ;移位后,保存到WORD5单元中

MOV Q31,C ;将Q32的值赋到Q31

MOV C,MID_VARY ;将前面反馈计算的值赋给Q39

MOV Q39,C

LJMP XMALOOP ;继续产生下一代PN码元

6 其它加密方法介绍及比较

对SRAM工艺的FPGA进行加密,除了可以利用单片机实现外,还可以用E2PROM工艺的CPLD实现。与用单片机实现相比,利用CPLD的优点在于可实现高速伪码,但要在硬件电路中增加一块CPLD芯片,使整个硬件电路复杂化,增加了成本。本文提供的加密方法考虑到配置完成后单片机处于空闲状态,此时利用单片机进行加密,不需要增加任何电路成本,使得整个系统硬件结构十分简洁。本文提出采用长伪随机码来实现加密。如果采用其它的算法产生验证信息,并增加单片机与FPGA工作时信息实时交互,使得获取验证信息的难度足够大,也可以达到类似的加密效果。




上一页  [1] [2] 


Tags:


文章转载请注明来源于:5VAR论文频道 http://paper.5var.com。本站内容整理自互联网,如有问题或合作请Email至:support@5var.com
或联系QQ37750965
提供人:佚名
  • 上一篇文章:ATMEL单片闪存MP3解码芯片应用

  • 下一篇文章:待机功耗特低的开关电源
  • 返回上一页】【打 印】【关闭窗口
    中查找“用单片机实现SRAM工艺FPGA的加密应用”更多相关内容 5VAR论文频道
    中查找“用单片机实现SRAM工艺FPGA的加密应用”更多相关内容 5VAR论文频道
    最新热点 最新推荐 相关新闻
  • ››嵌入式系统的通信规约管理平台设计...
  • ››一种基于七号信令的局间话单采集系...
  • ››对于变频器的制动技术分析
  • ››电子文件管理元数据宏观结构多维分...
  • ››浅论卫星电视接收机的常见故障的检...
  • ››信息时代网络用户信息检索焦虑的心...
  • ››论GIS在高校房产管理中的实际应用
  • ››关于电力通信发展战略的思考 金李莎...
  • ››2G、3G切换精细化优化分析思路探讨...
  • ››光纤自动化生产的需求与时机
  • ››用单片机控制手机收发短信息
  • ››用单片机实现SRAM工艺FPGA的加密应...
  •   文章-网友评论:(评论内容只代表网友观点,与本站立场无关!)
    关于本站 - 网站帮助 - 广告合作 - 下载声明 - 网站地图
    Copyright © 2006-2033 5Var.Com. All Rights Reserved .