接口/总线/驱动
USB已成为连结各种外围装置与个人计算机的普及标准。新推出的USB 规格附录 (USB On-The-Go (OTG) Supplement) 让USB能进一步支援「端对端」(peer-to-peer) 的连结模式,以及让装置可以扮演主控端或外围端的角色。此外这套新标准亦提供更佳的电源效率管理。
本文将简述USB规格附录的各种功能,叙述此一技术当前的发展状况,并以Cypress EZ-OTG控制器为例,进一步来说明USB OTG实际能。
USB技术发展背景介绍
USB规格于1996年问市,提供一套简易、符合经济效益、操作简便的连结机制,让各种外围组件能与个人计算机相互连结。从打印机、扫瞄器、到烧录器,USB已成为连结大多数PC外围装置的主要接口。
在2000年, USB2.0在全速12Mbps与低速1.5Mbp两个模式之外,更加入了480Mbps的高速模式,USB的传输速度一举提高40倍,使USB更适合支持各种高效能外围设备,例如像大容量储存装置以及数字摄影机等。此项规格已成功地迈入全新的阶段,为行动装置市场提供更好的服务。
USB规格附录在2001年12月正式登场。这套增补规格定义了机构、电子、以及通讯协议等原理,让USB可以简易地运用在行动科技中。
市场对OTG增补规格的需求
为了解OTG的各种优点,首先要了解USB背后的发展原理以及可携式装置的特殊需求,才能体会USB在因应这些需求时所欠缺的功能。
USB 最初是设计成一套主从式通讯协议(master-slave protocol),可以运用在一组主控端以及其它可能的多组外围端。因此,系统的操控机制主要落在主控端设备上。PC有大容量的储存空间,可储存趋动程序与应用软件,故能在有需要时立即安装新的软件。USB使用方向性的接线,在主控端与外围端的插头上使用不同型状的设计,避免使用者将接线插错方向。在电源方面也是假设主控端设备能为系统提供无限时的电源而设计的。
随着微处理器的效能、内存储存密度、以及电池技术持续演进,促使各种性能优越的可携式装置急速的成长,例如像行动电话、MP3随身听、数字相机、以及PDA等。此类装置功能的扩充促使了与PC、外围装置、以及其它可携式装置分享数据的需要。
这些新装置的许多应用层面以及通讯需求,已超越USB当初制定时的考量。各种可携式装置之间或与外围设备之间的串连,通常以一对一的形式进行,与一般PC与周边装置的一对多连结模式不同。串连功能相近的装置,其模式较接近端对端 (peer-to-peer),而非PC与外围装置之间的主从关系。的确,可携式装置有时较像外围装置,有时则须扮演主控端的角色。
由此可见,由于USB最初制定时的各种假设,加上各种可携式装置不同的需求,让典型的USB技术在支持可携式装置是不理想的。但由于USB本身具备熟悉度、使用简易、符合成本、以及大量装置安装USB等优势,因此OTG规格附录的宗旨在于缩小规格差异,将USB的优势利用在迅速成长的可携式装置市场中。
OTG 机构规格
在最底层的规格方面,OTG规格附录为克服规格效能上的差距,在尺吋、连结效率、以及耐用度方面增加许多机构性功能。
在1996年规格中所制定的标准USB接头尺吋远小于平行或串行端口的接头,但使用于迷你型手机或MP3随身听时,尺吋还是太大。USB 2.0规格上市及OTG规格附录的Mini-A 与Mini-B型的插头与插座,便是针对此需求推出的。新的插头与插座尺吋小于原先的全尺吋型插头与插座,更适合在各种可携式装置上的使用。
在可携式装置应用USB的最大障碍就是方向性接线的设计。USB规格规定所有邻近主控端(「上行」)的连结埠都须使用A接头连接,而邻近外围端(「下行」埠)的连接埠则使用B接头。这种模式在PC与外围装置上可顺利运作,因为使用者不可能把线接错方向。但若是当可携式装置同时扮演主控端(一部PDA连至打印机)与外围端(同一部PDA连至PC进行数据更新),则这种模式就较不适用。
OTG规格附录以定义新型的连结器来解决这方面的问题,这个连结器即为Mini-AB型插座。新型插座应用在双重角色的装置(能扮演主控端或外围端),能接上Mini-A 或Mini-B插头。从此以后,双重角色的装置不再需要两种不同的插头即可以任意扮演主控端或外围端。
Mini-AB的秘密即是新增ID pin设计的Mini接头 – 在以往标准USB接头中所看不到的pin。在Mini-A插头上的pin与接地线之间呈短路状态(shorted to ground),而在Mini-B插头上则呈未连结状态。双重角色的装置利用这个ID pin辨识连结的插头的属性,并藉此决定要扮演的角色。这种设计让单接头的装置能使用USB方向性缆线扮演主控端或外围端的角色。
最后,OTG规格附录包括一项微小但对最初USB规格重要的耐用度的提升。USB规格要求插头与插座必须能承受1500次的插拔。这个规范对许多桌上型系统(例如像桌上型PC的键盘在整个生命周期中可能仅会插拔三到四次)而言十分足够,但对于一些可携式系统而言可能稍嫌不足。例如,在外奔波的职员每天须将PDA与行动电话连接数十次。OTG规格将插头与插座的插拔耐用度门坎提高至5000次,足以让机动商务人士在至少3年半中放心地插拔各种可携式装置的插头。
主控端与装置角色的切换
OTG增补规格新定义的Mini-AB插座,让配备一组连接器的装置能扮演主控端或外围端的角色。具备这种能力的装置称为「双重角色装置」(dual-role device, DRD )。例如,使用者可将双重角色相机连至PC。连接在线的A插头可连至PC,连结在线的Mini-B插头则连至数字相机。相机可利用插头上的ID pin侦测发现应扮演外围端的角色。在这种组态下,使用者可将相片从数字相机复制到PC。
运用Mini-AB插头,使用者可利用一端为Mini-A插头而另一端为Standard-B插头的传输线,将相机直接连至打印机。B插头可插至打印机的B插座,而Mini-A插头在插至相机的Mini-AB插座时,就会通知相机扮演主控端的角色。在这种组态下,使用者可直接将影像从打印机上印出,而不须先将影像上传至PC。
在上述的状况中,最初USB规格规范的方向性接线配合新定义的Mini-AB接头,让相机能在两种状态下都能顺利运作。
但是,若两组双重角色型装置进行连结时,会发生什么状况呢?
OTG规格附录将这种情况称为主控端协商通讯协议(host negotiation protocol, HNP) 的传输机制。如上述,USB原先是规画成一种主从式通讯协议,总线上所有传输作业都是由主控端启动。当双重角色装置连上Mini-A插头时,预设状态就会切换成主控端的角色。若是连上Mini-B插头时,预设状态则会切换成外围端角色。但使用者不必拔下再插上接头,便能让双重角色装置从主控端切换为外围端模式。透过HNP,原本预设状态为外围端的双重角色装置,可发送要求讯号并切换为主控端。这种功能让现有的USB主从架构能提供 「peer-to-peer」的作业模式。
图1 介绍主控端协商通讯协议。在执行HNP时,A装置(连至传输在线的Mini-A插头) 必须先让B装置运用OTG增补规格规范的Set Feature功能取得总线的控制权。启动后,B装置将从A装置手上接管总线的控制权。当A装置想让B装置扮演主控端的角色时,它会停止所有的总线的传输作业(点 1)。之后B装置能降低D+线发送中止联机讯号(点 2)。此时A装置会启动其数据传输线提升电阻(点 3),完成整个切换作业。此时B装置就能扮演主控端的角色,而A装置则切换为外围端。B装置会重置A装置(点 4),并开始进行通讯(点 5)。
B装置可以中止总线(点 6),将总线的控制权交还给A装置。A装置在侦测到这个状态后,就会关闭D+ 线提升电阻 (点 7)。 B装置之后会重新启动其D+ 提升(pull up)电组(点 8),让装置回到原先的角色(点 9与10)。
改进电源管理效率
可携式USB装置的最后一项问题就是电源管理。在 「典型」的USB系统中,主控端负责提供5伏特的额定电源,而当主控端开始运作时,USB的VBUS 线路上的电流则须维持在至少100mA。这种模式在主控端插上电源插座时不会遭遇任何问题,但却会快速耗尽像是行动电话这类小型装置的电力。
为节省电力并延长电池的续航力,OTG规格让A装置能在总线没有运作时关闭VBUS电压。若B装置欲进行通讯,它会使用传输要求通讯协议(session request protocol, SRP)向A装置发送要求,重新开启VBUS 并启动一个传输阶段。
B装置可以在前一个传输阶段终止2 毫秒之后,启动SRP作业。在图2中,A装置在点 1中止总线,并藉由关闭点 2上的VBUS来终止传输。B装置会透过「数据传输线脉冲」(data-line pulsing)与「VBUS 脉冲」(VBUS pulsing)来启动SRP协定。B装置透过启动数据传输线提升电阻(以D+为全速装置,D-为低速装置)至5至10毫秒(点3至4) 之间运作,来启动数据传输线的脉冲讯号。VBUS 脉冲则是透过趋动微弱VBUS表示(点 5至6)。微弱的趋动讯号仍足以将OTG线路的电压提高到2.1伏特以上,但不足以将更高负载的 「典型」传输线路的电压提高至2.0伏特。
A装置在侦测到数据传输线的脉冲或VBUS 脉冲讯号时,就会开启VBUS (点 7)并启动一个传输阶段,再度开始进行USB数据传输(点 9与10)。当A装置判断总线上没有其它数据要传送时,就会关闭VBUS来中止传输阶段。
USB OTG发展现况
On-The-Go规格附录是由一个委员会负责制定,此委员会的成员包含连接器制造商、IP厂商、芯片组件供货商、软件研发业者、以及设备制造商的代表。规格附录在2001年12月18日以USB规格附加条文的型式发表并获得采纳。
从成立开始,On-The-Go委员会即将重心放在教育、兼容性计划、以及建置等领域。委员会持续在美国、亚洲、以及欧洲等地赞助训练课程,也计划协助研发业者与使用者了解OTG功能所带来的利益。此外,委员会也正推广USB新商标,提供所有通过OTG认证的装置使用。
此一委员会另一个主要工作领域就是OTG的兼容性规范。这份文件定义各种测试设备与程序,用来确保支持OTG的装置在兼容的情况下运作。测试设备现已建构完成,软件亦开发成功,且测试规格也已即将发表。这些测试将协助研发业者开发各种最佳装置,提升使用者经验。
最后OTG的委员与业界正致力开发硬件、软件、以及架构,让消费者能享受OTG规格附件的各种优点。最新公告显示OTG正跨入实际产品的门坎,各种初期研发的产品即将上市。
以EZ-OTG为例
在目前符合USB OTG标准的诸多产品当中,Cypress所推出的EZ-OTG控制器是其中最先进的组件之一;这是一套单芯片整合型控制器,搭载两组独立的USB连结埠,每个连结埠都支持主控端及外围端,其中一组USB端口支持OTG规格附录所定义的各项新功能。此外,EZ-OTG内含一组48 MHz的16位微处理器,负责控制USB连结端口以及执行其它功能,亦提供各种系统接口。
图3 为Cypress EZ-OTG控制器的功能区块图,显示其主要功能。接下来我们将详细介绍这些主要的功能。
EZ-USB 的特色
EZ-USB控制器提供两组独立的USB连结埠,每组连结埠能支持主控端或外围端的模式。其中一组USB支持OTG增补规格所有的新功能。每个连结端口皆符合USB 2.0的规格,并支持全速(12 Mbps)或低速(1.5 Mbps)的模式。
在外围模式下,每个USB连结点能支持八组端点 (endpoint numbers)。Endpoint 0主要传送控制数据流型态来提供所有必要的支持。编号1到7的其它所有端点则可设定成全速运作模式下的Bulk、Isochronous,或是低速模式下的Interrupt状态。
两组USB连结埠能独立运作或是扮演主控端或外围端的模式,让EZ-OTG组件能应用在纯外围、纯主控端、或是随时机动切换(OTG双重角色装置)的系统。
其中一组连结端口含有芯片型特殊线路 (on-chip circuitry),支持OTG规格附录所制定的各种新功能。线路内含所有趋动程序、接收器、以及电压比对器,能以A端或B端的角色执行主控端协商通讯协议(HNP)以及传输要求通讯协议(SRP)。
处理器与编程功能
两组独立的USB连结端口从内建的微处理器进行控制。这套处理器为一组48 MHz的16位RISC处理器。EZ-OTG包括一组内建BIOS ROM,提供相关程序代码将EZ-OTG切换至可通讯的状态,并能存取USB连结端口与其它接口。
控制器内含16 kByte的内建RAM内存,能储存变量及执行程序,为客户提供所要的各种功能与特性。经由各种外部资源程序代码可以透过芯片内建的接口加载至RAM空间中。
处理器亦内含64组可编程或软件中断、64组硬件中断器、以及3组可编程序定时器。
界面
EZ-OTG 控制器除了两组USB连结埠外,亦提供各种接口选择。此一芯片内含25组可编程的通用型I/O讯号,能用来支持处理器执行的程序代码,或是配合硬件组件支持其它接口;这些接口包括:
• UART -- EZ-OTG具备一套内建的UART,支持900至115.2 kbps的序列通讯速度。
• EEPROM -- EZ-OTG 能与一套双线式EEPROM进行通讯。
• SPI – 亦提供序列外围接口 (Serial Peripheral Interface)。这套接口经设定后可支持主控端或从属端模式。
• HSS -- EZ-OTG 亦支持高速序列接口 (High-Speed Interface) 标准。这套接口提供9600 kbps至2 Mbps之间的通讯速度
• HPI – 主控端连接端口接口 (Host Port Interface) 是一套16位的平行式接口,让外部处理器能完全控制EZ-OTG。这也是Cypress的EZ-OTG搭配系统中的主处理器的典型模式。
其它规格
EZ-OTG 内含建构一套USB装置所需要的所有组件。它包含一组3.3伏特的电源供应器、12 MHz的输入时脉,亦可选择连结至12 MHz振荡晶体。在一般运作模式下,耗电率约为50 mA。
结论
USB OTG规格附录提供各种新功能,将USB接口的符合成本、易用性、以及普及度的功能与利益带入行动平台领域。它的各种新功能让装置能在主控端与外围端间随时切换,并提供更高的省电性以及耐用度。
各种OTG装置的建构组件现正陆续问市。其中包括Cypress推出的EZ-OTG控制器。这款多功能合一的控制器内含一组16位处理器、两组USB连结埠、以及各种连接接口选项。
全部0条评论
快来发表一下你的评论吧 !