一种数据传送方法及电子装置的制造方法

文档序号:8298984阅读:195来源:国知局
一种数据传送方法及电子装置的制造方法
【技术领域】
[0001] 本发明涉及嵌入式电子设备领域,特别是涉及一种数据传送方法及电子装置。
【背景技术】
[0002] 目前,USB技术已广泛地应用于嵌入式电子设备中,具体来说,在嵌入式电子设备 中通常集成有USB主机,以对插入嵌入式电子设备的USB设备,例如U盘、USB鼠标等等,进 行控制以实现USB设备所支持的功能。通常,在对USB主机的芯片进行设计时,已限定其内 部的本地端点(localendpoint)数目。本领域技术人员可以理解,按照USB标准规定的协 议,当USB设备插入时,首先USB主机根据接口描述符获取USB设备的功能接口描述信息, 其次获取该功能接口所对应的远程端点(remoteendpoint),继而建立本地端点与远程端 点之间的逻辑管道,本地端点和远程端点一一对应形成逻辑管道,随后通过该逻辑管道与 USB设备进行数据传送以实现其所支持的功能。此时,USB主机端期望能支持尽可能多的 USB设备,USB主机所包括的本地端点数目小于主机希望支持的所有USB逻辑设备所包括的 远程端点数目时则某些USB逻辑设备因无足够的本地端点配对而无法成功建立管道,继而 导致某些USB逻辑设备的功能无法得到实现。
[0003]为解决上述问题,现有技术的一种做法是:重新设计USB主机的芯片,增加其所支 持的本地端点数目,或者增加USB控制器数目,但是,重新设计芯片需要花费很大的设计成 本以及很长的生产周期,不利于嵌入式电子设备的生产。
[0004] 现有技术的另一种做法是:对嵌入式电子设备的USB功能重新进行规划,减少USB 主机支持USB逻辑设备的数目以及其所对应的功能,以满足现有的本地端点数目的限制。 但是,由于功能的减少,嵌入式电子设备的市场竞争力将被减弱,不利于嵌入式电子设备的 市场推广。

【发明内容】

[0005] 有鉴于此,本发明提供以下技术方案。
[0006] 根据本发明一实施例,本发明提供一种数据传送方法,用于具有多个本地端点的 USB主机,数据传送方法包括:建立多个本地端点与多个远程端点之间的传送管道,其中, 至少一个本地端点对应至少两个远程端点且建立至少两条传送管道;以及在本地端点和对 应的远程端点之间,通过分时使用传送管道进行数据传送。
[0007] 根据本发明另一实施例,本发明提供一种电子装置,包括具有多个本地端点的USB 主机,电子装置包括管道建立模块及数据传送模块,管道建立模块用于建立多个本地端点 与多个远程端点之间的传送管道,其中,至少一个本地端点对应至少两个远程端点且建立 至少两条传送管道;数据传送模块用于在本地端点和对应的远程端点之间,通过分时使用 所述传送管道进行数据传送。
[0008] 本发明的数据传送方法及电子装置能够在多个USB逻辑设备所包括的远程端点 数目大于USB主机所包括的本地端点数目的情况下,仍然实现USB主机与USB设备之间的 数据传送。
【附图说明】
[0009] 图1是本发明第一实施例的电子装置的结构示意图;
[0010] 图2是本发明第二实施例的电子装置的结构示意图;
[0011] 图3是图2所示电子装置中数据传送单元的第一实施例的结构示意图;
[0012] 图4是图2所示电子装置中数据传送单元的第二实施例的结构示意图;
[0013] 图5是本发明第一实施例的数据传送方法的流程图;
[0014] 图6是本发明第二实施例的数据传送方法的流程图;
[0015] 图7是本发明第二实施例的数据传送方法的子流程图;
[0016]图8是本发明第三实施例的数据传送方法的流程图。
【具体实施方式】
[0017] 在说明书及权利要求书当中使用了某些词汇来指称特定的组件。所属领域中的 技术人员应可理解,制造商可能会用不同的名词来称呼同样的组件。本说明书及权利要求 书并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的基 准。在通篇说明书及权利要求书当中所提及的「耦接」一词在此包含任何直接及/或间接 的电气耦接手段。因此,若文中描述第一装置耦接于第二装置,则代表第一装置可直接电气 耦接于第二装置,或透过其它装置或耦接手段间接地电气耦接至第二装置。下面结合附图 和实施例对本发明进行详细说明
[0018] 图1是本发明第一实施例的电子装置的结构示意图。如图1所示,电子装置包括 具有多个本地端点的USB主机100,USB主机100包括管道建立模块10和数据传送模块11。
[0019] 管道建立模块10,用于建立多个本地端点与多个远程端点之间的传送管道,其中, 至少一个本地端点对应至少两个的远程端点且建立至少两条传送管道。
[0020] 数据传送模块11与管道建立模块10耦接,用于在本地端点和远程端点之间,通过 传送管道进行数据传送。
[0021] 图2是本发明第二实施例的电子装置的结构示意图。如图2所示,电子装置包括 具有多个本地端点的USB主机200,USB主机200包括判断模块21、管道建立模块22、存储 模块23和数据传送模块24。
[0022] 判断模块21用于判断建立管道时,本地端点是否绑定了至少两个远程端点。
[0023] 管道建立模块22与判断模块21耦接,用于当判断模块21判断本地端点绑定至少 两个远程端点,建立本地端点与远程端点之间的传送管道,其中,至少一个本地端点对应至 少两个远程端点且建立至少两条传送管道以使尽可能多的远程端点通过分时使用传送管 道进行数据传送。
[0024] 具体来说,管道建立模块22包括映射关系建立单元221和管道建立单元222。映 射关系建立单元221与判断模块21耦接,用于建立本地端点与远程端点之间的映射关系, 其中,映射关系包括一对一映射和一对多映射。管道建立单元222与映射关系建立单元221 耦接,用于根据映射关系建立单元221建立的映射关系建立本地端点与远程端点之间的传 送管道。
[0025] 存储模块23与管道建立模块22耦接,具体来说,存储模块23与管道建立单元222 耦接,用于在管道建立单元222建立传送管道后,将对应本地端点的远程端点的数据存储 至数据队列中,其中,数据为多个USB逻辑设备请求块、对应远程端点的参数信息和本地端 点信息。
[0026] 数据传送模块24与存储模块23耦接,用于从存储模块23获取USB请求块后通过 传送管道进行USB请求块的传送。
[0027] 具体来说,数据传送模块24包括数据获取单元241、参数装载单元242、数据传送 单元243和判断单元244。数据获取单元241与存储模块23耦接,用于按照先入先出的原 则从存储模块23存储的数据队列中获取USB请求块。参数装载单元242与数据获取单元 241耦接,用于装载传送数据获取单元241获取的USB请求块的本地端点对应的多个物理参 数,其中,物理参数包括USB请求块对应的远程端点的端点号。数据传送单元243与参数装 载单元242耦接,用于当参数装载单元242装载本地端点对应的多个物理参数后,将数据获 取单元241获取的USB请求块从本地端点通过USB硬件模块串行化处理成物理信号,传送 至对应的远程端点。判断单元244与传送单元243耦接,用于当传送单元243传送USB请 求块后,判断数据队列中的多个USB请求块是否已传送完毕。当判断单元244判断数据队 列中的多个USB请求块未传送完毕时,数据获取单元241按照先入先出的原则继续从数据 队列中获取USB请求块等候调度。
[0028] 图3是图2所示电子装置中数据传送单元的第一实施例的结构示意图。如图3所 示,数据传送单元包括数据切换位设置子单元30、事务(transaction)传送子单元31、监测 子单元32、判断子单元33、数据切换位调整子单元34、出错处理子单元35以及参数卸载子 单元36。
[0029] 数据切换位设置子单元30与参数装载单元242耦接,用于在参数装载单元242装 载本地端点对应的物理参数后,在通过传送管道传送USB请求块前,设置由管道建立模块 22建立的传送管道对应的数据切换位。
[0030] 事务传送子单元31与数据切换位设置子单元30耦接,用于依次传送USB请求块 中的事务对应的令牌包、数据包和握手包,其中,USB请求块包括多个事务,数据包根据数据 切换位设置子单元30设置的传送管道对应的数据切换位进行传送。
[0031] 监测子单元32与事务传送子单元31耦接,用于当事务传送子单元31传送事务 时,监测事务传送时对应的传送状态标志位是否指示传送正确。
[0032] 判断子单元33与监测子单元32耦接,用于当监测子单元32监测到传送状态标志 位指示传送正确时,判断是否完成USB请求块中多个事务的传送。其中,当判断子单元33 判断未完成USB请求块中多个事务的传送时,事务传送子单元31依次传送USB请求块中的 事务对应的令牌包、数据包和握手包。
[0033] 数据切换位调整子单元34与监测子单元32耦接,用于当监测子单元32监测到传 送状态标志位指示传送错误时,调整传送管
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1