CN117370246A - Usb3.1降速桥的数据传输系统以及usb3.1降速桥 - Google Patents
Usb3.1降速桥的数据传输系统以及usb3.1降速桥 Download PDFInfo
- Publication number
- CN117370246A CN117370246A CN202311260764.XA CN202311260764A CN117370246A CN 117370246 A CN117370246 A CN 117370246A CN 202311260764 A CN202311260764 A CN 202311260764A CN 117370246 A CN117370246 A CN 117370246A
- Authority
- CN
- China
- Prior art keywords
- data
- module
- usb3
- data packet
- clock domain
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000009467 reduction Effects 0.000 title claims abstract description 60
- 230000005540 biological transmission Effects 0.000 title claims abstract description 38
- 238000013500 data storage Methods 0.000 claims abstract description 60
- 238000012545 processing Methods 0.000 claims description 33
- 238000000034 method Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 claims description 7
- 238000012795 verification Methods 0.000 abstract description 4
- 230000006870 function Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000007726 management method Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
- G06F13/4059—Coupling between buses using bus bridges where the bridge performs a synchronising function where the synchronisation uses buffers, e.g. for speed matching between buses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明提供一种USB3.1降速桥的数据传输系统以及USB3.1降速桥,通过USB3.1降速桥的USB3接口模块、数据接收模块、数据发送模块以及数据存储模块实现了降速桥的跨频率数据传输;本发明兼容USB3.0,大部分逻辑均可FPGA实现,降低了系统的复杂度。并使芯片在FPGA原型验证阶段,降速后的USB3.1或USB3.0控制器可与外界正常速率下工作的主机或从机进行有效交互,从而更充分的验证芯片内USB3控制器的功能。
Description
技术领域
本发明涉及USB技术领域,特别是涉及一种USB3.1降速桥的数据传输系统以及USB3.1降速桥。
背景技术
随着信息量的爆炸和速率需求的提升,USB3正逐渐深入人们的生活。因而众多芯片厂商都将USB3控制器作为一个必不可少的IP之一,这些IP在芯片做原型验证时需要一起集成验证,由于原型验证的速率限制而USB3又必须要工作在特定速率下的原因,降速桥是必不可少的。目前的USB3降速桥屈指可数,即使可以用也只能与特定的设备进行连接,只能验证很少一部分基础功能,有很大局限性。
发明内容
鉴于以上所述现有技术的缺点,本发明的目的在于提供一种USB3.1降速桥的数据传输系统以及USB3.1降速桥,用于解决以上现有技术问题。
为实现上述目的及其他相关目的,本发明提供一种USB3.1降速桥的数据传输系统,所述系统包括:USB3控制器、USB3.1降速桥、USB子卡以及USB设备;其中,USB3控制器位于慢时钟域,所述USB子卡以及USB设备位于快时钟域;所述USB3.1降速桥与USB3控制器通过PIPE接口连接,与USB子卡通过USB差分线连接;所述USB3.1降速桥,包括:USB3接口模块、数据接收模块、数据发送模块以及数据存储模块;其中,所述USB3接口模块以及数据存储模块分别与数据接收模块以及数据发送模块连接;所述USB3接口模块,用于在慢时钟域将接收的来自USB3控制器的数据包进行处理以及在快时钟域将来自数据发送模块的数据包进行处理后通过USB子卡传输至USB设备;在快时钟域将接收的由USB子卡传输的来自USB设备的数据包进行处理以及在慢时钟域将来自数据发送模块的数据包进行处理后传输至USB3控制器;所述数据接收模块,用于在慢时钟域和/或快时钟域根据所述USB3接口模块的接口时序从所述USB3接口模块接收数据包,并发送至数据存储模块;所述数据存储模块,用于储存来自所述数据接收模块的数据包,并向所述数据发送模块发送数据包;所述数据发送模块,用于在慢时钟域和/或快时钟域接收由数据存储模块储存的数据包,并根据USB3接口模块的接口时序将数据包发送至所述USB3接口模块。
于本发明的一实施例中,所述数据存储模块具有慢时钟域以及快时钟域共享的一接收RAM以及一发送RAM;其中,所述接收RAM以及发送RAM具有相同数量的储存区域;所述接收RAM,用于储存由所述数据存储模块接收的数据包;所述发送RAM,用于储存由所述数据存储模块发送的数据包。
于本发明的一实施例中,所述USB3控制器为主机设备或从机设备;其中,当所述USB3控制器为主机设备,所述USB3.1降速桥为主机模式;当所述USB3控制器为从机设备,所述USB3.1降速桥为从机模式。
于本发明的一实施例中,所述数据存储模块采用RAM控制逻辑执行接收RAM以及发送RAM的读写操作;其中,所述RAM控制逻辑包括:在主机模式下,基于每接收到的数据包的地址和端点动态分配接收RAM空间以及发送RAM空间进行储存,并在传输完毕后释放空间;在从机模式下,为数据包的每个端点分别固定分配一接收RAM空间以及一发送RAM空间进行储存。
于本发明的一实施例中,基于每接收到的数据包的地址和端点动态分配接收RAM空间以及发送RAM空间包括:每当接收到一个地址和端点均不同的数据包时,分配一接收RAM空间以及一发送RAM空间,并在传输完毕后释放空间。
于本发明的一实施例中,接收RAM以及发送RAM的每个区域包括:TP储存区域、DPH储存区域以及DPP储存区域。
于本发明的一实施例中,所述数据存储模块还采用带宽处理逻辑、假包生成逻辑以及令牌处理逻辑;其中,所述带宽处理逻辑,用于生成ITP包、计算带宽以及转发数据包操作中的一种或多种;所述假包生成逻辑,用于生成需要在特定时间内做协议握手的数据包;所述令牌处理逻辑,用于处理USB3协议内关于链路层令牌相关的握手,并根据速率和数据包的类型来释放USB3接口模块内的缓存。
于本发明的一实施例中,所述USB子卡包括:USB3 Re-driver芯片、cc芯片以及USB3连接器;其中,所述cc芯片连接于所述USB3 Re-driver芯片以及USB3连接器之间。
于本发明的一实施例中,所述USB3接口模块包括:USB3协议中规定的协议层、链路层和物理层,用于将接收的数据包进行处理获得对应的协议包。
为实现上述目的及其他相关目的,本发明提供一种USB3.1降速桥,包括:USB3接口模块、数据接收模块、数据发送模块以及数据存储模块;其中,所述USB3接口模块以及数据存储模块分别与数据接收模块以及数据发送模块连接;所述USB3接口模块,用于在慢时钟域将接收的来自USB3控制器的数据包进行处理以及在快时钟域将来自数据发送模块的数据包进行处理后通过USB子卡传输至USB设备;在快时钟域将接收的由USB子卡传输的来自USB设备的数据包进行处理以及在慢时钟域将来自数据发送模块的数据包进行处理后传输至USB3控制器;所述数据接收模块,用于在慢时钟域和/或快时钟域根据所述USB3接口模块的接口时序从所述USB3接口模块接收数据包,并发送至数据存储模块;所述数据存储模块,用于储存来自所述数据接收模块的数据包,并向所述数据发送模块发送数据包;所述数据发送模块,用于在慢时钟域和/或快时钟域接收由数据存储模块储存的数据包,并根据USB3接口模块的接口时序将数据包发送至所述USB3接口模块。
如上所述,本发明是一种USB3.1降速桥的数据传输系统以及USB3.1降速桥,具有以下有益效果:本发明提出一种USB3.1降速桥的数据传输方案,通过USB3.1降速桥的USB3接口模块、数据接收模块、数据发送模块以及数据存储模块实现了降速桥的跨频率数据传输;本发明兼容USB3.0,大部分逻辑均可FPGA实现,降低了系统的复杂度。并使芯片在FPGA原型验证阶段,降速后的USB3.1或USB3.0控制器可与外界正常速率下工作的主机或从机进行有效交互,从而更充分的验证芯片内USB3控制器的功能。
附图说明
图1显示为本发明一实施例中的USB3.1降速桥的数据传输系统的结构示意图。
图2显示为本发明一实施例中的USB3.1降速桥的结构示意图。
图3显示为本发明一实施例中的接收RAM以及发送RAM的储存区域示意图。
图4显示为本发明一实施例中的USB3.1降速桥连接的USB子卡结构示意图。
具体实施方式
以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
需要说明的是,在下述描述中,参考附图,附图描述了本发明的若干实施例。应当理解,还可使用其他实施例,并且可以在不背离本发明的精神和范围的情况下进行机械组成、结构、电气以及操作上的改变。下面的详细描述不应该被认为是限制性的,并且本发明的实施例的范围仅由公布的专利的权利要求书所限定。这里使用的术语仅是为了描述特定实施例,而并非旨在限制本发明。空间相关的术语,例如“上”、“下”、“左”、“右”、“下面”、“下方”、““下部”、“上方”、“上部”等,可在文中使用以便于说明图中所示的一个元件或特征与另一元件或特征的关系。
在通篇说明书中,当说某部分与另一部分“连接”时,这不仅包括“直接连接”的情形,也包括在其中间把其它元件置于其间而“间接连接”的情形。另外,当说某种部分“包括”某种构成要素时,只要没有特别相反的记载,则并非将其它构成要素,排除在外,而是意味着可以还包括其它构成要素。
其中提到的第一、第二及第三等术语是为了说明多样的部分、成分、区域、层及/或段而使用的,但并非限定于此。这些术语只用于把某部分、成分、区域、层或段区别于其它部分、成分、区域、层或段。因此,以下叙述的第一部分、成分、区域、层或段在不超出本发明范围的范围内,可以言及到第二部分、成分、区域、层或段。
再者,如同在本文中所使用的,单数形式“一”、“一个”和“该”旨在也包括复数形式,除非上下文中有相反的指示。应当进一步理解,术语“包含”、“包括”表明存在所述的特征、操作、元件、组件、项目、种类、和/或组,但不排除一个或多个其他特征、操作、元件、组件、项目、种类、和/或组的存在、出现或添加。此处使用的术语“或”和“和/或”被解释为包括性的,或意味着任一个或任何组合。因此,“A、B或C”或者“A、B和/或C”意味着“以下任一个:A;B;C;A和B;A和C;B和C;A、B和C”。仅当元件、功能或操作的组合在某些方式下内在地互相排斥时,才会出现该定义的例外。
本发明的一种USB3.1降速桥的数据传输系统,通过USB3.1降速桥的USB3接口模块、数据接收模块、数据发送模块以及数据存储模块实现了降速桥的跨频率数据传输;本发明兼容USB3.0,大部分逻辑均可FPGA实现,降低了系统的复杂度。并使芯片在FPGA原型验证阶段,降速后的USB3.1或USB3.0控制器可与外界正常速率下工作的主机或从机进行有效交互,从而更充分的验证芯片内USB3控制器的功能。
为了使本发明的目的、技术方案及优点更加清楚明白,通过下述实施例并结合附图,对本发明实施例中的技术方案的进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定发明。
在对本发明进行进一步详细说明之前,对本发明实施例中涉及的名词和术语进行说明,本发明实施例中涉及的名词和术语适用于如下的解释:
<1>USB3.1:USB3.1 Gen2是最新的USB规范,数据传输速度提升可至10Gbps,与USB3.0技术相比,使用更高效的数据编码系统,并提供一倍以上的有效数据吞吐率,且完全向下兼容现有的USB连接器与线缆。
<2>USB子卡:用于实现并行转串行的功能,将接口的并行数据转换成串行数据,再通过差分数据线输出到芯片外部。
<3>PIPE:(Physical Interface for PCI Express)接口。PIPE接口是指PCIE物理层接口,其定义了物理层中的媒介层(Media Access Layer,MAC)和物理编码子层(Physical Coding Sub-layer,PCS)之间的统一接口,旨在提供一种统一的行业标准。其中,媒介层(Media Access Layer,MAC)和物理编码子层(Physical Coding Sub-layer,PCS)都属于PCIe中的物理层逻辑子层部分。
<4>RAM:随机存取存储器(Random Access Memory,RAM),也叫主存,是与CPU直接交换数据的内部存储器。它可以随时读写(刷新时除外),而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储介质。RAM工作时可以随时从任何一个指定的地址写入(存入)或读出(取出)信息。
<5>TP:Transaction Packets事务包,在所有的直接连接主机和设备的链路上传送。用于控制Data packet和配置设备、hub等,事务包没有数据负载。
<6>DPH:Data Packets Header数据包头;
<7>DPP:Data Packets Payload数据包负载。
<8>ITP:Isochronous Time Packet等时时戳包,相当于sof。是在主机到一个或多个设备间的所有活动链路(active links)上的多播(multicast)。
下面以附图为参考,针对本发明的实施例进行详细说明,以便本发明所述技术领域的技术人员能够容易地实施。本发明可以以多种不同形态体现,并不限于此处说明的实施例。
如图1展示本发明实施例中的一种USB3.1降速桥的数据传输系统的结构示意图。
所述系统包括:USB3控制器1、USB3.1降速桥2、USB子卡3以及USB设备4;
其中,USB3控制器1位于慢时钟域,所述USB子卡3以及USB设备4位于快时钟域;所述USB3.1降速桥2与USB3控制器1通过PIPE接口连接,与USB子卡3通过USB差分线连接;
如图2所示,所述USB3.1降速桥2,包括:USB3接口模块21、数据接收模块22、数据发送模块23以及数据存储模块24;其中,所述USB3接口模块21以及数据存储模块24分别与数据接收模块22以及数据发送模块23连接;USB3接口模块21、数据接收模块22、数据发送模块23分别在慢时钟域(PCS)和快时钟域(MAC)内独立工作;
所述USB3接口模块21,适配多种位宽多种速率的USB3接口,兼容USB3.0和USB3.1,接口位宽包括PIPE16/PIPE32;用于在慢时钟域将接收的来自USB3控制器的数据包进行处理以及在快时钟域将来自数据发送模块的数据包进行处理后通过USB子卡传输至USB设备;在快时钟域将接收的由USB子卡传输的来自USB设备的数据包进行处理以及在慢时钟域将来自数据发送模块的数据包进行处理后通过PIPE接口传输至USB3控制器;
所述数据接收模块22,用于在慢时钟域和/或快时钟域根据所述USB3接口模块21的接口时序从所述USB3接口模块21接收数据包,并发送至数据存储模块;需要说明的是,其中ITP包不做转发,直接过滤掉,但是ITP内的信息会保存,以便重新生成ITP包进行发送。
所述数据存储模块24,用于储存来自所述数据接收模块22的数据包,并向所述数据发送模块23发送数据包;所述数据存储模块24主要负责数据的存储,将没有异常的数据储存,同时上报给上层管理模块,上层管理模块用来控制包的转发或重传;
所述数据发送模块23,用于在慢时钟域和/或快时钟域接收由数据存储模块24储存的数据包,并根据USB3接口模块21的接口时序将数据包发送至所述USB3接口模块21。
应理解的是,USB3控制器1以及USB设备分别一个为HOST(主设备/主机),另一个为SLAVE(从设备/从机),只有当一台HOST与一台SLAVE连接时才能实现数据的传输。
基于所述USB3.1降速桥,进行数据传输的方式包括:
当需将来自USB3控制器1的数据包传输至USB设备时,通过所述USB3接口模块21在慢时钟域将接收的来自USB3控制器1的数据包进行处理,并由数据接收模块22在慢时钟域根据所述USB3接口模块21的接口时序接收经过处理的数据包并发送至数据存储模块24储存;通过所述数据发送模块23在快时钟域接收由数据存储模块24储存的对应数据包,并根据USB3接口模块21的接口时序将数据包发送至所述USB3接口模块21,由所述USB3接口模块21在快时钟域将数据包进行处理后通过USB子卡3传输至USB设备4;
当需将来自USB设备4的数据包传输至USB3控制器1时,通过所述USB3接口模块21在快时钟域将接收的经过USB子卡3传输的来自USB设备4的数据包进行处理,并由数据接收模块22在快时钟域根据所述USB3接口模块21的接口时序接收经过处理的数据包并发送至数据存储模块24储存;通过所述数据发送模块23在慢时钟域接收由数据存储模块24储存的对应数据包,并根据USB3接口模块21的接口时序将数据包发送至所述USB3接口模块21,由所述USB3接口模块21在慢时钟域将数据包进行处理后通过PIPE接口传输至USB3控制器1。
在一实施例中,所述USB3接口模块21包括:USB3协议中规定的协议层、链路层和物理层,用于将接收的数据包进行处理获得对应的协议包。使用了数字逻辑结合FPGA内部串/并收发器的方案进行数据串并转换。
在一实施例中,如图2,所述数据存储模块具有慢时钟域以及快时钟域共享的两块数据存储空间,为了充分利用FPGA资源,本数据传输方案使用了双口RAM;具体的,USB3的工作模式为全双工,因此RAM有两块,一接收RAM以及一发送RAM;所述接收RAM以及发送RAM具有相同数量的储存区域;所述接收RAM,用于储存由所述数据存储模块接收的数据包;所述接收RAM以及发送RAM大小可配置,两块RAM需配置成一样大,且具有具有相同数量的储存区域;以32为例,两块RAM的大小均为32块区域,每个区域133*8个字节,最多支持同时32个IN和32个OUT的传输。
在一具体实施例中,如图3,接收RAM以及发送RAM的每个区域包括:TP储存区域、DPH储存区域以及DPP储存区域。
优选的,TP储存区域为4*8个字节,最多存储4个TP,可根据需求来调整这个空间的大小,主要防止一些特殊的包的覆盖情况,例如DEV_NOTIFICATION等;DPH储存区域为1*8字节。DPP储存区域为128*8字节,负责存储数据。
在一实施例中,所述USB3控制器可以为主机设备或从机设备;其中,当所述USB3控制器为主机设备,所述USB3.1降速桥为主机模式;当所述USB3控制器为从机设备,所述USB3.1降速桥为从机模式。
在一具体实施例中,所述数据存储模块采用RAM控制逻辑执行接收RAM以及发送RAM的读写操作;
其中,所述RAM控制逻辑包括:
在主机模式下,基于每接收到的数据包的地址和端点动态分配接收RAM空间以及发送RAM空间进行储存,并在传输完毕后释放空间;
在从机模式下,为数据包的每个端点分别固定分配一接收RAM空间以及一发送RAM空间进行储存;例如,图3最大同时支持32个IN和32个OUT。
因此,本数据传输方案不区分主机或是从机,USB3控制器作在主机或者从机模式下均可应用,由寄存器配置。本方案适配市面上标准的具有USB3功能的主机或从机,包括PC、U盘、鼠标和键盘等。
优选的,基于每接收到的数据包的地址和端点动态分配接收RAM空间以及发送RAM空间包括:
每当接收到一个地址和端点均不同的数据包时,分配接收一RAM空间以及一发送RAM空间,并在传输完毕后释放空间;具体的,若接收到一个地址和端点不是均不同的数据包时,判断之前对应传输是否结束,若结束则继续储存在之前分配的RAM空间;若接收到一个地址和端点均不同的数据包时,则分配一接收RAM空间以及一发送RAM空间进行储存,并在传输完毕后释放空间;例如图3,每接收到一个地址和端点均不同的包时,分配出一块接收RAM的一部分和一块发送RAM的一部分,这笔传输结束时释放掉,最大同时支持32个IN和32个OUT。
在一实施例中,所述RAM控制逻辑会根据上层模块的需求来修改包的某些内容,包括RTY、NUMP、ADDRESS等。
在一实施例中,所述数据存储模块还采用带宽处理逻辑、假包生成逻辑以及令牌处理逻辑;
其中,所述带宽处理逻辑,用于生成ITP包、计算带宽以及转发数据包操作中的一种或多种;当带宽不够时当前请求处于等待状态,等带宽足够的时候再做转发。
所述假包生成逻辑,用于生成需要在特定时间内做协议握手的数据包;具体的,生成包括0包、ERDY包以及NRDY包等需要在特定时间内做协议握手的包,主要用于满足协议的一些计时需求,例如tACKResponse等,假包的发送由上层管理模块控制。
所述令牌处理逻辑,用于处理USB3协议内关于链路层令牌相关的握手,并根据速率和数据包的类型来释放USB3接口模块内的缓存。
在一实施例中,如图4,所述USB子卡包括:USB3 Re-driver芯片、cc芯片以及USB3连接器;其中,所述cc芯片连接于所述USB3 Re-driver芯片以及USB3连接器之间。
本发明提供一种USB3.1降速桥。图2为本实施例中的USB3.1降速桥的结构示意图。
本实施例中的USB3.1降速桥的结构以及实现功能与上述实施例中所提到的USB3.1降速桥的结构以及实现功能类似,因此在此不作赘述。
USB3.1降速桥本质上是一个为了实现USB 3.1controller在硬件加速平台上测试而实现的一个USB连接器,该连接器一侧设置为高频接口,另一侧设置为低频接口。由于极大的频差,该连接器需要实现对USB协议层的特定处理。
所述USB3.1降速桥包括:USB3接口模块21、数据接收模块22、数据发送模块23以及数据存储模块24;其中,所述USB3接口模块21以及数据存储模块24分别与数据接收模块22以及数据发送模块23连接;
所述USB3接口模块21,用于在慢时钟域将接收的来自USB3控制器的数据包进行处理以及在快时钟域将来自数据发送模块的数据包进行处理后通过USB子卡传输至USB设备;在快时钟域将接收的由USB子卡传输的来自USB设备的数据包进行处理以及在慢时钟域将来自数据发送模块23的数据包进行处理后传输至USB3控制器;
所述数据接收模块22,用于在慢时钟域和/或快时钟域根据所述USB3接口模块21的接口时序从所述USB3接口模块21接收数据包,并发送至数据存储模块24;
所述数据存储模块24,用于储存来自所述数据接收模块22的数据包,并向所述数据发送模块23发送数据包;
所述数据发送模块23,用于在慢时钟域和/或快时钟域接收由数据存储模块24储存的数据包,并根据USB3接口模块21的接口时序将数据包发送至所述USB3接口模块21。
在一实施例中,所述数据存储模块24具有慢时钟域以及快时钟域共享的一接收RAM以及一发送RAM;其中,所述接收RAM以及发送RAM具有相同数量的储存区域;所述接收RAM,用于储存由所述数据存储模块24接收的数据包;所述发送RAM,用于储存由所述数据存储模块24发送的数据包。
在一实施例中,所述数据存储模块24采用RAM控制逻辑执行接收RAM以及发送RAM的读写操作;
其中,所述RAM控制逻辑包括:在主机模式下,基于每接收到的数据包的地址和端点动态分配接收RAM空间以及发送RAM空间进行储存,并在传输完毕后释放空间;在从机模式下,为数据包的每个端点分别固定分配一接收RAM空间以及一发送RAM空间进行储存。
在一实施例中,基于每接收到的数据包的地址和端点动态分配接收RAM空间以及发送RAM空间包括:每当接收到一个地址和端点均不同的数据包时,分配一接收RAM空间以及一发送RAM空间,并在传输完毕后释放空间。
在一实施例中,接收RAM以及发送RAM的每个区域包括:TP储存区域、DPH储存区域以及DPP储存区域。
在一实施例中,所述数据存储模块24还采用带宽处理逻辑、假包生成逻辑以及令牌处理逻辑;其中,所述带宽处理逻辑,用于生成ITP包、计算带宽以及转发数据包操作中的一种或多种;所述假包生成逻辑,用于生成需要在特定时间内做协议握手的数据包;所述令牌处理逻辑,用于处理USB3协议内关于链路层令牌相关的握手,并根据速率和数据包的类型来释放USB3接口模块内的缓存。
在一实施例中,所述USB3接口模块31包括:USB3协议中规定的协议层、链路层和物理层,用于将接收的数据包进行处理获得对应的协议包。
综上所述,本发明的USB3.1降速桥的数据传输系统以及USB3.1降速桥,通过USB3.1降速桥的USB3接口模块、数据接收模块、数据发送模块以及数据存储模块实现了降速桥的跨频率数据传输;本发明兼容USB3.0,大部分逻辑均可FPGA实现,降低了系统的复杂度。并使芯片在FPGA原型验证阶段,降速后的USB3.1或USB3.0控制器可与外界正常速率下工作的主机或从机进行有效交互,从而更充分的验证芯片内USB3控制器的功能。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。
上述实施例仅示例性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,但凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。
Claims (10)
1.一种USB3.1降速桥的数据传输系统,其特征在于,所述系统包括:USB3控制器、USB3.1降速桥、USB子卡以及USB设备;
其中,USB3控制器位于慢时钟域,所述USB子卡以及USB设备位于快时钟域;所述USB3.1降速桥与USB3控制器通过PIPE接口连接,与USB子卡通过USB差分线连接;所述USB3.1降速桥,包括:USB3接口模块、数据接收模块、数据发送模块以及数据存储模块;其中,所述USB3接口模块以及数据存储模块分别与数据接收模块以及数据发送模块连接;
所述USB3接口模块,用于在慢时钟域将接收的来自USB3控制器的数据包进行处理以及在快时钟域将来自数据发送模块的数据包进行处理后通过USB子卡传输至USB设备;
在快时钟域将接收的由USB子卡传输的来自USB设备的数据包进行处理以及在慢时钟域将来自数据发送模块的数据包进行处理后传输至USB3控制器;
所述数据接收模块,用于在慢时钟域和/或快时钟域根据所述USB3接口模块的接口时序从所述USB3接口模块接收数据包,并发送至数据存储模块;
所述数据存储模块,用于储存来自所述数据接收模块的数据包,并向所述数据发送模块发送数据包;
所述数据发送模块,用于在慢时钟域和/或快时钟域接收由数据存储模块储存的数据包,并根据USB3接口模块的接口时序将数据包发送至所述USB3接口模块。
2.根据权利要求1中所述的USB3.1降速桥的数据传输系统,其特征在于,所述数据存储模块具有慢时钟域以及快时钟域共享的一接收RAM以及一发送RAM;其中,所述接收RAM以及发送RAM具有相同数量的储存区域;所述接收RAM,用于储存由所述数据存储模块接收的数据包;所述发送RAM,用于储存由所述数据存储模块发送的数据包。
3.根据权利要求2中所述的USB3.1降速桥的数据传输系统,其特征在于,所述USB3控制器为主机设备或从机设备;其中,当所述USB3控制器为主机设备,所述USB3.1降速桥为主机模式;当所述USB3控制器为从机设备,所述USB3.1降速桥为从机模式。
4.根据权利要求3中所述的USB3.1降速桥的数据传输系统,其特征在于,所述数据存储模块采用RAM控制逻辑执行接收RAM以及发送RAM的读写操作;
其中,所述RAM控制逻辑包括:
在主机模式下,基于每接收到的数据包的地址和端点动态分配接收RAM空间以及发送RAM空间进行储存,并在传输完毕后释放空间;
在从机模式下,为数据包的每个端点分别固定分配一接收RAM空间以及一发送RAM空间进行储存。
5.根据权利要求4中所述的USB3.1降速桥的数据传输系统,其特征在于,基于每接收到的数据包的地址和端点动态分配接收RAM空间以及发送RAM空间包括:
每当接收到一个地址和端点均不同的数据包时,分配一接收RAM空间以及一发送RAM空间,并在传输完毕后释放空间。
6.根据权利要求2中所述的USB3.1降速桥的数据传输系统,其特征在于,接收RAM以及发送RAM的每个区域包括:TP储存区域、DPH储存区域以及DPP储存区域。
7.根据权利要求4中所述的USB3.1降速桥的数据传输系统,其特征在于,所述数据存储模块还采用带宽处理逻辑、假包生成逻辑以及令牌处理逻辑;
其中,所述带宽处理逻辑,用于生成ITP包、计算带宽以及转发数据包操作中的一种或多种;
所述假包生成逻辑,用于生成需要在特定时间内做协议握手的数据包;
所述令牌处理逻辑,用于处理USB3协议内关于链路层令牌相关的握手,并根据速率和数据包的类型来释放USB3接口模块内的缓存。
8.根据权利要求1中所述的USB3.1降速桥的数据传输系统,其特征在于,所述USB子卡包括:USB3 Re-driver芯片、cc芯片以及USB3连接器;其中,所述cc芯片连接于所述USB3Re-driver芯片以及USB3连接器之间。
9.根据权利要求1中所述的USB3.1降速桥的数据传输系统,其特征在于,所述USB3接口模块包括:USB3协议中规定的协议层、链路层和物理层,用于将接收的数据包进行处理获得对应的协议包。
10.一种USB3.1降速桥,其特征在于,包括:USB3接口模块、数据接收模块、数据发送模块以及数据存储模块;
其中,所述USB3接口模块以及数据存储模块分别与数据接收模块以及数据发送模块连接;
所述USB3接口模块,用于在慢时钟域将接收的来自USB3控制器的数据包进行处理以及在快时钟域将来自数据发送模块的数据包进行处理后通过USB子卡传输至USB设备;在快时钟域将接收的由USB子卡传输的来自USB设备的数据包进行处理以及在慢时钟域将来自数据发送模块的数据包进行处理后传输至USB3控制器;
所述数据接收模块,用于在慢时钟域和/或快时钟域根据所述USB3接口模块的接口时序从所述USB3接口模块接收数据包,并发送至数据存储模块;
所述数据存储模块,用于储存来自所述数据接收模块的数据包,并向所述数据发送模块发送数据包;
所述数据发送模块,用于在慢时钟域和/或快时钟域接收由数据存储模块储存的数据包,并根据USB3接口模块的接口时序将数据包发送至所述USB3接口模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311260764.XA CN117370246A (zh) | 2023-09-26 | 2023-09-26 | Usb3.1降速桥的数据传输系统以及usb3.1降速桥 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311260764.XA CN117370246A (zh) | 2023-09-26 | 2023-09-26 | Usb3.1降速桥的数据传输系统以及usb3.1降速桥 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117370246A true CN117370246A (zh) | 2024-01-09 |
Family
ID=89403187
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311260764.XA Pending CN117370246A (zh) | 2023-09-26 | 2023-09-26 | Usb3.1降速桥的数据传输系统以及usb3.1降速桥 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117370246A (zh) |
-
2023
- 2023-09-26 CN CN202311260764.XA patent/CN117370246A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6925512B2 (en) | Communication between two embedded processors | |
EP0459753A2 (en) | Network access controller having logical FIFO buffer | |
US7577773B1 (en) | Method and system for DMA optimization | |
EP1830279B1 (en) | Network interface controlling lock operation and method of operating the network | |
JP5036120B2 (ja) | 非ブロック化共有インターフェイスを持つ通信システム及び方法 | |
JP5231400B2 (ja) | マルチプロセッサ・ゲートウェイ | |
EP1116122B1 (en) | Method and apparatus for transmitting and receiving network protocol compliant signal packets over a platform bus | |
EP1775896A1 (en) | Network on chip system employing an Advanced Extensible Interface (AXI) protocol | |
JP2004318901A (ja) | データ処理モジュール相互間の高速制御およびデータバスシステム | |
US20050174877A1 (en) | Bus arrangement and method thereof | |
US20020174165A1 (en) | Cluster system, computer and program | |
EP3575972B1 (en) | Inter-processor communication method for access latency between system-in-package (sip) dies | |
US6327637B1 (en) | Interface tap for 1394-enabled serial bus device | |
CN111552658B (zh) | 一种通信方法、通信控制装置及i2c总线系统 | |
US6581116B1 (en) | Method and apparatus for high performance transmission of ordered packets on a bus within a data processing system | |
US20070143521A1 (en) | Burst-capable bus bridges for coupling devices to interface buses | |
US7334061B2 (en) | Burst-capable interface buses for device-to-device communications | |
JP2003198356A (ja) | 半導体チップおよび集積回路 | |
CN117370246A (zh) | Usb3.1降速桥的数据传输系统以及usb3.1降速桥 | |
CN116401065A (zh) | 一种服务器、异构设备及其数据处理装置 | |
JP4104939B2 (ja) | マルチプロセッサシステム | |
CN108183705B (zh) | 一种服务器系统单向总线传输方法 | |
CN111190840A (zh) | 基于现场可编程门阵列控制的多方中央处理器通信架构 | |
US11636061B2 (en) | On-demand packetization for a chip-to-chip interface | |
KR20050080704A (ko) | 프로세서간 데이터 전송 장치 및 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |