USB通用串行总线IP核设计

USB通用串行总线IP核设计

陈钦树[1]2005年在《USB2.0通用串行总线IP核设计》文中研究说明通用串行总线(USB)系统是针对现有的计算机(PC)外围设备连接体制所具有的规格混乱、不支持热插拔等缺点而提出来的新一代计算机与外围设备之间的通信协议,它具有高速、双向、同步、低成本、可动态连接等优点,成为计算机新的接口标准。 本论文对通用串行总线(USB)系统进行研究,并根据USB2.0规范设计了USB设备控制器IP核。 论文首先研究了USB系统的工作原理,并分别对USB的协议基础、数据传输类型、数据触发机制和同步机制、错误检测等进行了分析。在此基础上完成了USB设备控制器的结构设计。然后针对USB设备控制器的具体功能要求,按照自上而下模块化的设计思想,将该设计划分成UTMI接口模块、协议处理模块、寄存器管理模块和仲裁模块等来实现。最后用硬件描述语言对USB设备控制器进行描述,并用仿真工具和综合工具对该设计进行仿真和综合。

方治[2]2003年在《USB通用串行总线IP核设计》文中提出通用串行总线(USB)系统是针对现有的计算机(PC)外围设备连接体制所具有的规格混乱、不支持热插拔等缺点而提出来的新一代PC通信协议,其具有高速、双向、同步、低成本、可动态连接等优点,将成为计算机新的接口标准。 本论文对通用串行总线(USB)系统进行了研究,并根据USB1.1规范设计了USB设备控制器的IP核。 论文首先研究了USB系统的通讯原理、并分别对USB的协议基础、数据传输类型、数据触发机制、错误检测与恢复机制等进行了功能分析。在此基础上完成了USB系统的模块划分。 其次,针对USB设备控制器的功能要求,将系统分为时钟提取、事件检测、物理层、介质访问层、端点控制层五个模块并对每个模块进行了详细设计。以硬件描述语言对USB设备控制器进行了描述,并分别以ActiveHDL、Synplify和Maxplus Ⅱ完成了USB设备控制器的仿真与综合。 论文采用自顶向下的正向高层次设计方法,USB控制器系统的最终实现是采用了Altera公司的ACEX系列FPGA芯片中的EP1K100QC208-3芯片。

刘清明[3]2014年在《USB2.0设备控制器IP核设计与验证》文中提出通用串行总线(USB)是目前应用非常广泛的计算机与外围设备互连标准,比起传统的并行接口,它有连接简单、可扩展性强等重要的优点。本文为了在SoC芯片中嵌入USB设备控制器接口,实现与PC的通信,设计了一款USB2.0设备控制器IP核。本文依据USB2.0协议规范,提出了一个新的USB2.0设备控制器IP核的系统架构。该架构对模块划分时尽量做到每个模块功能独立且信号流清晰。该IP外部接口有两部分:与物理收发器接口遵照UTMI协议规范来进行设计。而与应用的接口,尽量做到能够满足多数应用情景,同时又拥有很大的灵活性,可以很方便的根据具体应用进行重新设计。根据架构设计了工作模式控制、信息包处理、事务处理和枚举控制四个模块。工作模式控制模块完成复位检测、高速握手、设备挂起和唤醒的控制。事务处理模块完成对USB事务的叁个步骤(令牌、数据、握手)的控制。信息包处理模块负责对接收到信息包的识别与CRC校验,发送信息包时进行组包和添加CRC校验码。枚举控制模块实现对USB设备的枚举控制,以硬件电路来代替传统USB设备控制器用MCU和固件一起才能完成的枚举。经验证该IP核有完善的功能,可以支持高速(480Mbps)和全速(12Mbps)两种传输模式。本文给出了各模块的设计与仿真,并用modelsim工具对IP核进行了传输级、事务级、信息包级的功能验证,结果表明设计的核符合USB协议规范。最后设计制作了一个FPGA测试板,使用Xilinx公司的开发工具和USB协议分析仪对设计的IP核进行了物理验证,验证结果表明设计的IP核可以正常工作,并顺利完成了设备的枚举。本设计可以当成一个通用的USB2.0设备控制器的IP核使用,开发USB功能设备,也可以作为一个功能模块嵌入到SoC,实现复杂的功能。该IP核与应用层的接口可以根据实际应用需要进行修改,因此具有很强的通用性、实用性。

