CN101266584A - 通用串行总线主机控制器及其控制方法 - Google Patents

通用串行总线主机控制器及其控制方法 Download PDF

Info

Publication number
CN101266584A
CN101266584A CNA2008100995442A CN200810099544A CN101266584A CN 101266584 A CN101266584 A CN 101266584A CN A2008100995442 A CNA2008100995442 A CN A2008100995442A CN 200810099544 A CN200810099544 A CN 200810099544A CN 101266584 A CN101266584 A CN 101266584A
Authority
CN
China
Prior art keywords
controller
transmission
memory
access
usb host
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
Application number
CNA2008100995442A
Other languages
English (en)
Other versions
CN101266584B (zh
Inventor
张欣
李文彬
李德建
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Via Technologies Inc
Original Assignee
Via Technologies Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Via Technologies Inc filed Critical Via Technologies Inc
Priority to CN2008100995442A priority Critical patent/CN101266584B/zh
Publication of CN101266584A publication Critical patent/CN101266584A/zh
Priority to US12/360,123 priority patent/US7865653B2/en
Application granted granted Critical
Publication of CN101266584B publication Critical patent/CN101266584B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal

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)

Abstract

本发明涉及一种符合通用串行总线(USB)2.0规范的精简存储器的USB主机控制器及其控制方法,其能够以精简化的存储器支持该USB主机控制器与通用串行总线设备之间的周期传输与异步传输。该USB主机控制器包括第一控制器,用来控制主机与通用串行总线设备间的第一传输;第二控制器,用来控制该主机与该通用串行总线设备间的第二传输;以及第一存储器,分别耦接于该第一控制器与该第二控制器,用来缓存该主机控制器与该通用串行总线设备间传输的数据;其中,于该第一传输阶段,该第一控制器存取该第一存储器,于该第二传输阶段,该第二控制器存取该第一存储器。

Description

