新闻  |   论坛  |   博客  |   在线研讨会
USB系列之第一章:导言
电子资料库 | 2022-09-02 16:28:25    阅读:173   发布文章

简而言之,USB

理解USB标准

开始新的USB接口可能会让人望而生畏。和USB 2.0规范在650页的篇幅上,人们很容易因为标准的篇幅而被推迟。这只是一长串USB相关标准的开始。有USB类标准例如HID类规范,它详细说明了HID(人机界面设备)类下的设备(键盘、鼠标等)的常见操作——只有另外97页。如果您正在设计一个USB主机,那么您有三个主机控制器接口标准可供选择。这些都没有在usb2.0规范中详细说明。

好消息是你甚至不需要费心去阅读整个USB标准。有些章节是由市场营销精心编写的,有些章节针对的是通常由USB控制器IC负责的较低链路层,还有一些章节针对主机和集线器开发人员。通过一个小的章节让我们简单的介绍一下USB的各个章节。

章节

姓名

说明

1

介绍

包括USB的动机和范围。本章最重要的信息是参考通用串行总线设备类规范。不用读这一章。

two

2

术语和缩略语

这一章不言自明,对任何标准来说都是必要的。

eight

3

背景

指定USB的目标是即插即用和对最终用户的简单性(不是开发人员)。通过直接从市场营销部获得的功能列表介绍低速、全速和高速范围。也不需要读这一章。

four

4

体系结构概述

这是你可以开始阅读的地方。本章提供USB系统的基本概述,包括拓扑结构、数据速率、数据流类型、基本电气规格等。

ten

5

USB数据流模型

本章开始讨论数据如何在通用串行总线上流动。它引入了端点和管道等术语,然后将本章的大部分时间用于每种数据流类型(控制、中断、同步和批量)。虽然了解每种传输类型及其属性很重要,但对于第一个读者来说这有点沉重。

sixty

6

机械的

本章详细介绍了USB的两个标准接口。这里的重要信息是,a型连接器面向下游,B型连接器面向上游。因此,不可能将电缆插入两个上游端口。所有可拆卸电缆必须是全速/高速电缆,而任何低速电缆必须硬接线到设备。除了快速查看连接器,您可以跳过本章,除非您打算制造USB连接器和/或电缆。PCB设计人员可以在本章中找到标准封装。

thirty-three

7

电气

本章介绍低电平电信号,包括线路阻抗、上升/下降时间、驱动器/接收器规格和位级编码、位填充等。本章更重要的部分是通过使用电阻器来对数据线和总线供电设备与自供电设备进行偏差的设备速度识别。除非你是在硅水平设计USB收发器,否则你可以翻阅本章。好的USB设备数据表将详细说明总线阻抗匹配所需的总线终端电阻值。

seventy-five

8

协议层

现在我们开始进入协议层。本章描述了字节级的USB数据包,包括sync、pid、address、endpoint、CRC字段。一旦掌握了这一点,它就进入下一个协议层,即USB包。大多数开发人员仍然看不到这些较低的协议层,因为他们的USB设备IC负责这一点。然而,了解状态报告和握手是值得的。

forty-five

9

USB设备框架

这是整个规范中使用频率最高的一章,也是我唯一一个费心打印和装订的章节。这详细说明了总线枚举和请求代码(set address,get descriptor等),它们构成了USB程序员和设计人员将看到的最常见的协议层。本章必须详细阅读。

thirty-six

10

USB主机硬件和软件

本章涉及与主办国有关的问题。这包括帧和微帧生成、主机控制器要求、软件机制和通用串行总线驱动程序模型。除非您正在设计主机,否则可以跳过本章。

twenty-three

11

Hub规格

详细介绍USB集线器的工作原理,包括集线器配置、分割事务、集线器类的标准描述符等。除非您正在设计集线器,否则您可以跳过本章。

one hundred and forty-three

所以现在我们可以开始阅读标准中与我们需要相关的部分。如果您为USB外设开发驱动程序(软件),那么您可能只需要阅读章节,

    • 4-建筑概述

    • 5-USB数据流模型

    • 9-USB设备框架,以及

    • 10-USB主机硬件和软件。

另一方面,外围硬件(电子)设计师可能只需要阅读章节,

    • 4-建筑概述

    • 5-USB数据流模型

    • 6-机械,以及

    • 7-电气


简单地说,USB是为外围设备设计师设计的

现在让我们面对现实,(1)我们大多数人都是来开发USB外设的,(2)读一个标准很常见,但仍然不知道如何实现一个设备。因此在接下来的7章中,我们将重点介绍开发USB设备所需的相关部分。这使您能够掌握USB及其问题,从而进一步研究特定于您的应用程序的问题。

USB1.1标准在高速传输到USB2.0之前已经足够复杂了。为了帮助理解USB背后的基本原理,我们省略了许多高速设备特有的领域。

介绍通用串行总线

USB版本1.1支持两种速度,一种是12Mbits/s的全速模式,另一种是1.5Mbits/s的低速模式。1.5Mbits/s模式速度较慢,不易受电磁干扰影响,因此降低了铁氧体磁珠和优质元件的成本。例如,晶体可以用更便宜的谐振器代替。USB2.0在主流台式机上还没有见到曙光,它已经把****注提高到480Mbits/s。480Mbits/s被称为高速模式,是与Firewire串行总线竞争的一种手段。

USB速度

  • 高速-480Mbits/s

  • 全速-12Mbits/s

  • 低速-1.5Mbits/s

通用串行总线由主机控制。每个总线只能有一个主机。规范本身不支持任何形式的多主控排列。但是随动规范作为usb2.0的一个附加标准,它引入了一个主机协商协议,允许两个设备协商主机的角色。这是针对并仅限于单点对点连接,例如移动电话和个人事务管理器,而不是多个集线器、多设备桌面配置。USB主机负责处理所有事务和调度带宽。可以使用基于令牌的协议通过各种事务方法发送数据。

在我看来,USB的总线拓扑结构有一定的局限性。USB的初衷之一是减少电脑背面的布线量。苹果的人会说,这个想法来自苹果桌面总线,在那里键盘、鼠标和其他一些外围设备可以通过一根电缆连接在一起(菊花链)。

然而,USB使用分层星形拓扑结构,与10BaseT以太网相似。这就要求在某处使用集线器,这增加了更大的开销,桌面上有更多的盒子和更多的电缆。不过,这并不像看上去那么糟糕。许多设备都集成了USB集线器。例如,您的键盘可能包含一个连接到您的计算机的集线器。鼠标和其他设备(如数码相机)可以轻松地插入键盘背面。监视器只是一长串通常有内置集线器的外围设备。

这种分层的星形拓扑结构,而不是简单地将设备串接在一起有一些好处。首先,可以监控每个设备的电源,如果发生过电流情况,甚至可以在不中断其他USB设备的情况下关闭电源。高速、全速和低速设备都可以支持,集线器过滤掉高速和全速事务,这样低速设备就不会接收到它们。

在任何一个给定的时间,最多可以将127个设备连接到任何一个USB总线。需要更多设备吗只需添加另一个端口/主机。虽然大多数早期的USB主机都有两个端口,但大多数制造商认为这是一种限制,并开始引入4端口和5端口主机卡以及硬盘等的内部端口。早期的主机有一个USB控制器,因此两个端口共享相同的可用USB带宽。随着带宽需求的增长,我们开始看到带有两个或更多控制器的多端口卡允许单独的通道。

USB主机控制器有自己的规格。对于USB1.1,有两种主机控制器接口规格, 通用主机控制器接口由Intel开发,它将更多的负担放在软件(Microsoft)上,并允许更便宜的硬件和开放式主机控制器接口由康柏公司、微软公司和国家半导体公司共同开发,它将更多的负担放在硬件(英特尔)上,并使软件变得更简单。典型的硬件/软件工程师关系。

随着usb2.0的引入,需要一个新的主机控制器接口规范来描述特定于usb2.0的寄存器级细节。这个增强型主机接口出生了。重要的贡献者包括Intel、Compaq、NEC、Lucent和Microsoft,因此希望它们能够联合起来,为我们提供一个接口标准,从而只有一个新的驱动程序可以在我们的操作系统中实现。是时候了。

USB顾名思义就是串行总线。它使用4根屏蔽线,其中2根为电源(5v和GND)。其余两个是双绞线差分数据信号。它使用NRZI(Non-Return to Zero Invert)编码方案发送带有同步字段的数据,以同步主机和接收器的时钟。

USB支持plug'n'plug与动态可加载和不可加载的驱动程序。用户只需将设备插入总线即可。主机将检测到这个添加,询问新插入的设备,并在沙漏闪烁的时间内加载相应的驱动程序,前提是为您的设备安装了驱动程序。最终用户不必担心终止,诸如irq和端口地址之类的术语,或者重新启动计算机。一旦用户完成,他们可以简单地将电缆拔出,主机将检测到它的缺失并自动卸载驱动程序。

使用PID/VID(产品ID/供应商ID)组合加载相应的驱动程序。VID是由USB实现者的论坛以一定的成本提供的,这被视为USB的另一个症结。有关费用的最新信息,请访问USB实施者网站

其他标准组织为非商业活动提供额外的视频,如教学、研究或玩弄(业余爱好者)。USB实现者论坛还没有提供这项服务。在这些情况下,您可能希望使用分配给开发系统制造商的一个。例如,大多数芯片制造商将有一个VID/PID组合,您可以使用您的芯片,这是众所周知的不存在的商业设备。其他芯片制造商甚至可以卖给你一个PID,与他们的视频一起用于你的商业设备。

USB的另一个更显著的特点是它的传输模式。USB支持控制、中断、批量和同步传输。稍后我们将讨论其他传输模式,Isochronous允许设备在保证延迟的情况下保留一定数量的带宽。这是音频或视频应用程序的理想选择,在这些应用程序中,拥塞可能会导致数据或帧的丢失。每种传输模式在错误检测和恢复、保证的延迟和带宽等方面为设计者提供了权衡。


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客