- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于软核的USB控制器IP核研究
基于软核的USB控制器IP核研究摘要:USB2.0 控制器通过收发器和设备控制器用于主机和存储器之间的通讯。在本设计中,SOPC(可编程片上系统)系统是通过Virtex-II 专业FPGA(现场可编程门阵列)搭建;FPGA嵌入式系统的软核作为控制单元,C768001 SX2TM USB2.0 设备作为收发器连接主机。这里设计了一个USB设备控制器IP(知识产权)核,根据OPB(片上外围设备总线)协议实现一个集成的USB传输系统。本设计包括几部分:第一,建立一个基于软核的片上系统;第二,设计一个符合OPB接口的USB控制器IP核,写IP核控制过程;最后,通过编写驱动和PC应用来验证系统性能。关键字:USB控制器IP核,软核,OPB(片上外设总线),FPGA介绍在USB2.0协议之后,USB日益成为通用串行总线接口,应为其具有占用系统资源少的优点,廉价、通用、热拔插灯优点。在2008年11月,英特尔在英特尔开发论坛宣布USB3.0标准。相比USB 2.0最大传输速率480Mbps,它可以实现高达5Gbps的传输速率;由此,USB 3.0作为超高速USB进入人们的视野。USB 3.0采用新的物理接口电缆,以确保与新设备更高的连接速度,但新的接口与USB 2.0的接口同为四线规格,它的设计是向下相容。同时,USB2.0的传输速率满足低传输所需的硬件,如鼠标、键盘、打印机等;所以,USB2.0当然不会被取代,但与USB3.0共存很长一段时间。根据USB2.0通信协议,本文设计了基于嵌入式系统软核USB控制器的IP(知识产权)核,它描述了基于嵌入式软核如何控制USB工作,最终通过软件编程达到控制盒信号数据的传输。为了实现USB2.0传输,本设计选择Xilinx Virtex-II系列FPGA和赛普拉斯公司的CY7C68001芯片,CY7C68001芯片可以实现USB2.0通信协议;第二步,基于FPGA的嵌入式系统软核的设计,设计了富恶化OPB协议的USB控制器IP核;最后实现了FPGA和pc之间通信的片上系统。基于软核的片上系统本设计主要包含以下几个方面;首先建立一个基于嵌入式软核的片上系统,,软核的处理器执行用户程序,用以实现了系统的IP核和用户自己控制的IP核协同工作;第二,设计了一个USB控制器IP核,IP核的实现符OPB总线接口,采用全速USB2.0传输方式,实现了FPGA和电脑之间的通信;写IP核控制程序;最后,通过编写PC机上的驱动程序和应用程序来验证系统的性能。在这个设计中,用于和外围设备通信的总线是OPB,OPB是符合IBM核连接结构。系统图如图1所示。图1. 基于软核的片上系统嵌入式软核处理器鉴于IBM核连接架构是Microblaze?软处理器最显著的特征。软核的基本结构包含32个通用寄存器,算法逻辑单元(AL),移位单元和2级中断。之后,我们可以在这个基本设计结构上配置进一步的功能,如内存管理单元(MMU),移位寄存器,内存管理/内存保护单位等。OPB(片上外设总线)OPB总线接口包括两个部分:OPB主和OPB从,软核嵌入式处理器作为主设备与OPB总线连接,首先,它申请OPB总线同事讲信息送至仲裁器,在取得允许后,软核可以选择符合OPB_Abushe和OPB_select对数据进行操作的从设备。当操作完成,该从设备讲做出回应;如果在16个周期内没有回应,主设备讲终止对从设备的操作。外围接口模块本设计采用自我调节外设软核控制模块,以满足嵌入式软核的OPB总线标准,并以此自我调节的外设软核用以对特定外设进行控制。外设软核的主要功能和实现:串行端口控制器,用于实现系统和主机端之间的通信,控制RS232串行接口,连接pc超级终端和显示数据信息。GPIO,常见的输入和输出端口,它可以显示简单的应用程序的输出,在本设计中,通过数据管脚连接外部逻辑分析仪,用以测试数据是否正确。Opb_bram_if_cntlr,使用OPB BRAM控制器IP核来控制一块RAM,它负责存储和读从USB控制器发送数据USB控制器IP核是完全自我调节的,它管理的cy68001芯片来实现和USB主设备的通信。USB控制器的实现级应用USB控制器的结构级实现本设计采用有限状态机的结构,使用Verilog HDL实现FPGA 对CY7C68001的逻辑控制,使用usb2.0全速传输模式。usb控制器主要包含以下功能模块,如图2所示。图2. USB控制器的功能模块图状态机控制模块主要是负责产生配置的信息,管理设备状态,控制数据的收发器,产生各类数据包。以下是usb控制器工作流程:USB控制器等待主机USB中断信号,usb控制器根据中断信号决定是否对通信进行配置,包括设备的地址,设备描述符,配置寄存器,接口配置和终结点配置。USB设备支持的传输控制在默认情况为端点
文档评论(0)