USB基础

一 USB 芯片组成

同以太网类似,USB芯片也分为Controller部分(主机控制器/设备控制器)和PHY部分(收发器) 两大部分组成。

Controller部分
主要实现USB的协议和控制,内部逻辑主要有 MAC层,CSR层,FIFO层等。

MAC层实现安装USB协议进行数据包打包和解包,并把数据按照 UTMI/ULPI总线格式发送给PHY。
FIFO控制层主要是和DDR进行数据交互,控制USB从DDR搬运数据的通道

PHY 部分
USB PHY负责最底层的信号转换,作用类似于网口的PHY。主要实现 并转串的功能,把控制器通过 UTMI或ULPI总线传递过来的并行数据 转换为串行数据,再通过差分数据线输出到USB接口。或反之

总之USB芯片内部实现的功能就是接受软件的控制,进而从内存搬运数据并按照USB协议进行数据打包,并串转换后输出到芯片外部。或者从芯片外部接收差分数据信号,串并转换后进行数据打包并写到内存中。

以Controller 和 PHY 都被封装到SOC为例,如图

在这里插入图片描述

VBUS :电压线,主机利用VBUS给USB设备提供工作电压。
D+ : 正向传送数据 数据线
D-: 反向传送数据 数据线

一般来说如果芯片的usb phy封装在芯片内,基本采用UTMI+的接口。不封装到芯片内的一般采用ULPI接口,这样可以降低pin的数量。

二 嵌入式设备上的USB系统

如图是嵌入式设备上的USB系统,其中SOC内嵌了USB控制器,USB 收发器(PHY)没有封装到芯片内。该控制器支持4条总线和3中操作模式。
在这里插入图片描述

总线1工作在主机模式下,通过USB收发器(PHY) 和 A型接口( USB Type A)连接。USB Type A常用于个人电脑PC及消费类电子产品中,用于连接键盘,鼠标等外设

总线2 也工作在主机模式下,只不过它的USB收发器(PHY)连接的是内嵌USB设备,如打印机等

总线3工作在设备模式下,通过USB收发器(PHY) 和 B型接口(USB Type B)连接。B型接口通过一条 B-A线和主机连接。在这种模式下,该嵌入式设备可以当做USB从设备使用。同PC机相比,嵌入式设备(如MP3,手机等)作为USB的设备端,所以 大部分嵌入式设备 除了包含主机控制器之外,还包含USB设备控制器。

总线4接的是 OTG(On-The-Go)控制器,既可以做主机,也可以作从机,与前三种总线不同,总线4的USB收发器是智能的,能够通过I2C 和处理器交换控制信息,USB OTG 收发器(PHY)的另一端和Mini-AB OTG接口相连。如果两个设备都支持OTG,他们不需要作为主机的计算机介入就可以直接通信。

关于主机控制器

USB 主机控制器分为以下几种:
UHCI(Universal Host Controller Interface 通用主机控制器接口) 该标准是英特尔提出。

OHCI(Open Host Controller Interface 开放主机控制器接口)该接口是康柏和微软等公司提出,兼容OHCI的控制器硬件智能程度比UHCI高。

EHCI(Enhanced Host Controller Interface 增强型主机控制器接口) 该主机控制器支持高速的USB2.0S设备。为支持低速的USB设备,该控制器通常同时包含UHCI 和 OHCI控制器。

USB OTG控制器,这类控制器在嵌入式微控制器领域越来越受欢迎,由于采用了OTG控制器,每个通信终端 即能作主机也能作从机,设备可以根据功能需要在主机模式和设备模式之间任意切换。

主机控制器内嵌了一个叫 根集线器 的硬件。很重要!!!!

三 关于根集线器

USB集线器又称为USB Hub,用于拓展计算机USB接口。计算机主板上对外往往提供多个USB接口,这些接口往往都是通过主板上的USB集线器芯片来拓展出来的。在USB总线通信协议中,通过设备描述符和接口描述符来判断该USB是否为USB集线器。

USB 根集线器(USB Root Hub)指的是直接连接到USB主控制器上的USB Hub。USB根集线器供电与USB主控器供电来源相同。USB总线中只有USB主机和USB集线器可以向外部供电。

USB总线拓扑
一个USB分层星型结构有且仅有一个USB主机控制器,并且USB主机控制器一般都伴随有一个Root Hub(根集线器),都在在最顶层,主机通过Root Hub提供若干个连接点,由于集线器和电缆中的信号传输有定时限制,该星形拓扑结构的最大层数为7层(包括根层)。而且要注意的是,在这7层结构中,主机和任何设备间的通信通路最多可支持5个非根集线器。因此,如果hub被连接在第7层就不能运转,第7层只能允许连接功能设备。一个USB主控制其最多可连接127个外设(包括根集线器)。如下最大的7层星型结构,代表的只是一条USB 总线,一条总线仅有一个USB主机控制器和一个Root Hub。

在这里插入图片描述

所有的USB设备都必须经过集线器上的USB端口连接到总线,即使是计算机内部的USB 设备也是经由Hub的端口连接到总线的。

关于集线器的工作:
当USB设备插入到USB集线器后,一切的工作都是由USB集线器开始的。当USB设备插入到USB集线器的一个端口后,该端口会检测到有设备插入,检测依据是USB设备在D+ 或 D- 数据线的上拉电阻,当设备的上拉电阻在D+时,为全速设备。当设备的上拉电阻在D-时,为低速设备。也就是说 USB集线器在检测到有设备插入的同时还要判断该设备是全速设备还是低速设备,检测后 将相应的寄存器置位。此时USB集线器驱动就会将检测到的端口状态上报给USB子系统。

四 USB 接口分类

1 USB Type A:此类接口常用于个人电脑PC及消费类电子产品中,是应用最广泛的接口类型之一。
在这里插入图片描述

2 USB Type B:一般用于3.5寸移动硬盘以及打印机、显示器等连接
在这里插入图片描述

3 Mini-USB:一般用于数码相机、数码摄像机、测量仪器以及移动硬盘等移动设备的连接

在这里插入图片描述

4 Micro USB:是USB 2.0标准的一个便携版本,比Mini USB接口更小。我们手机的充电接口就曾广泛使用Micro USB接口。

在这里插入图片描述

5 USB Type C:该接口拥有更加纤薄的设计、更快的传输速度(最高10Gbps),以及更强悍的电力传输(最高100W)。并支持双面插拔,是目前USB接口的潮流。
在这里插入图片描述

  • 8
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Linux老A

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值