电脑是怎样识别USB3.0 U盘的

版权声明:本文为博主原创文章,未经博主同意不得转载。

https://blog.csdn.net/zoosenpin/article/details/31735727

1 How to Recognize USB Flash Drive
USB3.0电缆如Figure 1-1所看到的。
                                          Figure 1-1



USB3.0的接口比USB2.0接口多了5根线。这5根线各自是Shield、SSRX+/-和SSTX+/-,即是屏蔽地、超速发送差分对和接受差分对。



因此一个支持USB3.0的U盘插到电脑上我们有必要搞清楚是D+/D-传递数据还是SSRX+/-和SSTX+/-传递数据。当USB3.0的U盘连到支持SuperSpeed的电脑上后,引脚接口如Figure 1-2所看到的。


                                                                 Figure 1-2

Figure 1-2中两端相连的电缆会在USB主机和设备端的SSRX+/-上产生一个等效下拉电阻R_Term(其范围在18-30欧姆)。如Figure 1-3所看到的。
                                       Figure 1-3

插入电缆后等效电路能够看成一个RC回路。而RC回路有一个重要特性。就是时间常数。这个常数就是R和C乘积。也是影响充放电特性的,其充放电特性如Figure 1-4所看到的。
                                               Figure 1-4

从Figure 1-4能够看出,插入和拔除电缆。将Vo充电到特定的电压,则插入电缆后,充电须要的时长添加了。电脑的USB3.0主机就是依据这个特性探測到U盘是支持超速特性的,否则插入电缆前后假设充电到电压Vo没有时间变化的话,电脑就觉得是快速U盘,而不是超速U盘了。

超速U盘就使用SSRX+/-和SSTX+/-传递数据,而且是全双工的。否则快速U盘使用D+/D-传递数据。



2 PIPE PHY数据线宽度
USB3 PIPE PHY的数据线宽度是能够设置的,最大宽度各自是TX 32bit、RX 32bit,须要依据PIPE PHY的接口频率来设置数据线宽度。假设PIPE PHY执行在128MHz,那么TX和RX的数据线宽度都是32bit;假设PIPE PHY执行在256MHz,那么TX和RX的数据线宽度都是16bit。

USB3 Gen1的速度5Gbps,是指TX和RX的速率都是5Gbps(128MHz * 4bytes或者256MHz * 2bytes)。

3 Bulk传输速度计算
- Full-speed
每一个frame最大能够传输19个Bulk包,每一个包最大是64 B,所以其最大传输速率是:64 x 19 x 1000 = 1.16MB/s。


- High-speed
USB2.0在每一个微帧中最大可传输13个Bulk包,而每一个微帧长固定为125μs,所以其最大传输速率为:512 x 13 x 8 x 1000 = 53MB/s。



4 XHCI PORTSC端口状态控制寄存器
@ drivers/usb/host/xhci-hub.c 
xhci_get_ports()

5 Abbreviations
ARC:Argonant RISC Core
AT91SAM9260:SAM means Smart ARM-based Microcontroller
ATMEL SAMBA:ATMEL Smart ARM-based Microcontroller Boot Assistant
bdi:Linux backing device info
CC2530:TI ChipCon2530
DWC2:Design Ware Controller 2。Apple的嵌入式设备。包含iPad和iPhone都是使用的DWC2
ISP1161:Philips' Integrated host Solution Pairs 1161,“Firms introduce USB host controllers”,https://www.eetimes.com/document.asp?

doc_id=1290054
MPH:USB Multi-Port Host,Intel的MPH的Port1作为OTG使用,和DWC3(仅作为slave)使用一个MUX开关来控制Host还是UDC连接到该Port1
Quirks:the attributes of a device that are considered to be noncompliant with expected operation
SL811HS:Cypress/ScanLogic 811 Host/Slave。性能上与ISP1161(Integrated host Solution Pairs 1161)相当
SPH:USB Single-Port Host
TDI:TransDimension Inc.,该公司首先发明了将TT集成到EHCI RootHub中的方法,这样对于嵌入式系统来说,就省去了OHCI/UHCI的硬件,同一时候减少了成本,作为对该公司的纪念,Linux内核定义了宏ehci_is_TDI(ehci);产品UHC124表示USB Host Controller;收购了ARC USB技术;现已被chipidea收购。chipidea又被mips收购
TLV:TI Low Value,高性价比
TPS:TI Performance Solution
TT:Transaction Translator(事务转换器,将USB2.0的包转换成USB1.1的包)
TUR:Test Unit Ready,sd_spinup_disk()执行该命令,底层排队函数usb_stor_host_template.queuecommand()和ufshcd_queuecommand()
xECP:xHCI Extended Capabilities Pointer

猜你喜欢

转载自www.cnblogs.com/mqxnongmin/p/10846360.html