通过以太网延长usb系统传输距离的方法及装置的制作方法

文档序号:7555054阅读:316来源:国知局
专利名称:通过以太网延长usb系统传输距离的方法及装置的制作方法
技术领域
本发明涉及一种通过以太网延长USB系统传输距离的方法及装置,属于信息科学技术领域。
背景技术
:
目前USB技术的优越性越来越明显,支持USB技术的设备越来越多,USB设备跟USB主机之间的距离不能超过5m,即使再串联5个USB-HUB,最远距离也不能超过30m,况且这种方法布线也不方便,这给需要远距离使用的场合带来诸多不便。在USB通讯时,如果USB主机或USB设备所接收到的信息包有错误,则它们会丢弃该信息包并不作任何应答。也就是说,信息包的发送方将得不到任何响应,这时它就会认为该信息包在传输过程中发生了错误,这种错误情况称为总线超时。为了能够检测出总线超时错误,USB主机和USB设备必须知道从其发送信息包结束时算起,直至开始接收到对方应答的信息包时为止,共经过了多长时间,这段时间被称为总线转向时间。对于低/全速事务,其从USB总线上出现两个单端零信号(SEO)到空闲(J)状态的转换(EOP)时开始记时,而在其检测到USB总线从空闲状态转换到K状态(SOP)时停止记时。对于高速事务,其从USB总线返回到压制电平时(总线空闲)开始记时,而当USB总线脱离压制电平时(总线非空闲)停止记时。总线转向时间主要包括电缆线延时,USB-HUB延时和包间延时。USB电缆把数据从其一端传输至另一端所需要的时间称为电缆线延时,对于全/高速,其单向传输延时最长为26ns,对于低速,其单向传输延时最长为18ns。USB-HUB把数据从其上/下行端口传输至下/上行端口所需要的时间称为USB-HUB延时,对于全速USB-HUB,其最大延时为44ns,对于高速USB-HUB,其最大延时为4ns加36个高速位时间(I/(480Mb/s)=2.083ns)。USB是一种共享型的串行总线,它可以连接多个外设,为了保证USB主机和USB设备在发出一个信息包之后,还能有足够的时间来关闭输出缓冲区,并发送EOP信号来驱动USB总线处于空闲状态,它们必须在一个事务处理的各个信息包之间保留一定的时间间隔,该时间间隔称为包间延时。对于低/全速事务,其最小延时为2个位时间,最大延时为 7.5 个位时间(低速:1/ (1.5Mb/s)=666.67ns ;全速:1/ (12Mb/s)=83.3ns),对于高速事务,其最小延时为8个位时间,最大延时为192个位时间(I/ (480Mb/s)=2.083ns)。如果信息包发送方在最坏的情况下的总线转向时间过后仍没有接收到任何应答,则它会认为USB总线超时,且该信息包传输失败。USB规定,对于低/全速事务处理,USB主机和USB设备在判定其信息包发生超时错误之前必须至少等待16个低/全速位时间,但不能超过18个低/全速位时间;对于高速事务处理,USB主机和USB设备在判定其信息包发生超时错误之前必须至少等待736个高速位时间,但不能超过816个高速位时间。受上述总线转向时间的限制,USB系统规定,USB电缆不能超过5m,在串联最多5级USB-HUB时,最远距离也只有30m。发明内容:
本发明的目的是针对上述存在的问题提供一种通过以太网延长USB系统传输距离的方法及装置,可以延长USB系统传输距离到几十米、几百米、几千米甚至更远。上述的目的通过以下的技术方案实现:
通过以太网延长USB系统传输距离的装置,包括与USB主机连接的UP端和与USB设备连接的DOWN端,所述的UP端和所述的DOWN端通过以太网传输介质连接在一起。所述的通过以太网延长USB系统传输距离的装置,所述的UP端和所述的DOWN端分别包括USB模块、网络模块、仲裁器以及RAM组成,所述的USB模块和所述的网络模块共享内部总线,通过仲裁器连接随机存储器。所述的仲裁器以及RAM也可以使用双口 RAM替代,如果使用双口 RAM替代,所述的USB模块和所述的网络模块分别连接到双口 RAM。所述的通过以太网延长USB系统传输距离的装置,所述的以太网传输介质,可以是以太网常用的网线、光纤。所述的通过以太网延长USB系统传输距离的装置,所述的USB模块,包括USB复合设备,可以同时解析多个设备地址;分析并记录USB事务、USB命令、USB设备的连接状态、USB设备的拓扑结构;执行USB事务、USB命令、USB帧管理、USB事务调度。所述的通过以太网延长USB系统传输距离的装置,所述的网络模块,把需要处理的USB事务或者USB事务的处理结果或者USB命令打包,通过以太网发送出去;从接收到的以太网数据还原出需要处理USB事务或者USB事务的处理结果或者USB命令。一种通过以太网延长USB系统传输距离的方法,该方法是:在USB主机上连接所述的UP端,在USB设备上连接所述的DOWN端,UP端和DOWN端采用以太网技术实现互联互通,由DOWN端检测USB设备的连接状态,采用设备映射机制,把DOWN端的USB设备映射到离USB主机近的UP端,UP端虚拟映射的USB设备,由UP端虚拟映射的USB设备负责和USB主机的通讯,由DOWN端负责和USB设备的通讯。所述的一种通过以太网延长USB系统传输距离的方法,所述的设备映射机制,是:由DOWN端检测USB设备的连接状态,通过以太网发送到UP端,UP端模拟USB设备,如果DOWN端连接的是USB-HUB,分析USB-HUB的拓扑结构,记下所有连接的USB设备的连接关系图,记录每个节点的USB设备地址。所述的一种通过以太网延长USB系统传输距离的方法,所述的UP端和DOWN端采用以太网技术实现互联互通,是:在USB通讯时,UP端记下USB系统的所有操作,转换成以太网数据进行远距离传输,DOWN端根据以太网传过来的数据,还原USB主机的所有操作,操作结果再由DOWN端转换成以太网数据发送到UP端,UP端根据操作结果在USB系统中作出相应的响应。有益效果:
本发明使用UP端连接USB主机,DOWN端连接USB设备,通过以太网实现互联互通,这样USB系统的传输距离就取决于以太网的传输距离,而以太网的传输距离依据不同的传输介质可以实现几十米、几百米、几千米甚至更远。还可以通过交换机、路由器等现有以太网设备进行扩展。


