首页> 中国专利> USB便携式(On-The-Go)控制器

USB便携式(On-The-Go)控制器

摘要

本发明提供一种用以实施便携式(On-The-Go,OTG)功能性的通用序列总线(Universal Serial Bus,USB)控制器技术。该装置可具有符合加强型主机控制器接口(Enhanced Host Controller Interface,EHCI)的主机控制单元,及将OTG状态机部分以硬件实行及部分以软件实行的OTG控制单元。该OTG控制单元可具有OTG控制寄存器与OTG状态寄存器,此寄存器可由软件访问。此外,该USB控制器装置可具有装置控制单元以实行装置功能性且可具有端口多任务器以指派实体端口至主机或装置控制单元。该OTG控制单元可包含于该端口多任务器中。此外,软件驱动程序可读取OTG状态寄存器以响应从该USB控制器装置接收到的中断讯号,并写至该OTG控制寄存器以迫使该USB控制器改变其OTG状态。

著录项

  • 公开/公告号CN101065740A

    专利类型发明专利

  • 公开/公告日2007-10-31

    原文格式PDF

  • 申请/专利权人 先进微装置公司;

    申请/专利号CN200580040548.8

  • 发明设计人 K·海瑟;S·默勒;

    申请日2005-11-29

  • 分类号G06F13/38;

  • 代理机构北京纪凯知识产权代理有限公司;

  • 代理人戈泊

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-17 19:20:12

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2010-09-08

    授权

    授权

  • 2008-01-09

    实质审查的生效

    实质审查的生效

  • 2007-10-31

    公开

    公开

说明书

技术领域

本发明大致关于通用序列总线(Universal Serial Bus,USB)控制器装置及方法,尤指实行便携式(On-The-GO,OTG)功能性。

背景技术

通用序列总线最初发展于1995年用来定义外部扩充的总线,该总线促进附加的外设装置至计算机系统的连接。该USB技术是经由个人计算机(Personal computer,PC)主机控制器(host controller)硬件与软件以及外设亲和性主从式协议来实行并实现坚固的连接与缆线装配。USB系统可透过多端口集线器扩充。

在USB系统中,该系统软件的角色经由隐藏硬件实行细节对所有应用程序的软件提供输入/输出架构的一致性的观点。特别是,该系统软件管理接口设备的动态附装与移除并与该接口设备通讯以找出其身份(identity)。在执行期间,该主机开始特定的接口设备的异动(transaction),而各外设接收其异动并相应地响应。

将集线器结合于系统以提供额外的连接于USB的接口设备,并对附装装置提供经管理的电源。该接口设备为从属设备(slave),其必须对从主机送出的请求异动做出反应。此种请求异动包括关于该装置及其配置的详细信息。

尽管这些功能及通讯协议已实行于USB1.1规格,然此技术仍持续改良以提供更高效能的接口。图1例示实例USB 2.0系统,该系统包含主机控制器100、数个USB装置115、120、125、130、以及两个集线器105、110。在图1的系统中,采用该集线器105、110是用以增加连接,但在其它USB 2.0系统中,该USB装置可直接连接至该主机控制器100。

如以上所提,USB 2.0提供较高性能的接口,且速度改良可能达到40倍。此外,如由图1明显可知,USB 2.0系对USB 1.1回溯兼容(backward compatible)的,因为USB 2.0允许连接的USB 1.1装置120、125、130系由相同的主机控制器110所驱动。甚至可使用USB1.1集线器110。

如图1所示,可直接连接USB 1.1装置120至USB 2.0集线器105。此外,亦可直接连接该USB 1.1装置120至主机控制器100。这使得USB 2.0主机控制器与集线器的能力依不同装置的基础上而达成较高以及较低的传输速度成为可能。

请看图2所例示的USB 2.0系统的该系统的软件与硬件。该系统组件如图中所示可经由定义数层而阶层式地井然有序的排列。

在最上层中,客户端驱动程序软件200执行于该主机PC上并对应于特定的USB装置230。该客户端软件通常是操作系统的部分或随同该装置所提供者。

该USB驱动程序205为系统软件总线驱动程序,其提取(abstrart)该特定主机控制器驱动程序210、220的细节以用于特定的操作系统。该主机控制器驱动程序210、220在特定的硬件215、225、230与该USB驱动程序205之间提供软件层用以提供驱动-硬件的接口。

尽管到目前为止所讨论的诸层都是以软件实行的,然该最上层的硬件组件层包括该主机控制器215、225。这些控制器是连接至该执行终端使用者的功能的USB装置230。