通用串行总线主机控制器及其控制方法
技术领域
本发明一般涉及通用串行总线(Universal Serial Bus,USB)主机控制器,更具体地,涉及一种符合USB2.0规范的精简存储器的USB主机控制器及其控制方法,其能够以精简化的存储器支持USB主机控制器与通用串行总线设备之间的周期传输(Periodic Transfer)与异步传输(Asynchronous Transfer)。
背景技术
USB是一种由Intel和Microsoft开发的外设总线的数据通信标准。最大的特点是支持热插拔(Hot plug)和即插即用(Plug&Play)的功能。当设备插入时,主机枚举(enumerate)此设备并加载所需的驱动程序,因此使用远比PCI和ISA总线方便。通用串行总线可以连接的外部设备有鼠标、键盘、gamepad、游戏杆、扫描仪、数码相机、打印机、硬盘和网络部件等,其应用非常广泛。
USB目前常见的有两个规范,即USB 1.1和USB 2.0。USB1.1规范,其高速方式的传输速率为12兆位/秒(Mbps),低速方式的传输速率为1.5Mbps。USB2.0规范是由USB 1.1规范演变而来的,传输速率可达到480Mbps,即60MB/s,足以满足大多数外部设备的速率要求。USB 2.0中的“增强主机控制器接口”(Enhanced Host Controller Interface,EHCI)定义了一个与USB1.1相兼容的架构,可以用USB 2.0的驱动程序驱动USB1.1设备。也就是说,所有支持USB1.1的设备都可以直接在USB2.0的接口上使用,而不必担心兼容性问题,而且像USB线、插头等等附件也都可以直接使用。
USB系统的设计为非对称式的,它由一个USB主机(host)控制器和若干通过集线器(Hub)设备以树形连接USB设备所组成。USB主机控制器负责实现主机与USB设备之间的物理数据传输,是构成USB主机不可或缺的核心部件。USB主机控制器与USB设备之间传输数据的管道(Pipe)可分为四种类型:控制传输(Control Transfer),等时传输(Isochronous Transfer),中断传输(Interrupt Transfer)和批量传输(Bulk Transfer)。其中,控制传输一般用于短的、简单的对设备的命令和状态反馈,例如用于总线控制的0号管道,0号管道是USB设备必备的管道,用于控制总线上的设备,其编号为0;等时传输是按照保障连续的速度(可能但不必然是较快地)传输,可能有数据丢失的问题,例如实时的音频、视频;中断传输用于必须保证尽快反应的设备(仅容许有限延迟),例如鼠标、键盘;而批量传输是使用余下的带宽大量地(但是没有对于延迟、连续性、带宽和速度的保证)传输数据,例如普通的文件传输。根据这四种传输类型的特点,一般将等时传输与中断传输统称为周期传输(Periodic Transfer),将控制传输与批量传输统称为异步传输(Asynchronous Transfer)。
USB主机控制器作为USB主机的核心部件,其下最多可以有5级Hub,包括各级的Hub在内,最多可以连接127个USB设备,而USB主机可以同时有多个USB主机控制器。由于现今USB的应用日益广泛,如何设计低成本,小面积,高效能的USB主机控制器芯片,已成为USB系统设计中的一大焦点。
发明内容
有鉴于此,本发明的目的在于提供一种符合USB2.0规范的精简存储器的USB主机控制器及其控制方法,其能够以精简化的存储器支持该USB主机控制器与USB设备之间的周期传输与异步传输。
根据本发明的一个方面,提供一种USB主机控制器,包括第一控制器,用来控制主机与通用串行总线设备间的第一传输;第二控制器,用来控制该主机与该通用串行总线设备间的第二传输;以及第一存储器,分别耦接于该第一控制器与该第二控制器,用来缓存该主机控制器与该通用串行总线设备间传输的数据;其中,于该第一传输阶段,该第一控制器存取该第一存储器,于该第二传输阶段,该第二控制器存取该第一存储器。
根据本发明的一个方面,提供一种应用于USB主机控制器的控制方法,包括步骤:于第一传输阶段,通过第一控制器存取第一存储器以执行该主机控制器与通用串行总线设备间的第一传输;于第二传输阶段,通过第二控制器存取该第一存储器以执行该主机控制器与该通用串行总线设备间的第二传输;其中,该第一控制器与该第二控制器都是通过第一直接存储器存取引擎存取该第一存储器。
根据本发明的另一个方面,该第一传输为周期传输(Periodictransfer),该第一控制器为周期控制器;该第二传输为异步传输(Asynchronous transfer),该第二控制器为异步控制器。
本发明的USB主机控制器通过分阶段执行周期传输和异步传输,共享DMA引擎和存储器,大大精简了USB主机控制器的电路面积,并仍能有效避免其内部的存储器出现超载或欠载的情况,此外,通过周期传输阶段结束时执行预取功能,可进一步提高USB主机控制器的运作效能。
附图说明
通过下面结合示例性地示出一例的附图进行的描述,本发明的上述和其他目的和特点将会变得更加清楚,其中:
图1是根据本发明的一个实施例应用于主机的USB主机控制器的示意图;
图2是根据本发明的另一个实施例应用于主机的USB主机控制器的示意图;
图3是图2中的USB主机控制器与USB设备之间传输数据的微帧(Microframe)格式示意图;以及
图4是根据本发明的一个实施例应用于图2的USB主机控制器的控制方法的流程图。
具体实施方式
以下,参照附图来详细说明本发明的实施例。
图1是根据本发明的一个实施例应用于主机的USB主机控制器的示意图,如图所示,USB主机控制器14位于主机10内,与内存16相连接,USB设备12通过总线的集线器(Hub)(图中未示出)连接到USB主机控制器14。通常,当USB设备12连接到USB主机控制器14时,USB主机控制器14会分配一个特定的7位地址给USB设备12,用以标识USB设备12。并且,USB主机控制器14通过投票分配流量,例如通过轮询模式分配流量,因此,在没有明确向USB主机控制器14提出请求之前,USB设备12不能传输数据。需要注意的是,本发明所指的传输是指双向的传输,即数据从USB设备12传输到USB主机控制器14,或是从USB主机控制器14传输到USB设备12。一旦建立起传输数据的管道,USB主机控制器14就可以控制各种类型的数据从USB设备12传输到USB主机控制器14,或是从USB主机控制器14传输到USB设备12。
根据前述两种不同的数据传输类型(周期传输和异步传输),USB主机控制器14内设有对应的一个或多个周期控制器和异步控制器,在本发明的一个实施例中,USB主机控制器14内设有一个周期控制器101,和两个异步控制器102、103,以分别控制执行USB设备12与USB主机控制器14之间的周期传输和异步传输,如图1所示。与此对应的,USB主机控制器14内设有三个存储器,即第一存储器107、第二存储器108和第三存储器109,用来缓存USB设备12与USB主机控制器14之间传输的数据。其中,当USB主机控制器14执行周期传输时,周期控制器101通过第一直接存储器存取(DMA)引擎104存取第一存储器107;而USB主机控制器14执行异步传输时,异步控制器102和103分别通过第二DMA引擎105和第三DMA引擎1106存取第二存储器108和第三存储器109。
在存储器的实现上,第一存储器107、第二存储器108和第三存储器109均可为静态随机存取存储器(Static Random Access Memory,SRAM),或者其它类型的存储器装置。另外,由于目前USB设备的传输速率大大提高(高速USB设备的传输速率已达到了480Mbps),存储器的容量设计若不恰当,过大会造成资源浪费,过小则极易在缓存传输的数据时,因存储器超载(Overrun)或欠载(Underrun)而导致数据出错。因此,在本实施例中,存储器的容量设计乃是以所传输数据包的最大容量为准,即第一存储器107的容量为周期传输的最大数据包的容量256×32位(1024字节),第二存储器108和第三存储器109的容量均为异步传输的最大数据包的容量128×32位(512字节)。如此,以避免出现存储器的超载或欠载。
上述的USB主机控制器14虽然能较好地支持高速USB设备与主机控制器之间各种类型的数据传输,且能避免主机控制器内存储器的超载或欠载,但由于其内部设置了多个DMA引擎和大容量的存储器,使得整个主机控制器的电路面积增大,而其中DMA引擎和存储器可能就占据了主机控制器总电路面积的70%,因此,本发明在上述USB主机控制器的基础上,作了进一步的精简和改良设计,从而减少USB主机控制器的电路面积,以降低成本,请参见下一实施例。
请参考图2,图2是根据本发明的另一个实施例应用于主机的USB主机控制器的示意图。同样,USB主机控制器24位于主机20内,与内存26相连接,USB设备22通过总线的集线器(Hub)(图中未示出)连接到USB主机控制器24。USB主机控制器24内设有一个周期控制器201,和两个异步控制器202、203,以分别控制执行USB设备22与USB主机控制器24之间的周期传输和异步传输。本发明实施例的USB主机控制器内虽然共设置了三个控制器,但是并不限定于此,本发明也适用于在内部设置其他数量或类型控制器的USB主机控制器。
与图1中的USB主机控制器14不同的是,本实施例的USB主机控制器24内仅设置了两个存储器:第一存储器207和第二存储器208,及对应的第一DMA引擎204和第二DMA引擎205。由于USB设备22与USB主机控制器24之间通常以微帧(Microframe)的形式传输数据,每一微帧以125毫秒为单位,且在同一微帧的传输周期中,周期传输的优先级要高于异步传输,因此,本实施例将每一微帧划分为两个阶段:周期传输阶段和异步传输阶段。并于周期传输阶段,USB主机控制器24仅执行周期传输;于异步传输阶段,仅执行异步传输。
请一并参考图3,图3绘示本发明一实施例的USB主机控制器24与USB设备22之间传输数据的微帧格式。如图3所示,每一微帧时长为125毫秒,以开始标识与结束标识为界。在传输数据时,先执行周期传输,再执行异步传输。本实施例中的微帧时长也可为其他值,并不限定于125毫秒。
本发明一实施例的具体操作如下,于一微帧的周期传输阶段,USB主机控制器24内的周期控制器201通过第一DMA引擎204存取第一存储器207与第二存储器208,且当周期控制器201存取第一存储器207达预定数量的数据,例如存满或取空第一存储器207时,周期控制器201控制其内部的地址指针指向第二存储器208,以通过第一DMA引擎204接续存取第二存储器208。如此,对于周期控制器201而言,其对应可存取的存储器容量相当于是第一存储器207与第二存储器208的容量之和。而后,于同一微帧的异步传输阶段,USB主机控制器24内的异步控制器202通过第一DMA引擎204存取第一存储器207,异步控制器203通过第二DMA引擎205存取第二存储器208。因此,对于异步控制器202,其对应可存取的存储器容量为第一存储器207的容量;而对于异步控制器203,其对应可存取的存储器容量为第二存储器208的容量。
需要注意的是,同一微帧执行完周期传输后,在异步传输阶段每次传输一个异步传输的数据包之前,USB主机控制器24会通过其内部的计数器206计算微帧的剩余时间,以判定剩余时间是否足以传输一个完整的异步传输的数据包。若USB主机控制器24判定得出微帧的剩余时间足够传输一个完整的异步传输的数据包,则异步控制器202或203控制传输一个异步传输的数据包;当判定得出微帧的剩余时间不足以传输一个完整的异步传输的数据包时,则异步控制器202与203停止执行异步传输,从而避免不必要的系统资源浪费。
在存储器的实现上,第一存储器207和第二存储器208同样均可为静态随机存取存储器,且为避免出现存储器的超载或欠载,存储器的容量设计仍以所传输数据包的最大容量为准。根据本发明的一个实施例,第一存储器207与第二存储器208的容量之和应等于或大于周期传输的最大数据包的容量,且第一存储器207与第二存储器208的容量均应等于或大于异步传输的最大数据包的容量。若周期传输的最大数据包的容量为1024字节,异步传输的最大数据包的容量为512字节,则第一存储器207与第二存储器208的容量均可设定为128×32位,这样,二者之和为1024字节,就能满足周期传输和异步传输的需求。在不脱离本发明的精神的情况下,本发明的其它实施例也可使用其它的存储器组合,例如设定第一存储器207和第二存储器208的容量都等于或大于周期传输的最大数据包的容量,而第三存储器的容量等于或大于异步传输的最大数据包的容量。
本发明实施例中的存储器虽然使用的是SRAM,但是并不仅限于此,其他可读写的存储器例如快闪(Flash)存储器等,都可用来作为本发明USB主机控制器内的存储器,且存储器可以集成在同一芯片或是分开在两个芯片上,也可以有不同的配置,例如一个存储器分成两部分,分别支持两种传输等。
由此可见,图2的USB主机控制器24要比图1的USB主机控制器14至少减少了三分之一的存储器面积和一个DMA引擎。因此,通过分阶段执行周期传输和异步传输,共享DMA引擎和存储器,就能在保证存储器不出现超载或欠载的基础上,减少存储器的容量和DMA引擎的个数,从而精简了整个USB主机控制器的电路面积。
为了进一步提高运作效能,本发明的USB主机控制器24可以于周期传输阶段结束时执行预取功能,具体操作如下:在周期传输阶段,当周期控制器201控制传输最后一个周期传输的数据包期间,USB主机控制器24会检测第一存储器207与第二存储器208的存储状态,若第一存储器207与第二存储器208之一被取空或者剩下小于预定数量的数据,则USB主机控制器24执行预取操作,即预先从内存26取出一个或多个异步传输的数据包存入到被取空或剩余数据不足预定数量的存储器中。这样,在接下去的异步传输阶段,若执行的是从USB主机控制器24到USB设备22的异步传输,则开始发送的第一个异步传输的数据包或者之后的数据包就不需要再从内存26中取出,而是直接将存储器中缓存的异步传输的数据包发送给USB设备22,从而提高了工作效能。
为了更清楚地说明本发明的USB主机控制器的运作过程,请参考图4,图4示出了应用于图2的USB主机控制器24的控制方法流程图。首先,在步骤S41,USB主机控制器24开始控制传输一微帧;在此微帧的传输周期中,USB主机控制器24首先会通过周期控制器201执行第一传输,例如通过存取第一存储器207或第二存储器208执行周期传输,如步骤S42。在步骤S43,如上文所述,在周期传输的最后一个数据包时,USB主机控制器24会检测第一存储器207与第二存储器208的存储状态,判断是否有足够的存储空间,例如剩余可用空间大于预定数量,或是其中一个存储器被取空。若上述条件成立,例如第一存储器207与第二存储器208之一空出预定数量的空间,则进入步骤S44,USB主机控制器24执行预取操作,将从内存中预取的一或多个第二传输(例如异步传输)的数据包存入空出足够空间的存储器,例如存入到空出预定数量空间的存储器;反之,则返回步骤S42,继续执行周期传输。而后,进入第二传输阶段,例如对第二存储器208进行存取的异步传输阶段。在步骤S45,USB主机控制器24通过其内部的计数器206计算微帧的剩余时间;并判断剩余时间是否足以传输一个完整的异步传输的数据包,如步骤S46。若剩余时间足够传输一个完整的异步传输的数据包,则异步控制器202或203控制传输一个异步传输的数据包,如步骤S47;若剩余时间不足以传输一个完整的异步传输的数据包时,则异步控制器202与203停止执行异步传输,即结束。因此,在异步传输阶段,每次传输一个异步传输的数据包前,本发明的USB主机控制器24都会计算微帧的剩余时间,唯有剩余时间充足才会执行异步传输操作,如此循环往复,直至微帧的剩余时间不再足以传输整个异步传输的数据包,便就此结束。
需要说明的是,本发明所述的主机可为计算机,或是其他便携式设备等;而本发明的USB主机控制器可为符合增强主机控制器接口(EHCI)规范的主机控制器。此外,虽然本发明的USB主机控制器是以包含一个周期控制器与两个异步控制器为例,但其并不限于上述的周期控制器或异步控制器的数目,对于包含多个周期控制器或异步控制器的USB主机控制器,仍可沿用本发明的发明构思,并同样能达到精简电路面积的功效。
另外,除上述实施例外,本发明亦适用于其他类型的传输装置,而不仅限于USB主机控制器。
综上所述,本发明的USB主机控制器通过分阶段执行周期传输和异步传输,共享DMA引擎和存储器,大大精简了USB主机控制器的电路面积,并仍能有效避免其内部的存储器出现超载或欠载的情况,此外,通过周期传输阶段结束时执行预取功能,进一步提高了USB主机控制器的运作效能。
本发明虽以优选实施例披露如上,然其并非用以限定本发明的范围,本领域技术人员在不脱离本发明的精神和范围的前提下,可做各种的更动与润饰,因此本发明的保护范围以本发明的权利要求为准。

Claims (20)

1.一种通用串行总线主机控制器,包括
第一控制器,用来控制主机与通用串行总线设备间的第一传输;
第二控制器,用来控制该主机与该通用串行总线设备间的第二传输;以及
第一存储器,分别耦接于该第一控制器与该第二控制器,用来缓存该主机控制器与该通用串行总线设备间传输的数据;
其中,于该第一传输阶段,该第一控制器存取该第一存储器,于该第二传输阶段,该第二控制器存取该第一存储器。
2.如权利要求1所述的通用串行总线主机控制器,还包括
第一直接存储器存取引擎,其中该第一控制器与该第二控制器都是通过该第一直接存储器存取引擎存取该第一存储器。
3.如权利要求1所述的通用串行总线主机控制器,还包括第二存储器,其中于该第一传输阶段,该第一控制器同时存取该第二存储器。
4.如权利要求3所述的通用串行总线主机控制器,还包括第一直接存储器存取引擎,其中于该第一传输阶段,该第一控制器是通过控制该第一直接存储器存取引擎存取该第一存储器与该第二存储器,于该第二传输阶段,该第二控制器通过该第一直接存储器存取引擎存取该第一存储器。
5.如权利要求3所述的通用串行总线主机控制器,还包括第三控制器,其中于该第二传输阶段,该第三控制器存取该第二存储器;以及第二直接存储器存取引擎,其中于该第二传输阶段,该第三控制器通过该第二直接存储器存取引擎存取该第二存储器。
6.如权利要求3所述的通用串行总线主机控制器,其中于该第一传输阶段,当该第一控制器存取达预定数量的数据或者该第一存储器被存满或取空时,该第一控制器控制地址指针指向该第二存储器,以接续存取该第二存储器。
7.如权利要求3所述的通用串行总线主机控制器,其中于该第一传输阶段,当该第一控制器控制传输最后一个第一传输的数据包期间,若该第一存储器与该第二存储器之一空出预定数量空间或者被取空时,则该主机控制器执行预取操作,以预先从该主机取出一个或多个该第二传输的数据包存入到空出该预定数量空间或者被取空的存储器中。
8.如权利要求3所述的通用串行总线主机控制器,其中该第一存储器与该第二存储器的容量之和大于或等于该第一传输的最大数据包的容量;且该第一存储器与该第二存储器的容量均大于或等于该第二传输的最大数据包的容量。
9.如权利要求1所述的通用串行总线主机控制器,还包括计数器,且该主机控制器与该通用串行总线设备间是以该微帧的形式来执行该第一传输与该第二传输,在每一该微帧的传输周期中,该第一控制器先控制执行该第一传输,而后该第二控制器再控制执行该第二传输。
10.如权利要求9所述的通用串行总线主机控制器,其中在同一该微帧中,在每次传输该第二传输的数据包之前,该计数器计算该微帧的剩余时间,以判定剩余时间是否足够传输整个该第二传输的数据包;当判定得出该微帧的剩余时间足够传输整个该第二传输的数据包时,则该第二控制器控制传输该第二传输的数据包;当判定得出该微帧的剩余时间不足以传输整个该第二传输的数据包时,则该第二控制器停止执行该第二传输。
11.如权利要求1所述的通用串行总线主机控制器,其中该第一传输为周期传输,该第一控制器为周期控制器;该第二传输为异步传输,该第二控制器为异步控制器;其中该第一传输的优先级高于该第二传输。
12.一种应用于通用串行总线的主机控制器的控制方法,包括步骤:
于第一传输阶段,通过第一控制器存取第一存储器以执行该主机控制器与通用串行总线设备间的第一传输;
于第二传输阶段,通过第二控制器存取该第一存储器以执行该主机控制器与该通用串行总线设备间的第二传输;
其中,该第一控制器与该第二控制器都是通过第一直接存储器存取引擎存取该第一存储器。
13.如权利要求12所述的控制方法,其中该主机控制器与该通用串行总线设备间是以微帧的形式来执行该第一传输与该第二传输,且在每一该微帧中,该第一控制器先执行该第一传输,而后该第二控制器再执行该第二传输。
14.如权利要求13所述的控制方法,其中在同一该微帧中,在每次传输该第二传输的数据包之前,该主机控制器计算该微帧的剩余时间,以判定剩余时间是否足够传输整个该第二传输的数据包。
15.如权利要求14所述的控制方法,其中当判定得出该微帧的剩余时间足够传输整个该第二传输的数据包时,则该第二控制器传输一个该第二传输的数据包;当判定得出该微帧的剩余时间不足以传输整个该第二传输的数据包时,则该第二控制器停止执行该第二传输。
16.如权利要求12所述的控制方法,还包括:
于该第一传输阶段,该第一控制器通过该第一直接存储器存取引擎同时存取第二存储器。
17.如权利要求16所述的控制方法,还包括:
于该第二传输阶段,使第三控制器通过第二直接存储器存取引擎存取该第二存储器。
18.如权利要求16所述的控制方法,其中于该第一传输阶段,当该第一控制器存取该第一存储器达预定数量的数据时,使该第一控制器的地址指针指向该第二存储器,以接续存取该第二存储器。
19.如权利要求16所述的控制方法,其中于该第一传输阶段,在该第一传输的数据包传送期间,若该第一存储器与该第二存储器之一空出预定数量空间,则执行预取操作,以预先从主机取出一个或多个该第二传输的数据包存入到空出该预定数量空间的存储器中。
20.如权利要求12所述的控制方法,其中该第一传输为周期传输,该第一控制器为周期控制器;该第二传输为异步传输,该第二控制器为异步控制器。
CN2008100995442A 2008-05-13 2008-05-13 通用串行总线主机控制器及其控制方法 Active CN101266584B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2008100995442A CN101266584B (zh) 2008-05-13 2008-05-13 通用串行总线主机控制器及其控制方法
US12/360,123 US7865653B2 (en) 2008-05-13 2009-01-27 Universal serial bus host controller and control methods thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008100995442A CN101266584B (zh) 2008-05-13 2008-05-13 通用串行总线主机控制器及其控制方法

