隨著臺式機和筆記本電腦串口的消失,USB已成為最常見的外圍設備接口。此外,USB的嵌入式應用正在增加。但是,在嵌入式系統中實現USB接口的開發團隊可以輕松地產生微小的變化,這可能使與其他嵌入式USB設備的互操作性成為不確定的結果。
我們的團隊處理USB 3.0主機接口開發的方式之一是檢查我們的主機與許多不同供應商的USB設備的兼容性。我們最終投入了大量時間來調查和調試出現的問題。我們發現了導致大多數這些問題的兩個重要問題。
第一個問題是系統電源管理工作的結果。在嵌入式系統中,可能需要讓USB主機動態關閉連接的USB設備,作為其電源管理方案的一部分。問題是,當主機VBUS電源關閉時,USB 2.0/3.x規范沒有在主機/設備側提供放電機制。在主流臺式PC和Linux系統中,VBUS電源始終保持開啟狀態。
在主機電源斷開后,連接設備放電所需的時間差異很大。圖1顯示了USB存儲器件的典型放電事件。這種特定設備需要6-8秒才能放電,但來自不同供應商的設備可能會顯示不同的放電特征。
嵌入式USB系統想要循環主機的VBUS電源不接受規范的指導,關于主機在重新斷電之前關閉電源以使連接的設備放電多長時間。所以,他們選擇了自己的延遲時間。不幸的是,開發人員往往只在其軟件中插入10到150毫秒的延遲;他們不愿意延遲幾秒鐘,這可能是實際需要的。
當主機軟件關閉VBUS電源只有幾百毫秒時,由于連接的設備可以出現問題處于一個未知的狀態。這種不確定的情況通常會導致在電源恢復后設備連接或連接階段出現故障。如果主機軟件關閉VBUS電源,則必須將電源線接地并保持足夠長的時間以完全放電并重置連接的設備。
因為規范沒有說明和供應商通常不提供最小“關閉”時間的值,開發人員需要為自己定義一個。通用工程實踐表明,開發人員測量許多設備的放電時間,以達到“安全”的關閉時間。該結果將基于有限數量的實驗,但可以證明是足夠的。從圖1可以看出,幾乎所有連接的USB設備都可以使用10秒左右的關閉時間。
作為這種不確定的經驗方法的替代方案,可以有硬件解決方案。問題。為主機硬件提供一個有時間限制地正確釋放VBUS電源的措施。這樣,軟件可以使用保證正確的延遲值。增加的放電機制甚至可以根據其他平臺設計選擇,允許系統控制,在VBUS放電時間內選擇性地啟用放電機制,并在VBUS打開時禁用機制。
我們實施了這樣的放電在發現我們在測試各種USB設備時看到的枚舉錯誤的原因后,我們的主機設計中的機制。一旦機制到位,先前在電源循環期間失敗的設備就會開始正確枚舉。
在測試以數據速率為中心的USB主機兼容性時經常出現的第二個問題。 USB規范要求主機通過發送命令和數據請求來初始化和配置任何連接的設備。不幸的是,我們發現市場上的某些設備在高速接收協議兼容的請求時不會表現出來。設備出現故障,最終將不間斷的NAK發送給主機,導致主機超時。在枚舉期間或稍后在數據傳輸期間,設備可能會失敗,具體取決于設備邏輯無法處理主機請求的位置。
Windows和Linux系統似乎通過微調主機/設備來解決此問題握手。它們將吞吐率降低到大多數或所有設備可以工作的水平。嵌入式USB開發人員需要測量他們打算使用的設備可以處理的命令間請求時間。
這種速度的一個例子圖2中顯示了與記憶棒相關的故障。在枚舉期間,主機的大容量存儲驅動程序會發出設備必須確認和處理的設置令牌。該圖顯示,如果設置后的命令間隙大約為9μs,則設備的邏輯無法確認“獲取字符串描述符”命令。設備使用NAK連續響應命令,導致主機超時。圖3顯示了設置后的命令間隙增加到27μs時的結果。通過這個時間,設備可以正常工作。
主機需要添加額外的命令間延遲才能適應某些USB設備的惡意功能,甚至雖然9μs的命令間隙是有效的USB請求。但是,只有在枚舉階段或控制轉移中才需要這種延遲。在正常數據交易(批量輸入/輸出)期間不會出現此計時問題。
我們的研究結果是,嵌入式USB主機 - 設備互操作性問題可能來自兩個來源:電源循環和命令/數據流量速率。由于這些因素沒有明確的規范,開發人員希望不同供應商能夠看到其實施的許多變化。為確保廣泛的互操作性,開發人員應確保其USB主機設計“慷慨”,以滿足設備的處理能力。此外,這些問題也應作為澄清USB標準的基礎,以便設備供應商在未來針對統一的要求。
Ritika Sharma畢業于NIT的電子與通信工程專業賈朗達爾,旁遮普邦,印度。她目前正在與飛思卡爾半導體印度公司合作。有限公司(恩智浦集團公司)作為IP設計和驗證領域最近3年的設計工程師。
Parul具有模擬設計背景和該公司致力于模擬PHY(如1394a,USB2.0和HDMI)的設計和芯片開發,采用0.35um至28nm的各種技術。 Parul還擁有多項與USB設計有關的專利。
-
嵌入式
+關注
關注
5072文章
19026瀏覽量
303518 -
usb
+關注
關注
60文章
7903瀏覽量
264050 -
PCB打樣
+關注
關注
17文章
2968瀏覽量
21659 -
華強PCB
+關注
關注
8文章
1831瀏覽量
27727 -
華強pcb線路板打樣
+關注
關注
5文章
14629瀏覽量
42990
發布評論請先 登錄
相關推薦
評論