:
图1是本发明的模块之间的连接关系示意图。图2是本发明的另一种实施方案的模块示意图。图3是本发明的网络模块内部结构关系示意图。
图4是本发明的USB模块内部结构关系示意图。图5是本发明的USB设备拓扑结构示意图。图6是本发明的USB复合设备的逻辑设备示意图。图中,1、UP端,2,DOWN端,3、传输介质,4、USB模块,5、网络模块,6、仲裁器,7、双口RAM, 10、网络收发器,11、网络PHY接口,12、网络帧接收模块,13、网络帧发送模块,14、接收DMA, 15、发送DMA, 16、接收FIFO, 17、发送FIFO, 18、控制逻辑模块,20、USB收发器,21、USBPHY接口,22、USB引擎,23、USB FIFO, 24、主机状态控制模块,25、DMA控制模块,26、复合设备状态控制模块。
具体实施方式
:
为了详细阐述本发明的技术内容,特举以下实施例。特别地,本实施例的电路结构仅是基于本发明思想的一种实现形式,事实上任意一种电路结构只要能够符合本发明的方法,一样可以实现本发明。图1中的USB主机可以是PC机或其他带USB HOST的主机,USB设备部分可以通过USB-HUB来连接多个USB设备,可以是U盘、USB摄相头、USB键盘、USB鼠标、USB打印机
坐寸ο图1中的UP端和DOWN端可以采用自适应机制,实现连接方式的自动判别,从而实现UP和DOWN的不同功能。图1中的传输介质可以是以太网常用的网线、光纤等。图1中的UP/D0WN端由USB模块、网络模块、仲裁器以及RAM组成。图2中的UP/DOWN端由USB模块、网络模块以及双口 RAM组成。图1中的USB模块和网络模块共享内部总线,通过仲裁机制和DMA方式访问RAM数据。图1、2中的网络模块,把需要处理的USB事务或者USB事务的处理结果或者USB命令打包,通过以太网发送出去;从接收到的以太网数据还原出需要处理USB事务或者USB事务的处理结果或者USB命令。图3是图1、2中网络模块的一种内部结构关系示意图,包括但不限于图3,由网络收发器、网络PHY接口、网络帧接收模块、网络帧发送模块、接收DMA、发送DMA、接收FIFO、发送FIFO、控制逻辑模块组成。图3中的网络收发器可以采用Mil/GMII/RGMII等接口,可以使用外部的网络PHY芯片(如RTL8211E,IP1001),也可以集成在芯片内部。图3中的网络收发器负责将MII/GMII/RGMII等接口发送过来的打包好的以太网帧并行数据转换成串行数据,然后转换成电信号传输到介质上,传输介质上的电信号经网络收发器转换成串行数据,再由串行数据转成并行数据到MII/GMII/RGMII等接口。图3中的网络帧发送模块负责发送以太网帧,数据帧经发送FIFO缓冲、网络帧发送打包,添加包头、包尾、CRC校验码等。网络帧接收模块负责接收以太网帧,去掉包头、包尾、CRC校验码等,并校验数据帧的正确性,把正确接收到的数据帧保存到接收FIF0,通过接收DMA写入RAM。图3中的控制逻辑模块,负责查询buffer描述符,把需要处理的buffer描述符打包,通过以太网帧发送模块发送出去,对于接收到的数据帧去掉附加协议,保存相应端点的数据,更新buffer描述符。同时把USB模块传过来的复位、挂起等命令,封包成USB命令帧,传送出去,从收到的USB命令帧解析出USB复位、挂起等命令,控制USB模块执行相应总线操作。图1、2中的USB模块,包括USB复合设备,可以同时解析多个设备地址;分析并记录USB事务、USB命令、USB设备的连接状态、USB设备的拓扑结构;执行USB事务、USB命令、USB帧管理、USB事务调度。图4是图1、2中USB模块的一种内部结构关系示意图,包括但不限于图4,由USB收发器、USB PHY接口、USB引擎、USB FIFO、主机状态控制模块、DMA控制模块、复合设备状态控制模块组成。图4中的USB收发器可以采用ULPI/UTMI/PIPE等接口,可以使用外置的USB PHY(如ISP1507,USB3500, TUSB1310),也可以集成在芯片内部。图4中的USB引擎负责USB事务处理。USB事务处理是USB主机和USB设备之间数据传输的基本单位,由一系列具有特定格式的信息包组成,如SETUP包、ACK包等。它由三个阶段组成:令牌阶段、数据阶段和握手阶段,其中数据阶段和握手阶段是可选的。USB引擎根据不同的事务种类、不同的端点类型来组建USB事务各阶段的信息包,负责USB各信息包之间的状态流程控制,总线转向时间的检测,设备地址端点解析,大尺寸端点的分包事务管理,包间延时控制以及各种错误状态处理。图4中的主机状态控制模块负责主机事务的调度,USB帧号管理,通过DMA读取端点的buffer描述符,分析buffer描述符,端点大小,读写操作,缓冲区地址等,决定是否和USB设备的某个端点之间进行一个事务处理,并向USB引擎发出控制命令,控制USB引擎执行USB事务,把结果通过DMA再写回端点的buffer描述符,负责执行USB复位、挂起等控制命令。图4中的复合设备状态控制模块,所谓复合设备,是指多个USB设备组合在一起,如图6所示。USB引擎从总线上接收到信息包后对它们进行解码,解析出需要通讯的设备地址和端点号,根据USB引擎解析出的设备地址和端点,查询端点地址映射表,确定端点buffer描述符的RAM地址,通过DMA读取端点的buf f er描述符,分析buf f er描述符,确定端点特性,是否需要进行事务处理等,如果需要进行事务处理,根据不同的事务类型控制USB引擎执行USB事务,如果是SETUP事务,获取端点描述符的,还需要分析事务的数据阶段,记录端点大小、类型,分配合适的buffer缓冲区,建立端点映射关系,生成buffer描述符。如果是USB-HUB命令,要根据USB-HUB报告的端口状态以及主机发的复位、设置地址等事务,建立USB设备的拓扑结构,如图5所示,记录每个节点的USB设备地址,在该节点USB设备断开的时候要断开该节点的USB设备以及所有连接在该节点后面的USB设备。本发明工作时,先由DOWN端检测USB设备的连接/断开,如果是检测到USB设备连接后,由DOWN端对USB设备进行复位,来确定USB设备的最高工作速度,然后把连接状态和最高工作速度经过以太网传输到UP端,UP端根据DOWN端传过来的USB设备的连接/断开状态,改变与USB主机相连的USB端口相关信号线,使USB主机能够检测到USB设备的连接和断开。USB主机在检测到USB设备连接后,会对USB设备进行复位,来确定USB设备的速度状态(如全速、低速、高速),UP端根据复位的过程确定USB主机所能支持的设备的速度(如,全速主机、高速主机),然后给DOWN端发送复位命令并指明主机支持的速度状态,收到复位命令后,DOWN端会对USB设备再次进行复位,以使USB设备工作在与USB主机匹配的速度下。在USB系统正常工作时,USB主机会对USB设备进行枚举,设置地址、配置、接口等,所有这些操作会用到复合设备状态控制模块,分析设备的各种描述符,为每个端点分配一定数量的缓冲,建立端点映射关系,确保每个操作的正确性。如果DOWN端连接的是USB-HUB,这时候还需要对USB-HUB的拓扑结构进行分析,分析USB-HUB的操作,记下所有连接的USB设备的连接关系图,记录每个节点的USB设备地址,在该节点USB设备断开的时候要断开该节点的USB设备以及所有连接在该节点后面的USB设备。该状态控制机制支持多个USB逻辑设备,所有这些USB逻辑设备都是虚拟的,与DOWN端所连接的USB物理设备有
对应关系,负责USB系统中USB设备功能的实现。在USB通讯过程中,UP端会记下USB系统的所有操作,通过网络模块转换成以太网数据进行远距离传输。DOWN端根据网络模块传过来的数据控制USB模块,还原USB主机的所有操作。操作结果再由DOWN端的网络模块打包发送到UP端,UP端会根据操作结果在USB系统中作出相应的响应。本发明方案所公开的技术手段不仅限于上述技术手段所公开的技术手段,还包括由以上技术特征任意组合或者等同替换所组成的技术方案。本发明的未尽事宜,属于本领域技术人员的公知常识。
权利要求
1.一种通过以太网延长USB系统传输距离的装置,其特征是:包括与USB主机连接的UP端和与USB设备连接的DOWN端,所述的UP端和所述的DOWN端通过以太网传输介质连接在一起。
2.根据权利要求1所述的通过以太网延长USB系统传输距离的装置,其特征是:所述的以太网传输介质,采用以太网常用的网线或者光纤。
3.根据权利要求1所述的通过以太网延长USB系统传输距离的装置,其特征是:所述的UP端和所述的DOWN端分别包括USB模块、网络模块、仲裁器以及RAM组成,所述的USB模块和所述的网络模块共享内部总线,通过仲裁器连接随机存储器。
4.根据权利要求1所述的通过以太网延长USB系统传输距离的装置,其特征是:所述的UP端和所述的DOWN端分别包括USB模块、网络模块以、双口 RAM,所述的USB模块和所述的网络模块分别连接到双口 RAM。
5.根据权利要求3或4所述的通过以太网延长USB系统传输距离的装置,其特征是:所述的USB模块包括USB复合设备,可以同时解析多个设备地址;分析并记录USB事务、USB命令、USB设备的连接状态、USB设备的拓扑结构;执行USB事务、USB命令、USB帧管理、USB事务调度。
6.根据权利要求3或4所述的通过以太网延长USB系统传输距离的装置,其特征是:所述的网络模块,把需要处理的USB事务或者USB事务的处理结果或者USB命令打包,通过以太网发送出去;从接收到的以太网数据还原出需要处理USB事务或者USB事务的处理结果或者USB命令。
7.一种通过以太网延长USB系统传输距离的方法,其特征是:该方法为:在USB主机上连接所述的UP端,在USB设备上连接所述的DOWN端,UP端和DOWN端采用以太网技术实现互联互通,由DOWN端检测USB设备的连接状态,采用设备映射机制,把DOWN端的USB设备映射到离USB主机近的UP端,UP端虚拟映射的USB设备,由UP端虚拟映射的USB设备负责和USB主机的通讯,由DOWN端负责和USB设备的通讯。
8.根据权利要求7所述的通过以太网延长USB系统传输距离的方法,其特征是:所述的设备映射机制,是指由DOWN端检测USB设备的连接状态,通过以太网发送到UP端,UP端模拟USB设备,如果DOWN端连接的是USB-HUB,分析USB-HUB的拓扑结构,记下所有连接的USB设备的连接关系图,记录每个节点的USB设备地址。
9.根据权利要求7所述的通过以太网延长USB系统传输距离的方法,其特征是:所述的UP端和DOWN端采用以太网技术实现互联互通,是指在USB通讯时,UP端记下USB系统的所有操作,转换成以太网数据进行远距离传输,DOWN端根据以太网传过来的数据,还原USB主机的所有操作,操作结果再由DOWN端转换成以太网数据发送到UP端,UP端根据操作结果在USB系统中作出相应的响应。
全文摘要
本发明提供一种通过以太网延长USB系统传输距离的方法及装置。针对目前USB系统中,USB电缆不能超过5m,在串联最多5级USB-HUB时,最远距离也只有30m的问题。本发明的通过以太网延长USB系统传输距离的装置,包括与USB主机连接的UP端和与USB设备连接的DOWN端,所述的UP端和所述的DOWN端通过以太网技术实现互联互通。本发明可以延长USB系统传输距离到几十米、几百米、几千米甚至更远。
文档编号H04B3/02GK103178872SQ201310124730
公开日2013年6月26日 申请日期2013年4月11日 优先权日2013年4月11日
发明者王朝阳 申请人:江苏沁恒股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1