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