嵌入式应用的 USB 3.0 链路共享

发布者:忠正最新更新时间:2017-08-04 来源: EEWORLD关键字:USB 手机看文章 扫描二维码
随时随地手机看文章

           

USB 3.0 端口可通过分离超高速端口和标准 USB 2.0 端口来实现链路共享功能。目前,链路共享是赛普拉斯 HX3 USB 3.0 集线器控制器的独有功能。本文将介绍如何在扩展坞、笔记本电脑、电视机、机顶盒等嵌入式应用程序中实现 USB 3.0 链路共享。

HX3 控制器是赛普拉斯 USB 3.0 集线器控制器家族的产品,符合 USB 3.0 规范版本 1.0 标准。该款控制器的所有端口均支持超高速 (SS)、高速 (HS)、全速 (FS) 以及低速 (LS) 操作。它集成了终端电阻、上拉电阻和下拉电阻,并支持pin-straps引脚设置选项,以减少系统的整体物料成本。HX3 控制器配有赛普拉斯独有的共享链路功能,能够从四端口 USB 3.0 集线器提供 8 个下行 (DS) 端口。

共享链路功能可以将集线器的 USB 3.0 DS 端口分为嵌入式超高速端口和标准 USB 2.0 端口。共享链路能够支持多达 8 个来自四端口 USB 3.0 集线器的 DS 端口。而标准 USB 3.0 端口配有 8 条信号线:2 条用于 USB 2.0 通信 (D +,D-),4 条用于超高速通信 (SSTX +,SSTX-,SSRX +,SSRX-),2 条用于 VBUS 和 GND 的电源线。如图 1 所示。

图 1标准 USB3.0 端口(来源: 赛普拉斯)

VBUS 使能信号 (DSx_PWREN) 能够控制传输 VBUS 信号到已连接的 USB 3.0 设备。DSx_PWREN 信号与过流信号 (DSx_OVRCURR) 一同实现可插拔 USB 3.0 端口的过流保护电路。当端口出现过流,连接到端口电源开关输出使能引脚的 DSx_PWREN信号 能够关闭端口电源。

而向后兼容性需要用到 USB 2.0 信号线。当超高速设备(USB 3.0 设备)插入 USB 3.0 端口时,只有超高速线路能够进行通信,此时该特定端口的 USB 2.0 线路为空闲线路。同样地,当高速设备(USB 2.0 设备)插入 USB 3.0 端口时,超高速线路空闲。因此,在 USB 3.0 端口中,根据已连接的设备(超高速设备或 USB2.0 设备),任何指定时间的点,超高速线路或 USB 2.0 线路只有其中一种线路在运行。

共享链路功能使 USB 3.0 DS 端口可分离为 2 个独立端口,一个嵌入式超高速端口和一个标准 USB 2.0 端口,从而有效地利用多余的线路。例如,如果嵌入式超高速设备(如 USB 3.0 摄像机)连接到其中一个 DS 端口上,HX3 控制器能够让系统设计师使用该特定端口的 USB 2.0 信号来连接到标准 USB 2.0 端口。图 2 显示了如何在系统中运行链路共享端口。

在共享链路 DS 端口中,由于已经嵌入了超高速端口,超高速设备可以通过电路板布线与超高速端口永久链接,因此不能向下兼容 USB 2.0。已启用共享链路功能的系统不应连接到 USB 2.0 主机或 USB 2.0 集线器,因为共享链路超高速 DS 端口不支持 USB 2.0 功能(例如 USB 2.0 主机或集线器),连接到共享链路的超高速嵌入式设备将无法正常工作。

图 2示例: 笔记本电脑主板的共享链路端口(来源:赛普拉斯)

在通用型 USB 3.0 端口中,超高速通信出现故障时,所连接的 USB 3.0 设备将恢复为 USB 2.0 速度。然而,在共享链路端口中,这是没办法做到的。因为 USB 2.0 线路和超高速线路连接了两个单独的设备。为了克服这个限制,除了 USB 2.0 端口的电源使能控制引脚 (DSx_PWREN),共享链路还为嵌入式超高速端口(链路共享端口)实现单独的 VBUS 使能控制引脚(DSx_VBUSEN_SS)。这有助于对嵌入式超高速端口的电源进行独立控制。HX3 控制器侦测到超高速通信故障,将其已连接到嵌入式超高速设备的 VBUS 检测引脚的 DSx_VBUSEN_SS 信号翻转。该 DS 嵌入式超高速设备将重新枚举,认为此 VBUS 的翻转为断开连接事件或连接事件。这就是 HX3 控制器独有的共享链路功能。图 3 显示了共享链路端口的实现过程。

图 3共享链路端口(来源: 赛普拉斯)


           

传统扩展坞

如今的便携式设备采用紧实型设计,仅可以支持少数外设,通常不包括串行接口、HDMI、以太网等端口。为了让设备能够连接更多外设,扩展坞的设计集合了 USB、串行、VGA、以太网等其他端口。图 4 显示了传统笔记本电脑扩展坞的框图。

如图 4 所示,传统的 USB 3.0 扩展坞需要 6 - 8 个 USB 端口(包括嵌入式端口)。设计采用了配有 2 个四端口集线器控制器集成电路级联。为了支持千兆以太网和 HDMI 等高带宽外设,扩展坞除了要有外置 USB 3.0 端口,还必须配有 USB 3.0 集线器。添加 USB 3.0 集线器只是用于连接鼠标,键盘,串行端口等的较慢速的外设,成本效益会非常低。因此,传统的扩展坞同时配备了 USB 3.0 集线器和 USB 2.0 集线器。然而,采用两个集线器会增加印制电路板面积、功率需求、布线的复杂性以及无源组件数量,总体上明显加大了物料成本。

图 4传统扩展坞设计(来源:赛普拉斯)

共享链路扩展坞

在配置了共享链路功能的四端口 HX3 控制器上,我们最多可以使用 8 个端口、4 个嵌入式超高速端口和 4 个标准 USB 2.0 端口。图 5 显示了共享链路如何实现低成本的笔记本电脑扩展坞设计。与图 4 的传统扩展坞设计相比,赛普拉斯的共享链路功能为客户提供了最优的高成本效益解决方案。

图 5扩展坞配置共享链路 USB 3.0 集线器(来源:赛普拉斯)

如图 5 所示,下游端口 DS3 和 DS4 为标准 USB 3.0 端口,而 DS1 和 DS2 为共享链路端口。共享链路端口 DS1 和 DS2 的超高速嵌入式端口专用于高速通信端口,例如 HDMI 和以太网端口。使用 DS1 共享链路端口的标准 USB 2.0 端口,可以为扩展坞新增 RS232 端口。还可以使用 DS2 中的外置 USB 2.0 标准端口连接可插拔设备,如键盘、鼠标、移动硬盘等。

其他嵌入式应用

随着 USB 3.0 应用在过去几年里迅速增长,USB 3.0 主机端口已成为所有新款个人电脑和笔记本电脑的标准配置。另外,人们对实时高清质量视频的需求日益增长,因此消费者电子设备也采用 USB 3.0 标准。共享链路功能可应用于大多数消费者设备中,包括 CPU 主板、扩展坞、显示器、电视机顶盒、游戏设备和医疗设备等。

USB 3.0 标准能够支持 5-Gbps 超高速 (SS) 操作,比 USB 2.0 标准快 10 倍。因此,USB 3.0 不仅适用于连接高清摄像机等高带宽外设,而且还可以用作系统总线,从而支持嵌入式设备间的系统内连接,如图 6 所示。

嵌入式应用中的共享链路可以把更多的设备连接到 USB 主机,从而降低物料成本、印制电路板复杂性和功耗。此外,由于 DS 端口布置在印制电路板的边缘,因此很难在超高速和高速嵌入式应用中部署较短的布线。HX3 控制器配有灵活的、可编程的 USB 3.0 和 USB 2.0 PHY,相对于典型接口的 6 英寸,HX3能够支持长达 11 英寸的布线。

便携式计算设备

在笔记本电脑、平板电脑和智能手机等便携式设备中,USB 3.0 通常用作内部系统总线。如图 6 所示,CPU 集成电路通常支持单个 USB 3.0 主机。在本应用中,集线器的上游端口通过物理印制电路板布线永久连接到嵌入式 USB 3.0 主机。集线器的 DS 端口可以连接到支持嵌入式 USB 3.0 功能的集成电路,或作为通用 USB 3.0 外置端口使用。

图 6超极本笔记本电脑的设计使用了两个集线器控制器 IC(来源:赛普拉斯)

图 7 显示了超极本笔记本电脑设计如何实现共享链路以降低物料成本和设计复杂性。

图 7支持共享链路的超极本笔记本电脑 (来源:赛普拉斯)

USB 3.0 扩展坞应用

USB 3.0 扩展坞可分为通用型和专用型。通用型扩展坞和专用型扩展坞之间的主要区别是扩展坞的上行连接。通用扩展坞一般支持标准的 USB 3.0 上行端口,而专用型扩展坞能够支持某些笔记本电脑的定制端口。

由于共享链路超高速端口没有 USB 2.0 线路,因此当扩展坞连接到 USB 2.0 主机时,连接了该端口的嵌入式超高速设备将无法工作。为了避免无意地连接到 USB 2.0 主机,不建议在通用扩展坞上使用共享链路。

           

原理图

图 8 显示了如何将共享链路信号连接到 DS USB 2.0 设备和嵌入式超高速设备。

图 8共享链路端口的 USB 数据线连接(来源:赛普拉斯)

图 8 显示有 8 个 USB 通信引脚

· 4 个引脚(SSTX +,SSTX-,SSRX + 和 SSRX-)用于超高速通信和 1 个控制电源开关的 VBUS 引脚

· 2 个引脚(D + 和 D-)用于 USB 2.0 通信和 1 个控制电源开关的 VBUS 引脚

HX3 控制器的 4 个超高速信号连接到嵌入式超高速设备的超高速引脚,而连接到嵌入式超高速设备的 USB 2.0 引脚保持断开。共享链路端口的 USB 2.0 端口连接与标准的 USB 2.0 端口相同。

Hx3 控制器中的共享链路端口配有以下相关引脚:

USB 2.0 标准端口引脚

· 用于 USB 2.0 数据传输的 D+ 和 D- 线

· 负责控制 DSx_PWREN 信号(如图 9 所示)

DSX_OVRCURR 用作 Hx3 控制器的过电流指示(图 8 中未示出)

· 嵌入式超高速引脚

· 用于超高速数据传输的 SSRX +、SSRX-、SSTX+ 和 SSTX- 引脚。

· VBUS 负责控制 DSx_VBUSEN_SS 信号(如图 9 所示)

如图 8 所示,USB 2.0 数据线(D+ 和 D-)连接到可可插拔的 USB 2.0 端口连接器引脚,而超高速线路与嵌入式设备的超高速线路相连接。根据 USB 规范,每个可移动的 DS 端口必须在 VBUS 引脚上具有 120μF 的最小电容,从而在最大负载条件下保持稳定的电压。这就是为什么 需要150uF 大容量电容器连接到 VBUS_DS2 线路,而嵌入式超高速端口的 VBUS 引脚不需要大容量电容。

USB 连接器屏蔽(SHD1 和 SHD2)应通过RC 电路并联接地,以降低电磁干扰,如图 8 所。

图 9共享链路中的 DS 端口 VBSU 控制(来源:赛普拉斯)

共享链路模式需要对可插拔 USB 2.0 设备和嵌入式超高速设备进行单独的 VBUS 控制。图 9 显示了如何实现 VBUS 控制。

为了确保嵌入式超高速设备不会倒回 USB 2.0 速度操作,需要加设一个外部电源开关。该开关由 HX3 控制,能够产生 DSx_VBUSEN_SL 输出信号。该信号控制嵌入式设备的 VBUS。

DSx_PWREN 是 HX3 控制器生成的另一个输出信号,能够控制可插拔 USB 2.0 设备的 VBUS。例如,发生过流时,DSx_PWREN 可以关闭端口电源。DSx_OVRCURR 引脚(图 9 中未示出)用于指示可移动端口的过流状态。对于嵌入式超高速端口该引脚是不需要的,因为此引脚已永久连接在嵌入式超高速端口内部。

CY4613 是基于 CYUSB3326 元件的赛普拉斯共享链路开发套件。

注意:如有需要,开发人员可以禁用链路共享,默认配置已开启链路共享,需要更改 EEPROM 配置参数,使用Blaster plus 配置实用程序对已作修改的配置进行编程。赛普拉斯为设计师提供 Blaster plus配置实用程序 Windows GUI 工具,可通过个人电脑的 USB 接口将配置下载到 EEPROM。请参考KBA91657说明书以下载 HX3 控制器固件。关于 HX 3 控制器的更多功能,请参阅HX3 Blaster Plus 用户指南。

共享链路可以减少元件数量并减小印制电路板面积,从而减低物料成本。例如,表 1 比较了共享链路扩展坞设计和使用了 2 个集线器控制器的传统扩展坞的设计中使用的组件。与传统扩展坞设计相比,基于共享链路的扩展坞设计可以节省 28 个组件。安装组件所需的空间也相应地减少了。

表 1 共享链路扩展坞和传统扩展坞的比较(来源:赛普拉斯)


Gayathri Vasudevan 是赛普拉斯半导体公司班加罗尔地区的高级应用工程师。Gayathri 负责为客户设计有线 USB 产品,开发下一代产品的规格参数,并为新产品制作解决方案演示,应用笔记和其他备忘录。Gayathri 有电子与通信工程学士学位。


关键字:USB 引用地址:嵌入式应用的 USB 3.0 链路共享

上一篇:Molex ValuSeal IP65线对线连接器在贸泽开售
下一篇:Molex新推单排镀金 Pico-Clasp线对板连接器

推荐阅读最新更新时间:2024-05-03 01:25

基于USB2. 0控制器的软件狗设计及安全性分析
   1  引  言   随着计算机技术的发展, 计算机软件作为特殊商品在信息时代越来越重要。但是由于计算机软件的易拷贝性, 各种软件盗版、侵权现象不断发生, 软件加密技术应运而生。它分为软加密和硬加密两类, 所谓软加密就是用纯软件的方式, 在程序中使用一些独特的软件算法或其它手段来验证使用者的合法性, 其特点是成本低, 但加密强度不高, 易被破解;硬加密则是采用软件与硬件配合, 通过硬件来控制软件运行的加密方法, 如密钥盘、加密卡、软件狗等方法, 其加密性能好, 不象软件那样有易复制性, 所以从理论上讲, 它比软加密要可靠一些。而综合分析硬加密的技术指标如可靠性、读写速度、破译程度、占用主机资源等, 软件狗是一种较好的加密方
[嵌入式]
基于USB总线的MC68HC908JB8 Flash在线编程
  Freescale公司的MC68HC908JB8(简称“JB8”)是HC908系列中的一种。它包括USB接口,是专为计算机人机接口设备设计的。   诸如鼠标、键盘等应用。JB8包含8KB的Flash用户存储区和16字节的中断复位向量,使用它内部产生的升压泵就可以实现F1ash的烧写和擦除,而不需要高电压。   ICP是一种在实际的目标电路板上烧写和擦除芯片的方法,无需从目标板上将芯片卸下来再编程实现用户程序的修改。这种方法适用于产品开发和代码升级。目前市面上很多芯片(如Philips公司的P89C51、P89V51和LPC932A1,STC89C51和STC89L516RD+,以及AVR公司的ATmega8系列等)都支
[嵌入式]
USB速度的基本概念
    由于在不同版本的USB规范中提供了低速、全速与高速共3种传输速率。在此,用户就必须知道哪些架构下,来应用或分享其传输的带宽。在设计USB外围设备时,更需注意到这些传输的特性。 通常一个USB单片机可能支持低速、全速或全速与高速,所有的集线器支持低速与全速设备。但如果这个集线器嵌人了一个多元式(compound)设各,就仅能支持低速的功能而已(如具各集线器的USB键盘)。这样,这个集线器将会以全速的方式与PC通信,但却以低速的方式与其嵌人的设备来通信。对于低速或全速的外围设各来说,能够连接至任何的USB集线器。 对于高速的外围设备则有点像是双速度设各,因此也可以连接至任何集线器上。但是USB 1.x规范的主机或集线器
[嵌入式]
嵌入式USB主机设计(硬件设计和软件设计)
嵌入式USB主机硬件设计 选用廉价的51系列单片机(89C52)控制USB主机接口芯片SL811HS,同时,通过MAX232芯片与PC机通信。硬件接线示意图如下所示: 嵌入式USB主机软件设计 下面将从底层到高层详细地介绍本系统的软件设计。 4.2.1单片机读写SL811HS 4.2.1.1读取SL811HS内存的数据 根据SL811HS的读写时序要求,读取数据前首先发送地址: void SetHostAddress(char AddressP) { P_BUS=AddressP;/*数据总线发送地址,但此时地址还不会被SL811HS接收*/ P_CTRL=0x90;/*设置总线控制信号为SL811HS接收地址信号,具体含义如下
[单片机]
嵌入式<font color='red'>USB</font>主机设计(硬件设计和软件设计)
基于P89C61x2和ISP1581的USB接口电路的设计
本文主要针对传统仪器的并行接口设计了一种基于单片机的接口电路。 主要芯片介绍 本设计采用控制芯片P89C61x2和接口芯片ISP1581实现USB接口电路的设计。 P89C61x2包含1024B RAM、64KB Flash存储器、32个I/O口、3个16位定位/计数器、6个中断源-4个中断优先级-嵌套的中断结构、1个增强型UART、片内振荡器和时钟电路。此外,器件的静态设计使其具有非常宽的频率范围,可选择1MHz~12MHz的晶体振荡器。具有两个软件可选的节电模式-空闲模式和掉电模式。 USB接口芯片ISP1581一种价格低、功能强的USB接口器件,符合USB2.0规范,并为基于微控制器或微处理器的系统提供了高速U
[嵌入式]
串行数据物理层一致性测试系列之三--USB2.0的一致性测试分析
中心议题:         ?USB2.0 一致性测试的内容及测试法         ?用力科公司的QualiPHY软件快速进行USB2.0产品一致性测试         解决方案:         ?力科QualiPHY软件针对USB2.0物理层一致性测试的流程特点         ?提供易用操作和人性化的操作界面         ?全面而丰富的软件功能         ?有效降低工程师操作仪器的复杂度         ?提高测试效率 1、 USB2.0简介  通 用串行总线USB是一种计算机外设连接规范,由PC行业的多家领导厂商联合制定,其中英特尔公司和微软公司占主导地位。USB规范推出以来历经1.0和 1.1版本,目前
[测试测量]
Tiny210驱动之USB设备驱动程序
usbmouse_as_key.c驱动源码: //参考源码: drivers\hid\usbhid\usbmouse.c #include linux/kernel.h #include linux/slab.h #include linux/module.h #include linux/init.h #include linux/usb/input.h #include linux/hid.h static struct input_dev *uk_dev; static char *usb_buf; static dma_addr_t usb_buf_phys; static int len; static
[单片机]
怎样通过USB对STM32 Blue Pill编程
步骤1:您需要做什么: 首先,您需要电路板本身。我建议您在这里购买它们: https://www.ebay.com/itm/192674786885 您还需要一个USB到TTL编程器,您只需要将它第一次对开发板进行编程,但是对其他项目也很有用,因此您最好自己拥有一个。..可以在这里获得它: https://www.ebay.com/itm/401604236499 一些电线或跨接电缆也很有用,但我假设您手边有那些。如果没有,请即兴进行。 步骤2:Arduino IDE 在您可以开始在Arduino IDE中对蓝色药丸进行编程之前。您需要添加一些内容。不用担心,这很容易。 首先打开Arduino IDE。转到File-》
[单片机]
怎样通过<font color='red'>USB</font>对STM32 Blue Pill编程
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved