CN114338707A - 一种usb信号透传多设备的数据管理方法和相关装置 - Google Patents
一种usb信号透传多设备的数据管理方法和相关装置 Download PDFInfo
- Publication number
- CN114338707A CN114338707A CN202111469390.3A CN202111469390A CN114338707A CN 114338707 A CN114338707 A CN 114338707A CN 202111469390 A CN202111469390 A CN 202111469390A CN 114338707 A CN114338707 A CN 114338707A
- Authority
- CN
- China
- Prior art keywords
- local
- transaction packet
- host
- packet
- address parameter
- 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.)
- Granted
Links
Images
Classifications
-
- 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
- Information Transfer Systems (AREA)
Abstract
本申请公开了一种USB信号透传多设备的数据管理方法和相关装置,方法包括:S1、获取本地主机通过USB信号发送的IN事务包;S2、判断IN事务包的传输方式是否为同步传输,若是执行S3,否则执行S4;S3、将IN事务包发送至远端主机并记录远端主机转发IN事务包时的第一地址参数,当再次接收到发送至第一地址参数的IN事务包时,将远端主机返回的应答数据发送至本地主机;S4、将IN事务包转发至远端主机且记录远端主机转发IN事务包的第一地址参数,当再接收到本地主机发送至第一地址参数的IN事务包时,基于本地寄存器进行应答。解决了现有远端主机和远端设备之间进行IN事务包的传输时,容易出现传输错误的技术问题。
Description
技术领域
本申请涉及USB技术领域,尤其涉及一种USB信号透传多设备的数据管理方法和相关装置。
背景技术
随着科技技术的进步,USB技术趋于成熟,同时USB信号也在众多领域得到了广泛应用。
现有USB信号在超长距离透传时,如图1所示,远端主机需要支持多个远端设备。但是现有远端主机在传输远端设备和本地主机之间的IN事务包时,容易出现传输错误。
发明内容
有鉴于此,本申请提供了一种USB信号透传多设备的数据管理方法和相关装置,解决了现有远端主机和远端设备之间进行IN事务包的传输时,容易出现传输错误的技术问题。
本申请第一方面提供了一种USB信号透传多设备的数据管理方法,包括:
步骤S1、获取本地主机通过USB信号发送的IN事务包;
步骤S2、判断所述IN事务包的传输方式是否为同步传输,若是,则执行步骤S3,若否,则执行步骤S4;
步骤S3、将所述IN事务包发送至远端主机,并记录所述远端主机转发所述IN事务包时的第一地址参数,当再次接收到所述本地主机发送至所述第一地址参数的IN事务包时,将所述远端主机返回的应答数据发送至所述本地主机;
步骤S4、将所述IN事务包缓存至本地设备中的本地寄存器,并将所述IN事务包转发至远端主机,且记录所述远端主机转发所述IN事务包时的第一地址参数,当再次接收到所述本地主机发送至所述第一地址参数的IN事务包时,判断所述本地寄存器是否为空,若是,则回复否定应答至所述本地主机,若否,则发送所述本地寄存器中的缓存数据至所述本地主机。
优选地,所述步骤S3具体包括:
将所述IN事务包及其对应的第一地址参数包发送至远端主机;
记录所述第一地址参数,并获取远端设备通过所述远端主机返回的应答数据;
当再次接收到所述本地主机发送至所述第一地址参数的IN事务包时,将所述远端主机返回的应答数据发送至所述本地主机。
优选地,所述步骤S4具体包括:
将所述IN事务包缓存至所述本地设备的本地寄存器;
将所述IN事务包及其对应的第一地址参数包发送至远端主机;
记录所述第一地址参数,并回复否定应答至所述本地主机;
获取所述本地主机发送的第一数据包;
当判断到所述第一数据包为IN事务包时,判断所述第一数据包对应的第二地址参数和所述第一地址参数一致,若否,则回复否定应答至所述本地主机,若是,判断所述本地寄存器是否为空,若是,则回复否定应答至所述本地主机,若否,则发送所述本地寄存器中的缓存数据至所述本地主机。
优选地,所述步骤S4还包括:
当判断到所述第一数据包为SETUP事务包时,转发所述第一数据包至所述远端主机。
优选地,当判断到所述第一数据包为OUT事务包时,产生OUT事务标志,并回复否定应答至所述本地主机。
优选地,还包括:
步骤S5、获取本地主机通过USB信号发送的OUT事务包;
步骤S6、判断所述OUT事务包的传输方式是否为同步传输,若是,则执行步骤S7,若否,则执行步骤S8;
步骤S7、将所述OUT事务包缓存至本地设备的本地寄存器,并将所述OUT事务包发送至远端主机;
步骤S8、将所述OUT事务包缓存至本地设备的本地寄存器,并将所述OUT事务包转发至远端主机,且记录所述远端主机转发所述OUT事务包时的第三地址参数,当再次接收到所述本地主机发送至所述第三地址参数的OUT事务包时,判断所述本地寄存器是否为空,若是,则回复否定应答至所述本地主机,若否,则发送所述本地寄存器中的缓存数据至所述本地主机。
优选地,所述步骤S8具体包括:
将所述OUT事务包缓存至所述本地设备的本地寄存器;
将所述OUT事务包及其对应的第三地址参数发送至远端主机;
记录所述第三地址参数,并回复否定应答至所述本地主机;
获取所述本地主机发送的第二数据包;
当判断到所述第二数据包为OUT事务包时,判断所述第二数据包对应的第四地址参数和所述第三地址参数一致,若否,则回复否定应答至所述本地主机,若是,判断所述本地寄存器是否为空,若是,则回复否定应答至所述本地主机,若否,则发送所述本地寄存器中的缓存数据至所述本地主机。
本申请第二方面提供了一种USB信号透传多设备的数据管理装置,所述装置包括:
第一获取单元,用于获取本地主机通过USB信号发送的IN事务包;
第一判断单元,用于判断所述IN事务包的传输方式是否为同步传输,若是,则触发第一处理单元,若否,则触发第二处理单元;
所述第一处理单元,用于将所述IN事务包发送至远端主机,并记录所述远端主机转发所述IN事务包时的第一地址参数,当再次接收到所述本地主机发送至所述第一地址参数的IN事务包时,将所述远端主机返回的应答数据发送至所述本地主机;
所述第二处理单元,用于将所述IN事务包缓存至本地设备中的本地寄存器,并将所述IN事务包转发至远端主机,且记录所述远端主机转发所述IN事务包时的第一地址参数,当再次接收到所述本地主机发送至所述第一地址参数的IN事务包时,判断所述本地寄存器是否为空,若是,则回复否定应答至所述本地主机,若否,则发送所述本地寄存器中的缓存数据至所述本地主机。
本申请第三方面提供一种USB信号透传多设备的数据管理设备,所述USB信号透传多设备的数据管理设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行任一种第一方面所述的USB信号透传多设备的数据管理方法。
本申请第四方面提供一种存储介质,所述存储介质用于存储程序代码,所述程序代码用于执行任一种第一方面所述的USB信号透传多设备的数据管理方法。
从以上技术方案可以看出,本申请具有以下优点:
本申请提供了一种USB信号透传多设备的数据管理方法,包括:步骤S1、获取本地主机通过USB信号发送的IN事务包;步骤S2、判断IN事务包的传输方式是否为同步传输,若是,则执行步骤S3,若否,则执行步骤S4;步骤S3、将IN事务包发送至远端主机,并记录远端主机转发IN事务包时的第一地址参数,当再次接收到本地主机发送至第一地址参数的IN事务包时,将远端主机返回的应答数据发送至本地主机;步骤S4、将IN事务包缓存至本地设备中的本地寄存器,并将IN事务包转发至远端主机,且记录远端主机转发IN事务包时的第一地址参数,当再次接收到本地主机发送至第一地址参数的IN事务包时,判断本地寄存器是否为空,若是,则回复否定应答至本地主机,若否,则发送本地寄存器中的缓存数据至本地主机。本申请中,通过地址对比的方式,实现远端设备和本地之间的IN事务包的正确通信,从而解决了现有远端主机和远端设备之间进行IN事务包的传输时,容易出现传输错误的技术问题。
附图说明
图1为现有远端设备和本地主机之间的通信连接图;
图2为本实施例中远端设备和本地主机之间的通信连接图;
图3为本申请实施例中一种USB信号透传多设备的数据管理方法的第一实施例的流程示意图;
图4为本申请实施例中一种USB信号透传多设备的数据管理方法的第二实施例的流程示意图;
图5为本申请实施例中远端设备和本地主机之间IN事务包的传输示意图;
图6为本申请实施例中远端设备和本地主机之间OUT事务包的传输示意图;
图7为本申请实施例中一种USB信号透传多设备的数据管理装置的实施例的结构示意图。
具体实施方式
本申请实施例提供了一种USB信号透传多设备的数据管理方法和相关装置,解决了现有远端主机和远端设备之间进行IN事务包的传输时,容易出现传输错误的技术问题。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例中一种USB信号透传多设备的数据管理方法应用于一种USB信号透传多设备的数据管理装置,当在远端设备和本地主机之间添加上述的数据管理装置时,远端设备和本地主机之间的通信连接图如图2所示。图2中,本地主机连接数据管理装置,数据管理装置连接远端主机,远端主机连接远端设备。
具体地,对于上述数据管理装置对应的数据管理方法进行如下说明:
请参阅图3,图3为本申请实施例中一种USB信号透传多设备的数据管理方法的第一实施例的流程示意图。
本实施例中的一种USB信号透传多设备的数据管理方法包括:
步骤301、获取本地主机通过USB信号发送的IN事务包。
步骤302、判断IN事务包的传输方式是否为同步传输,若是,则执行步骤303,若否,则执行步骤304。
步骤303、将IN事务包发送至远端主机,并记录远端主机转发IN事务包时的第一地址参数,当再次接收到本地主机发送至第一地址参数的IN事务包时,将远端主机返回的应答数据发送至本地主机。
可以理解的是,本实施例中的地址参数包括:远端设备地址和远端设备端口。一个远端设备对应一个远端设备地址和多个远端设备端口,本地主机和远端设备和该远端设备通过上述的远端设备地址和远端设备端口进行数据的传输。
步骤304、将IN事务包缓存至本地设备中的本地寄存器,并将IN事务包转发至远端主机,且记录远端主机转发IN事务包时的第一地址参数,当再次接收到本地主机发送至第一地址参数的IN事务包时,判断本地寄存器是否为空,若是,则回复否定应答至本地主机,若否,则发送本地寄存器中的缓存数据至本地主机。
本实施例中,通过地址对比的方式,实现远端设备和本地之间的IN事务包的正确通信,从而解决了现有远端主机和远端设备之间进行IN事务包的传输时,容易出现传输错误的技术问题。
以上为本申请实施例提供的一种USB信号透传多设备的数据管理方法的第一实施例,以下为本申请实施例提供的一种USB信号透传多设备的数据管理方法的第二实施例。
请参阅图4,本申请实施例中一种USB信号透传多设备的数据管理方法的实施例的流程示意图。
本实施例中的一种USB信号透传多设备的数据管理方法包括:
步骤401、获取本地主机通过USB信号发送的IN事务包。
步骤402、判断IN事务包的传输方式是否为同步传输,若是,则执行步骤403,若否,则执行步骤404。
步骤403、将IN事务包发送至远端主机,并记录远端主机转发IN事务包时的第一地址参数,当再次接收到本地主机发送至第一地址参数的IN事务包时,将远端主机返回的应答数据发送至本地主机。
需要说明的是,步骤403具体包括:
将IN事务包及其对应的第一地址参数包发送至远端主机;
记录第一地址参数,并获取远端设备通过远端主机返回的应答数据;
当再次接收到本地主机发送至第一地址参数的IN事务包时,将远端主机返回的应答数据发送至本地主机。
步骤404、将IN事务包缓存至本地设备中的本地寄存器,并将IN事务包转发至远端主机,且记录远端主机转发IN事务包时的第一地址参数,当再次接收到本地主机发送至第一地址参数的IN事务包时,判断本地寄存器是否为空,若是,则回复否定应答至本地主机,若否,则发送本地寄存器中的缓存数据至本地主机。
具体地,本实施例中的步骤404具体包括:
将IN事务包缓存至本地设备的本地寄存器;
将IN事务包及其对应的第一地址参数包发送至远端主机;
记录第一地址参数,并回复否定应答至本地主机;
获取本地主机发送的第一数据包;
当判断到第一数据包为IN事务包时,判断第一数据包对应的第二地址参数和第一地址参数一致,若否,则回复否定应答至本地主机,若是,判断本地寄存器是否为空,若是,则回复否定应答至本地主机,若否,则发送本地寄存器中的缓存数据至本地主机。
进一步地,上述的步骤404还包括:
当判断到第一数据包为SETUP事务包时,转发第一数据包至远端主机。
进一步地,上述的步骤404还包括:
当判断到第一数据包为OUT事务包时,产生OUT事务标志,并回复否定应答至本地主机。
步骤405、获取本地主机通过USB信号发送的OUT事务包。
步骤406、判断OUT事务包的传输方式是否为同步传输,若是,则执行步骤407,若否,则执行步骤408。
步骤407、将OUT事务包缓存至本地设备的本地寄存器,并将OUT事务包发送至远端主机。
步骤408、将OUT事务包缓存至本地设备的本地寄存器,并将OUT事务包转发至远端主机,且记录远端主机转发OUT事务包时的第三地址参数,当再次接收到本地主机发送至第三地址参数的OUT事务包时,判断本地寄存器是否为空,若是,则回复否定应答至本地主机,若否,则发送本地寄存器中的缓存数据至本地主机。
具体地,步骤408具体包括:
将OUT事务包缓存至本地设备的本地寄存器;
将OUT事务包及其对应的第三地址参数发送至远端主机;
记录第三地址参数,并回复否定应答至本地主机;
获取本地主机发送的第二数据包;
当判断到第二数据包为OUT事务包时,判断第二数据包对应的第四地址参数和第三地址参数一致,若否,则回复否定应答至本地主机,若是,判断本地寄存器是否为空,若是,则回复否定应答至本地主机,若否,则发送本地寄存器中的缓存数据至本地主机。
从上述描述可知,本实施例中不仅对于IN事务包进行了正确的传输,还通过地址对比的方式,实现远端设备和本地之间OUT事务包的正确通信,从而解决了现有远端主机和远端设备之间进行OUT事务包的传输时,容易出现传输错误的技术问题。
请参阅图5,本实施例中将多远端设备和本地主机之间IN事务包说明如下:
本地主机发送IN事务包:
(1)同步传输。管理装置接收IN事务包之后,缓存IN事务包,转发IN事务包至远端主机,不回复任何数据给本地主机,等待远端设备返回数据,记录地址和端点,再次接收到本地主机的相同地址和端点IN包之后,回复远端设备通过远端主机返回的数据给本地主机,如果远端设备没有返回任何信息,则不回复。
(2)非同步传输、管理装置端接收本地主机端下发的IN事务包后,缓存进本地RX_FIFO(本地寄存器)中,转发给远端,记录转发IN事务包的地址和端点,并回复NAK(否定应答)给本地主机,当在等待远端回复时,再次接收到本地主机下发的数据包时,判断是IN事务包还是其他事务包,如果是SETUP事务包,则优先转发,如果是OUT事务包,产生OUT事务包标志,回复NAK,不转发,如果是IN事务包,判断地址和端点是否和正在等待远端回复的IN事务包地址和端点是否一致,如果不一致,回复NAK;如果一致,不转发,判断本地TX_FIFO是否非空,如为空,IN事务包不写入本地RX_FIFO,回复NAK给本地主机,如果非空,IN事务包不写入本地RX_FIFO,回复本地TX_FIFO缓存的数据给本地主机。完成这一IN事务包后,根据等待期间的状态,如果有OUT事务包标志产生,则跳转到OUT事务包处理流程,等待OUT事务包的转发,如果没有OUT事务包标志,则等待其他不同地址或者端点的IN事务包转发,保证不同地址、端点、事务包能够等概率转发。
请参阅图6,本实施例中将多远端设备和本地主机之间OUT事务包说明如下:
本地主机发送OUT事务包:
(1)同步传输,管理装置接收OUT事务包后缓存到本地RX_FIFO,然后转发至远端主机,不回复任何数据给本地主机。
(2)非同步传输,管理装置接收OUT事务包后,缓存到本地RX_FIFO,然后转发远端,记录转发OUT事务包的地址和端点,并回复NAK给本地主机,在等待远端回复过程中,再次接收到本地主机下发的数据包时,判断时OUT事务包还是其他事务包,如果是SETUP事务包,则优先转发,如果是IN事务包,产生IN事务包标志,回复NAK,不转发,如果是OUT事务包,判断地址和端点是否和正在等待远端回复的OUT事务包的地址和端点是否一致,如果不一致,回复NAK,不转发,如果一致,判断本地TX_FIFO是否非空,如为空,OUT事务包不写入本地RX_FIFO,并在接收DATA包后回复NAK给本地主机,如果非空,OUT事务包不写入本地RX_FIFO,并在接收DATA包回复本地TX_FIFO缓存的数据给本地主机。管理装置端和远端主机完成这一OUT包事务包后,根据等待期间的状态,如果有IN事务包标志产生,则跳转到IN事务包处理流程,等待IN事务包的转发,如果没有IN事务包标志,则等待其他不同地址或者端点的OUT事务包转发,保证不同地址、端点、事务包能够等概率转发。
本实施例中,通过地址对比的方式,实现远端设备和本地之间的IN事务包和OUT事务包的正确通信,从而解决了现有远端主机和远端设备之间进行IN事务包和OUT事务包的传输时,容易出现传输错误的技术问题。
以上为本申请实施例提供的一种USB信号透传多设备的数据管理方法的第二实施例,以下为本申请实施例提供的一种USB信号透传多设备的数据管理装置的实施例。
请参阅图7,本申请实施例中一种USB信号透传多设备的数据管理装置的实施例的结构示意图,包括:
第一获取单元,用于获取本地主机通过USB信号发送的IN事务包;
第一判断单元,用于判断IN事务包的传输方式是否为同步传输,若是,则触发第一处理单元,若否,则触发第二处理单元;
第一处理单元,用于将IN事务包发送至远端主机,并记录远端主机转发IN事务包时的第一地址参数,当再次接收到本地主机发送至第一地址参数的IN事务包时,将远端主机返回的应答数据发送至本地主机;
第二处理单元,用于将IN事务包缓存至本地设备中的本地寄存器,并将IN事务包转发至远端主机,且记录远端主机转发IN事务包时的第一地址参数,当再次接收到本地主机发送至第一地址参数的IN事务包时,判断本地寄存器是否为空,若是,则回复否定应答至本地主机,若否,则发送本地寄存器中的缓存数据至本地主机。
进一步地,本实施例中的第一处理单元具体包括:
第一发送子单元,用于将IN事务包及其对应的第一地址参数包发送至远端主机;
第一记录子单元,用于记录第一地址参数,并获取远端设备通过远端主机返回的应答数据;
第二发送子单元,用于当再次接收到本地主机发送至第一地址参数的IN事务包时,将远端主机返回的应答数据发送至本地主机。
进一步地,本实施例中的第二处理单元具体包括:
第一缓存子单元,用于将IN事务包缓存至本地设备的本地寄存器;
第三发送子单元,用于将IN事务包及其对应的第一地址参数包发送至远端主机;
第二记录子单元,用于记录第一地址参数,并回复否定应答至本地主机;
第一获取子单元,用于获取本地主机发送的第一数据包;
第一判断子单元,用于当判断到第一数据包为IN事务包时,判断第一数据包对应的第二地址参数和第一地址参数一致,若否,则回复否定应答至本地主机,若是,判断本地寄存器是否为空,若是,则回复否定应答至本地主机,若否,则发送本地寄存器中的缓存数据至本地主机。
进一步地,本实施例中的第二处理单元还包括:
转发子单元,用于当判断到第一数据包为SETUP事务包时,转发第一数据包至远端主机。
进一步地,本实施例中的第二处理单元还包括:
回复子单元,用于当判断到第一数据包为OUT事务包时,产生OUT事务标志,并回复否定应答至本地主机。
进一步地,本实施例中的数据管理装置还包括:
第二获取单元,用于获取本地主机通过USB信号发送的OUT事务包;
第二判断单元,用于判断OUT事务包的传输方式是否为同步传输,若是,则触发第一发送单元,若否,则触发第二发送单元;
第一发送单元,用于将OUT事务包缓存至本地设备的本地寄存器,并将OUT事务包发送至远端主机;
第二发送单元,用于将OUT事务包缓存至本地设备的本地寄存器,并将OUT事务包转发至远端主机,且记录远端主机转发OUT事务包时的第三地址参数,当再次接收到本地主机发送至第三地址参数的OUT事务包时,判断本地寄存器是否为空,若是,则回复否定应答至本地主机,若否,则发送本地寄存器中的缓存数据至本地主机。
具体地,第二发送单元具体包括:
第二缓存子单元,用于将OUT事务包缓存至本地设备的本地寄存器;
第四发送子单元,用于将OUT事务包及其对应的第三地址参数发送至远端主机;
第三记录子单元,用于记录第三地址参数,并回复否定应答至本地主机;
第二获取子单元,用于获取本地主机发送的第二数据包;
第二判断子单元,用于当判断到第二数据包为OUT事务包时,判断第二数据包对应的第四地址参数和第三地址参数一致,若否,则回复否定应答至本地主机,若是,判断本地寄存器是否为空,若是,则回复否定应答至本地主机,若否,则发送本地寄存器中的缓存数据至本地主机。
本实施例中,通过地址对比的方式,实现远端设备和本地之间的IN事务包和OUT事务包的正确通信,从而解决了现有远端主机和远端设备之间进行IN事务包和OUT事务包的传输时,容易出现传输错误的技术问题。
本申请实施例还提供了一种USB信号透传多设备的数据管理设备,设备包括处理器以及存储器;存储器用于存储程序代码,并将程序代码传输给处理器;处理器用于根据程序代码中的指令执行实施例一或实施例二的USB信号透传多设备的数据管理方法。
本申请实施例还提供了一种存储介质,存储介质用于存储程序代码,程序代码用于执行实施例一或实施例二的USB信号透传多设备的数据管理方法。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请的说明书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
在本申请所提供的几个实施例中,应该理解到,所揭露的***,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文全称:Read-OnlyMemory,英文缩写:ROM)、随机存取存储器(英文全称:Random Access Memory,英文缩写:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (10)
1.一种USB信号透传多设备的数据管理方法,其特征在于,包括:
步骤S1、获取本地主机通过USB信号发送的IN事务包;
步骤S2、判断所述IN事务包的传输方式是否为同步传输,若是,则执行步骤S3,若否,则执行步骤S4;
步骤S3、将所述IN事务包发送至远端主机,并记录所述远端主机转发所述IN事务包时的第一地址参数,当再次接收到所述本地主机发送至所述第一地址参数的IN事务包时,将所述远端主机返回的应答数据发送至所述本地主机;
步骤S4、将所述IN事务包缓存至本地设备中的本地寄存器,并将所述IN事务包转发至远端主机,且记录所述远端主机转发所述IN事务包时的第一地址参数,当再次接收到所述本地主机发送至所述第一地址参数的IN事务包时,判断所述本地寄存器是否为空,若是,则回复否定应答至所述本地主机,若否,则发送所述本地寄存器中的缓存数据至所述本地主机。
2.根据权利要求1所述的USB信号透传多设备的数据管理方法,其特征在于,所述步骤S3具体包括:
将所述IN事务包及其对应的第一地址参数包发送至远端主机;
记录所述第一地址参数,并获取远端设备通过所述远端主机返回的应答数据;
当再次接收到所述本地主机发送至所述第一地址参数的IN事务包时,将所述远端主机返回的应答数据发送至所述本地主机。
3.根据权利要求1所述的USB信号透传多设备的数据管理方法,其特征在于,所述步骤S4具体包括:
将所述IN事务包缓存至所述本地设备的本地寄存器;
将所述IN事务包及其对应的第一地址参数包发送至远端主机;
记录所述第一地址参数,并回复否定应答至所述本地主机;
获取所述本地主机发送的第一数据包;
当判断到所述第一数据包为IN事务包时,判断所述第一数据包对应的第二地址参数和所述第一地址参数一致,若否,则回复否定应答至所述本地主机,若是,判断所述本地寄存器是否为空,若是,则回复否定应答至所述本地主机,若否,则发送所述本地寄存器中的缓存数据至所述本地主机。
4.根据权利要求3所述的USB信号透传多设备的数据管理方法,其特征在于,所述步骤S4还包括:
当判断到所述第一数据包为SETUP事务包时,转发所述第一数据包至所述远端主机。
5.根据权利要求3所述的USB信号透传多设备的数据管理方法,其特征在于,所述步骤S4还包括:
当判断到所述第一数据包为OUT事务包时,产生OUT事务标志,并回复否定应答至所述本地主机。
6.根据权利要求1所述的USB信号透传多设备的数据管理方法,其特征在于,还包括:
步骤S5、获取本地主机通过USB信号发送的OUT事务包;
步骤S6、判断所述OUT事务包的传输方式是否为同步传输,若是,则执行步骤S7,若否,则执行步骤S8;
步骤S7、将所述OUT事务包缓存至本地设备的本地寄存器,并将所述OUT事务包发送至远端主机;
步骤S8、将所述OUT事务包缓存至本地设备的本地寄存器,并将所述OUT事务包转发至远端主机,且记录所述远端主机转发所述OUT事务包时的第三地址参数,当再次接收到所述本地主机发送至所述第三地址参数的OUT事务包时,判断所述本地寄存器是否为空,若是,则回复否定应答至所述本地主机,若否,则发送所述本地寄存器中的缓存数据至所述本地主机。
7.根据权利要求6所述的USB信号透传多设备的数据管理方法,其特征在于,所述步骤S8具体包括:
将所述OUT事务包缓存至所述本地设备的本地寄存器;
将所述OUT事务包及其对应的第三地址参数发送至远端主机;
记录所述第三地址参数,并回复否定应答至所述本地主机;
获取所述本地主机发送的第二数据包;
当判断到所述第二数据包为OUT事务包时,判断所述第二数据包对应的第四地址参数和所述第三地址参数一致,若否,则回复否定应答至所述本地主机,若是,判断所述本地寄存器是否为空,若是,则回复否定应答至所述本地主机,若否,则发送所述本地寄存器中的缓存数据至所述本地主机。
8.一种USB信号透传多设备的数据管理装置,其特征在于,包括:
第一获取单元,用于获取本地主机通过USB信号发送的IN事务包;
第一判断单元,用于判断所述IN事务包的传输方式是否为同步传输,若是,则触发第一处理单元,若否,则触发第二处理单元;
所述第一处理单元,用于将所述IN事务包发送至远端主机,并记录所述远端主机转发所述IN事务包时的第一地址参数,当再次接收到所述本地主机发送至所述第一地址参数的IN事务包时,将所述远端主机返回的应答数据发送至所述本地主机;
所述第二处理单元,用于将所述IN事务包缓存至本地设备中的本地寄存器,并将所述IN事务包转发至远端主机,且记录所述远端主机转发所述IN事务包时的第一地址参数,当再次接收到所述本地主机发送至所述第一地址参数的IN事务包时,判断所述本地寄存器是否为空,若是,则回复否定应答至所述本地主机,若否,则发送所述本地寄存器中的缓存数据至所述本地主机。
9.一种USB信号透传多设备的数据管理设备,其特征在于,所述USB信号透传多设备的数据管理设备包括处理器以及存储器:
所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
所述处理器用于根据所述程序代码中的指令执行如权利要求1至7中任一项所述的USB信号透传多设备的数据管理方法。
10.一种存储介质,其特征在于,所述存储介质用于存储程序代码,所述程序代码用于执行如权利要求1至7中任一项所述的USB信号透传多设备的数据管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111469390.3A CN114338707B (zh) | 2021-12-03 | 2021-12-03 | 一种usb信号透传多设备的数据管理方法和相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111469390.3A CN114338707B (zh) | 2021-12-03 | 2021-12-03 | 一种usb信号透传多设备的数据管理方法和相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114338707A true CN114338707A (zh) | 2022-04-12 |
CN114338707B CN114338707B (zh) | 2023-03-24 |
Family
ID=81049429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111469390.3A Active CN114338707B (zh) | 2021-12-03 | 2021-12-03 | 一种usb信号透传多设备的数据管理方法和相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114338707B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114928377A (zh) * | 2022-05-11 | 2022-08-19 | 威创集团股份有限公司 | 降低usb数据透传带宽的输出传输方法、装置及设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000028696A2 (en) * | 1998-11-10 | 2000-05-18 | Nortel Networks Limited | Usb networking on a multiple access transmission medium |
US20050071733A1 (en) * | 2003-09-29 | 2005-03-31 | Fumihiro Fukae | Communication controller, host-side controller, communication system, USB system, communication equipment, communication method, packet-based communication method, packet-based communication program, and storage medium |
CN1607513A (zh) * | 2003-10-15 | 2005-04-20 | 精工爱普生株式会社 | 数据传输控制装置、电子设备以及数据传输控制方法 |
CN108366129A (zh) * | 2018-03-08 | 2018-08-03 | 北京淳中科技股份有限公司 | Usb数据传输方法、装置及usb适配器 |
-
2021
- 2021-12-03 CN CN202111469390.3A patent/CN114338707B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000028696A2 (en) * | 1998-11-10 | 2000-05-18 | Nortel Networks Limited | Usb networking on a multiple access transmission medium |
AU1024900A (en) * | 1998-11-10 | 2000-05-29 | Nortel Networks Limited | Usb networking on a multiple access transmission medium |
US20050071733A1 (en) * | 2003-09-29 | 2005-03-31 | Fumihiro Fukae | Communication controller, host-side controller, communication system, USB system, communication equipment, communication method, packet-based communication method, packet-based communication program, and storage medium |
CN1607513A (zh) * | 2003-10-15 | 2005-04-20 | 精工爱普生株式会社 | 数据传输控制装置、电子设备以及数据传输控制方法 |
CN108366129A (zh) * | 2018-03-08 | 2018-08-03 | 北京淳中科技股份有限公司 | Usb数据传输方法、装置及usb适配器 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114928377A (zh) * | 2022-05-11 | 2022-08-19 | 威创集团股份有限公司 | 降低usb数据透传带宽的输出传输方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN114338707B (zh) | 2023-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101971154B (zh) | 用于确定输入/输出操作的状态的方法和*** | |
US20030009432A1 (en) | Access assurance for remote memory access over network | |
CN103530066B (zh) | 一种数据存储方法、装置及*** | |
CN109542857B (zh) | 审计日志存储方法、查询方法、装置及相关设备 | |
CN114338707B (zh) | 一种usb信号透传多设备的数据管理方法和相关装置 | |
US5293487A (en) | Network adapter with high throughput data transfer circuit to optimize network data transfers, with host receive ring resource monitoring and reporting | |
CN114553373B (zh) | 一种数据传输方法、装置、设备和存储介质 | |
CN101453487A (zh) | 用于混合***的存储器到存储装置通信的方法和*** | |
CN103703474B (zh) | 处理装置生成的数据 | |
CN110457251B (zh) | 一种多处理器间的数据通信方法及装置 | |
CN106464745A (zh) | Dns的服务器、客户端及数据同步方法 | |
CN105681222A (zh) | 一种数据接收缓存方法、装置及通信*** | |
CN113852533B (zh) | 一种多通道数据通信***、方法及电子设备 | |
CN114327948A (zh) | 消息处理方法、装置、设备及存储介质 | |
CN114092248A (zh) | 一种交易流程的处理方法及装置 | |
CN108228476B (zh) | 一种数据获取方法及装置 | |
CN101404797B (zh) | 长短消息的存储方法、存储管理装置以及存储*** | |
CN114691023A (zh) | 读写设备的读写操作方法、读写设备及可读存储介质 | |
CN114189445B (zh) | 一种usb信号透传处理方法、装置、终端及存储介质 | |
CN108173950A (zh) | 数据传输方法、装置、***、图像采集设备及存储介质 | |
JP6195657B1 (ja) | 銀行システム、銀行システムによって実行される方法、プログラム | |
CN102215162B (zh) | 一种基于现场可编程门阵列的光纤i/o乱序帧处理方法 | |
JP3226619B2 (ja) | 拡張スワップ機能を有する記憶システム | |
CN103562899B (zh) | 促进通道子***与i/o设备之间的传输模式i/o操作的装置和方法 | |
JP3058010B2 (ja) | プロセッサ間通信方法及び装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |