以文本方式查看主題 - 曙海教育集團論壇 (http://www.brpp.cn/bbs/index.asp) -- Windows驅(qū)動開發(fā) (http://www.brpp.cn/bbs/list.asp?boardid=75) ---- 【W(wǎng)inCE】SD card技術(shù)了解并WINCE下SDHC驅(qū)動開發(fā)(updated) (http://www.brpp.cn/bbs/dispbbs.asp?boardid=75&id=2721) |
||
-- 作者:wangxinxin -- 發(fā)布時間:2010-12-17 12:01:31 -- 【W(wǎng)inCE】SD card技術(shù)了解并WINCE下SDHC驅(qū)動開發(fā)(updated) Driver on ADS Summary 了解SD card. 1 WinCE 5.0下SD Stack. 6 Bus Driver 7 Host Controller Driver 8 Client Driver 10 SD on MX31 ADS. 14 Secure Digital Host Controller 14 LP1070 Secure Digital I/O Wi-Fi Driver 17 SD on EVT. 19 附錄... 19 Author:Titan.Song Suumary: 簡單介紹了一下SD卡的歷史和發(fā)展,同時結(jié)合MX31 ADS上的WINCE 下SDHC驅(qū)動更深入的了解該硬件的一些行為特點。 了解SD cardSD是Secure Digital Card卡的簡稱,直譯成漢語就是“安全數(shù)字卡”,是由日本松下公司、東芝公司和美國SANDISK公司共同開發(fā)研制的全新的存儲卡產(chǎn)品。SD存儲卡是一個完全開放的標準(系統(tǒng)),多用于MP3、數(shù)碼攝像機、數(shù)碼相機、電子圖書、AV器材等等,尤其是被廣泛應(yīng)用在超薄數(shù)碼相機上。SD卡在外形上同Multimedia Card卡保持一致,大小尺寸比MMC卡略厚,容量也大很多。并且兼容MMC卡接口規(guī)范。不由讓人們懷疑SD卡是MMC升級版。另外,SD卡為9引腳,目的是通過把傳輸方式由串行變成并行,以提高傳輸速度。它的讀寫速度比MMC卡要快一些,同時,安全性也更高。SD卡最大的特點就是通過加密功能,可以保證數(shù)據(jù)資料的安全保密。它還具備版權(quán)保護技術(shù),所采用的版權(quán)保護技術(shù)是DVD中使用的CPRM技術(shù)(可刻錄介質(zhì)內(nèi)容保護)。 規(guī)格 主要特點: 1.精巧而且超薄 SD記憶卡的尺寸只有24毫米x 32毫米 x 2.1毫米。作為“橋梁媒體”的重要特征,它精致小巧,方便您在不同設(shè)備上使用。兼容SD記憶卡的設(shè)備可以采用解碼器軟件來播放音樂、影像短片以及更多其他類型的內(nèi)容,無需像CD播放機或DVD播放機那樣采用驅(qū)動裝置。從而使設(shè)備的外形更加精巧,同時也賦予了產(chǎn)品設(shè)計者發(fā)揮自由創(chuàng)意的全新空間。由于消除了播放音樂時的跳音現(xiàn)象,提高了播放的穩(wěn)定性。 2.大容量栽體 目前,SD記憶卡已經(jīng)具備各種容量可供選擇,同時,2GB、4GB和8GB的SDHC也出現(xiàn)了。 3.高速數(shù)據(jù)傳輸 為了提供快速響應(yīng)和容易處理數(shù)字內(nèi)容,SD記憶卡可以用每秒10MB的速率寫入和讀取數(shù)據(jù)。當其能夠用于遠程通信終端,直接下載內(nèi)容時,記憶卡的高速傳送能力將可使存取時間和通信成本降至最低,同時可減輕網(wǎng)絡(luò)壓力。 4.擁有版權(quán)保護功能 先進的數(shù)碼技術(shù)使高保真音樂和其他高質(zhì)量內(nèi)容的錄制成為現(xiàn)實。日新月異的數(shù)碼技術(shù),借助因特網(wǎng),實現(xiàn)了全球范圍的信息快速共享。這一進步也帶來了對原版內(nèi)容的大量復(fù)制,因此,作為21世紀的一種切實可行的記憶載體就必須具備高水平的版權(quán)保護技術(shù),這樣才能保護大量高質(zhì)的數(shù)碼數(shù)據(jù)。SD記憶卡可以自由復(fù)制各種數(shù)碼數(shù)據(jù),并采用獨特的內(nèi)置CPRM技術(shù)保存和轉(zhuǎn)移版權(quán)所有的內(nèi)容,這也是建立一個全新的音樂及其他商業(yè)媒體的發(fā)布體系的關(guān)鍵所在。 硬件結(jié)構(gòu) (參看附錄中SD卡和其他卡的一個對比表) SDIO卡 SDIO(輸入/輸出)卡是一種擴展帶SD卡插孔設(shè)備之功能的接口。正在開發(fā)各種SDIO卡,如相機、Bluetooth 、GPS和802.11b等。 如果編寫以上設(shè)備的驅(qū)動,當然前提是有一個合格的SD Host Controller。如同編寫USB STORAGE/HID設(shè)備的驅(qū)動一樣,需要USB HCD支持。MX31的ADS支持基于SDIO的LP1070 SDIO WLAN Card(在Wince 5.0的SD卡驅(qū)動模型里,這種驅(qū)動稱為client driver)。 SD_SDIO_SPEC.PDF SDIO features l Targeted for portable and stationary applications l Minimal or no modification to SD Physical bus is required l Minimal change to memory driver software l Extended physical form factor available for specialized applications l Plug and play (PnP) support l Multi-function support including multiple I/O and combined I/O and memory l Up to 7 I/O functions plus one memory supported on one card. l Allows card to interrupt host l Initialization Voltage: 2.0 to 3.6V l Operational Voltage range: 3.1 to 3.5V WinCE 5.0下SD Stack 一共可以分為3個部分:a bus driver, host controller driver 和 client drivers,現(xiàn)分別介紹: 1 Bus Driver 顧名思義,總線,連接client driver和host controller driver之間的一個管理層。這部分代碼微軟已經(jīng)寫好了,也就是說定義好了client和host之間的通訊接口。(是不是可以這么說:編寫SD WIFI的程序員可以不用知道是什么SDHC,從而達到驅(qū)動的跨硬件性) 參考代碼: D:\\WINCE500\\PUBLIC\\COMMON\\OAK\\DRIVERS\\SDCARD\\SDBUSDRIVER\\ 2 Host Controller 控制硬件并且通過上述的BUS driver來和client進行通訊。 參考代碼: D:\\WINCE500\\PLATFORM\\Mx31\\Src\\Drivers\\Sdhc D:\\WINCE500\\PUBLIC\\COMMON\\OAK\\CSP\\ARM\\FREESCALE\\Mxarm11\\Drivers\\Sdhc 3 Client Driver 通過BUS driver和SD設(shè)備進行通訊。 Windows CE 5.0中的SDIO支持如下: l 動態(tài)插入和拔出 l DMA方式 (平臺相關(guān)) l SDIO 中斷 l 動態(tài)的時鐘控制 l 錯誤恢復(fù) l 喚醒 l v1.0 多功能和組合設(shè)備 l CE Power Manager來處理電源管理 l MMC 下圖可以清晰的表達基于WINCE5.0的一個SD STACK模型:
Bus Driver主要功能如下: l 枚舉板上的卡,并決定他們的類型(MMC, SD Memory or SDIO) l 配置合適的電流給卡。 l 根據(jù)注冊表的值加載clients l 把總線要求入隊列 l 把來自host controller的異步通知入隊列 l 總線要求完成,SDIO 中斷,設(shè)備插入\\拔出 l 出錯時重試 參考代碼: D:\\WINCE500\\PUBLIC\\COMMON\\OAK\\DRIVERS\\SDCARD\\SDBUSDRIVER
Host Controller Driver主要功能: l HCD通知總線驅(qū)動卡的插入和拔出 l 給卡上電,SD定義了可接受的初時電壓范圍。 l 在總線驅(qū)動何客戶端設(shè)置完時鐘速度后,打開客戶端卡的時鐘(80個周期) l 初始,把總線寬度設(shè)置成1。如果有需要的話(4-bit mode),把總線寬度設(shè)成4bit l 傳輸SD 命令和數(shù)據(jù)到/來自卡上。 l 負責給槽上電,關(guān)電。 l IST 在這里存在 l (可選的)喚醒支持(插入,拔出,SDIO中斷) |