基于fpga的usb2.0控制器设计

基于fpga的usb2.0控制器设计

ID:10657580

大小:59.00 KB

页数:5页

时间:2018-07-07

基于fpga的usb2.0控制器设计_第1页
基于fpga的usb2.0控制器设计_第2页
基于fpga的usb2.0控制器设计_第3页
基于fpga的usb2.0控制器设计_第4页
基于fpga的usb2.0控制器设计_第5页
资源描述:

《基于fpga的usb2.0控制器设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于FPGA的USB2.0控制器设计

2、第1...摘要:介绍了一种用VHDL设计USB2.0功能控制器的方法,详术了其原理和设计思想,并在FPGA上予以实现。关键词:USBVHDLFPGA在视频存储和图像宽带领域中,经常遇到实时高速数据传输的要求。2000年4月,由Intel、Microsoft、NEC、paq、Lucent、Phillips等公司共同制订的USB2.0(UniversalSerialBus)传输协议,其速度远远超过了目前使用IEEE1394接口进行视频传输的400Mbps,达到了480Mbps;而且具有即插即用的PnP(PlugAndPl

3、ay)、可进行菊花链式的级联(通过USBHUB进行外围扩展)、可串连多达127个USB设备等优点。应用该协议可支持实时语音、音频和视频数据的传输。本文针对高速数据传输需求,根据USB2.0的协议规范,利用VHDL语言实现符合该协议的功能控制器,在视频压解系统中使数据在PC与外设之间高速传输。如图1所示由视频A/D采集的原始视频数据,在Philips公司生产的TM1300专用视频处理器中压缩后,通过USB控制器送至PC机。PC机的整个通过USB控制器传输到TM1300,解压后发送至视频D/A。1控制器结构原理USB2.0控制器结构框图如图2所示。控制器主要

4、由两个部分组成,其一为与外设的接口,另一个是内部协议层逻辑PL(ProtocolLayer)。内部存储器仲裁器实现对内部DMA和外部总线对存储器访问之间的仲裁。PL则实现USB的数据I/O和控制。接口有三种:一种是与微控制器之间的功能接口;一种是与单口同步静态存储器(SSRAM)之间的接口;另外一种是与物理层之间的接口。这里符合UTMI(USBTransceiverMacrocellInterface)规范定义。2控制器实现控制器接口的信号框图如图3所示。存储器采用标准的单口SRAM,其信号接口由32位数据线SRAM_DATA、15位地址线SRAM_AD

5、DR及读写信号(SRAM__RD)组成,系统所需SRAM的容量为215×32bit=128KB。而与微控制器之间的接口信号包括32位数据线DATA、18位地址线ADDR以及DMA请求和响应信号(DMA_REQ和DMA_ACK)。由于要支持到128KB,需要17位地址线,另外还需要一根地址线来选通SSRAM和USB控制器内部的寄存器,总共需要18根地址线addr[17:0]。定义如下:USB_RF_SEL<=!addr[17];USB_MEM_SEL<=addr[17];第18位地址addr[17]为高时选择缓冲存储器,否则选择内部寄存器。地址

6、addr[16:2]直接用于存储器SSRAM的地址。2.1UTMI接口UTMI接口信号包括:与发送数据相关的信号(TxValid、TxReady等),与接收数据相关的信号(RxActive、RxValid、RxError等)以及16位双向数据线。在物理层,该控制器需要一个外部的USB收发器(Transceiver),本文采用的是Philips公司的ISP1501芯片。该芯片用作USB2.0的模拟前端,从USB电缆来的差分信号进行反转不归零码(NRZI)解码和位解填充转换成16位并行数据;反之,16位并行数据通过一个差分驱动电路经过串行化、位填充和NRZI

7、编码输出到USB电缆上。ISP1501通过管脚MODE0和MODE1决定收发器的工作模式,共有4种工作模式:MODE[1:0]为“00”时,收发器处于断开状态;为“01”时处于全速(FullSpeed)模式(此时USB带宽为12Mb/s);为“10”时是高速(HighSpeed)模式(此时USB最大带宽是480Mb/s);为“11”时是HSchirp模式。UTMI接口通过译码MODE[1:0]来控制ISP1501在HS和FS之间转变。Ifmode_hs='1'thenMODE<='10'Elsifmode_hs='0'thenMODE<='0

8、1'Endif;2.2协议层控制器的核心逻辑位于PL(ProtoclLayer)模块,负责管理所有USB数据I/O和控制通信,其结构如图4所示。DMA和存储器接口提供随机存储器访问和DMA操作。该模块使PL和外部微控制器采用DMA方式访问SSRAM。当外部总线有访问SRAM的请求时,且PL没有请求访问存储器,控制逻辑如下:req、ack分别对应外部总线和存储器之间的请求和响应信号,din、addr和req是内部DMA向存储器发送的请求信号,mdin、maddr和mreq);ifsel='1'thensram_out<=din;sram_adr<

9、;=addr;sram__out<=mdin;sram_adr<=m

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。