由图明显可知有一个主机控制器225,该主机控制器225是加强型主机控制器(EHC)以用于高速度USB2.0的功能性。此主机控制器以符合USB 2.0的加强型主机控制器接口(Enhanced Host ControllerInterface,EHCI)的规格来运作。在软件端上,主机控制器225具有相关联的特定的主机控制器驱动程序(Enhanced Host ControllerDriver,EHCD)220。

此外,有主机控制器215用以全速以及低速运作。该通用主机控制器接口(Universal Host Controller Interface,UHCI)或开放主机控制器接口(Open Host Controller Interface,OHCI)是应用于通用或开放主机控制器(UHC/OHC)215的两个工业标准以提供USB 1.1主机控制器接口。该主机控制器215于最低的软件层中已指定通用/开放主机控制器驱动程序(UHCD/OHCD)210。

因此,符合USB 2.0的主机控制器系统包含必须符合该EHCI规格的驱动程序软件以及主机控制器硬件。尽管此规格定义寄存器等级(register-level)接口与相关联的常驻型存储器(memory-resident)数据结构,但其不定义也不描述建构符合规格的主机控制器所需的硬件架构。

请参考图3,所绘制的是常见的主机板布局的硬件组件。在主机板上的基本组件可包括中央处理器单元(Central Processing Unit,CPU)300、北桥(northbridge)305、南桥(southbridge)310、以及系统存储器315。该北桥305通常为在核心逻辑芯片组中的单一芯片,该北桥连接该处理器300至该系统存储器315以及绘图加速连接端口(Accelerated Graphic Port,AGP)与外设组件接口(PeripheralComponent Interface,PCI)总线。常用于个人计算机中的PCI总线系用以提供介于处理器与如影像卡、声卡、网络适配卡以及调制解调器的外设装置之间的数据信道。该AGP总线是高速图形扩充总线,其直接连接显示配接器与系统存储器315。AGP的运作与该PCI总线无关。要注意的是,其它主机板布局存在着不含北桥于其中,或具有北桥却没有AGP或PCI的选择。

南桥310通常是在系统核心逻辑芯片组中的芯片,其控制整合驱动电子接口(Integrated Drive Electronics,IDE)或加强的整合驱动电子接口(Enhanced IDE,EIDE)总线、USB总线,南桥提供随插即用支持、控制PCI-ISA(工业标准架构)桥接器、管理键盘/鼠标控制器、提供电源管理特征、以及控制其它接口设备。

USB之功能性通常可于南桥装置或其它辅助芯片中实行,而可成为个人计算机之芯片组的一部份。如上所述,此已内建于南桥或辅助芯片中的功能性提供了普及的接口以在计算机与接口设备之间交换数据。

为了让低功率装置具有有限的主机能力,已草拟USB 2.0规格的便携式(On-The-Go)附录。该附录定义两种通讯协议:对话请求协议(Session Request Protocol,SRP),其乃让外设装置要求主机打开USB电源,以及主机协商协议(Host Negotiation Protocol,HNP),其乃让外设装置成为USB主机。因此,USB 2.0规格的附录允许可携带装置扮演有限USB主机的角色,而不会对支持所有USB功能的个人计算机造成负担。

除此之外,该OTG附录还指定双重角色(dual-role)装置,该装置可如同接口设备般以全速(以及选择性地以高速)运作,且可如同主机般进一步地以全速(以及选择性地以低速与高速)运作。此外,A装置在对话开始时指定为主机。在某些条件下,A装置将释放主机的角色至双重角色的B装置。B装置在对话开始时为接口设备。若该装置为双重角色,则可从该A装置授予(grant)主机的角色给该装置。

以上所提的两种通讯协议,SRP及HNP,系经由状态图说明于OTG附录。这些状态图定义多个OTG状态以及在这些状态之间的转换(transitione)发生的诸项条件。然而,实行状态机以符合说明于OTG附录中的状态图一般发现系相当复杂。特别是实行该状态机可能需要对提供传统的USB功能性的电路做修改。这会导致电路研发以及制造成本的增加。

发明内容

提供一种改良的USB控制器技术用以实行OTG功能性,其可以实现降低研发与制造成本。

在一个实施例中,提供具有OTG功能性的USB控制器装置。该USB控制器装置包含具有符合EHCI的主机控制器的主机控制器单元,该主机控制器适于实行主机功能性,而在至少一个USB外设装置进行数据输入与/或输出。该USB控制器装置进一步包含适于实行OTG状态机以控制该主机控制单元的运作的OTG控制单元。该OTG控制单元适于将该OTG状态机部分以硬件实行且部分以软件实行。

在另一实施例中,提供具有OTG功能性的USB控制器装置。该USB控制器装置包含具有符合EHCI的主机控制器的主机控制单元,该主机控制器适于实行主机功能性,而对至少一个USB外设装置进行数据输入与/或输出。该USB控制器装置进一步包含OTG控制单元,该OTG控制单元适于控制该主机控制单元的运作。该OTG控制单元包含OTG控制寄存器其保留控制信息以控制该OTG控制单元的运作,以及OTG状态寄存器其保留该OTG控制单元的状态信息。该OTG控制及状态寄存器可由软件访问的。

根据进一步的实施例,USB控制器装置包含具有符合EHCI的主机控制器的主机控制单元,该主机控制器适于实行主机功能性,而对至少一个USB外设装置进行数据输入与/或输出。该USB控制器装置进一步包含装置控制单元,该装置控制单元适于实行装置功能,而对至少一个USB主机装置进行数据输入与/或输出。此外,该USB控制器装置包含端口多任务器(port multiplexer),该端口多任务器适于指派实体端口至该主机控制单元或该装置控制单元,以及适于实行OTG功能性的OTG控制单元。该OTG控制单元包含于该端口多任务器中。

在进一步的实施例中,提出一种储存指令的计算机可读取储存媒体,当在处理器上执行该指令时,经由实行至少部份的OTG状态机而导致处理器驱动具有OTG功能性的USB控制器装置,以控制符合EHCI的主机控制器的运作。

根据另一实施例,提出一种储存指令的计算机可读取储存媒体,当在处理器上执行该指令时,经由访问USB控制器装置的OTG控制及状态寄存器,而导致处理器驱动具有OTG功能性的USB控制器装置。该OTG控制及状态寄存器保留适合用以实行该OTG功能性的OTG控制与状态信息。

此外,具体实施例提供一种提供OTG功能性于USB控制器装置的方法,该USB控制器装置具有OTG控制寄存器及OTG状态寄存器,两者皆可由软件驱动程序访问。该方法包含下列步骤:经由软件驱动程序读取该OTG状态寄存器以响应从该USB控制器装置所接收到的中断讯号、以及经由软件驱动程序写入该OTG控制寄存器以迫使该USB控制器装置改变其OTG状态。

附图说明

所附图式是纳入并形成说明书的一部份用以解释本发明主旨的目的。图式并非用来解释作为限制本发明而仅作为例示和说明本发明如何达成与使用的实例。从上文及本发明之更特定的描述,更进一步的特征与优点将会更明显,如附图中所例示者,其中:

图1显示符合USB 2.0的系统的实例;

图2显示于图1的系统中的硬件与软件组件层;

图3显示常见的主机板布局;

图4为根据实施例显示具有OTG功能性的USB控制器装置的组件的方块图;

图5为根据实施例显示图4部分的配置的主机控制器的组件的方块图;

图6为显示根据实施例的OTG控制器;以及

图7为根据实施例显示如何能完成软件控制的状态转换的流程图。

主要组件符号说明

100  主机控制器 105、110 集线器

115、120、125、130USB装置

200  客户端驱动程序软件

205  USB驱动程序

210、220主机控制器驱动程序

215、225主机控制器(硬件)

230  USB装置(硬件)

300  处理器305北桥

310  南桥 315存储器

400  USB控制器装置 405桥接器

410  装置控制单元

415  主机控制单元(主机控制器)

420  端口多任务控制器 425OTG控制器

500  主机控制器

505  辅助主机控制器(OHC0)

510  辅助主机控制器(OHC1)

515  端口路由器 600OTG状态寄存器

605  OTG控制寄存器 610OTG定时器寄存器

615  OTG中断寄存器 620OTG中断致能寄存器

700、705、710、715、720、725  步骤

具体实施方式

本发明的例示的实施例将参考图式来做说明,其中类似的组件与结构是由类似的附图标记来表示。

请参考图标,特别是图4,根据实施例之USB控制器装置400包含主机控制单元415、装置控制单元410、桥接器405、以及端口多任务控制器420。本实施例之端口多任务控制器420包含OTG控制器425,该OTG控制器425对USB控制器装置400实行OTG功能性。以下说明将会明了增加OTG控制器425至该端口多任务控制器420允许以最小的努力完成OTG功能性,因为仅用些许额外的硬件就可用标准或现成(off-the-shelf)的电路来实行主机与装置控制单元415、410。

在本实施例中,主机控制单元415系EHC/OHC的组合,且该端口多任务控制器420控制该主机控制单元415与该装置控制单元410至共享的实体端口之访问。以下将做更详细的说明,该主机控制单元415包含端口路由(port route)设备用以此目的。该装置控制单元410系经由装置UTMI(USB 2.0传送接收器宏组件接口(TransceiverMacrocell Interface))接口连接至该主机控制单元415。

桥接器405可适用于广泛的应用程序而且又可不受限于本实施例之USB 2.0子系统。桥接器405的主要任务是用来转换总线协议。除此之外,该桥接器405可当作仲裁器(arbiter)或译码器(decoder)以映像一个协议之多个端口至另一协议之一个端口。在本实施例中,该多个端口(multiple ports)可以是具有丛发(burst)与分割运作的非封包化(non-packetized)总线端口,然而其它端口可严格地封包化。

该装置控制单元410系用来实行装置功能性以对USB主机装置进行数据输入与/或输出。该装置控制单元410可支持多个双向逻辑端点。

该主机控制单元415系用来实行主机功能性以对一个或多个USB外设装置进行数据输入与/或输出。将于以下说明讨论,该主机控制单元415可支持两个(或更多个)USB端口、一个EHC以及一个OHC辅助控制器。

请参考图5,根据实施例显示该主机控制器415之主要组件。一般而言,该主机控制器415、500包含三个主要组件:加强型主机控制器(EHC)225、一个或多个辅助主机控制器215、以及端口路由器515。

在本实施例之加强型主机控制器单元215中,有两个符合OHCI之主机控制器,OHC0 505-及OHC1 510。这些控制器处理所有符合USB 1.1的流量且可包含旧标准(legacy)之键盘仿真以用于无法感知USB(non-USB anare)的环境。

端口路由器515指派实体端口接口给其个别的拥有者。若USB 2.0感知驱动程序系存在于系统中,其将指派端口给任一辅助主机控制器505、510以用于低速与全速的装置及集线器(USB 1.1流量)或指派给该EHC 225以用于高速装置与集线器。

亦即,示于图5中的USB 2.0主机控制器符合EHCI规格且允许使用存在的OHCI USB 1.1主机控制器以所需最小的改变以与该端口路由器区块515介接(interface),而非USB 1.1实体装置。

图5的符合USB 2.0之主机控制器可定义作为硬件架构以实行符合EHCI的主机控制器以整合于南桥310中。该主机控制器于是存在于USB-2模拟输入/输出端子(pin)以及连结接口模块之间用以介接朝向系统存储器之向上传输(upstream),例如若有一北桥存在于系统中,则介接至北桥。

如图5所示,该端口路由器515具有附加的接口以连接至该装置控制单元410及该端口多任务控制器420(其在本实施例中包含OTG控制器425)。连接到该装置控制器的接口系前述的UTMI接口。连接到该端口多任务控制器的接口系控制接口以用于主机/装置的切换。

回到参考图4,在本实施例中,可以是该端口多任务控制器之基本功能以指派共享的实体端口至该主机控制单元415或该装置控制单元410。在本实施例中,此指派工作系经由响应该端口多任务控制器420所收到的软件指令而完成。

为了达成其功能性,本实施例之该端口多任务控制器420包含如能力寄存器及多任务控制寄存器之软件可访问寄存器。可从特定的寄存器字段经由软件读取数据而访问上述之两种寄存器,且该两种寄存器写入数据至该字段。然而,请注意,至少某些字段可以是只读字段。

在端口多任务控制器能力寄存器中,可以有寄存器字段以储存自动拉起致能信息(pull-up enable information),当指派端口至装置控制单元410时,该自动拉起致能信息可用来控制如何激活该USB控制器装置之拉起寄存器。该自动拉起致能信息可指示是否软件需要激活该拉起(pull-up)或是否一旦在USB端口之电压系在有效的电压范围内就激活该拉起。

在该端口多任务控制器能力寄存器中可以有进一步的寄存器字段以储存过流极性(overcurrent polarities)以及有关于过流处理之信息。例如,可储存信息用以控制对某些状态之过流报告系如何处理。此外,能力寄存器可保留在端口电源极性上之信息及保留用于控制从主机控制器之端口电源控制信息系如何映像之处理。