Publications (2)

Publication Number Publication Date
CN101266584A true CN101266584A (zh) 2008-09-17
CN101266584B CN101266584B (zh) 2011-05-11

Family

ID=39989009

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008100995442A Active CN101266584B (zh) 2008-05-13 2008-05-13 通用串行总线主机控制器及其控制方法

Country Status (2)

Country Link
US (1) US7865653B2 (zh)
CN (1) CN101266584B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101976230A (zh) * 2010-09-30 2011-02-16 威盛电子股份有限公司 通用序列总线传输转译器及输入请求同步传输方法
CN102110065A (zh) * 2011-02-21 2011-06-29 山东华芯半导体有限公司 一种减少数据传输的缓存系统
CN101692213B (zh) * 2009-10-23 2012-06-27 威盛电子股份有限公司 通用串行总线主机控制方法和通用串行总线主机控制器
CN103019975A (zh) * 2012-11-20 2013-04-03 福建星网锐捷网络有限公司 通用串行总线传输控制方法及主机设备
US8521938B2 (en) 2009-10-21 2013-08-27 Via Technologies, Inc. Universal serial bus host controller and control method thereof
TWI411922B (zh) * 2009-11-16 2013-10-11 Via Tech Inc 通用串列匯流排主機控制器和通用串列匯流排主機控制方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8521934B1 (en) * 2010-02-25 2013-08-27 Fresco Logic, Inc. Multi-port context-based host controller
CN102141970B (zh) * 2011-03-21 2012-12-19 深圳市理邦精密仪器股份有限公司 一种串行通信的装置
DE102013216699A1 (de) * 2013-08-22 2015-02-26 Siemens Ag Österreich Verfahren und Schaltungsanordnung zur Absicherung gegen Scannen eines Adressraums
CN104935988B (zh) * 2015-06-10 2018-05-08 青岛海信电器股份有限公司 一种显示电视信号的方法及电视接收设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100351824C (zh) * 2001-09-27 2007-11-28 Nxp股份有限公司 总线系统和用于连接到总线的总线接口
US6721815B1 (en) * 2001-09-27 2004-04-13 Intel Corporation Method and apparatus for iTD scheduling
US7478235B2 (en) * 2002-06-28 2009-01-13 Microsoft Corporation Methods and systems for protecting data in USB systems
CN100476775C (zh) * 2003-05-15 2009-04-08 Nxp股份有限公司 用于总线通信设备的主机控制器以及总线通信设备
WO2005124567A1 (en) * 2004-06-15 2005-12-29 Koninklijke Philips Electronics N.V. Bus controller for transferring data
US7490255B2 (en) * 2006-06-30 2009-02-10 Intel Corporation Power efficient flow control model for USB asynchronous transfers

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8521938B2 (en) 2009-10-21 2013-08-27 Via Technologies, Inc. Universal serial bus host controller and control method thereof
CN101692213B (zh) * 2009-10-23 2012-06-27 威盛电子股份有限公司 通用串行总线主机控制方法和通用串行总线主机控制器
TWI411922B (zh) * 2009-11-16 2013-10-11 Via Tech Inc 通用串列匯流排主機控制器和通用串列匯流排主機控制方法
CN101976230A (zh) * 2010-09-30 2011-02-16 威盛电子股份有限公司 通用序列总线传输转译器及输入请求同步传输方法
CN101976230B (zh) * 2010-09-30 2014-04-23 威盛电子股份有限公司 通用序列总线传输转译器及输入请求同步传输方法
CN102110065A (zh) * 2011-02-21 2011-06-29 山东华芯半导体有限公司 一种减少数据传输的缓存系统
CN102110065B (zh) * 2011-02-21 2012-09-19 山东华芯半导体有限公司 一种减少数据传输的缓存系统
CN103019975A (zh) * 2012-11-20 2013-04-03 福建星网锐捷网络有限公司 通用串行总线传输控制方法及主机设备
CN103019975B (zh) * 2012-11-20 2016-01-27 福建星网锐捷网络有限公司 通用串行总线传输控制方法及主机设备

