CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

网络安全,安全,网络安全设备,信息安全产品,网络安全新闻,信息安全市场分析,黑客攻防,防黑反黑技巧,黑客,网络安全技术,网络安全方案,病毒播报,最新病毒库,攻防技巧,入侵渗透,新闻,思科,Juniper,天融信,瑞星,金山,江民,卡巴斯基,赛门铁克, 趋势,绿盟科技,联想网御,MCAFEE,安氏,冰峰网络,网络入侵,木马,病毒,病毒分析,木马分析,样本分析,木马样本分析,病毒样本分析,杀毒软件

您现在的位置: IT专家网 > 安全子站 > 安全技巧

基于SOPC的USB密码模块硬件与固件设计

作者: 刘建国 武清芳 易青松,  出处:单片机与嵌入式系统应用, 责任编辑: 张帅, 
2008-05-27 10:24
  本文将介绍基于SOPC(System On a Programmable Chip)的USB密码模块设计思想,其目标是设计一款集加密存储、安全认证等功能于一体的基于SOPC的USB密码模块应用系统。

  2、硬件设计

  2.1硬件架构模型

  本文在研究了应用需求的基础上,提出了图2所示的硬件架构模型。

  

  它主要包括如下5部分:

  ①嵌入式微控制器:主要负责模块的整体协调以及与外部通信接口的处理,实现系统控制、安全协议等功能。

  ②内部安全控制引擎:为了减少中心控制模块的工作,加快密码运算处理速度,专门设计一个专用的微控制器来进行调度密码运算处理。

  ③密码运算IP核:面向信息安全领的安全应用,集成对称、非对称、杂凑等密码运算单元,通过内部安全控制引擎控制。

  ④总线桥:为让外部接口与内部运算模块更为高效地通信,通过总线桥使两条总线连接起来,较好地实现时序匹配和数据传输。

  ⑤数据存储模块:为了让密码运算处理模块与外部接口之间的通信同步,需设计一个数据存储模块来存储外部来的数据以及加密后来不及输出的数据。

  2.2 内部硬件电路关键部件设计

  2.2.1 内部安全控制引擎MCU的设计

  根据密码处理的特殊性,MCU一方面要实现两个设备之间的数据直接交换;另一方面要及时对运算完成标志作出快速响应,以减少不必要的时间延迟。因此,MCU除具备通用微控制器的数据传输指令之外,还要增加如下2类指令:

  ①直接数据传输指令:实现外部存储器与密码模块之问的直接数据传输。不同于通用微处理器的DMA功能,它通过专用指令实现两个外部缓冲区之间的数据交换。

  ②输入判断分支指令:按位对外部输入信号进行判断,无须微处理器执行算术运算或逻辑运算,即可直接判断外部引脚电平,决定程序分支。

  MCU设计

  ◆采用哈佛结构模型来实现;

  ◆MCU为了与嵌入式控制器NiosII更好地协调工作,采用32位宽指令;

  ◆可以同时读取指令和数据,使流水设计变得简单易行;

  ◆指令和数据都存放在内嵌的存储器中,使控制器、运算器和程序存储器的处理效率较高;

  ◆主要进行数据传输指令和跳转指令设计。

  微控制器主要由取指电路、译码电路、执行部件3部分组成,实现各项功能。其电路整体框架如图3所示。

  

  2.2.2嵌入式控制器NiosII与内部安全控制引擎

  MOU的协调控制设计

  由于本密码模块系统较为复杂,内嵌的NiosII需要完成数据的传输、控制、通信、调度等任务。若采用传统的单CPU结构进行控制,因受到CPU速度和自身资源的影响,系统很可能出现任务过于繁重的情况。一旦出现故障,系统将不能正常工作。因此,在本设计中采用双CPU设计方案。其相互的协调控制模型如图4所示。

  

  对于NiosII而言:

  外部如有数据要进行加/解密处理,NiosII首先写命令到MCU命令接收寄存器,待MCU明确表示接收到命令后,返回一个确认信号给:NiosII;NiosII接收到确认信号后,则转入到写数据状态。在写数据状态,NiosII把数据按一定长度分组进行填充,输入到桥接器的输入FIFO。待数据输入完后,发出输入FIFO有效信号到MCU,转入判断IP运算核是否有效;若未完成,则继续在该状态进行等待。当IP运算完后,MCU置读FIFO信号有效,NiosII判断这个信号有效后直接从桥接器的输出FIFO,把数据从输出FIFO送到外部接口部件,完成一次数据加/解密过程;否则,继续等待,超出规定时限后,发出错误警告。

  对于MCU而言:

  MCU接收到NiosII过来的命令,对命令进行解析后,向NiosII发出确认收到命令信号,并判断输入FIFO里有没有数据。若有数据,则转入从输入FIFO取数据状态,分组送入密码运算IP核进行处理,待一组处理完后,送数据到输出FIFO,置读信号有效,完成一次数据加/解密过程;若输入FIFO为空,则等待。当所有数据全部处理完成后,做出完成标志。

  2.2.3总线桥的设计

  本密码模块包括Avalon总线和自行设计的总线,两条总线通过一个桥模块进行连接,完成总线与总线的数据通信。外部接口模块通过Avalon总线与NiosII进行通信,自行设计的总线主要负责密码专用控制器MCU与密码运算IP核之间的通信。为使这两条总线实现时序匹配,能够较好地数据传输,设计了总线桥。

  总线桥的总体结构如图5所示。它包括地址译码和外设IP选择模块、写数据寄存器模块、读数据寄存器模块和状态机模块。

  

  状态机模块主要协调两侧总线的协议时序,从而满足数据的正确传输要求;同时,还将根据MCU发送过来的传输命令得到外设IP相关的特征信息,产生用于NiosII的控制信号。地址译码和外设IP选择模块根据自定义总线发出的地址信号,译码后选择待操作的外设IP,并获取该IP的特征信息。

?4?? 9 1 2 3 4 :

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅


    • 解析如何实现自动化的IT安全合规管理评论
      能够解决企业IT、审计和运作团队共同问题的方法一直是企业IT管理者所迫切希望的,自动化的企业合规管理将会及时的发现并掌控企业实际存在的各种问题。
    • 视频讲解:MS Windows系统安全评论
      本文将由7all为IT专家网用户讲解MS Windows操作系统。
    • 浅谈逆向工程在网络安全研究中的运用评论
      从某种程度上来说,计算机软件的逆向工程技术主要过程为分析计算机程序,在分析计算机程序的过程中,逐渐建立起高于源代码级别的更抽象层次的程序运行过程。
    • 评估Vista内核模式的安全性评论
      Windows Vista与之前的MS Windows版本(包括Windows XP SP2)相比增加了很多的安全性。Vista新安全性的特征可以包括驱动签名、PatchGuard、内核模式代码完整性检查等。

天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i