该端口多任务控制器420之多任务控制寄存器可包括指示是否在USB端口上的电压系在有效范围内(例如高于4.4伏特)之寄存器字段;指示是否拉起系停用或启用之拉起致能信息;以及若有任何端口的话,指示指派端口至哪一个控制单元之端口多任务控制信息。

如上所述,该OTG协议的支持系实施于本实施例中作为该端口多任务控制器420的部分。这允许使用存在或现成的单元来实施该控制器410、415。此外,本实施例之OTG控制单元425允许软件来实施指定于OTG的附录中的OTG状态机之部分。为了让USB软件驱动程序来实施OTG状态机的部分,该OTG控制单元425可提供状态及控制设备,其将参考图6做更详尽的说明。

如由图6明显可知,该OTG控制单元425具有可经由软件以只读模式或以写入访问模式访问的多个寄存器600-620。如图6所示,该寄存器包括OTG状态寄存器600、OTG控制寄存器605、OTG定时器寄存器610、OTG中断寄存器615、以及OTG中断致能寄存器620。

首先讨论可经由软件以只读模式访问的OTG状态寄存器600,该寄存器保留该OTG控制单元425之状态信息于多个寄存器字段中。

在第一个OTG状态寄存器字段中,可储存定时器到期信息。当OTG定时器到期时,此信息可经由硬件控制以设定一位。当定时器目前正计数中或在停止状态时,可取消(deassert)该位。

在进一步的寄存器字段中,OTG状态寄存器600可保留端口暂停(susponsion)信息,该端口暂停信息指示指派至主机控制单元415或指派至该装置控制单元410之端口是否暂停或将被个别的控制单元所暂停。详而言之,当该端口系指派至主机,如果该个别的控制器已暂停该端口,则可设定该端口暂停字段位。当该端口系指派至装置时,如果该控制器已侦测到暂停的状况于总线上,则设定该位。

OTG状态寄存器600之另一个寄存器字段可保留端口连接信息,该端口连接信息指示端口指派至主机控制单元415或装置控制单元410。详而言之,当该端口连接至主机时,如果该适合的主机控制器已建立连接至远程装置,则设定该寄存器字段位。当该端口指派至装置时,如果该装置控制器已由远程主机联系,则设定该位。

要注意的是,虽然此寄存器字段可经由软件以只读模式访问,但该端口连接寄存器字段位可在任何时间由软件覆写(overwrite)。为了达成此目的,该OTG控制寄存器605可包括(可写入的)寄存器字段,该寄存器字段可用来覆写该OTG状态寄存器之端口连接寄存器字段的值。以下将会做更详尽的描述。

在OTG状态寄存器600中可有进一步的寄存器字段以提供状态信息于该OTC控制单元425。例如,可有寄存器字段其储存全速(FullSpeed,FS)输出致能信息、端口速度信息、以及指示是否达到某种线状态或电压值的信息。

对于OTG控制寄存器605,其保留控制信息以控制该OTG控制单元425之运作,可又有数个寄存器字段。例如,可有保留定时器计数条件信息以及控制信息之寄存器字段,该信息有关于端口是否被施加电力、是否被指派至某些控制单元、或者是否自动或软件所控制的拉起被致能。

要注意的是,OTG控制寄存器605的一些寄存器字段可以从以上讨论的端口多任务控制器寄存器以别名命名(alias),以促进该OTG技术之硬件实施以及软件控制。

OTG控制寄存器605可进一步包含写入端口连接寄存器字段其保留写入端口连接信息。

如上所述,此寄存器字段可用来覆写该OTG状态寄存器600之端口连接寄存器字段的值。亦即,软件可写至OTG控制寄存器605之写入端口连接寄存器字段以判定(assert)或取消OTG状态寄存器600之个别寄存器字段位。即使该OTG状态寄存器600系只读寄存器,此功能性允许经由软件改变端口连接状态。

详而言之,当该端口指派至主机时,若端口为EHC所拥有且成功地使其可高速度(High Speed,HS)操作,则判定该端口连接状态寄存器字段位。此外,当该端口指派至主机时,如果OHC正好已侦测到连接,则可判定该状态寄存器位。当该端口指派至装置时,如果在USB侦测到下行行为(downstream actirity)时,则判定该状态寄存器位。当该端口指派至主机时,如果该端口为EHC所拥有且正好已侦测到断线,则取消该状态寄存器位。类似地,如果OHC正好已侦测到断线,则取消该位。此外,每当该USB端口之电压跌落到低于0.8伏特时,则可取消该位。所有的这些功能性可在硬件控制下达成。

