如何解决USB Type-C应用开发过程中的各种问题
扫描二维码
随时随地手机看文章
最新推出的USB Type-C速度更快、电力传输效能更佳,更可支援多种影音传输协定。不过,由于功能与用途更为複杂,应用开发者在整合USB Type-C介面时,也得把更多细节考虑进去。善加利用参考设计,将可有效解决应用开发过程中遇到的疑难杂症。
大多数常用的电子设备,都配有某种类型的通用序列汇流排(USB)连接埠。此类连接埠包括Micro、Mini、Type-A,且皆可採用不同的标淮,例如2.0或是更新的3.1。相较于这些连接埠,USB Type-C的功能可说有了大幅的跃进,而且速度更快、电力传输效能更佳。利用此更为先进的接头,可解决其前代产品出现的所有问题。Type-C可处理高速资料、视讯以及大量电力。藉由Type-C的这些扩充功能,消费者只须使用Type-C连接线即可实现充电、串流视讯或传输资料,不必再大费周章地使用各种连接线。製造商基本上只须在其装置中提供与开发Type-C连接埠即可支援不同用途。
支援多通讯协定 Type-C提高装置可用性
Type-C的多功能性使得设计变得十分複杂,因为在使用连接线、连接埠、Dongles和集线器时,USB极为简单的内部运作现已为较複杂的嵌入式元件所取代。看似简单的HDMI转Type-C连接线在设计上却不容易,原因就在于需要嵌入式装置。在开发Type-C解决方案时出现两个主要难题,第一是处理连接埠能够提供的大范围电力。第二是避免因支援的通讯标淮增加而可能发生的通讯失败问题。当连接两个装置时,电力传输(Power Delivery, PD)协定即开始执行。
该程序须要针对传输的电量、电源供应器与电力消耗装置进行协商。由于此通讯需要侦测、读取与处理类比和数位讯号,因此需要透过主机连接埠、连接线或Dongles中的嵌入式MCU取得MCU功能。当装置或主机彼此无法支援且无法建立通讯时,就会发生故障。侦测到讯号后会将讯号传输至主机,并且需要进一步的MCU功能。
USB Type-C不但能够减少使用的连接线,还可确保装置之间顺利协作,为使用者和消费者的生活带来相当大的便利性,但却也会为设计者和开发人员带来麻烦。目前,市面上已有很多类型的USB连接埠和连接线,包括Mini、Micro、Type-A、Type-B等。繁多的种类很容易造成混淆,例如行动电话的连接埠与笔记型电脑的连接埠不同,而笔记型电脑的连接埠又和数位相机的连接埠不同。USB Type-C 将大部分的连接缩减成单一标淮(图1),可涵盖所有装置并提高可用性。USB Type-C可支援多个通讯协定,并且可向后相容于USB 2.0。监视器、耳机、充电器以及键盘等几乎所有配件都能使用USB Type-C与电脑、平板电脑和智慧型手机等装置进行通讯。
连接埠与连接线的配置如图2、图3所示。由于插座连接埠中的讯号採用对称设计,因此翻转插头并不会造成任何问题。USB 3.1 SuperSpeed TX/RX、VBUS、GND以及所有其他引脚会正确连接,不必考虑方向性。从使用者角度来看,因为Type-C连接线可以任一方向插入,因此是Type-A连接埠的升级版。
USB Type-C具有多功能且方便易用,但却增加了採用USB Type-C的装置的内部複杂性。虽然增加功率容量,可提供高达100W的电力,为高电流装置充电,但也为不需要如此高功率的装置造成问题。电力传输协定也因此应运而生。PD可确保透过任何连接装置传输或获得适当范围的功率。
主机下行/装置上行连接埠 两者须在功率达成一致
在讨论USB Type-C之前,有必要先对装置、主机、电源供应器(电源)和电源接收器(消耗装置)进行区分。主机不一定是电源,因此这两个名词不能够交替使用。主机发起所有通讯而装置做出回应。一般而言,主机是下行连接埠(或称为DFP);装置则是上行连接埠(或称为UFP)。如果连接两台主机,则主机可充当双重用途连接埠(或称为DRP),在主机和装置角色之间切换。以下例子针对上述词彙提供说明:将键盘连接至笔记型电脑时,键盘是UFP和消耗装置,而笔记型电脑是DFP和电源。
连接装置之间的初始电力传输协议是透过一系列电阻器执行,当Type-C插头插入插座时,这些电阻器充当CC线路上的分压器。由于插头中的CC线路会连接至插座中的CC1或CC2,因此插座只要测量CC1和CC2线路上的电压,即可判定插头的方向。上拉电阻的不同数值可传达电源能够提供的电流量,同时可确定UFP和DFP分别是什么。电力消耗装置没有办法透过不同的下拉电阻值指出其消耗的电流量,而是必须不断地调整其负载以符合电源供应器可提供的最大电流。
为了能够正确读取分压器,两个装置都需要有类比处理单元,通常是以MCU内部精淮的ADC形式出现。ADC可持续测量CC线路上的电压,藉此监控插头与插座之间的连接。MCU也称为PD控制器,可处理完整的实体层以及上层协定,也会与正在传输或接收的功率进行协商。若针对简单的Type-C应用,功率协商机制可使用电阻停止。但是为了提供更具适应性的设计,装置可透过在CC线路上进行通讯,对于不同的设定达成一致意见。
决定插头方向以及初始功率之后,装置会使用CC线路彼此通讯(图4)。透过这种方式,装置可以在不同的电源功率上达成一致,并且指定消耗装置或电源,以即时调节电力传输。CC线路通讯也可以用于通知将使用的通讯类型。如先前所述,USB Type-C可于高速线路、USB 2.0等进行通讯。装置会通知这些线路中可以透过CC线路使用的线路。但是并非所有装置都支援所有通讯协定。
如果两个连接装置彼此并不支援,则会出现故障。举例来说,如果只能从主机接收视讯的监视器连接至无法支援或提供视讯资料的主机,将会出现故障。如果发生这种情况,主机仍然无法获知失败,原因是无法建立通讯。有鑑于此,USB Type-C标淮要求监视器上的嵌入式装置或是装置端作为故障防护装置,也称为告示装置。告示装置会在无法建立通讯的D+和D-线路上透过USB 2.0标淮将讯号传送至主机。然后,主机会通知使用者两个装置并不相容(图5)。告示装置一般会是MCU,可能和PD控制器相同。[!--empirenews.page--]
实现旧设备转接 Dongle扮演功率协商角色
如要使用者想要使用不支援USB Type-C的旧型周边设备,则须要使用转换线或Dongle。有几点须要解释,第一是简单的USB 2.0转Type-C。由于USB 2.0不支援较高速度,且在Vbus上不需要5V或3A以上的电压或电流,因此连接线只须将D+/D-、Vbus和GND传送至接头即可。而比较困难的是如何开发Type-C转Type-C连接线、转换USB 3.0/1为Type-C的Dongle,或是在Vbus上需要5V或3A以上电压或电流的装置。
在这些情况下,Dongle成为两个装置间功率协商的一部分,要求连接线或Dongles具有嵌入式PD控制器。PD控制器最初是透过设定为5V的Vbus或是Vconn线路供电,接下来会与主机协商,就Vbus线路中的电源功率达成一致意见。图6显示电子标记的连接线组件,或EMCA范例,将两个Type-C装置连接在一起。PD控制器的电源可由Vconn1或Vconn2提供。EMCA会通知其在CC线路上的最大功率容量,电源则会作出相应调整。
替代模式(Alternate Mode)是Type-C介面的功能延伸,可允许Display Port、PCIe或其他通讯协定使用USB 3.1 SuperSpeed线。当转接器与相容主机连接时,将会进入替代模式。支援替代模式的Dongle需要额外的预防措施与嵌入式装置。Dongle必须告知主机其是否能够进入替代模式以避免无讯息错误。
Dongle透过告示装置进行通知,而USB Type-C PD标淮则授权任何替代模式配件执行告示装置。图6显示可将旧型视讯连接埠转换为Type-C的连接线。如果Type-C装置不支援旧型视讯格式,PD控制器将通知告示装置,接下来再将错误情况告知Type-C装置。
比显示埠/Type-C转Type-C更加複杂的是扩充基座或集线器,其必须支援许多装置的充电。集线器可以是多个Type-C或Type-A连接埠、HDMI、PCIe等的组合(图7)。此集线器需多个嵌入式装置,才能成功支援连接装置。根据连接装置的不同,每个连接埠所需的电量不同。考虑到这一点,每个连接埠可能需要一个PD装置。
任何视讯连接埠(例如显示埠、VGA或HDMI)都需要告示装置。此外,集线器需要装置来控制传到主机的流量。这一点相比Type-A集线器并无太大变化,因为须避免线路上产生碰撞,并且确保一次只有一个装置与主机通讯。显然,相对于先前简单的集线器,现在对于设计的要求更複杂、更严苛。 更形複杂的设计重任并不须要完全由开发人员承担。Silicon Labs提供开发板、PD程式库、告示原始码以及用于Dongle、扩充基座和装置连接埠的范例码。客 户如果在开发新Type-C装置时使用这些工具,可大幅减少投入USB Type-C开发的时间和精力。
开发板解决方案简化Type-C设计
以下是该公司所提供的开发板,可利用充电功能执行VESA DisplayPort替代模式转接器。类似的开发装置可透过单一连接埠实现供电、充电以及视讯传输,进而增加主机上单一Type-C连接埠的功能。开发板上有两个PD控制器,每个连接埠会使用一个,而告示装置会透过另一个与DisplayPort搭配使用。参考设计可处理切换至替代模式、充电、告知主机错误情况,并且确保电力正确传输至显示埠与主机。
从开发板开始(图8),在提供的韧体上作业,要比建立新平台并从头开始编写韧体来得轻鬆、快速。製造商和供应商藉此可以为Type-C解决方案提供更多功能,速度也比竞争对手更快。
该公司的MCU(例如,Busy Bee3)简化了Type-C的设计,将PD功能融入仅3×3mm2的单晶片中,并提供精密震盪器、硬体PD PHY层级,并且为客户提供低物料成本PD解决方案。
参考设计中使用的Universal Bee1是提供告示功能的单晶片解决方案。整合式稳压器、精密震盪器、USB 2.0PHY层级以及USB引脚上的±8KV ESD保护,使得此3×3mm2装置能够执行告示功能,而无需外部元件。
USB Type-C是因应未来趋势的标淮。从塞满缆线的抽屉中找出正确的转换头或是缆线端的日子已不复见。展望未来,选择连接线时须要判断连接线是插头或是插座,以及连接线是否能够处理较高的电量。
现在,市场上已出现只採用Type-C 连接埠的智慧型手机、平板电脑和笔记型电脑,而这些先驱装置只是一个开端。儘管如此,Type-C还需要嵌入式装置和韧体来处理大量功能,因而也为开发人员和製造商在移转装置时带来庞大压力,而Silicon Labs拥有参考设计、程式库、韧体以及支援团队,便可专门协助简化Type-C在广泛应用中的需求。