CompactFlash+插槽的供電及熱插拔控制設計
關鍵字:CompactFlash+插槽 熱插拔控制設計 CF卡 供電 熱插拔
在設計可支援CompactFlash+(或CF)插槽的介面時,有兩個主要因素需要考慮,即供電及熱插拔。為支援CF或CF+規格,在上電重啟(POR)及請求的過程中,必須具有100mA的最大電流。這樣,主機端便可執行專門的命令以檢驗該元件有足夠的功率。
該資訊可透過一個卡資訊結構(CIS,Card Information Structure)讀命令或識別設備(Identify Device)命令來獲得。然後,主機端可確定是否能驅動該元件。如果能,則一個CF+元件可承受的最大電流為500mA(稱為Power Level 1)。諸如快閃記憶體等許多CF元件可工作於100mA供電電流。新的CF+主機端設計應該能支援500mA電流。在下文,我們將初步探討如何降低可攜式設備的功耗以延長其電池壽命。
要完全控制CF+元件,其主機端應能控制其插槽的電源供給。如果CF+元件不希望被拔掉且不是用電池供電,則不需要這種可變控制(如記憶體嵌入到線路板上的情況)。CF+插槽的供電控制並不複雜,就跟FET開關與供電元件(如MICREL MIC2026)或控制器晶片(如Maxim 1601或4370)串聯一樣簡單。
在控制CF+元件的供電時,主機端必須確知該元件已為關閉電源做好準備。某些元件,如日立Microdrive等儲存驅動器具有寫入快取記憶體。在啟動Caching並將讀寫頭置於媒體上方後,Microdrive就會將‘READY’狀態報告給一個寫命令(命令結束後解釋),即使仍有數據在寫入驅動器。在這種情況下,關閉驅動器電源之前,主機端必須執行‘STANDBY IMMEDIATE’命令,並等待‘READY’狀態的出現。驅動器將一直保持‘READY’狀態,直到快取記憶體被騰空且讀寫頭已停好。然後,主機端便可關閉驅動器的電源。
除了上述的電源問題外,切忌故意將CF+元件插入帶電插槽中,即使該插槽的設計允許這種在發出訊號前連接電源線的作業。但是意外情況的確會產生,因此驅動器最好具備熱插拔功能。
熱插拔的設計問題是,在CF+設備進行上電重啟(POR)或對小的接腳電容器充電時,應避免地址或數據匯流排受到由其引起的瞬態衝擊。隔離這些匯流排的最好方法是使用驅動器/接收器(如圖1所示)。單向地址匯流排只需使用驅動器。數據線及一些控制線則需要使用接收器將訊號與主機端隔離開來。在對插槽供電之前,接收器應在OUTPUT(至CF元件)進行預設置。這可確保在‘讀選通’期間CF+元件與主機端處理器隔離,並且只與數據匯流排相連。由於許多主機端匯流排採用分時多工匯流排設計,因此地址匯流排通常使用一個簡單的驅動器(如74244)進行隔離。另一方面,數據匯流排是雙向匯流排,可與低階地址匯流排進行分時多工。
因此,74373或類似元件可提供適當的隔離。當CF+插槽為空、熱插拔並非真正的熱插拔時,主機端會定期輪詢CD線,檢查CF卡的存在,然後中斷處理器,因而調用CF啟動進程。該進程由透過上述的控制電路進行加電開始,然後必須等待至少300ms使該元件準備好執行命令。等待過程分兩個階段:0-100ms為第一個階段,只是等待;100-300ms為第二階段,此時應檢查"READY"狀態是否已出現,如果沒有,則繼續等待。準備好後即可繼續。如果超過300ms還沒出現"READY"狀態,則報告CF卡出錯。如果在第二階段準備好,主機端必須從CF元件讀取狀態位元組。該過程的大部份由驅動器軟體處理,不過這?是被用於未商用作業系統的嵌入式設計。因此,這種卡實際上並不真正具備熱插拔功能,儘管在用戶看來它具有。
若CD訊號消失,這顯示CF卡已被拔掉。主機端檢測到這一狀態後,會關閉電源並重新尋找等待CD訊號以便再次啟動。
作者:William F. Heybruck
高級應用工程師
Email:bill.heybruck@hgst.com
日立環球儲存技術公司
社區今日頭條 |
---|