OTG控制寄存器605之写入端口连接寄存器字段增加由软件改变状态位的可能性。这增加OTG控制功能性之弹性,其允许软件驱动程序迫使USB控制装置进入到特定的端口连接状态。

请返回参考图6,OTG控制单元425可包含更多的寄存器。例如,该OTG定时器寄存器610可具有寄存器字段以储存目前定时器值(其可以是只读),以及预载值以用以倒数计时之预载(preload)。该OTG中断寄存器615可储存信息于其字段中以指示是否该定时器已到期、端口暂停或连接已改变、侦测到接收行为、已改变端口速度、侦测到HS断线、已改变线状态、或满足某种电压范围。该OTG中断致能寄存器620可储存中断致能信息于其寄存器字段中以指示全域(global)中断机制是否致能或用以储存于OTG中断寄存器615的信息之中断是否致能。

由上述的各种实施例的说明,提供了USB控制器装置技术以允许由状态机控制组件的方式来实行OTG功能性,该状态机可部分于硬件及部分于软件实施。为了此种目的,可透过OTG状态与控制寄存器600、605(以及可选择其它OTG寄存器)传递控制与状态信息于执行软件驱动程序之处理器与OTG控制单元425之间。该控制寄存器位控制内部与外部的切换,且该状态寄存器位指示从OTG控制单元425来之相关讯号的状态。

在实施例中,该OTG控制寄存器605具有两个地址。写至一个地址系设定所选定位,而写至另一个地址系清除该选定的位。此架构提供与USB控制器装置之其它组件的最大兼容性。

此外,寄存器别名命名可用来达成尽可能与可选择系统配置(configuration)有关的弹性。例如,可选定具有静态端口指派之配置,如仅提供装置功能性。在此例子中,基本输入输出系统(Basic InputOutput System,BIOS)于是在计算机系统激活时设定该端口多任务器。只要该系统激活了,则该寄存器内容永久无法改变。然而,若选择另一配置其使用OTG功能性,则USB端口取决于使用者的要求,而作为装置端口或作为主机端口且可在任何时间改变。端口多任务器于是为OTG驱动程序所用。因此,寄存器别名命名允许BIOS访问与OTG驱动程序访问亦在寄存器层次被分离。这使得BIOS可在不了解OTG驱动程序的情况下作用成为可能。

在实施例中,USB控制器装置可支持下列的USB设定:(i)至少一个主机端口与一个外设装置端口,(ii)两个或更多个主机端口,(iii)一个双角色的装置端口与至少一个附加的主机端口。该双角色的装置端口亦可用来作为能SRP(SRP capable)外设装置端口。

当设定本实施例之USB控制器装置以具有除了一个双角色的装置端口外之一个专用的USB主机端口时,软件驱动程序可维护与主机控制器状态机分离之OTG状态机。

如上所述,实施例系提供以部分于硬件及部分于软件来实施OTG状态机。这可经由实施一些状态于硬件以及其它状态于软件来达成。例如,以双角色装置状态机为例,除了a_suspend、a_peripheral、以及b_wait_action状态外,该软件驱动程序可实施所有的状态。这三种状态于是可实施于硬件。此外,经由实施OTG状态机所指定之某些但非所有的状态转变于软件中,可将该OTG状态机部分实施于硬件及部分实施于软件。

现在参考图7,提供流程图以例示软件控制状态转变如何发生。在步骤700中,该OTG控制单元425侦测到可要求软件状态机改变其状态之事件。该OTG控制单元425于是储存个别的状态信息于OTG状态寄存器600中(步骤705)以及发送中断讯号给处理器(步骤710)。为了响应该中断讯号,USB软件驱动程序在步骤715中读取该状态寄存器,基于目前的状态及状态寄存器内容做适当的状态改变(步骤720),以及写入该OTG控制寄存器605以改变该切换设定,亦即,对OTG硬件做出适当的改变(步骤725)。

尽管本发明已根据于此所建构有关于实体实施例做出说明,然对在此技术领域熟悉此技艺者系显而易见的,即在以上教导的启发中以及附加的权利要求书但不脱离本发明之精神与设定的范畴内可做出本发明之各种修改、变化与改良。此外,为了不非必要性地模糊本文所述的发明起见,在此技术领域中具有通常知识者所熟悉的这些领域并未描述于本文中。因此,应该了解本发明不为特定的例示实施例所限制,但仅由附加的权利要求书的范畴所限制。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号