0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

全速USB连接的光隔离研究

星星科技指导员 来源:ADI 作者:ADI 2023-03-31 11:36 次阅读

如果必须隔离也连接到PC的设备,则USB接口是自然的选择。USB广泛的行业支持和简单的结构(USB电缆中只有四根线)使其成为流行的PC接口。使用SPI接口连接到嵌入式系统的USB控制器易于电气隔离。SPI接口可以以任何速度运行,由简单的单向信号组成。

介绍

通用串行总线 (USB) 已成为将外围设备连接到个人计算机的标准方式。如果您需要对要连接到PC的设备进行电气隔离,USB是一种自然的连接接口,因为它具有广泛的行业支持。两个明显的隔离应用是医疗和工业,前者将基于 PC 的仪器连接到患者身上,后者可能发生较大的电源轨偏移。

USB 信令基础知识

USB 以三种速度运行:

低速,1.5Mbps

全速,12Mbps

高速,480Mbps

本文讨论全速 (12Mbps) USB 连接的光隔离。12Mbps器件以足够的带宽工作,用于有用的数据传输,并采用的数据速率对于使用廉价光耦合器的设计来说是可管理的。

USB连接器包含四根导线:两根用于供电(VBUS和GND),两根用于移动USB数据(D+和D-)。VBUS导线提供5伏电源,最高可达500毫安。D+和D-信号是双向的,以12Mbps(每比特单元83ns)的信令速率工作。D+和D-信号电压为3.3V。

USB 隔离挑战

pYYBAGQmV4mAPoUFAACJJhpLnWE829.png

图1.有三种可能的接口可以隔离 USB 外设:站点 1,USB 总线本身;站点2,收发器接口;和站点 3,应用程序界面。在大多数当前设计中,SIE和收发器是集成的,使得接口(2)无法访问。

USB外设是使用图1所示的框图构建的。从右到左考虑这个数字,USB收发器连接到D+和D-线,并在OE(输出使能)控制引脚的控制下驱动或接收数据。中间模块是USB串行接口引擎(SIE),将总线信号(由收发器看到和发送)转换为数据字节和USB信号,供实现USB外设的应用使用。最左边的模块是应用电路,可能是微处理器ASIC数字信号处理器 (DSP)。

标记为 1、2 和 3 的灰色矩形显示了放置光耦合器的三个可能位置,以将 USB 设备与主机电气隔离。

pYYBAGQmVUiAU4K1AAA39r79TYU717.gif

图2.此示波器迹线显示数据包开头的 USB D+ 和 D- 信号(图 1 中的站点 1)。83ns的位时间和紧密匹配的上升/下降时间使得难以通过光隔离器保持信号保真度。D+和D-是双向的,使隔离进一步复杂化。

站点 1

在USB总线线上光隔离不切实际有几个原因,如图2所示:

信号速率为12MHz,对于高性价比隔离器来说太高了。

D+和D-信号必须仔细匹配传播延迟和偏斜,这是光隔离器难以实现的。

情况更加复杂,因为总线是双向的,但隔离器是单向的。此外,在集成收发器的外设中,OE信号(指示方向)无法访问。

站点 2

使用外部收发器的 USB 外设公开收发器接口。因此,可以考虑将这些单向信号用于光隔离。然而,该站点存在与站点1相同的问题:数据速率太高,并且确实有更多的信号以12MHz运行需要隔离。VPO、VMO、RCV、VPI 和 VMI 都以 12MHz 速率运行,需要仔细匹配延迟和偏斜。此外,在将SIE和收发器集成在同一芯片中的现代USB设计中,很少可以访问此接口。

站点 3

这是最有希望进行隔离的地方。该接口的运行速度可以比USB数据和线速慢,并且该接口可以完全由单向信号构建。事实上,理想的接口将使用少量单向信号,其工作速率远低于USB 12MHz信号速率。

满足这些要求的理想接口是SPI(串行外设接口),最初由摩托罗拉定义,现在在许多半导体类型中广泛使用。SPI由于其简单性和性能而是一个非常流行的接口。

SPI 信令基础知识

SPI 信号 描述 评论
SS# 从设备选择 选择用于数据传输的芯片,由主站提供
MOSI 主输出从输入 单向数据引脚
MISO 主输入从输出 单向数据引脚
SCLK 串行时钟 串行时钟,由主机提供

