?
引言
??? 市面上許多手機和便攜設備 (如數碼相機) 都能通過插入一塊標準、小型或微型SD卡來增加內存。這一功能刺激了共享或擴展主機處理器SDIO (安全數字I/O) 端口從而連接多個設備的需求。SD卡接口設計為一個6通道總線,當中 1個通道用于時鐘、一個用于命令,其余4個用于數據線路。
??? 按照SD卡協會 (SD Card Association, SDA) 的物理層規范,可將多卡與總線連接,只要每個卡都有專門的一套命令和數據通道 (時鐘可共享)。若在主機只有一套命令/數據通道的情況下擴展SDIO接口,還必須解決幾個問題,才能實現優化解決方案。無論采用什么方法來擴展接口,插入的擴展部件絕不能影響功能運作和造成系統延遲。飛兆半導體" title="飛兆半導體">飛兆半導體已推出占位尺寸小及成本低的解決方案,即FSSD06多路復用器,將一個SDIO端口擴展成多個端口。
圖1:SDIO主機端口擴展
擴展 SDIO 接口的約束條件
??? 市面上有兩種電壓范圍的SD卡及配件產品,即電壓在2.7 到3.3V的高壓卡,以及要么工作在上述高壓范圍,要么使用1.8V標稱低壓的雙電壓卡。因此,理想的解決方案應當讓主機控制器能夠同時與這兩種卡接口,為用戶帶來最大" title="最大">最大的靈活性。
??? 用于擴展SDIO接口的插入擴展部件絕不能影響功能運行和造成系統延遲。接口通信定義了多種模式 (即不同速率)。缺省模式定義為0到 25 MHz之間可變的時鐘速率,可通過4條并行數據線以每秒12.5 MB的速率傳輸數據。高速模式支持高達50 MHz的時鐘速率,可通過接口以每秒25 MB的速率傳輸數據。對SDIO接口進行復用的處理速度必須足夠快,并不能對高速模式的數據傳輸速率造成限制。
??? 卡的初始化和識別以低速進行,采用漏極開路輸出信號接法,時鐘速率在100 kHz 到 400 kHz之間。初始化一完成,主機就進入數據傳輸模式" title="傳輸模式">傳輸模式,而接口則可根據具體SD卡的模式 (即卡的數據傳輸速率) 相應提高速率。數據傳輸模式采用推挽信號接法,時鐘速率可達50 MHz。擴展SDIO接口的電路必須解釋協議并清楚了解主機何時進入數據傳輸模式,必須能以既有利于初始化 (漏極開路信號),又有利于數據傳輸模式 (推挽信號) 的交替方式實現通信。
??? 最后,當主機或卡都不向接口傳輸數據時,端口復用器必須讓系統處于缺省的高阻抗狀態,備有所需的升壓電阻來控制命令和數據線。SD 卡規范定義的升壓電阻阻值在 10k 到 100k 歐姆之間,用于防止總線處于浮接狀態。
FSSD06 的功能特點
??? 飛兆半導體針對擴展 SDIO 接口的目標應用開發出一種產品,名為 FSSD06 多路復用器,其每項功能均為應對前述挑戰而設計。概括而言,FSSD06 的這些功能是通過飛兆半導體的專有架構來實現,這個架構綜合了無源 FET 開關與有源緩沖器的最佳功能。
??? 首先,讓我們看看主機控制器和市面上各種類型 SD 卡對電源電壓的靈活性需求。FSSD06 的每個端口都有一個專門的電源引腳,這樣邏輯高位端口電壓就可以準確地做到所期望的電壓值。主機和卡之間的電壓轉換由 FSSD06 的內部電路來管理,系統設計人員" title="設計人員">設計人員只需在每個端口加上所期望的電壓,不用操心其它任何事情。對不用的端口,電源引腳必須接地,而命令和數據引腳可以接地也可浮接。
??? 為了支持高速模式,FSSD06 具有非常短的傳送延遲,典型延遲范圍在 1 到 2 納秒。這個響應速度在 SD 接口的電容性負載" title="電容性負載">電容性負載達到 40pF 的最大容許值時尤其重要。FSSD06 采用飛兆半導體的專有輸出驅動電路,該電路的驅動強度可調,能夠提供極短的信號脈沖沿上升時間,亦允許系統工作在漏極開路 (初始化) 信號模式和推挽 (高速傳輸) 信號模式。
??? 將這種方法與純漏極開路方法做個比較,后者類似于 FPGA 供應商建議的方法,必需采用較低的升壓電阻才能達到所要求的數據速率。升壓電阻低帶來一個問題,即 SD 卡控制器將信號拉到邏輯低電平時所需的功耗大幅增加。而且這個問題在接口的電容性負載增加時更加惡化。
??? SDIO 技術規范所允許的總線最大電容性負載為 40pF,而且采用純無源的升壓電阻來實現邏輯高電平狀態,這會影響接口的最大工作速率。系統設計人員必須在采用低阻抗端接而導致功耗增加與數據傳輸期間的工作速率之間作出權衡折衷。 而FSSD06 采用了針對兩種模式優化的驅動電路,使系統設計人員完全擺脫這種約束。FSSD06 的輸出也采用同樣的專有驅動電路,無需解釋主機控制器的命令就能實現雙向通信,因而簡化所需的邏輯并進一步減少總體系統功耗。
??? 如果能將 SD 卡插槽與主機接口隔離 (比如在無通信期間),效果可能會更好。這可用 OEb 引腳禁用 FSSD06 的兩個端口來實現。根據 SDIO 接口規范,時鐘線上沒有升壓電阻,如果 SD 卡仍處于上電狀態,卡的時鐘線將處于浮接。不過,FSSD06 通過連接一個微小的升壓電阻到任何未選中的卡端口的時鐘線上,解決了這個問題,防止上電的 SD 卡因浮接了一個 CMOS 輸入而產生振蕩,造成額外的功耗。
??? 由于 SDIO 接口擴展逐漸在超便攜 (電池供電的) 設備中應用,最大限度地降低功耗對延長電池工作時間或電池最終壽命非常關鍵。我們所討論的 FSSD06 器件的功能特點,都是針對降低設備功耗以及簡化從單卡設計到多卡設計的轉換而開發的。
內置電壓轉換電路
??? 無需采用低阻抗升壓電阻,就能在高速模式下驅動大電容性負載
??? 自動感測通信方向
??? 支持所有定義的 SD 卡模式:1位、4位或 SPI
應用發展
??? 在設計需要擴展 SDIO 接口的系統時,需要考慮幾個關鍵事項。設計人員面臨的最重要選擇是決定命令 (CMD) 和數據 (DAT) 信號的升壓電阻的最優值。該阻值越小,信號的完整性越好,這取決于跡線的長度,在高速數據傳輸時尤為突出;但系統功耗會增加。
圖2:典型應用電路示意圖
??? 飛兆半導體開發出高度可配置的評測板,為設計人員提供協助。該板卡可插入各種阻值的升壓電阻。在每個 SD 卡端口都能測量不同阻值升壓電阻在每條跡線的電容性負載為 30pF 時的效果,阻值范圍是從 4.7k 到 100k 歐姆。四條數據跡線的每一條都具有相應的不同升壓阻值,而命令線則可選擇五種不同的阻值,每種都有一個自有的跳線。使用這種配置的評測板,開發人員就能評測初始化和數據傳輸模式下時鐘、命令和數據線上的信號波形 (在每條跡線上提供了測試點)。通過監視評測期間的電源電流,就可以選出最優的升壓電阻,既能達到很好的信號完整性,同時又能最大限度地降低總體系統功耗。
??? 為監視電流及評測不同電壓下的接口信號,該評測板還提供一些連接器,對主機端口和每個 SD 卡端口進行獨立供電。使用跳線從連接器對特定的 SD 卡加電。評測板還配有 3 個調壓器 (1.8V、2.6V 和 3.3V),便于用戶根據其應用進行電壓安排。
??? 飛兆半導體目前并提供 FSSD06 評測板和用戶手冊。