吕先望[4]2009年在《通用串行总线(USB2.0)的IP核设计》文中指出通用串行总线(USB2.0)是目前计算机与外部设备连接普遍采用的标准。与其它通信接口相比,USB接口的最大特点是速度快、易于使用和支持热插拔,并且所有的配置过程都由系统自动完成。自从USB问世以来,其应用空间不断扩大,目前己成为计算机的必备接口之一。基于USB的诸多优势,可以预见,随着USB传输速率的进一步提高,传输实时性的进一步增强,其用途将更加宽广。论文对通用串行总线(USB2.0)的协议进行研究,之后根据USB2.0的协议和USB2.0的IP核的功能进行分析设计了USB2.0的IP核。论文首先研究了USB2.0的协议,并分别对USB2.0的拓扑结构、传输类型、事务的类型、包类型、字段的格式和错误检测和处理等进行了分析;然后针对USB2.0的IP核的具体功能的要求,按照自上而下模块化的设计思想,将该设计划分成UTMI接口模块、协议层模块、控制和状态寄存器模块、仲裁器与存储器接口模块和功能接口模块五个子模块;之后用VHDL语言完成各模块的设计,同时做了相应的仿真工作。子模块的仿真完成后,将模块连接起来,生成顶层模块;之后设计一个硬件测试平台,编写驱动程序。最后,对设计USB2.0的IP核进行验证并测试出设计的IP核在批量传输模式下的最高传输速度。

张建民[5]2003年在《面向SoC的USB控制器及通用IO控制器的IP核设计与实现》文中提出随着集成电路技术的发展,芯片的规模突飞猛进,原来由微处理器、协处理器和多块其他外围芯片组成的系统,可以集成在一块芯片内实现,这种一块芯片集成一个系统的技术,称为系统集成芯片(System-on-a-Chip,SoC)技术。系统集成芯片技术受到了计算机界和电子工程界的普遍重视,其发展也是日新月异。 SoC芯片的集成度越来越高,运行频率越来越快,面市时间越来越短,为了实现这样的系统,设计者越来越依赖于IP核的重用。IP核在SoC设计中的地位举足轻重,被看作是SoC大厦的地基。而面向设计重用的IP核设计方法几乎涵盖了集成电路设计中的所有经典课题,包括测试、验证、模拟、低功耗等,但它又不仅仅局限于此,还引入了更多的新的研究领域和课题。 通用串行总线(USB)和通用IO接口(GPIO)控制器是SoC芯片中非常重要的两种外围接口控制器。本文设计实现了USB控制器及GPIO控制器IP软核、固核与硬核。GPIOIP核已集成在Estarl嵌入式微处理器中一次流片成功,经过测试功能正确。而USB IP核预计在明年集成在SoC中投片。 本文采用并行循环冗余校验(PCRC)技术解决了USB IP核中循环冗余校验的实现问题,设计了PCRC16和PCRC5模块,降低了实现难度,并取得了较大的硬件加速。 本文在USB IP核中设计实现了可配置端点数和可配置存储器容量技术,在综合前通过宏定义设置,并且基于FPGA实现对可配置端点数技术进行了性能分析与评价。两个可配置特性增强了USB IP核的可伸缩性以及对不同层次和规模的SoC平台的适应能力。 本文提出了采用可配置总线接口IP核和总线适配器提高IP核重用性的方法,并且应用于USB IP核的设计中,实现了可配置总线接口USB IP核,设计并验证了叁种总线适配器:WISHBONE、AMBAAPB、典型μ Processor接口,从而显着提高了USB IP核的可重用性,使其能够灵活地应用于不同片上总线的SoC芯片。并且基于FPGA实现完成了对叁种总线适配器的性能分析与评价。 本文采用直接存储器访问(DMA)技术解决了GPIO IP核中高速数据传输的问题,在IP核内集成了与DMA控制器进行数据传输的控制逻辑,并且采用“串入并出”技术提高了数据吞吐率。在实际芯片上进行测试的结果表明,数据传输率可达30MBps以上。 静态时序分析是保证SoC设计成功的一项关键技术。本文提出了一种修复保持时间和移除时间违反的方法,该方法修复了Estarl嵌入式微处理器中的时序违反,保证了Estarl的投片成功。并且将该方法应用于USB和GPIO IP核的设计流程中,取得了良好的结果。 本文的工作和已取得的成果对于系统集成芯片领域的IP核设计和重用技术具有实践意义和研究参考价值。