Also Published As

Publication number Publication date
CN101266584B (zh) 2011-05-11
US7865653B2 (en) 2011-01-04
US20090287871A1 (en) 2009-11-19

Similar Documents

Publication Publication Date Title
CN101266584B (zh) 通用串行总线主机控制器及其控制方法
EP2530599A1 (en) Method and mobile terminal for realizing audio transmission
CN102075401B (zh) 在pcie总线上传输报文的方法、设备和系统
CN101290604A (zh) 信息处理设备和方法以及程序
CN1969270B (zh) 用于处理拆分事务的总线控制器
CN103714027B (zh) 一种直接内存存取控制器的数据传输方法及装置
CN111309656B (zh) 一种fpga通用dma ip核
US10951741B2 (en) Computer device and method for reading or writing data by computer device
CN108763121B (zh) TTE端系统适配卡PCIe控制器的中断操作方法
CN116069711B (zh) 直接内存访问控制器、异构设备、内存访问方法及介质
CN112947857B (zh) 一种数据搬移方法、装置、设备及计算机可读存储介质
CN101937413B (zh) 一种i2c总线的通信方法
CN102841869A (zh) 一种基于fpga的多通道i2c控制器
CN103150216B (zh) 一种SoC集成的多端口DDR2/3调度器及调度方法
CN101303685B (zh) 可提升通用序列总线储存设备的读写数据速率的方法
US5923852A (en) Method and system for fast data transmissions in a processing system utilizing interrupts
EP0772831B1 (en) Bidirectional parallel signal interface
US20070011386A1 (en) Usb host controller with memory for transfer descriptors
CN106294225A (zh) 一种数据读取方法、对端设备及控制器
CN116909966A (zh) Usb带宽扩展方法、装置及可读存储介质
TWI356305B (en) Usb host controller and control method thereof
KR20070024600A (ko) 호스트 제어기 및 그 동작 방법
CN117312202B (zh) 片上系统和用于片上系统的数据传输方法
CN111625486B (zh) 通用串行总线装置及其数据传输方法
US20050271126A1 (en) High-speed transmission apparatus

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant