版权声明:本文为博主原创文章,未经博主同意不得转载。
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