几种USB控制器类型
通用接口USB3.0设备控制器的优势

通用接口USB3.0设备控制器的优势USB 简介:通用串行总线(USB)旨在实现键盘、鼠标、打印机、U 盘、硬盘、便携式媒体播放器等电脑外设的标准化连接,支持它们的通信和供电需求。
USB 是当今PC 和消费类设备最常见的连接解决方案。
USB 即插即用、简便易用、实施简单,不断受到新型应用和新兴细分市场的青睐。
从USB 标准的发展史来说,该标准的第一版USB 1.0 于1996 年发布。
USB 1.0 定义了两种传输速度,以满足当时出现的不同类型的设备需求。
其中1.5 Mbps(低速)用于满足键盘、游戏操纵杆等低速设备需求,而12 Mbps(全速)则用于满足磁盘驱动器等设备需求。
USB 2.0 标准于2000 年发布,最高信号传输速率达到480 Mbps(高速),是全速信号传输速率的40 倍。
USB 3.0 标准于2008 年发布,最高信号传输速率达到5 Gbps(超高速),是高速信号传输速率的10 倍。
问题在于,哪些应用需要超高速的信号传输速率。
看看成像数据和存储领域的发展演进,就会发现高速数据传输速率现已无法满足这些市场的需求。
传输未压缩的高清视频(1080p@30fps)需要约118 MBps 的数据流。
此外,根据最新SD 卡标准(v3.0),也就是所谓的容量扩大化的安全存储卡(SDXC),现在SD 卡的最大存储容量已高达2TB。
SDXC 存储卡的运行时钟频率最大可达208 MHz,从而数据传输速率可高达104 MBps。
USB 3.0 能够无条件地支持上述市场需求。
USB 3.0 向后兼容USB 2.0,因此USB 标准也一直保持着向后兼容性。
本文随后将探讨USB 3.0 设备控制器的三种不同应用(数据采集系统、电脑电视收发器和UVC 摄像头),并介绍通用USB 3.0 设备控制器如何满足上述各种应用需求。
USB工作原理

USB工作原理USB(Universal Serial Bus)是一种常见的计算机外部设备连接标准,它能够实现高速数据传输和供电功能。
USB工作原理涉及到物理层、数据链路层和传输层等多个方面,下面将详细介绍USB的工作原理。
1. 物理层:USB的物理层主要包括USB接口和USB线缆。
USB接口通常分为Type-A、Type-B、Micro-USB和USB-C等不同类型,每种类型具有不同的形状和大小。
USB线缆普通由四根线组成,包括两根用于数据传输的差分信号线(D+和D-),一根用于供电的Vbus线,以及一根用于地线连接。
2. 数据链路层:USB的数据链路层负责将数据从主机传输到设备,或者从设备传输到主机。
数据链路层使用一种称为“传输包”(Transfer Packet)的数据单元来进行数据传输。
传输包由同步字段、PID(Packet Identifier)字段、地址字段、端点字段、CRC (Cyclic Redundancy Check)字段和结束标志字段组成。
3. 传输层:USB的传输层定义了不同的传输方式和协议。
常见的传输方式包括控制传输、批量传输、中断传输和等时传输。
控制传输用于配置和管理设备,批量传输用于大容量数据传输,中断传输用于低延迟的数据传输,而等时传输则用于实时数据传输。
4. 主机控制器:USB主机控制器是计算机系统中的一个重要组件,它负责管理USB总线和与USB设备的通信。
主机控制器包括USB主控芯片和驱动程序。
USB主控芯片通过与主机的PCI(Peripheral Component Interconnect)总线连接,实现与USB设备的数据交换。
驱动程序则负责控制主机控制器的操作,包括设备的识别、配置和数据传输等。
5. 设备控制器:USB设备控制器是USB设备中的一个重要组件,它负责管理USB设备与主机之间的通信。
设备控制器包括USB设备芯片和驱动程序。
USB设备芯片通过与设备的接口连接,实现与主机的数据交换。
USB的结构及工作原理