表1显示了四个SPI接口信号。SPI是一个主从接口,其中主站发起并向单个从机执行事务。主机提供从选择(SS#)信号和串行时钟(SCLK)以同步数据传输。SPI接口有四种时钟模式,反映两种模式信号,称为CPOL(时钟极性)和CPHA(时钟相位)。这些信号以(CPOL,CPHA)的形式表示。

图3显示了微处理器和SPI从器件之间的SPI数据传输。图 3 使用最常见的 SPI 模式 (0,0)。在模式(0,0)下,时钟处于低电平处于非活动状态,SPI主机在第一个SCLK正边沿之前提供MOSI数据。SPI数据在SCLK下降沿上发生变化,并在主器件和从器件的上升沿上采样。

poYBAGQmVUiAVHHfAAAZPlhNS_k384.gif

图3.在模式 (0,0) 下运行的 SPI 接口。如果 SCLK 信号设为低电平有效(静态为高电平),则同一接口可以在模式 (1,1) 下工作。这些低频信号易于光学隔离。

SPI接口易于在任何微处理器上实现,即使是不包含硬件SPI单元的微处理器。只需四个通用 IO (GPIO) 引脚即可构建图 3 信号,以及通过直接切换 IO 引脚来读取和写入字节的子程序。

图4显示了当USB外设控制器使用SPI接口时,SPI和USB之间的数据速率差异。在此图中,控制微处理器用作USB键盘,并定期闪烁LED。图5中的SPI流量表示一次LED闪烁(切换输出位);USB 流量是请求键盘数据的 USB 主机。

这两种总线之间的数据速率差异是巨大的。显然,较低频率的单向SPI信号比12MHz双向USB总线信号更容易隔离。使用SPI信号,隔离解决方案变得非常简单,可以定制为在任何频率下运行,以适应光隔离器的特性。

pYYBAGQmVUmAfi5HAABJeYuCD68524.gif

图4.SPI数据速率与USB信令速率的比较。SPI信号便于通过光耦合器传输。

产生图4的系统如何协调操作USB控制器的SPI总线与USB信号速率之间的数据速率差异?USB的优点之一是它是“自节流”的,内置流量控制。它通过使用称为“NAK”(否定确认)的握手来完成对数据流的控制,外围设备告诉请求数据的主机它尚未准备好数据,主机应稍后重试。

SPI 数据速率和 USB NAK

poYBAGQmVUmAYvwBAAE2LLtl9xA651.gif

图5.USB 总线跟踪显示外设响应主机输入数据请求的速度较慢。主机请求数据包 362-364 中的数据。外设已准备好数据包420中的数据。中间的 IN-NAK 数据包演示了 USB 流控制。外设使用 NAK 进行响应,直到准备好数据。

图 5 显示了 USB 流控制机制的实际应用。从数据包 362 开始,主机发出请求。数据包09倒数第二个字节中的363表示主机从外设请求9个字节的数据。外设确认收到数据包 364 中的请求,然后忙于解码请求并将请求的数据加载到其端点 0 数据 FIFO 中。慢速外设需要一些时间来响应此请求,相对较慢的SPI总线速度进一步增加了响应时间。Get_Descriptor-Configuration

在 988.667 微秒之后(数据包 364 之后),主机开始在数据包 366 中请求请求的数据。外围设备还没有数据,因此 USB 硬件会自动响应 NAK 握手,指示“我正忙,请稍后再试”。主机在数据包 368 中再次尝试,并从外围设备获得相同的 NAK 应答。此 IN-NAK 进程一直持续到数据包 419,此时外设最终加载了请求的数据并为其端点零武装以进行数据传输。现在,外设不是 NAK,而是使用数据包 9 中的 420 字节数据包进行响应,主机在数据包 421 中确认该数据包。

IN-NAK对(图5中的虚线矩形)可以出现任意次数,这意味着SPI接口的运行速率没有下限。这允许设计人员微调SPI数据速率,以适应光耦合器的选择,从而实现实用且经济高效的设计。

隔离式 USB 设计示例

pYYBAGQmVUqAbCLtAAAmhiKYhVg920.gif

图6.隔离式 USB 设计的示意图。左侧由USB总线本身供电,右侧使用隔离电源。在SPI接口上提供隔离使设计变得简单,并且不受严格的USB总线时序的影响。

图6是围绕廉价微处理器构建的电路:Atmel® AtTiny13 (U6)、HCPL-2531光耦合器 (U3-5) 和 MAX3420E (U1),MAX6E (U1)是一种USB外设控制器,具有与其寄存器组的SPI接口。尽管U6不包含硬件SPI单元,但SPI接口可以通过“位敲击”一些GPIO引脚轻松管理。U1 提供 2 个通用输入和 1 个通用输出引脚,以替换(并添加到)U1 用于实现 SPI 接口的引脚。此设计使用两个输出引脚驱动 LED 指示灯 D6 和 D<>,并使用一个输入引脚连接按钮 PB<>。由于U<>包含自己的IO引脚,由SPI接口控制,因此这些IO本质上与U<>隔离,不需要单独隔离。

poYBAGQmVUqAMgfuAABL9tXPPoQ598.gif

图7.隔离接口两侧的SPI SCLK信号。顶部:ISOVCC = 8.3V,ISOGND = 5V.底部:由 USB 供电:VCC = 3.3V,GND = 0V。

图7显示了隔离接口两侧SCLK信号的示波器走线。两条跟踪的基线设置在屏幕底部。顶部迹线显示由U6生成的SCLK信号,但偏移了5V。

pYYBAGQmVUuAUJjiAAAwX_vo5G4846.gif

图8.SCK隔离(顶部)和MAX342E(底部),示为扩展刻度。

图8是图7的扩展标度版本,展示了光耦合器的性能。光耦合器的吞吐延迟约为0.5μs,本设计选择电阻值。中心的短 SCLK 脉冲由驱动 SCLK IO 引脚的 U6 代码的一部分产生。U6 代码的这一部分如图 9 所示。

poYBAGQmVUuAVfWnAABKZTtUxcE021.gif

图9.AtTiny13汇编代码读取MAX3420E寄存器。SPI接口时序可以在这里进行微调,以提供光耦合器的成本/性能权衡。

就在标签之前,SCK信号被驱动为低电平,然后立即再次被驱动为高电平。(和 是汇编宏,无需更改代码即可轻松为特定电路板布局分配 IO 引脚。

通过在这两个语句之间插入一些NOP指令,可以延长图8中的窄脉冲,从而为使用速度较慢(即成本较低)的光耦合器创造可能性。此过程说明了SPI接口为光隔离应用提供的灵活性。

结论

由于USB数据信号的高速、双向特性和严格的匹配要求,电气隔离USB一直是一个挑战。如果隔离 USB 控制器和应用处理器之间的接口(图 3 中的站点 1),隔离问题将变得更加简单,因为此接口可以以任何速率运行。Site 3的较低信令速率使其非常适合低成本光耦合器解决方案。与任何隔离设计一样,需要隔离的线路越少,越能节省成本。SPI接口是隔离的理想候选者,因为它仅使用四个低速单向信号。由于MAX3420E使用简单的SPI接口连接到任何控制器,因此为嵌入式系统添加USB功能提供了理想的方法,并具有提供简单隔离方案的额外优势。MAX3421E也可以用于隔离式USB主机应用,MAX3420E既可以用作外设,也可以用作主机,使用与MAX<>E相同的SPI接口。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    15223

    浏览量

    171190
  • 连接器
    +关注

    关注

    96

    文章

    12632

    浏览量

    133127
  • usb
    usb
    +关注

    关注

    59

    文章

    7432

    浏览量

    258168
收藏 人收藏

    评论

    相关推荐

    全速USB和高速USB的识别过程分析

    被拉高,hub根据D+/D-上的电平判断所挂载的是全速设备还是低速设备。如下两图: 图2 低速USB设备的连接3 高速USB的识别USB
    发表于 08-16 15:08

    数字隔离器提供易于使用的隔离USB选项

    的很多原理同样适用于其他速度。 图1. 全速(12 Mbps) USB连接(非隔离式)USB基础知识US
    发表于 10-16 09:55

    使用数字隔离器简化医疗和工业应用中的USB隔离

    而廉价地实现外设隔离,进而使 USB 在医疗和工 业应用领域的应用远远超出诊断端口和临时连接的范围。着重于在D+/D– 线中提供隔离, ADuM4160 极大地简化了
    发表于 10-19 10:37

    数字隔离器提供易于使用的隔离USB选项

    示例中的很多原理同样适用于其他速度。图1. 全速(12 Mbps) USB连接(非隔离式)USB基础知识
    发表于 10-22 17:00

    USB信号进行光电隔离的电路

    =“0”时输出VP、VM为高阻状态。  具体实施方式图2  图2为将USB信号转换为信号的具体电路图。假设USB全速状态(12M),此时D+通过大约1.5KΩ的电阻接+5V电源。平
    发表于 04-24 07:00

    12Mbps的全速USB隔离USB主机和外设的方法

    本设计实例主要针对的是以三种数据传输速率运行的USB2.0:低速(1.5Mbps)、全速(12Mbps)和高速(480Mbps)。本文着重探讨了12Mbps的全速USB,且实例中的大部
    发表于 04-06 09:23

    全速USB控制芯片SL11的应用

    介绍了SCANLOGIC公司生产的全速USB控制芯片SL11的特点、功能及其应用方法.给出了SL11和8051单片机的接口连接电路,同时给出了SL11的USB列举和标准命令传输的程序清
    发表于 04-29 15:14 26次下载

    ADuM4160全速/低速USB数字隔离

    ADuM4160全速/低速USB数字隔离器 ADuM41601 是一款采用ADI 公司iCoupler 技术的USB 端口隔离器,它将高速
    发表于 06-11 17:15 55次下载

    USB隔离

    摘要:如果必须隔离一个与PC机连接的设备,人们很自然地会选择USB接口。USB广泛的工业支持和简易结构(USB电缆仅有4条线)使其成为一种通
    发表于 04-24 17:33 3898次阅读
    <b class='flag-5'>USB</b><b class='flag-5'>隔离</b>

    全速/低速USB数字隔离器ADuM31601

    该ADuM31601是USB端口隔离,结合了高速CMOS和单片空芯变压器技术,这种隔离组件,提供卓越的性能特点,并轻松地以更低和全速USB
    发表于 08-03 14:27 1988次阅读

    全速USB通用异步收发器XR21B1411

      Exar公司近日为其业内最快的全速USB 通用异步收
    发表于 10-25 09:40 2100次阅读

    USB数字隔离器数据手册

    ADuM41601是一款基于ADI公司iCoupler技术的USB端口隔离器,它将高速CMOS工艺与单片空芯变压器技术相结合,可提供优异的工作性能,并且很容易与低速和全速USB兼容外设
    发表于 09-21 14:39 0次下载
    <b class='flag-5'>USB</b>数字<b class='flag-5'>隔离</b>器数据手册

    通过USB2.0全速接口实现PIC控制器与闪存盘的连接过程研究

    本文介绍低成本PIC控制器通过USB2.0全速接口与闪存盘进行连接的实现过程,并着重针对PIC微控制器和VinculumUSB接口芯片说明有关嵌入式接口的硬件设计以及程序的编写。
    的头像 发表于 11-22 07:50 2297次阅读
    通过<b class='flag-5'>USB</b>2.0<b class='flag-5'>全速</b>接口实现PIC控制器与闪存盘的<b class='flag-5'>连接</b>过程<b class='flag-5'>研究</b>

    ADuM4160:全速/低速USB数字隔离器 数据手册

    ADuM4160:全速/低速USB数字隔离器 数据手册
    发表于 03-19 09:56 7次下载
    ADuM4160:<b class='flag-5'>全速</b>/低速<b class='flag-5'>USB</b>数字<b class='flag-5'>隔离</b>器 数据手册

    ADuM3160:全速/低速2.5 kV USB数字隔离器数据手册

    ADuM3160:全速/低速2.5 kV USB数字隔离器数据手册
    发表于 03-19 10:09 10次下载
    ADuM3160:<b class='flag-5'>全速</b>/低速2.5 kV <b class='flag-5'>USB</b>数字<b class='flag-5'>隔离</b>器数据手册