当前位置:首页 > 嵌入式 > 嵌入式教程
[导读]安全认证系统中嵌入USB接口技术

USB(Universal Serial Bus)通用串行总线是计算机与其外围设备通信的一种总线标准,是近年来应用在PC领域的新型接口技术。它的热拔插、即插即用、连接简单、高带宽、可总线供电等优点几乎使其成为目前计算机外设的首选通信接口。世界上几乎所有硬件厂商都生产实现USB协议的芯片。厂商们本着通用性原则,有的在芯片中嵌入了通用微处理器,如CYPRESS公司CY7C6××××系列和INTEL930××系列嵌入了8051系列微控制器;有的则提供了各种常用的与微处理器接口的方案,如NATIONAL SEMICONDUCTOR公司的USBN960× 系列提供了多路与非多路的8位并行接口、DMA并行接口及微波接口;PHILIPS公司的PDIUSBD11提供了I2C总线接口;三星公司研制的USB功能控制器则具有8位并行微处理器接口,并能以同步或者异步方式工作,这为使用USB协议作为通信接口提供了极大的方便。然而,将USB功能嵌入到一种用于安全认证的处理系统中,则存在无法与处理器直接接口的问题。本文探讨了USB功能模块和处理器接口技术,并从其基本应用角度出发,给出了相应的软件流程。具有USB接口的安全认证系统使用简单、便于携带、通信速度快。

1 USB功能模块

    USB功能模块是基于微处理器应用实现USB协议的模块。集成有低速USB收发器,配置有3个基于FIFO的端点、1个控制端点(8字节)、2个可配置传输方向的中断端点(8字节)。每个端点都配置有相应的控制与状态寄存器,带有一个8 位微处理器并行接口,可工作在同步或异步方式。

    USB功能模块的操作对用户来说是完全透明的。包的译码、数据传输到FIFO、从FIFO发送数据和USB包的装配都是自动完成的。当接收到一个正确数据包或发送成功一个数据包,即向MCU发出中断请求,请求将数据取走或装入下一个要发送的数据包。端点FIFO对USB来说是缓存单元,对MCU来说是一个I/O端口。微处理器通过访问USB寄存器来控制USB模块的操作。

1.1 端点0控制/状态寄存器

    D0:OUT_PKT_RDY  FIFO装有一个有效数据包,USB将其置1,产生中断,MCU写D6为1,清除D0。

    D1:IN_PKY_RDY USB成功发送完一个数据包,清D1时产生中断。

    D2:SENT_STALL 控制交换因违反协议而终止,USB置D2,产生中断。

    D3:DATA_END MCU装了最后一个数据包到FIFO,置D3,与此同时,置D1。MCU卸载完FIFO最后一个数据包,清D0,置D3。对于0长度的数据相,MCU卸载完SETUP数据包之后,清D0=0,置 D3=1。USB清D3时产生中断。

    D4:SETUP_END  在DATA_END(D3)置位之前,控制传输结束,USB置D4,产生中断。

    D5:SEND_STALL  如果译码为一个无效的令牌,MCU置D5,与此同时,清D0,USB发STALL给当前的控制传输,MCU写D5=0,结束STALL条件。

    D6:SERVICED_OUT_PKY_RDY  MCU写D6=1以清除D0。

    D7:SERVICED_SETUP_END  MCU写D7=1以清除D4。

1.2 USB功能模块的访问时序

    USB功能模块的I/O接口可工作在同步或异步方式,本文采用同步方式。其对MCU访问的读写时序要求如图1(a)、(b)所示。

    写时序:地址至少要维持两个时钟周期,并且要先于数据一个有效时钟周期,以便将FIFO的写指针选通至RAM写地址端口。当写信号有效时,存储器写使能信号有效,写之后一个时钟周期FIFO指针刷新。地址有效时,片选高有效。

 读时序:一旦地址有效,存储器输出使能有效。地址至少维持两个时钟周期,前一个周期将FIFO的读指针选通至RAM的读地址端口,因此数据比地址晚一个时钟周期出现在数据总线上。当读信号有效时,MCU将总线上的数据读走,与此同时,FIFO的指针刷新。地址有效时,片选高有效。

2 安全认证系统

    系统中采用了具有加解密功能的处理器。处理器采用栈式结构,具有焦点聚合的低功耗内总线结构和超标量指令结构与多种寻址方式等特点,能高速高效地处理数据。嵌入有RSA和DES模块,能对发送和接收的数据进行实时RSA算法或三重DES算法的加密和解密。系统具有8位地址总线,16位数据位宽的并行接口,其I/O访问时序如图2所示。从图2可以看出,I/O访问在一个时钟周期内完成。 [!--empirenews.page--]

3 硬件设计

    将USB接口嵌入到安全认证系统中,从图1和图2可以看出,二者的时序不匹配,不能直接连接,因此在硬件上要进行时序匹配设计,其硬件原理如图3所示。首先将地址和片选信号展宽一个周期。对于写时序,将写信号往后延迟一个时钟周期,即能满足写时序要求;对于读时序,因为读信号有效时,数据必须已出现在数据总线上。从图1(a)可看出,FIFO的数据在地址有效一个时钟周期后才出现在数据总线上,也就是说,微处理器必须先给出一个周期的地址,然后读信号有效,才能得到正确的结果。为解决这个问题,采取了读FIFO时,先写一次FIFO,紧接着读FIFO。但此时要将写信号屏蔽掉,以免影响FIFO的状态。因此设立一个读控制端口,读FIFO时,将其置1,其余时刻清零。假如MCU要从FIFO读取8个字节,则程序如下:

TMOV Z,  01H         //读控制端口98置1

     ZOUT      98H     

     MOV       I, 7           

     TMOV      MD,   bmRequestType //读FIFO的数据到bmRequestType[...]

LX1: ZOUT      FIFO0

     ZIN       FIFO0   

     MOV       T, Z

     MOV       T, MD  

     MOV       I, T

     TMOV      [I], T

     MOV       T, MD

     INC 

     MOV       MD, T

     NEXT      LX1

     TMOV      Z, 00H    //数据读完,98端口清0;

     ZOUT      98H

4 软件设计

    USB系统通过一个列举过程来识别和配置一个新接入的USB设备,这个过程分5步来完成:

    (1)用默认0地址取得设备描述;

    (2)设置设备地址;

    (3)用新地址取得设备描述;

    (4)取得配置描述;

    (5)设置配置。 [!--empirenews.page--]

    列举过程由控制传输来实现。控制传输有三种类型:

    控制读      SETUP-IN-IN-IN……OUT  

    控制写      SETUP-OUT-OUT-OUT……IN  

    无数据相    SETUP-IN

    通信开始时,PC首先发SETUP包,SETUP包是8个字节的命令包。当USB接收完8个字节的命令,即向MCU发出中断请求,MCU读取这8个字节,对其进行分析。当USB设备给PC发数据时,执行控制读操作;当PC要给USB设备输出数据时,执行控制写操作。输入或输出数据时,数据包的最大传送字节为8字节。 

    执行控制写操作时,当USB将接收到的数据包写到了FIFO时,OUT_PKT_RDY标志位置1。MCU查询标志位,读取数据。当MCU读空FIFO数据,即将OUT_PKT_RDY标志位清0;当MCU读完了最后一个数据包时,将DATA_END标志位置1, 告知USB控制写操作完成。

    执行控制读操作时,当MCU写了一个数据包到FIFO时,将IN_PKT_RDY标志位置1,USB成功发送完这个数据包时将IN_PKT_RDY标志位清0,MCU查询此标志位,装入下一个数据包。当MCU装完最后一个数据包,即将DATA_END标志位置1,告知USB控制读操作完成。

    无数据相接收到SETUP包即告控制传输结束,MCU读完SETUP数据即将OUT_PKT_RDY标志位清0,并将DATA_END标志位置1。其列举过程的软件实现流程如图4所示。

 

该方案已在PC上通过验证。具有USB接口的安全认证系统,通信速度快、便于携带、使用方便,插入PC的USB接口即可。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

成都2022年10月19日 /美通社/ -- 近期,平安养老险积极筹备个人养老金的产品设计和系统开发工作,发展多样化的养老金融产品,推动商业养老保险、个人养老金、专属商业养老保险等产品供给。 搭养老政策东风 ...

关键字: 温度 BSP 东风 大众

广东佛山2022年10月19日 /美通社/ -- 空间是人居生活的基础单元,承载着生存与活动的最基本功能。而对于理想空间的解构意义却在物理性容器之外,体现出人们对于空间和生活深层关系的思考,同时也塑造着人与空间的新型连接...

关键字: 温度 BSP 智能化 进程

上海2022年10月19日 /美通社/ -- 10月17日晚间,安集科技披露业绩预告。今年前三季度,公司预计实现营业收入7.54亿元至8.33亿元,同比增长60.24%至77.03%;归母净利润预计为1.73亿...

关键字: 电子 安集科技 BSP EPS

北京2022年10月19日 /美通社/ -- 10月18日,北京市经济和信息化局发布2022年度第一批北京市市级企业技术中心创建名单的通知,诺诚健华正式获得"北京市企业技术中心"认定。 北京市企业技...

关键字: BSP ARMA COM 代码

北京2022年10月18日 /美通社/ -- 10月14日,国际数据公司(IDC)发布《2022Q2中国软件定义存储及超融合市场研究报告》,报告显示:2022年上半年浪潮超融合销售额同比增长59.4%,近5倍于...

关键字: IDC BSP 数字化 数据中心

上海2022年10月18日 /美通社/ -- 2022年9月5日,是首都银行集团成立60周年的纪念日。趁着首都银行集团成立60周年与首都银行(中国)在华深耕经营12年的“大日子”,围绕作为外资金融机构对在华战略的构想和业...

关键字: 数字化 BSP 供应链 控制

东京2022年10月18日  /美通社/ -- NIPPON EXPRESS HOLDINGS株式会社(NIPPON EXPRESS HOLDINGS, INC.)旗下集团公司上海通运国际物流有限公司(Nipp...

关键字: 温控 精密仪器 半导体制造 BSP

广州2022年10月18日 /美通社/ -- 10月15日,第 132 届中国进出口商品交易会("广交会")于"云端"开幕。本届广交会上高新技术企业云集,展出的智能产品超过140,...

关键字: 中国智造 BSP 手机 CAN

要问机器人公司哪家强,波士顿动力绝对是其中的佼佼者。近来年该公司在机器人研发方面获得的一些成果令人印象深刻,比如其开发的机器人会后空翻,自主爬楼梯等。这不,波士顿动力又发布了其机器人组团跳男团舞的新视频,表演的机器人包括...

关键字: 机器人 BSP 工业机器人 现代汽车

南京2022年10月17日 /美通社/ -- 日前《2022第三届中国高端家电品牌G50峰会》于浙江宁波落幕,来自两百余名行业大咖、专家学者共同探讨了在形势依然严峻的当下,如何以科技创新、高端化转型等手段,帮助...

关键字: LINK AI BSP 智能家电

嵌入式教程

6897 篇文章

关注

发布文章

编辑精选

技术子站

关闭