USB的结构及工作原理USB(Universal Serial Bus)是一种用于连接电脑和外部设备的通用串行总线,它提供了一种简便、高效的数据传输和电源供应方式。
USB的成功在于其简单的结构和灵活的接口规范,使得它成为了现代电子设备中最主要的外部接口之一一、USB的结构1. USB连接器:USB连接器是连接USB设备和计算机的接口,可以通过不同的连接器类型进行物理连接,如Type-A、Type-B、Micro-USB、Type-C等。
B电缆:USB电缆用于传输数据和提供电源,它通常由四条线构成:两条用于数据传输(D+和D-),一条用于电源供应(VCC),一条用于地线(GND)。
数据线采用差分传输技术,通过D+和D-线上的电压差异来传输数据。
B控制器:USB控制器是连接计算机系统和外部设备的接口芯片,负责数据的传输、电源的管理和设备的管理。
它能够识别连接的设备,并通过控制传输协议进行数据的交换。
二、USB的工作原理USB的工作原理可以分为四个阶段:电源管理、设备识别、配置和数据传输。
1.电源管理:当设备插入USB接口时,USB控制器会为设备提供电源。
USB设备通过使用插入和拔出的电流来检测计算机是否连接了USB电缆。
一旦检测到电流,设备可以从总线上获取电源。
2.设备识别:USB控制器会通过发送特定的电压或电流模式来识别连接的USB设备。
这些模式由USB设备使用的芯片来解码,设备可以向USB控制器提供设备的标识信息。
3.配置:一旦设备被识别,USB控制器会通过请求和应答的方式与设备进行通信,以确定设备的属性和功能。
USB设备会在接收到配置指令后进行初始化,并向USB控制器报告设备的信息和功能。
4.数据传输:一旦设备被配置完毕,USB控制器就可以进行数据的传输。
USB使用主从模式,即USB控制器作为主机发送数据,设备作为从机接收数据。
数据传输可以分为三种类型:控制传输、中断传输和批量传输。
控制传输用于设备的配置和控制,中断传输用于传输实时数据,批量传输用于大量数据的传输。
USB3.0控制器性能对比

USB3.0控制器性能对⽐USB接⼝对于绝⼤多数⼈来说都不陌⽣,虽然它只是⼀个通⽤的接⼝标准,不过它不仅可以⽤来连接移动硬盘、U盘、键盘、⿏标,也可以⽤来连接⼿机及各类USB⼩产品等等,可以说,这是当前IT产品中最通⽤的接⼝设备,不过随着⼈们对速度要求的提升,USB2.0已经渐渐不能满⾜需求。
因此对USB3.0接⼝的需要更为迫切,在前两年,虽然USB3.0还不是主板芯⽚组原⽣提供的接⼝,但是相信在⼀部分定位略⾼的主板上都可以见到USB3.0接⼝,⽽今年随着与均推出了原⽣的USB3.0,这个接⼝真正⾛⼊家庭已经不远了。
在今年不只是芯⽚⼤⼚积极表态,就连移动存储、存储卡、硬盘盒与硬盘⼚商也都是精锐尽出,纷纷推出了使⽤USB 3.0传输接⼝的最新产品,让USB3.0产品⼴布市场,⽽且价格⽅⾯已经与USB2.0相差极⼩。
windows8系统将会为令USB3.0兼容更好⽬前因为系统原因,⼀个主控器并不能完全⽀持市⾯上所有的USB 3.0设备,很多时候都会出现不识别与冲突的现象,这就是其之前并不成熟与很难真正普及的原因,但是在windows8系统出现后,这些问题都会解决。
USB 3.0将会在这个系统上实现真正的原⽣⽀持,⾃此关于各种不同xHCI协议将会得到全⾯统⼀,USB 3.0设备和主控将会出现全⾯兼容,打架问题将不复存在。
虽然⽬前还处于Beta阶段,不过有关其USB3.0原⽣⽀持的测试都已经进⾏过,效果很不错。
所以在这个系统真正推出以后,⼤家就在不⽤担⼼主控与设备之间的冲突,就如同现在的USB2.0 U盘⼀般,随插随⽤,普及将不再是问题,在此同时主板⽅⾯,各⾊的USB3.0主控也是各不相同,原⽣与第三⽅之争也在进⾏着。
原⽣与第三⽅USB3.0主控芯⽚简介作为今天当前主板上主要的⼏个主控包括详硕的ASM1042 USB3.0芯⽚、INTEL原⽣USB3.0芯⽚、原⽣USB3.0芯⽚、NEC D720200F1与Etron EJ188H 芯⽚。
几种USB控制器类型

3.在QEMU代码中看到它支持的各种配置:“CONFIG_USB_OHCI=y”、“CONFIG_USB_UHCI=y”、“CONFIG_USB_EHCI=y”、“CONFIG_USB_XHCI=y”等。
4.看到Kernel的config文件中的“CONFIG_USB_OHCI_HCD=m”、“CONFIG_USB_UHCI_HCD=m”、“CONFIG_USB_EHCI_HCD=m”、“CONFห้องสมุดไป่ตู้G_USB_XHCI_HCD=m”等。
2.UHCI(UniversalHostControllerInterface),是Intel主导的对USB1.0、1.1的接口标准,与OHCI不兼容。UHCI的软件驱动的任务重,需要做得比较复杂,但可以使用较便宜、较简单的硬件的USB控制器。Intel和VIA使用UHCI,而其余的硬件提供商使用OHCI。
所以,这里就简单列一下各种xHCI(也包括真正的xHCI)的基本含义吧。
简单地讲,OHCI、UHCI都是USB1.1的接口标准,而EHCI是对应USB2.0的接口标准,最新的xHCI是USB3.0的接口标准。
1.OHCI(OpenHostControllerInterface)是支持USB1.1的标准,但它不仅仅是针对USB,还支持其他的一些接口,比如它还支持Apple的火线(Firewire,IEEE1394)接口。与UHCI相比,OHCI的硬件复杂,硬件做的事情更多,所以实现对应的软件驱动的任务,就相对较简单。主要用于非x86的USB,如扩展卡、嵌入式开发板的USB主控。
3.EHCI(EnhancedHostControllerInterface),是Intel主导的USB2.0的接口标准。EHCI仅提供USB2.0的高速功能,而依靠UHCI或OHCI来提供对全速(full-speed)或低速(low-speed)设备的支持。
通用串行总线控制器(介绍、目的及电脑如何查看)

通用串行总线控制器(介绍、目的及电脑如何查看)1、什么是通用串行总线通用串行总线(Universal Serial Bus,USB)是连接外部设备的一个串口总线标准,在计算机上使用广泛,但也可以用在机顶盒和游戏机上,补充标准(On-The-Go)使其能够用于在便携设备之间直接交换数据。
每个USB只有一个主机,它包括以下几层:总线接口USB总线接口处理电气层与协议层的互连。
从互连的角度来看,相似的总线接口由设备及主机同时给出,例如串行接口机(SIE)。
USB总线接口由主控制器实现。
USB系统用主控制器管理主机与USB设备间的数据传输。
它与主控制器间的接口依赖于主控制器的硬件定义。
同时,USB系统也负责管理USB资源,例如带宽和总线能量,这使客户访问USB成为可能。
USB系统还有三个基本组件:主控制器驱动程序(HCD)这可把不同主控制器设备映射到USB系统中。
HCD与USB 之间的接口叫HCDI,特定的HCDI由支持不同主控制器的操作系统定义,通用主控制器驱动器(UHCD)处于软结构的最底层,由它来管理和控制主控制器。
UHCD实现了与USB主控制器通信和控制USB主控制器,并且它对系统软件的其他部分是隐蔽的。
系统软件中的最高层通过UHCD的软件接口与主控制器通信。
USB驱动程序(USBD)它在UHCD驱动器之上,它提供驱动器级的接口,满足现有设备驱动器设计的要求。
USBD以I/O请求包(IRPs)的形式提供数据传输架构,它由通过特定管道(Pipe)传输数据的需求组成。
此外,USBD使客户端出现设备的一个抽象,以便于抽象和管理。
作为抽象的一部分,USBD拥有缺省的管道。
通过它可以访问所有的USB 设备以进行标准的USB控制。
该缺省管道描述了一条USBD和USB设备间通信的逻辑通道。
主机软件在某些操作系统中,没有提供USB系统软件。
这些软件本来是用于向设备驱动程序提供配置信息和装载结构的。
在这些操作系统中,设备驱动程序将应用提供的接口而不是直接访问USBDI(USB驱动程序接口)结构。
USB2.0整体框架的设计

一、usb系统的组成1、硬件2、软件1.1、硬件usb主机控制器usb设备控制器root hub普通usb hubusb设备(U盘,usb鼠标,usb摄像头等)usb线(四根线,VBUS,GND,D+,D-)上面的这些硬件设备组成了usb的拓扑结构,usb树。
下面简要的说下这些硬件的关系:usb主机控制器:就是usb host,典型的就是PC机上的usb控制器,有三大类包括OHCI,UHCI,EHCI,XHCI等.Usb设备控制器:一般运行Linux系统的设备,要想作为一个usb外设(比如你的手机插入到PC上作为一个U盘),就要有一个usb设备控制器。
OTG控制器:在支持OTG设备的系统中决定是启动主机控制器还是设备控制器。
Root hub:通常usb主机控制器和root hub集成到一起。
usb设备:就是咱们通常用的U盘,usb鼠标,usb摄像头等。
usb线:通常usb线是四根,VBUS,GND,D+,D-,但支持OTG的设备还有第五根ID 引脚。
四根线的颜色分别为:红色为VBUS,黑色GND,白色为D-,绿色为D+,,D+和D-是差分输入线,它使用的是3.3V的电压(注与CMOS的5V电平不同),而电源线和地线可向设备提供5V 电压,在没有配置的时候最大能提供100mA的电流,在配置完成时最大提供500mA的电流。
下面看下普通的usb线:下面是普通的usb集线器的图:其中包含了状态变化端点和用于控制的端点0下面是高通的8x60芯片中的USB模块,该usb模块是在嵌入式soc内部的:对于普通的PC 机,usb 控制器在在主板上单独的一个芯片:Usb主机控制器就挂到pci总线上.下面看下usb主机控制器和你的usb设备的什么器件通讯,也就是他们之间的通信管道。
不管任何usb设备在设备硬件上都有叫端点的东西,可以理解为usb设备通讯的buffer,并且这些端点都有地址编号。
实际的通信就是主机控制器和usb设备的这些端点通讯,这些端点的寻址是通过usb设备地址+端点地址唯一确定通讯地址的。
USB3.0接口技术与电路设计研究

