基于FPGA的USB接口IP核设计

2010-03-12 18:08:46来源: 互联网

摘要: 重点阐述了USB接口IP核关键模块的设计和验证,用VerilogHDL对USBIP核协议RTL级代码编写,对USB协议的数据流、传输等进行了深入的分析,在Xilinx ISE软件平台上进行了FPGA综合,并在Xilinx FPGA开发板上调试成功。通过在ModelSim6.0上仿真、ISE9.1上综合并在FPGA开发板上验证,最后采用0.35μm CMOS工艺实现版图设计,工作频率120 MHz,3.3 V电压时工作电流9mA,静态电流40μA。结果表明文中USB接口IP设计是可行的。
关键词: IP;通用串行总线;VerilogHDL;协议层;SIE


USB(通用串行总线)作为一种外设连接技术,是计算机外设连接技术的重大变革,USB具有速度快、通用性好、扩展性强、功耗低、稳定、易开发等众多优点,在实践中获得了广泛的应用,逐步成为PC机的一种标准接口。USB接口控制芯片是实现USB设备与主机建立通信所必须的芯片,目前国内的USB开发者所采用的芯片都是由国外的芯片商所提供,如Cypress、NEC、Motorola等大的IC设计公司,价格较贵。由于USB的广泛应用,国内外众多科研机构和集成电路设计公司都把目光投向USB这项具有广阔市场前景的技术。USB内核(USB Core)是USB接口控制芯片的关键模块,设计一个稳定、高速的USB内核更是芯片成功推向市场的前提。

1 USB通信原理
USB通信逻辑上分成了3层:信号层、协议层和数据层。信号层用来实现在USB设备和主机的物理连接之间传输位信息流的信息。逻辑层用来实现在USB设备和USB主机端的协议软件之间传输包字节流的信息,它们在信号层被编码成NRZI位信息后传送出去。数据传输层用来实现在USB主机端的客户端驱动程序和设备端的功能接口之间传输有一定意义的信息,这些信息在协议层被打包成包格式。
1.1 传输的基本单元
包(Packet)是USB系统中信息传输的基本单元。结构,如图1所示,根据USB规范,包的类型有:令牌包、数据包、握手包和专用包。


USB总线操作(通讯过程)都可以归结为3种包的传输:令牌包、数据包和应答包。任何操作都是从主机开始的,主机以预先排好的时序,发出一个描述操作类型、方向、外设地址以及端点号,称之为令牌包Foken Packet。然后由在令牌中指定的数据发送者发出一个数据包Data Packet或者报告它没有数据可以传输。而数据的目的地一般要以一个应答包Handshake Packet做出响应表明传输是否成功。
1.2 事务处理
事务处理(Transaction)是指USB总线上数据信息的一次接收或发送的处理过程。事务处理的类型包括输入事务、输出事务、设置(Setup)事务,帧开始(SOF),帧结束(EOF)等类型,下面以输入事务处理为例加以介绍。
如图2显示了输入事务处理中无差错事务情况,首先由主机向总线发出输入令牌包通知某个设备向主机发送数据;当所指定的设备接收到此令牌包并检验身份后,将准备好的数据组装成数据包向主机传送出去;接着当主机接收到的数据经校验无差错后,创建一个ACK的握手包返回给设备通知主机已正确接收到数据,然后进行新的事务处理过程。若主机接收数据包错误,则不发送ACK握手包,表示处理过程没有成功;若设备未准备好数据,设备会向主机发送NAK握手包,提醒主机暂时不能发送数据;若设备出错,则返回主机STALL握手包通知设备出错。


1.3 总线传输
为了满足不同外设和用户的要求,USB提供了4种传输方式:控制传输、实时传输、中断传输、批量传输。它们在数据格式传输方向数据包容量限制和总线访问限制等方面有着各自不同的特征。
控制传输用来对设备进行初始化和配置管理,所有USB设备必须直接控制传输,是总线传输中最复杂的传输方式;实时传输用来传送音频或视频的数据;中断传输用来传输类似PCI或ISA总线上中断信号的数据;批量传输用于打印机或扫描仪等传输大块数据的设备。
控制传输一般包括2或3个事务处理阶段,即设置阶段,数据阶段(可选)和状态阶段。图3给出了设置阶段的细节。如果数据没有正确接收设备就会忽略它,而且不返回应答包。

[1] [2] [3] [4]

关键字:FPGA  USB接口  IP核设计

编辑:刘志青 引用地址:http://www.eeworld.com.cn/FPGA/2010/0312/article_1023.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
FPGA
USB接口
IP核设计

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 

夏宇闻老师专栏

你问我答FPGA设计

北京航空航天大学教授,国内最早从事复杂数字逻辑和嵌入式系统设计的专家。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved