应用小贴士:隔离USB的典型方法

1 post / 0 new
selina
selina的头像
应用小贴士:隔离USB的典型方法

隔离USB的典型方法主要是设法回避上述挑战。

第一种方法: 使USB接口与需要隔离的设备完全分离(图2)。许多设备可把其它通用的串行总线与USB连接;图2中显示了R S-232与USB 的连接接口。SIE提供普通的串行接口功能;隔离是在低速串行线中实现的。但这种方法并不能利用USB的优势,所实现的是一个可热 插拔的串行端口。接口芯片可通过改变固件来实现定制,以识别外设,从而允许创建定制的驱动程序;但每个外设可能都需要一个定 制的适配器。除非该适配器是永久连在这个外设上,否则这将是维修人员的噩梦。此外,接口的速度将被限制在标准R S-232的速度,甚 至远低于低速USB的吞吐量。

图2.通过RS-232隔离

图2.通过RS-232隔离。

第二种方法: 使用带有易隔离接口的独立SIE(图3)。市场上有几种产品(如SPI)使用快速单向接口把SIE连接到微处理器。数字隔离器 (如 ADuM1401C 四通道数字隔离器)可对SPI 总线实现完全隔离。由于SIE包含可通过SPI总线填充的缓冲存储器,SPI的运行速度在很大程度上可不依赖于USB的速度。SIE将与USB主机协商其可能的最高 连接速度,并以协商得出的总线速度分发数据,直到把缓冲中的数据传递完。此时,SIE会通知主机如果有更多的数据需要传送则重试,并留出时间使 SPI接口可为下一个传输循环重新填充缓存。虽然非常有效,这种方案通常要求修改外设驱动程序,并忽视内置在外设的微处理器中的 USB电路。该方案在元件和电路板尺寸方面的成本较高。

图3. 通过SPI接口隔离SIE

图3. 通过SPI接口隔离SIE。

第三种方法: 如果微处理器的SIE使用外部收发器,则可以对微处理器和收发器之间的数据和控制线进行隔离(图4)。但是,这种方式要求在SIE 和收发器之间有9条单向数据线。在高速数字隔离器中,这将带来极大的成本问题。此外,现有的速度最快的数字隔离器工作在约150M b p s,虽然远高于低速和全速 USB,但不能处理高速数据,限制了USB接口的速度范围。该方案与为微处理器SIE提供的USB驱动器完全 兼容,可降低开发成本,但需使用多个隔离通道致使实现成本高昂。此类收发器接口将被集成度要求日益提高的市场所淘汰。

图4. 隔离的外部USB收发器

图4. 隔离的外部USB收发器

第四种方法:直接在D+和D-线线中插入隔离(图5)。这种方式允许在现有的USB应用中添加D+/D-隔离,而无需重写驱动程序或增加冗余 SIE,同其它方法相比,这是一个很大的优点。但是,D+和D-线的隔离较为复杂,因为隔离器件必须能够像SIE那样处理控制流,允许 在隔离屏障两边使用上拉电阻,并确定传输速度。另外,其运行不应要求额外的设备驱动程序相关的开销。

图5. 隔离D+/D-线

图5. 隔离D+/D-线.

新型芯片级器件ADuM4160 USB隔离器解决了这些挑战性难题(图6),它支持低速和全速USB的D+和D-线直接隔离.

图6. ADuM4160的框图

图6. ADuM4160的框图。

此文选自:使用数字隔离器简化医疗和工业应用中的 USB 隔离