CN101409711A - 主控制器设备和数据传送控制方法 - Google Patents
主控制器设备和数据传送控制方法 Download PDFInfo
- Publication number
- CN101409711A CN101409711A CNA2008101699183A CN200810169918A CN101409711A CN 101409711 A CN101409711 A CN 101409711A CN A2008101699183 A CNA2008101699183 A CN A2008101699183A CN 200810169918 A CN200810169918 A CN 200810169918A CN 101409711 A CN101409711 A CN 101409711A
- Authority
- CN
- China
- Prior art keywords
- terminal point
- point information
- system storage
- address
- data
- 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
Images
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/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
- G06F13/4295—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Computer And Data Communications (AREA)
- Small-Scale Networks (AREA)
Abstract
在用于USB的主控制器设备中,由于必须相继读出端点信息的一个循环,而该端点信息包括不促成数据传送的端点信息,因而会不令人满意地降低数据传送效率。依照本发明的一个实施例,一种安装在具有系统存储器2的与USB设备通信的主设备中的主控制器设备包括:信息选择部13,通过分析保存在系统存储器2中的多个端点信息,选择请求数据传送的端点信息;存储区14,存储在系统存储器2中的至少一个地址,该至少一个地址识别所选择的端点信息;以及数据传送部15,基于由存储在存储区14中的系统存储器2中的至少一个地址所识别的端点信息,执行所请求的数据传送。
Description
技术领域
本发明涉及利用USB(通用串行总线)设备实现数据传送的主控制器。
背景技术
尽管USB协议的技术规范是在假定在有线环境中使用USB(通用串行总线)的基础上被建立起来,近年来已发展出能够使USB不用连接线的无线USB技术。例如,通过为主设备装配用于控制与有线USB设备的数据传送的驱动器,以及用于无线通信的主控制器设备,已经实现通过无线通信使用无线USB设备的数据传送。在USB中,数据传送是基于端点信息(endpoint information)来执行的。在这样的情形下,端点信息位于主设备的系统存储器中。因此,主控制器设备必须成功地读取并分析位于系统存储器内的端点信息。
此外,端点信息保持将引用的下一个端点在系统存储器中的地址,以便它能够指定将要引用的下一个端点。配置最后一个端点信息以使得引用第一个端点信息,从而多个端点信息形成循环结构。因此,通过依次引用每个端点信息,主控制器设备以循环方式引用所有端点信息。可替代地,最后一个端点信息可以有终止信息,从而多个端点信息形成线性结构。即使在这样的情形下,仍依次引用多个端点信息,直至具有终止信息的端点信息被引用。然后,继具有终止信息的端点信息之后,再从第一端点信息开始引用这些端点信息,从而它们仍以循环方式被引用。端点信息包括请求数据传送的端点信息和不促成数据传送的端点信息,并且在它们间不加区别地将它们构成一个循环。因此,当实现数据传送时,主控制器必须通过从系统存储器中逐一读取端点信息来选择请求数据传送的端点信息。
公开号为No.2001-127767的日本尚未审查的专利申请公开了通过在无线LAN(局域网)的信息分组传送过程中的队列控制期间降低对共享存储器的访问时间来提高传送效率的技术。然而,该技术很难应用于无线USB的数据传送。
如上所述,由于端点信息包括不促成数据传送的端点信息,在读出促成数据传送的端点信息之前,主控制器设备不能执行数据传送。而且,在将由多于一个端点信息请求数据传送的情形下,为了获得继用于每个传送请求的端点信息之后所引用的端点信息,主控制器设备不仅需要读出促成数据传送的端点信息,还需要读出不促成数据传送的端点信息。
其结果是,在用于USB的主控制器设备中存在一个问题,由于必须相继读出端点信息的一个循环,而该端点信息包括了不促成数据传送的端点信息,故而会不令人满意地降低数据传送效率。
发明内容
依照本发明的一个实施例,安装在具有系统存储器的与USB设备通信的主设备中的主控制器设备包括:信息选择部,通过分析保存在系统存储器中的多个端点信息,选择请求数据传送的端点信息;存储区,存储系统存储器中的至少一个地址,该至少一个地址识别由信息选择部所选择的端点信息;以及数据传送部,基于由存储在存储区中的系统存储器中的至少一个地址所识别的端点信息,执行所请求的数据传送。
以这种方式,能够无需依次访问保存在系统存储器中的端点信息而执行数据传送。从而,这可以降低对系统存储器的访问次数,从而提高数据传送效率。
此外,依照本发明的另一个实施例,一种主控制器设备的数据传送控制方法包括,其中所述主控制设备安装在具有系统存储器的与USB设备通信的主设备中:逐一读出在系统存储器中保存的多个端点信息;通过分析读出的端点信息,选择请求数据传送的端点信息;在存储区中存储识别所选择的端点信息的系统存储器中的地址;对于保存在系统存储器中的多个端点信息的每一个,重复存储步骤;并且基于存储在存储区中的系统存储器中的至少一个地址执行数据传送。
本发明能够消除在用于USB的主控制器设备中依次读取包括不促成数据传送的端点信息的循环。其结果是,这将提高数据传送效率。
附图说明
结合附图,从下面对特定优选实施例的描述中,本发明的上述及其它目的、优势和特征将更加明显。在附图中:
图1示出了依照本发明一个方面的实现无线USB通信的系统结构的示例;
图2是示出依照本发明一个实施例的主控制器设备的结构示例的框图;
图3A是用于示出读取过程图,其中以循环方式连续读出在系统存储器中保存的端点信息;
图3B示出了读出端点信息的顺序;
图3C示出了其中只读出有效端点信息的状态;
图4是示出发送/接收控制部的操作示例的流程图;
图5示出其中在存储区中存储作为传送请求信息的系统存储器中地址的示例;
图6是示出依照本发明第一实施例的数据传送部的操作示例的流程图;
图7示出在其中存储区中存储作为传送请求信息的系统存储器中地址和有效端点信息的示例;以及
图8是示出依照本发明第二实施例的数据传送部的操作示例的流程图。
具体实施方式
这里将参照示例性实施例描述本发明。精通本领域技术的人员将认识到,利用本发明的启示,能够实现许多替代性的实施例,并且本发明并不局限于用于说明性目的示出的实施例。
下文将参照附图说明本发明的实施例。在下面的描述和附图中,为了清楚地说明,适当时会略去或简化一些非必须的部分。在附图中,为同样或等同的部件和具有同样或等同功能的部件指定了相同的符号,并且适当时略去了对它们的说明。而且,本说明书中有几个同样的部件。因此,当需要相互区分这些部件时,在最初的符号上添加符号“-n(n是大于0的整数)”以使一个部件与其它部件相区别。例如,图1示出多个无线USB设备8-1、8-2、…、8-j。例如,当参照图1进行说明时,术语“无线USB设备8”意指无线USB设备8-1、8-2、…中的任意一个或多个,而术语“无线USB设备8-1(或者无线USB设备8-2或诸如此类)”被用于将无线USB设备8-1(或者无线USB设备8-2或诸如此类)与其它无线USB设备相区别。
此外,在下面的描述中说明实现无线USB通信的系统的一个示例。然而,本发明也适用于有线USB系统。
图1示出了依照本发明一个方面的实现无线USB通信的系统结构的示例。在主机侧,作为示例示出了主设备7,它包括主控制器设备1、系统存储器2、CPU(中央处理单元)3和存储器4,所有这些被连接到PCI(外围组件互连)总线5,并由PCT总线控制器6控制。在图1中,对于主设备7,只示出了对本发明而言必须的部件,而略去了其它非必须的部件。此外,在设备侧,作为从属设备9的示例,示出了无线USB设备8。附带地,对从属设备9仅有的要求是,该从属设备9中应有至少一个无线USB设备8。此外,从属设备9并不局限于无线USB设备8。作为替代,它可以是中继设备,传送在执行无线通信的主控制器设备1和有线USB设备之间传送的数据。
在下面的描述中,对主控制器设备1进行说明时假定主控制器设备1是安装于主设备7中的微处理器。将主控制器设备1连接到PCI总线5,并由安装于主设备7中的驱动器功能进行控制。该驱动器功能例如可以由软件程序实现,并且CPU 3可以执行对应的指令以实现装载于存储器4中的驱动器功能。存储器4例如可以是RAM(随机存取存储器)。
在与从属设备9相连接时,主设备7经主控制器设备1从那些从属设备9的每个都得到识别该每个从属设备9(例如,无线USB设备8)的端点信息,并将它们存储在系统存储器2中。
当将在主设备7和从属设备9之间请求数据传送时,在系统存储器2中创建端点信息,并且主控制器设备1基于该端点信息传送数据。端点信息包括请求数据传送的端点信息(适当时被称为“有效端点信息”)和不促成数据传送的端点信息(适当时被称为“无效端点信息”)。
在以下每个实施例中,说明使得主控制器设备1有效地引用有效端点信息的技术。
第一实施例
作为第一个实施例,下文将描述一种情形,其中将保存有效端点信息的系统存储器2中的地址存储在主控制器内的存储区中。
图2是示出依照本发明一个实施例的主控制器设备的结构示例的框图。而且,图2也示出了系统存储器2的示例。主控制器设备1包括主机侧接口(下文中被称为“主机侧I/F”)11、设备侧接口(下文中被称为“设备侧I/F”)、发送/接收控制部16和缓冲器17。
主机侧I/F 11通过PCI总线5将数据发送到系统存储器2和主设备7中的其它部件,并从系统存储器2和主设备7中的其它部件接收数据。设备侧I/F 12通过无线通信将数据发送到从属设备9,并从从属设备9接收数据。
发送/接收控制部16控制在主设备7和从属设备9之间的数据传送。更具体地,图2是示出了通过将其分为三个功能,即信息选择部13、存储区14和数据传送部15,来实现发送/接收控制部16的示例。通过分析保存在系统存储器2中的多个端点信息,信息选择部13选择多个请求数据传送的端点信息。
存储区14存储由信息选择部13选择的系统存储器中的地址。该存储区14为地址指定顺序号(例如,以记录号的顺序),并存储它们。存储地址的顺序与重复执行若干次数据传送的顺序相同。作为示例,以如下方式使用存储区14。由于存储区14由存储器构成,可以在存储区14中例如以地址值的升序方式存储地址。此外,在重复执行若干次数据传送的情形下,用于指示当前引用的存储区14的地址的计数器被重置为零,并且系统存储器2中当前由计数器所指示的地址首先被处理。然后,在结束该过程之后,递增计数器并获得系统存储器中的下一个地址。使用标记以确定由端点信息所请求的数据传送是否完成,其中该端点信息是位于保存在存储区14中的系统存储器2的地址处的端点信息。该标记与在系统存储器2中的地址结合被存储在存储区14中。例如,在最初被存储时将该标记设置为“1”。此外,用单个端点信息传送的数据量不必局限为固定的量。例如,当将被拷贝的文件大小彼此不同时,被传送的数据量也不相同。当过程依序进行时,需要从将要处理的目标地址的集合中排除掉系统存储器2中指示整个数据传送已完成的端点信息的地址,并因而与该地址结合存储的标记被设置为“0”。连续递增计数器,并随后当计数器达到终值时将其重置为零。相应标记已被设置为“0”的系统存储器2中的地址将不被作为数据传送的目标地址而进行处理,并因而仅仅递增计数器且过程行进到下一地址。
数据传送部15基于存储在存储区14中的系统存储器2的至少一个地址执行数据传送。数据传送部15通过使用系统存储器2中的多个地址引用端点信息,并基于该多个端点信息以重复方式执行被请求的数据传送。数据传送部15基于通过使用系统存储器2中的一个地址而引用的端点信息执行至少一个数据传送,并重复数据传送,直至所传送数据量达到由对应于系统存储器2中的每个地址的端点信息所请求的数据传送的数据量。数据传送部15在为其自身的主控制器设备1的数据传送分配的特定时间期间内(在其自身的传送时间期间内)执行单个数据传送传送。特别地,数据传送部15将要传送的数据分配给信息分组,并在所分配的时间期间内重复传送信息分组。此外,数据传送部15使用缓冲器17临时存储将要传送的数据。
缓冲器17是临时存储在主设备7和从属设备9之间传送的数据的存储区。
图2示出了在系统存储器2中保存五个端点信息的状态。左边的数字值是地址,在地址的右边示出端点信息。作为端点信息,从从属设备9通知的端点信息(M-1、M-2、…、H-1-H-3)与继当前的端点信息之后被读取的端点信息所在区域的地址(下文中被称为“下一地址”)结合在一起,被保存在系统存储器2中。此外,促成数据传送的端点信息也包括在其中保存将被传送的数据的系统存储器2中的地址。在图2中假定从无线USB设备8-1通知了端点信息M-1和M-2,且从无线USB设备8-2通知了端点信息H-1-H-3。尽管在图2中作为示例示出了循环结构的端点信息,本发明也适用于线性结构的端点信息。在这样的情形下,最后一个端点信息具有终止信息,从而它能够确定该端点信息是最后的端点信息。
接下来,下面说明主控制器设备1访问保存在系统存储器2中的端点信息的顺序。图3A-3C是示出了以循环方式相继读出端点信息的读取过程。特别地,图3A示出保存在系统存储器中的端点信息的一个示例,图3B示出读出端点信息的顺序,且图3C示出仅读出有效端点信息的状态。在USB中,在列表地址中保存将首先被读出的端点信息的地址。为了开始数据传送,主控制器设备1首先读出位于保存在列表地址中的地址上的端点信息,并随后读出位于与该已读出端点信息一起被保存的地址上的端点信息。在下面的说明中假定在列表地址中保存地址“100”。
特别地,主控制器设备1以在图3A中示出的顺序(1)-(5)读出端点信息。从而,主控制器设备1以M-1、M-2、H-1、H-3、H-2的顺序分析端点信息,如在图3B中所示。在下面的说明中,也假定只有M-2和H-2是有效端点信息,并且其它端点信息是无效端点信息。在这样的情形下,一旦主控制器设备1对所有的有效端点信息作了分析,主控制器设备1以在图3C中所示的循环方式读出端点信息将是所期望的。
因此,在分析存储在系统存储器2中的端点信息之后,依照本实施例的发送/接收控制部16存储在系统存储器2中的地址,该地址指示了请求在主控制器设备1内的存储区14中的数据传送的有效端点信息。随后,该发送/控制部16基于该所存储的系统存储器2中的地址访问系统存储器2。因此,不再需要针对每次数据传送读出无效端点信息。以这种方式,能够降低主控制器设备1对系统存储器2的访问次数,特别是对无效端点信息的读取次数。不管是否存在存储于存储区14中的系统存储器2中的地址,都将产生这种效果。在存储区14中缺少系统存储器2中的地址指示主控制器设备1不必执行任何数据传送。此外,当在存储器14中存储了系统存储器2中的至少一个地址时,主控制器设备1能够执行数据传送而无需访问不促成数据传送的端点信息。
接下来,下面说明发送/接收控制部16的操作。主控制器设备1的发送/接收控制部16通常以如下方式操作。(1)存储识别存储区14中的有效端点信息的系统存储器2中的地址,(2)数据传送,(3)握手接收,和(4)更新存储在系统存储器2中的端点信息。发送/接收控制部16重复步骤(2)-(4),直到所有有效端点信息都不存在了为止。基于具体流程图来说明操作的示例。在该示例中,说明由信息选择部13执行项目(1),并由数据传送部15执行项目(2)-(4)的情形。
图4是示出信息选择部的操作示例的流程图。在主控制器设备1上电(S11)时,信息选择部13从系统存储器2中读出端点信息(S12)。当信息选择部13第一次读出端点信息时,它读出位于保存在列表地址中的地址上的端点信息。然后,信息选择部13分析该读出的端点信息,以确定该端点信息是否请求数据传送(S13)。如果端点信息是有效端点信息(S 14为是),信息选择部13在存储区14中存储系统存储器2中的地址(S15)。如果它不是有效端点信息(S14为否),信息选择部13不执行步骤S15的过程。
然后,如果与该读出的端点信息一起被保存的下一地址与在列表地址中保存的地址不匹配,则信息选择部13确定还具有下一端点信息(S16为是)并重复执行从步骤S12起的过程。在这一点上,信息选择部13从系统存储器2读出位于下一地址上的端点信息(S12)。以与上述过程相似的方式执行后面的过程。在另一方面,如果下一地址与在列表地址中保存的地址相匹配,则信息选择部13确定它已分析过所有端点信息(S16为否)并进入等待状态(S17)。当更新保存在系统存储器2中的端点信息时,信息选择部13接收更新通知(S17中的通知)并重复执行从步骤S12起的过程。特别地,信息选择部13从运行于主设备7上的驱动器软件接收更新通知(PCI寄存器写)。而且,信息选择部13在主控制器设备1断电、通知发生了异常操作、或者发生了类似情形(S17中的断电·异常)时终止操作。
以这种方式,将系统存储器2中的地址存储在存储区14中。例如,图5示出根据在图3中所示的端点信息由信息选择部13分析和存储端点信息的结果的示例。信息选择部13存储与请求数据传送的端点信息数相同的地址数,例如,以在存储区14a中所示的方式。数据传送部15基于存储在存储区14中的系统存储器2中的地址来执行数据传送。
接下来,下面说明数据传送部15的操作。图6是示出数据传送部的操作示例的流程图。在接收到信息选择部13请求数据传送的通知时,数据传送部15启动初始化过程(S21)。例如,该初始化过程可以包括计数器的初始化。随后,数据传送部15依次读出存储在存储区14中的地址(S22)。数据传送部15根据读出的地址从系统存储器2中读出位于系统存储器2中的端点信息(S23)。读出端点信息的顺序例如通过由计数器或类似物指定系统存储器2中地址的序号来确定。然后,数据传送部15执行由端点信息请求的数据传送(S24)。在这一点上,数据传送部15例如在预先确定的时间期间(其自身的传送时间期间)内执行与系统存储器2中的一个地址相对应的数据传送。随后,如果由端点信息请求的数据传送在该时间期间内未完成,则数据传送部15在下一次数据传送中传送剩下的数据。
数据传送部15接收用于数据传送的握手(S25),并根据接收到的握手的结果确定由该端点信息请求的数据传送是否已完成(S26)。如果数据传送已完成(S26为是),则数据传送部15从存储区14中移除该端点信息的地址(S27)。另一方面,如果数据传送未完成(S26为否),则数据传送部15不执行步骤S27中的过程。然后,数据传送部15将当前的数据传送反映到在系统存储器2中所存储的端点信息(S28)。数据传送部15确定地址是否被存储在存储区14中。然后,如果地址存储在存储区14中(S29为是),则数据传送部15重复从步骤S31开始的过程。如果在存储区14中没有存储地址(S29为否),则数据传送部15终止该过程。如果数据传送未完成,作为一个中间的步骤,系统存储器2被更新。当计数器增加且再次指定了相同的地址时,就重新开始剩下的数据传送。
例如,假定在图6所示的操作示例中具有与在图3C中示出的端点信息相类似的有效端点信息,存储区14存储与M-2和H-2端点信息相对应的系统存储器2中的地址。在步骤S23中,数据传送部15从系统存储器2中依次重复读出M-2和H-2端点信息。此外,无论完成了与M-2或H-2端点信息相对应的数据传送中的哪一个,就重复读出另一个端点信息。
在下面的说明中研究对系统存储器2的访问次数。首先,是以这样的方式执行对系统存储器2的访问,即执行从系统存储器2读出端点信息的读出操作的次数与所有端点信息的数目相同,以便信息选择部13能够选择有效端点信息。然而,在这些操作之后,只需访问那些有效端点信息。因此,一旦主控制器设备1选择了有效端点信息,它不再需要依次读出保存在系统存储器2中的所有端点信息,并从而降低了对系统存储器2的访问次数。
正如到现在为止已说明的,通过选择有效端点信息并在存储区14中存储系统存储器2中的地址,根据本发明的实施例能够降低读出无效端点信息的次数,其中系统存储器2存储了有效端点信息。结果,提高了数据传送效率。此外,由于与存储端点信息自身的情形相比,本实施例需要更少量的存储空间来存储系统存储器2中的地址,它甚至可应用于分配给主控制器设备的存储量受限的场合。因此,期望将本发明应用于更广泛的应用范围内。此外,本发明甚至能够很容易地应用到从从属设备9的数据传送量或数据传送次数很大的场合,或者应用到从属设备9数目很大的场合。
附带地,在上述实施例中,尽管在存储区14中存储系统存储器2中的地址,也可以在存储区14中临时存储端点信息自身。以这种方式,能够在主控制器设备1中完成由有效端点信息请求的数据传送,并从而降低从系统存储器2读出有效端点信息的操作的次数。此外,通过只存储与存储区14中的数据传送相关的有效端点信息部分,也能够降低对系统存储器2的访问次数。通过只存储有效端点信息部分,与存储整个有效端点信息的情形相比,还能够进一步减少所需要的存储量。
第二实施例
作为第二个实施例,下文将描述一种情形,其中从位于系统存储器中的多个端点信息中选择促成数据传送的端点信息,并在主控制器设备1内的存储区14中存储所选择的端点信息作为有效端点信息。主控制器设备1具有与在图2中所示设备相似的结构。在下面的描述中,主要说明发送/接收控制部16与第一实施例中的操作差异。
信息选择部13一般地按照图4所示的流程图进行操作,除了在步骤S15中它在系统存储器2中除了存储与有效端点信息对应的地址之外还存储有效端点信息本身。其它操作与第一实施例的操作相同。例如,图7示出了由信息选择部13分析和存储在图3中所示的端点信息的结果的示例。与图5相对照,存储区的示例被示为存储区14b,该存储区存储系统存储器2中的地址,其中相应的端点信息与该端点信息本身一起位于该地址上。接下来,下面说明数据传送部15的操作。图8是示出依照本发明第二实施例的数据传送的操作示例的流程图。在图8中,与在图6中的步骤具有相同步骤号的操作与在图6中的步骤的操作相同。首先,数据传送部15执行初始化过程(S21)。然后,数据传送部15依次读出存储在存储区14中的端点信息(S31)。读出端点信息的顺序例如通过由计数器或类似物指定端点信息的序号来确定。然后,数据传送部15执行由端点信息请求的数据传送(S24)。在单个传送中的传送量与第一实施例的传送量相同。
在握手(S25)之后,数据传送部15更新存储在存储区14中的端点信息(S32)。例如,可以执行这样的或类似的过程:从端点信息中移除与已传送并握手的数据相关的信息,而不移除与需要被重复传送的数据相关的信息。此外,如果已完成由端点信息请求的数据传送,则从存储区14移除该端点信息。此外,如果已完成由端点信息请求的数据传送(S26为是),则数据传送部15更新位于系统存储器2中的端点信息(S33)。数据传送部15通过使用存储在存储区14中的系统存储器中的地址更新端点信息。如果未完成数据传送(S26为否),则数据传送部15不执行步骤S33的过程。接下来,如果在存储区14中存储了端点信息(S34为是),则数据传送部15重复从步骤S31起的过程。如果在存储区14中没有存储端点信息(S34为否),则数据传送部15终止过程。
正如到现在为止已说明的,通过选择有效端点信息并在存储区14中存储它们,根据本发明的实施例能够降低读出无效端点信息的次数。而且,由于在存储区14中存储了有效端点信息,因此能够在主控制器设备1中完成由该有效端点信息请求的数据传送,并从而降低了从系统存储器2读出有效端点信息的操作的次数。通过这种方式,提高了数据传送效率。
正如到现在为止已说明的,通过在主控制器设备1内的存储区14中存储系统存储器2中的地址,其中该地址从存储在系统存储器2中的端点信息中识别请求数据传送的有效端点信息,根据本发明的至少一个优选实施例能够减少对不促成数据传送的无效端点信息的访问次数。通过在主控制器设备1内的存储区中存储有效端点信息,能够进一步减少对位于系统存储器2中的有效端点信息的访问次数。借助这些特征,提高数据传送效率是可以期待的。
附带地,应将上述在存储区中存储传送请求信息的每个实施例中的示例仅仅看作一个示例,而本发明并不局限于这些示例。此外,作为传送请求信息的存储在存储区14中的识别有效端点信息的信息的具体示例,也应仅被作为示例看待。可替代地,代替上述信息或者除上述信息之外,减少对位于系统存储器2中的端点信息的访问次数的任何信息都能使用。而且,可以将这样的信息彼此结合起来使用。
显然,本发明并不局限于上述实施例,而可以在不脱离发明的范围和精神的前提下进行修改和改变。
Claims (19)
1.一种安装在具有系统存储器的与USB设备通信的主设备中的主控制器设备,包括:
信息选择部,通过分析保存在所述系统存储器中的多个端点信息,选择请求数据传送的端点信息;
存储区,存储系统存储器中的至少一个地址,该至少一个地址识别由所述信息选择部选择的端点信息;以及
数据传送部,根据由存储在所述存储区中的系统存储器中的至少一个地址所识别的所述端点信息,执行所请求的数据传送。
2.依据权利要求1的主控制器设备,其中,所述数据传送部持续进行数据传送,直至所传送数据的量达到所请求数据传送的数据量,或者传送时间达到其自身分配的传送时间期间,并重复数据传送,直至完成由端点信息请求的数据传送,所述端点信息由存储在所述存储区中的系统存储器中的地址所识别。
3.依据权利要求2的主控制器设备,其中,所述存储区在系统存储器中存储多个地址;以及
所述数据传送部引用由系统存储器中的所述多个地址识别的多个端点信息,并重复数据传送,直到所传送数据的量基于所述多个端点信息达到所述多个端点信息所请求的数据传送的数据量。
4.依据权利要求1的主控制器设备,其中,所述信息选择部得到保存在所述系统存储器中的端点信息发生改变的通知,根据所述通知按序分析保存在所述系统存储器中的端点信息,并更新在所述存储区中存储的系统存储器中的地址。
5.依据权利要求2的主控制器设备,其中,所述信息选择部得到保存在所述系统存储器中的端点信息发生改变的通知,根据所述通知按序分析保存在所述系统存储器中的端点信息,并更新在所述存储区中存储的系统存储器中的地址。
6.依据权利要求3的主控制器设备,其中,所述信息选择部得到保存在所述系统存储器中的端点信息发生改变的通知,根据所述通知按序分析保存在所述系统存储器中的端点信息,并更新在所述存储区中存储的系统存储器中的地址。
7.依据权利要求1的主控制器设备,其中,在其自身分配的传送时间期间内数据传送终止时,数据传送部更新保存在所述系统存储器中的端点信息。
8.依据权利要求2的主控制器设备,其中,在其自身分配的传送时间期间内数据传送终止时,数据传送部更新保存在所述系统存储器中的端点信息。
9.依据权利要求3的主控制器设备,其中,在其自身分配的传送时间期间内数据传送终止时,数据传送部更新保存在所述系统存储器中的端点信息。
10.依据权利要求4的主控制器设备,其中,在其自身分配的传送时间期间内数据传送终止时,数据传送部更新保存在所述系统存储器中的端点信息。
11.依据权利要求1的主控制器设备,其中,所述存储区除了存储所述系统存储器中的地址之外,还存储所选择的端点信息。
12.依据权利要求2的主控制器设备,其中,所述存储区除了存储所述系统存储器中的地址之外,还存储所选择的端点信息。
13.依据权利要求3的主控制器设备,其中,所述存储区除了存储所述系统存储器中的地址之外,还存储所选择的端点信息。
14.依据权利要求4的主控制器设备,其中,所述存储区除了存储所述系统存储器中的地址之外,还存储所选择的端点信息。
15.依据权利要求1的主控制器设备,其中,数据传送部从所述存储区移除系统存储器中的地址,所述地址对应于已为其完成数据传送的端点信息。
16.依据权利要求2的主控制器设备,其中,数据传送部从所述存储区移除系统存储器中的地址,所述地址对应于已为其完成数据传送的端点信息。
17.依据权利要求3的主控制器设备,其中,数据传送部从所述存储区移除系统存储器中的地址,所述地址对应于已为其完成数据传送的端点信息。
18.依据权利要求1的主控制器设备,其中,所述USB设备是无线USB设备。
19.一种主控制器设备的数据传送控制方法,其中所述主控制设备安装在具有系统存储器的与USB设备通信的主设备中传送,所述方法包括:
逐一读出保存在所述系统存储器中的多个端点信息;
通过分析所读出的端点信息,选择请求数据传送的端点信息;
在存储区中存储识别所选择端点信息的系统存储器中的地址;
对于保存在所述系统存储器中的所述多个端点信息的每一个,重复所述存储步骤;并且
根据存储在所述存储区中的系统存储器中的至少一个地址执行数据传送。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007263388A JP2009093418A (ja) | 2007-10-09 | 2007-10-09 | ホストコントローラ装置及びデータ転送制御方法 |
JP2007263388 | 2007-10-09 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101409711A true CN101409711A (zh) | 2009-04-15 |
Family
ID=40524282
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2008101699183A Pending CN101409711A (zh) | 2007-10-09 | 2008-10-09 | 主控制器设备和数据传送控制方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20090094397A1 (zh) |
JP (1) | JP2009093418A (zh) |
CN (1) | CN101409711A (zh) |
TW (1) | TW200919197A (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7908421B2 (en) * | 2008-09-30 | 2011-03-15 | Intel Corporation | Universal serial bus endpoint context caching |
JP5681576B2 (ja) | 2011-06-29 | 2015-03-11 | ルネサスエレクトロニクス株式会社 | ホストコントローラ装置、情報処理装置及びイベント情報出力方法 |
US10268448B2 (en) | 2016-05-06 | 2019-04-23 | Texas Instruments Incorporated | Data flow control for multi-chip-select |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6185641B1 (en) * | 1997-05-01 | 2001-02-06 | Standard Microsystems Corp. | Dynamically allocating space in RAM shared between multiple USB endpoints and USB host |
JP3415567B2 (ja) * | 2000-06-21 | 2003-06-09 | エヌイーシーマイクロシステム株式会社 | Usb転送制御方法およびusbコントローラ |
US6745264B1 (en) * | 2002-07-15 | 2004-06-01 | Cypress Semiconductor Corp. | Method and apparatus for configuring an interface controller wherein ping pong FIFO segments stores isochronous data and a single circular FIFO stores non-isochronous data |
US7069373B2 (en) * | 2002-11-07 | 2006-06-27 | Nec Electronics America, Inc. | USB endpoint controller flexible memory management |
US20050070227A1 (en) * | 2003-09-30 | 2005-03-31 | Chih-Hsiang Shen | Detecting and actuating method of bluetooth devices and a control system thereof |
US7149839B2 (en) * | 2004-12-03 | 2006-12-12 | Microsoft Corporation | Wireless USB hardware scheduling |
KR100647906B1 (ko) * | 2005-09-15 | 2006-11-23 | 한국전자통신연구원 | 초광대역방식의 무선 usb 호스트 장치 |
US7603474B2 (en) * | 2005-10-05 | 2009-10-13 | Microsoft Corporation | Efficient endpoint matching using a header-to-bit conversion table |
US7526590B2 (en) * | 2006-03-31 | 2009-04-28 | Intel Corporation | Systems and methods for remote pipe resource management in wireless adapters |
KR100725932B1 (ko) * | 2006-05-02 | 2007-06-11 | 삼성전자주식회사 | 무선 유에스비 장치의 동작 방법 및 이를 이용한 무선유에스비 장치 |
US7844760B2 (en) * | 2007-09-29 | 2010-11-30 | Intel Corporation | Schedule and data caching for wireless transmission |
-
2007
- 2007-10-09 JP JP2007263388A patent/JP2009093418A/ja not_active Withdrawn
-
2008
- 2008-09-18 US US12/212,965 patent/US20090094397A1/en not_active Abandoned
- 2008-09-18 TW TW097135742A patent/TW200919197A/zh unknown
- 2008-10-09 CN CNA2008101699183A patent/CN101409711A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20090094397A1 (en) | 2009-04-09 |
TW200919197A (en) | 2009-05-01 |
JP2009093418A (ja) | 2009-04-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4845522B2 (ja) | システムバス制御装置、集積回路およびデータ処理システム | |
CN101263465A (zh) | 用于总线仲裁的方法和系统 | |
US7038798B2 (en) | Method and apparatus for multi-function processing capable of performing a program downloading using a common single connection, and a medium storing the method | |
JP2009003677A (ja) | Usbホスト、usbスレーブ、無線通信方式、及びデータ転送方法 | |
CN101409711A (zh) | 主控制器设备和数据传送控制方法 | |
GB2291317A (en) | Data transfer in SCSI computer | |
EP0579398B1 (en) | Method of addressing devices and transferring data signals on a bus | |
CN115334010B (zh) | 查询信息的处理方法和装置、存储介质及电子装置 | |
JP5407631B2 (ja) | 回路情報生成装置、機能実行システム、及びプログラム | |
JP2000224260A (ja) | 通信制御装置 | |
CN102193884B (zh) | 数据传送电路和方法 | |
CN110166506B (zh) | 超文本传输协议Http的连接方法及节点设备 | |
US5797040A (en) | Computer system having system bus which couples adapter and processing units and requires acquisition for data transmission thereover | |
JP4320242B2 (ja) | ソフトウェア無線機 | |
KR100508157B1 (ko) | 다중 에이전트 구조의 클라이언트와 서버 시스템 간의블록데이터 전송 방법 | |
JP2006338409A (ja) | 圧縮データ転送方式及び圧縮データ転送システム | |
JP2000244585A (ja) | バスインタフェース回路 | |
JP2001101151A (ja) | 転送制御方法及び情報処理装置 | |
JP2966720B2 (ja) | 集中制御装置 | |
JP3067155B2 (ja) | データ転送装置 | |
JP2004213231A (ja) | 分散印刷システム、分散印刷方法及びプログラム | |
JPH05101020A (ja) | ネツトワーク自動設定装置 | |
JP2003264601A (ja) | 通信制御装置および画像形成システム | |
JP2006301706A (ja) | データ配信システム、データ配信方法、データ配信プログラム | |
JP2022147666A (ja) | ダウンロードデバイス、ダウンロードシステム、及び、サーバ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20090415 |