2.2 USB的数据流传输
主控制器负责主机和USB设备间数据流的传输。这些传输数据被当作连续的比特流。每个设备提供了一个或多个可以与客户程序通信的接口,每个接口由0个或多个管道组成,它们分别独立地在客户程序和设备的特定终端间传输数据。USBD为主机软件的现实需求建立了接口和管道,当提出配置请求时,主控制器根据主机软件提供的参数提供服务。
1、USB概述
由于多媒体技术的发展对外设与主机之间的数据传输率有了更高的需求,因此,USB总线技术应运而生。USB(Universal Serial Bus)翻译为中文就是通用串行总线,是由Conpaq、DEC、IBM、Inter、Microsoft、NEC和Northen Telecom等公司为简化PC与外设之间的互连而共同研究开发的一种免费的标准化连接器,它支持各种PC与外设之间的连接,还可实现数字多媒体集成。现在生产的PC几乎都配备了USB接口,Microsoft 的Windows98、NT以及MacOS、Linux、FreeBSD等流行操作系统都增加了对 USB的支持。
3、USB外设控制器的两种实现方式
USB芯片在外设领域的应用面很广。USB外设控制芯片通常包括USB收发器、串行接口引擎(SIE)、USB控制器和外设功能等四个模块(SIE 主要以硬件方式处理大多数USB协议,USB控制器负责与PC交互通信信息)。USB控制器一般有两种类型:一种是MCU集成在芯片里面的,如 Intel的8X930AX、CYPRESS的EZ-USB、SIEMENS的C541U以及 MOTOLORA、National Semiconductors等公司的产品;另一种就是纯粹的USB接口芯片,仅处理 USB通信,如PHILIPS的PDIUSBD11(I2C接口)、 PDIUSBP11A、PDIUSBD12(并行接口),National Semiconductor的USBN9602、USBN9603、USBN9604等。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2.也曾在BIOS中设置为“开启EHCI,关闭XHCI”等来坚持使用USB2.0
3.在QEMU代码中看到它支持的各种配置:“CONFIG_USB_OHCI=y”、“CONFIG_USB_UHCI=y”、“CONFIG_USB_EHCI=y”、“CONFIG_USB_XHCI=y”等。
4.看到Kernel的config文件中的“CONFIG_USB_OHCI_HCD=m”、“CONFIG_USB_UHCI_HCD=m”、“CONFIG_USB_EHCI_HCD=m”、“CONFIG_USB_XHCI_HCD=m”等。
几种USB控制器类型:OHCI,UHCI,EHCI,xHCI
遇到过一些关于USB的东西(如下),一直没搞明白什么USB1.0/1.1/2.0/3.0之类的,当然我知道它们的各自传输速度都在提升,本文就做点简单的记录吧,尽量下载看到USB的东西和别人提及USB的术语时不要再迷茫了。
1.曾经遇到一些Linux系统对USB3.0的支持不完善,从而导致在有USB3.0设备的PC上启动失败(kernelpanic)。
好吧,就这样。
所以,这里就简单列一下各种xHCI(也包括真正的xHCI)的基本含义吧。
简单地讲,OHCI、UHCI都是USB1.1的接口标准,而EHCI是对应USB2.0的接口标准,最新的xHCI是USB3.0的接口标准。
1.OHCI(OpenH.1的标准,但它不仅仅是针对USB,还支持其他的一些接口,比如它还支持Apple的火线(Firewire,IEEE1394)接口。与UHCI相比,OHCI的硬件复杂,硬件做的事情更多,所以实现对应的软件驱动的任务,就相对较简单。主要用于非x86的USB,如扩展卡、嵌入式开发板的USB主控。
3.EHCI(EnhancedHostControllerInterface),是Intel主导的USB2.0的接口标准。EHCI仅提供USB2.0的高速功能,而依靠UHCI或OHCI来提供对全速(full-speed)或低速(low-speed)设备的支持。
4.xHCI(eXtensibleHostControllerInterface),是最新最火的USB3.0的接口标准,它在速度、节能、虚拟化等方面都比前面3中有了较大的提高。xHCI支持所有种类速度的USB设备(USB3.0SuperSpeed,USB2.0Low-,Full-,andHigh-speed,USB1.1Low-andFull-speed)。xHCI的目的是为了替换前面3中(UHCI/OHCI/EHCI)。