新聞中心

        EEPW首頁 > 模擬技術 > 設計應用 > CF+插槽宿主的供電及熱插拔控制設計

        CF+插槽宿主的供電及熱插拔控制設計

        作者: 時間:2008-07-03 來源:電子系統設計 收藏

          在設計可支持CompactFlash+++(或+)插槽的接口時,有兩個主要因素需要考慮,即。為支持+規范,在上電復位(POR)及請求的過程中,必須具有100mA的最大電流。這樣,宿主便可執行專門的命令以檢驗該部件有足夠的功率。

        本文引用地址:http://www.104case.com/article/85219.htm

          該信息可通過一個卡信息結構(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)進行隔離。另一方面,數據總線是雙向總線,可與低階地址總線進行時分多路復用。

        圖1:隔離地址或數據總線的最好方法是使用驅動器/接收器。

          因此,74373或類似器件可提供適當的隔離。當CF+插槽為空、熱插拔并非真正的熱插拔時,宿主會定期輪詢CD線,檢查CF卡的存在,然后中斷處理器,從而調用CF激活進程。該進程由通過上述的控制電路進行加電開始,然后必須等待至少300ms使該部件準備好執行命令。等待過程分兩個階段:0-100ms為第一個階段,只是等待;100-300ms為第二階段,此時應檢查“READY”狀態是否已出現,如果沒有,則繼續等待。準備好后即可繼續。如果超過300ms還沒出現“READY”狀態,則報告CF卡出錯。如果在第二階段準備好,宿主必須從CF部件讀取狀態字節。該過程的大部分由驅動器軟件處理,不過這里是被用于沒有商用操作系統的嵌入式設計。因此,這種卡實際上并不真正具備熱插拔功能,盡管在用戶看來它具有。

          若CD信號消失,這表明CF卡已被拔掉。宿主檢測到這一狀態后,會關閉電源并重新尋找等待CD信號以便再次激活。



        關鍵詞: 控制 熱插拔 供電 CF

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 宣汉县| 克什克腾旗| 雷山县| 崇明县| 灵寿县| 宝丰县| 卫辉市| 文化| 金湖县| 云浮市| 阿克苏市| 枞阳县| 西吉县| 马边| 沛县| 古交市| 屯留县| 精河县| 山丹县| 永顺县| 桂东县| 辽宁省| 红桥区| 乌兰浩特市| 平乐县| 开封县| 五华县| 满城县| 昆明市| 南丰县| 个旧市| 大田县| 峨眉山市| 三明市| 巴青县| 大化| 庄河市| 阳东县| 清涧县| 闻喜县| 朝阳区|