周元甲[6]2018年在《基于10GE网络的USB2.0 HUB研究》文中研究说明通用串行总线(USB)作为一种通用的计算机外设接口被广泛使用,随着云服务和共享技术的发展,本地USB设备的远程化成为一个关键问题。本文提出了一种基于10GE网络的高速通用串行总线(USB2.0)HUB,用于将本地USB设备通过网络准实时地与远程的计算机进行通信。本文在深入理解USB2.0相关规范及工作原理的基础上,使用现场可编程逻辑门阵列(FPGA)并配合USB2.0收发器,将USB数据实时打包及解包到10GE网络上传输,采用主动响应的方式解决因网络传输带来的响应时间不确定的问题。系统分为Device端和Host端两个部分,分别用于连接远程计算机和本地USB设备,Device端和Host端之间用10GE网络连接,系统两端分别实现了与USB主机和USB设备的握手,并主动响应主机和设备。系统将主机和设备发送到对端的数据进行打包和解包,并通过10GE网络发送到对端。测试结果表明,本地USB设备可以使用该系统通过网络与远程主机之间进行高速的、准实时的通信,满足了对实时性要求较高的USB2.0设备与远程计算机之间的连接。

史俊山[7]2010年在《USB主机控制器IP核的研究与设计》文中研究表明通用串行总线(USB)是一种具有即插即用、高扩展性、高速稳定等优点的通信接口标准。目前基于PC机的USB应用已趋于成熟,但一些便携式USB设备要求脱离PC机实现数据通信。因此将USB主机控制器应用于嵌入式系统,实现USB的点对点通信显得日益重要,本文旨在设计一款可在嵌入式SOPC系统中使用的USB主机控制器IP核。本文在对USB协议规范和OHCI主机控制器设计规范深入研究的基础上,采用自顶向下的设计思想,对USB主机控制器IP核进行顶层设计和模块划分。完成USB主机控制器IP核的RTL级描述、仿真及验证,并分析其仿真和综合结果。论文主要包括以下几方面的内容:首先,对USB协议规范进行深入详细的研究。在透彻理解USB协议的基础上对USB主机控制器IP核按照自顶向下的设计思想进行顶层设计和模块划分。其次,采用Verilog HDL硬件描述语言对所划分的主机控制模块、串行接口引擎、Avalon总线接口模块、接收和发送缓冲等子模块进行RTL级设计。其中主机控制模块完成USB数据传输的核心控制功能,串行接口引擎实现USB协议层功能,Avalon总线接口层和接收发送缓冲模块完成系统总线与USB总线的时钟域切换和数据的异步时域传输功能。在设计中采用一种新型的CRC校验并行算法,提高了校验效率、优化了逻辑电路的时序特性;设计存储深度可配置的FIFO作数据收发缓冲,在保证传输速度的基础上方便用户裁减以节省逻辑资源开销。最后,针对所设计的主机控制器IP核制定详细的仿真测试方案,搭建仿真测试平台,编写结构化的Testbench,采用ModelSim仿真工具对各子模块进行功能仿真,保证模块逻辑功能满足设计要求,采用Altera公司的FPGA验证平台进行逻辑综合与验证。所设计的USB主机控制器IP核仿真和测试结果表明,主机控制器IP核各模块逻辑功能均达到设计要求,整个主机控制器可在USB1.1协议规定的低速和全速两种传输模式下完成指定类型的数据包的发送。本设计为SOPC系统中嵌入USB主机控制器提供了有效可行的实现方案,拓展了SOPC系统的外设接口,具有较高的应用价值。

廖文兵[8]2008年在《USB2.0 OTG IP核全速主机控制器研究与设计》文中研究指明越来越多便携式外围设备使用USB接口与PC通信,但通常USB接口不支持两个USB外围设备之间的直接通信。OTG的出现解决了这一问题,支持OTG规范的USB OTG双重角色设备既可以实现主机功能,又可以实现标准设备功能,使得支持OTG规范的外围设备能充当主机与标准设备直接通信,而不需要PC的参与,此外两个支持OTG规范的外围设备也能直接通信。本文介绍一种基于ARM芯片的USB2.0 OTG接口IP设计,主要对其中的全速主机控制器模块设计和IP核的验证进行讨论。该USB2.0 OTG IP核支持USB2.0协议、OTG补充规范、UTMI+协议、OHCI以及EHCI协议。该IP核的一侧通过UTMI+的PHY与OTG设备通信;另一侧通过存储器控制器与ARM相连,使得ARM访问IP核如同访问存储器。USB2.0 OTG IP核主要包括OTG控制器(OTGC)、高速主机控制器(EHC)、全速主机控制器(OHC)以及设备控制器(DC)。基于标准OHCI协议设计的全速主机控制器具有总线控制权,是一个MASTER,而本IP核独立于MCU作为不具有总线控制权的接口模块设计,其与MCU的数据交互均通过中断服务程序完成,是一个SLAVE。所以在全速主机控制器模块设计中,对OHCI协议规定的用于表述端点描述符和传输描述符的数据结构以及事务调度过程进行一定的改进,由存储在片外存储器的链表结构改成存储在片内缓冲区的顺序表结构,从而实现了不具有总线控制权的全速主机控制器。本人在项目中完成的工作主要有全速主机控制器的硬件设计与IP核的EDA验证。全速主机控制器包括如下模块:OHC_GR、OHC_USC、OHC_LPB、OHC_BC、OHC_SIE和OHC_RH。OHC_GR完成全局软、硬复位控制;OHC_USC实现USB状态跳转控制;OHC_LPB完成USB主机事务调度;OHC_BC控制OHC_LPB和OHC_SIE对片内缓冲区的访问;OHC_SIE用于解析USB协议,包括解包组包;OHC_RH实现设备连接、断开、复位、挂起与恢复等功能。本IP核的EDA验证采用Synopsys的VIP作为UTMI+接口侧的激励,ARM侧则是按照s3c2410的规格编写的存储器控制器、DMA控制器和中断控制器的行为级代码以模拟ARM的功能,这样做主要是为了减少ARM侧验证的复杂度。本IP核的FPGA测试分两步走,首先测试高速主机控制器、全速主机控制器和设备控制器的功能,以确保IP核能独立作为标准主机和标准设备使用,当这叁个模块的功能均实现后,再将这叁个模块与OTG控制器一起联调以测试IP核的OTG功能。目前全速主机控制器的功能已全部实现,在FPGA下能实现文件的正常传输。

杨斌[9]2010年在《USB2.0设备端研究及通信硬件平台设计》文中进行了进一步梳理随着电子信息工业的高速发展,计算机拥有了更好的性能和海量数据处理能力。与此同时,计算机外围设备的复杂度也有大幅度提高。因此,日益强大的计算机与不断发展的计算机外围设备之间就需要有高效、简便和稳定的联接。在这种需求下,通用串行总线(Universal Serial Bus,USB)被开发出来。USB总线是一种实现计算机与计算机外围设备通信的串行总线,以其速率高、使用方便、即插即用、成本低廉和易于扩展等优点,获得众多电子厂商和消费者的支持,迅速占领市场,成为计算机和计算机外围设备互联的首选方式。本文对USB总线系统中的设备端进行了系统的研究,包括协议解读;USB2.0数字IP核设计;USB2.0设备端系统设计、实现和应用;并且完成一种适用于无线通信局域网SoC系统开发的硬件平台设计。文中首先从计算机总线的概念入手,介绍计算机总线发展趋势和几种先进的总线协议,引出USB总线,重点介绍USB总线的发展历程、特点和优势。然后,论文从设备端的角度解析USB2.0协议,分析USB2.0协议的总线系统结构、电气特性、通信结构、信息格式和传输方式,对实现过程中应用到的UTMI协议也进行了简单叙述。在USB2.0协议解析完成的基础上,本文提出了一种USB2.0设备端的数字IP核设计方案。该IP核按照系统功能被分UTMI模块、协议层模块、端点控制与状态寄存器模块、存储器接口仲裁模块和Wishbone接口模块,共六个模块。文中对这六个模块的实现过程进行了较详细的叙述。为了更好地研究USB2.0设备端,实现了一种基于USB2.0设备端的数据传输系统,并将该系统应用于便携式实时图像系统、USB2.0编程器和802.11 a/b/g/n MAC层实现。文中将该部分内容分为系统组成、硬件设计、固件程序设计、驱动程序设计、FPGA控制代码设计、系统验证及应用,共六个部分进行叙述。最后,本文完成了一种满足项目实际需求,面向无线通信局域网SoC(System on Chip)设计和验证的硬件平台。文中对该硬件平台的整体方案和架构、系统母板核心架构、FPGA核心板架构、系统验证和应用进行了较为详细的叙述。

李伟[10]2018年在《通信SoC芯片USB2.0 HOST接口验证技术研究》文中指出随着通信产业的高速发展和智能手机的不断普及,片上通信系统芯片即通信SoC备受关注。在集成电路芯片的快速发展过程中,基于集成电路IP核的通信SoC设计方法已成为主流,因此IP核的设计与验证问题就变得非常重要。验证是IC设计过程中十分重要的环节,SoC设计的好坏与验证工作的质量紧密相关,验证为SoC的设计提供了有效保障,IP验证以及性能测试已趋于重要因素。而且结合实际工程项目来看,功能验证在芯片设计流程中占据着关键的地位。作为一种简单易用并且高速的串行总线,通用串行总线USB从出现至今,越来越受到人们的欢迎。加之目前所有的片内总线规范中,高级微控制器总线架构AMBA逐渐成为一种片上通信标准。因此,本论文将USB技术与AMBA总线进行结合,对USB2.0 HOST接口 IP核进行了功能验证研究。本论文主要研究的内容有:第一,制定了 USB HOST接口控制器的验证方案,精确指定了 USB HOST接口控制器的初始化向量、提取了详细的验证功能点。第二,采用软硬件协同验证方法,搭建了可配置、通用的虚拟验证平台即模块级、系统级验证平台。本论文根据USB2.0 HOST协议规范,首先提出了一个新的模块级验证平台架构。为了减少集成便于仿真测试,将编写的AHB总线接口与UTMI+接口的task任务分离开,两部分之间采用GPIO建立通信。通过GPIO,AHB总线接口可以有序的调用UTMI+接口上的task任务,从而完成想要的测试对象,以便完成一次有效的传输。该架构对模块划分时尽量做到每个模块功能独立,并且信号流清晰。其次提出了一个新的系统级验证平台架构。将两组USB控制器进行环接,其中一个作USB HOST控制器,另一个作USB DEVICE控制器使用,两个USB控制器通过UTMI+输出接口建立通信。这种架构可以很方便的根据具体应用进行重新设计,便于测试。从而使用Cadence公司的仿真工具NC-Sim,通过加载相应的需要观察的接口信号,完成了对USB HOST接口控制器的快速动态仿真。经验证USB2.0 HOST IP核有完善的功能,可以支持高速(480Mbps)和全速(12Mbps)两种传输模式。第叁,针对虚拟验证平台的不足之处,进一步搭建了基于Xilinx FPGA和ARM处理器的原型验证平台,通过构建C语言测试项进行了功能验证,给出了板级测试的结果。测试结果表明USB2.0 HOST接口顺利地完成了 USB设备的枚举过程,达到了要求的传输规范,符合USB2.0的基本特性,具备一定的实用性和可推广性,以此为我积累了宝贵的验证技术方面的经验。

参考文献:

[1]. USB2.0通用串行总线IP核设计[D]. 陈钦树. 西安电子科技大学. 2005

[2]. USB通用串行总线IP核设计[D]. 方治. 西安科技大学. 2003

[3]. USB2.0设备控制器IP核设计与验证[D]. 刘清明. 中国科学技术大学. 2014

[4]. 通用串行总线(USB2.0)的IP核设计[D]. 吕先望. 哈尔滨工业大学. 2009

[5]. 面向SoC的USB控制器及通用IO控制器的IP核设计与实现[D]. 张建民. 国防科学技术大学. 2003

[6]. 基于10GE网络的USB2.0 HUB研究[D]. 周元甲. 北京邮电大学. 2018

[7]. USB主机控制器IP核的研究与设计[D]. 史俊山. 重庆大学. 2010

[8]. USB2.0 OTG IP核全速主机控制器研究与设计[D]. 廖文兵. 电子科技大学. 2008

[9]. USB2.0设备端研究及通信硬件平台设计[D]. 杨斌. 电子科技大学. 2010

[10]. 通信SoC芯片USB2.0 HOST接口验证技术研究[D]. 李伟. 西安电子科技大学. 2018

标签:;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  

USB通用串行总线IP核设计
下载Doc文档

猜你喜欢