国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

嵌入式系統(tǒng)SD卡接口技術(shù)分析

2009-09-29 08:16:52黃文超
關(guān)鍵詞:掌上電腦存儲卡驅(qū)動程序

黃文超

摘要:文章在介紹SD存儲卡相關(guān)技術(shù)基礎(chǔ)上,對基于Windows CE.NET 操作系統(tǒng)的掌上電腦的SD卡接口的設(shè)計與實現(xiàn)開展深入的研究,主要集中在SD卡硬件接口的設(shè)計。

關(guān)健詞:Windows CE.NET;SD卡技術(shù);存儲技術(shù)

中圖分類號:TP310.89文獻(xiàn)標(biāo)識碼:A文章編號:1006-8937(2009)10-0018-02

1SD存儲卡技術(shù)及SD主控制寄存器概述

存儲卡的最大應(yīng)用領(lǐng)域一直是數(shù)碼相機(jī)領(lǐng)域,而隨著消費電子市場對存儲容量的需要日益迫切,尤其是智能手機(jī)和掌上電腦等產(chǎn)品的銷量不斷增長,消費電子市場將成為存儲卡最主要的市場。目前在手機(jī)和掌上電腦等消費電子產(chǎn)品上應(yīng)用的存儲卡有:SD卡,MMC,mini-SD,RS-MMC,MMC Plus,記憶棒,CF 存儲卡等,SD和 MMC由于占有絕對的市場份額而成為事實的標(biāo)準(zhǔn)。

S3C2410A微處理上,SD主控制器接口的32bit功能寄存器物理地址從0X5A000000開始下面簡單介紹SD 主控制器接口的重要寄存器。

①SDICON(SDI Control Register,SD接口控制寄存器),該寄存器中的功能位用來設(shè)置SD主控制器的時鐘類型,SD主控制器的FIFO復(fù)位,讀寫等待條件,是否響應(yīng)SD主控制器的SDIO中斷和SD主控制器讀寫數(shù)據(jù)時候的字節(jié)順序。

②SDIPRE(SDI Baud Rate Pre-scaler Register,SD 波特率因子寄存器),設(shè)置該寄存器中的bit 0~7,可以對系統(tǒng)的PCLK進(jìn)行分頻,然后提供給SD主控制器使用,分頻公式為:Baud Rate=PCLK/2/(SDIPRE+1)。

③SDICCON(SDI Command Control Register,SD命令控制寄存器),該寄存器存放發(fā)送給SD主控制器的命令,主控制器是否等待響應(yīng),命令是否帶有數(shù)據(jù)等。

④SDICSTA(SDI Command Status Register,SD命令狀態(tài)寄存器),該寄存器包含命令是否正在傳輸,命令是否超時,響應(yīng)CRC校驗失敗等標(biāo)志位。

⑤SDISP(SDI Response Register,SD響應(yīng)寄存器),共有4個,只讀屬性。當(dāng)響應(yīng)是短響應(yīng)時,只用SDISP0,否則就需要使用四個響應(yīng)寄存器。

⑥SDIBSIZE(SDI Block Size Register,SD數(shù)據(jù)塊大小寄存器),該寄存器只使用了bit 0~11,所以數(shù)據(jù)塊最大為4095字節(jié),當(dāng)使用流模式傳輸時,該寄存器忽略。

⑦SDIDCON(SDI Data Control Register,SD數(shù)據(jù)控制寄存器),bit 0~11為傳送數(shù)據(jù)塊的數(shù)目;剩下的狀態(tài)位標(biāo)識數(shù)據(jù)傳輸模式,DMA通道使能,數(shù)據(jù)總線寬度(1bit 或4bit模式),傳輸停止方式,傳輸響應(yīng),SDIO中斷周期等。

⑧SDIDSTA(SDI Data Status Register,SD數(shù)據(jù)狀態(tài)寄存器),包含數(shù)據(jù)收發(fā)狀態(tài),傳輸完成,是否超時,CRC 校驗,FIFO失效,SDIO中斷等狀態(tài)位。

⑨SDIDAT(SDI Data Register,SD數(shù)據(jù)寄存器),該寄存器用來保存SD控制器用來傳送或接受的數(shù)據(jù)。

⑩SDIDAT(SDI Data Register,SD數(shù)據(jù)寄存器),該寄存器用來保存SD控制器用來傳送或接受的數(shù)據(jù)。

當(dāng)需要對SD主控制器接口進(jìn)行控制時,我們必須先要將SD主控制器的寄存器初始化,然后對相應(yīng)的SD接口寄存器進(jìn)行讀寫來完成工作。

2接口硬件設(shè)計

N30系統(tǒng)是一款針對中低端用戶設(shè)計的掌上電腦,基于成本和功能的考慮,我們選擇Samsung的S3C2410A 16/32bit的RISC處理器芯片,內(nèi)部擴(kuò)展USB、SD接口,支持紅外線和藍(lán)牙數(shù)據(jù)傳輸接口,努力維持一個較低成本的同時,使得整個系統(tǒng)有一個較高的整體性能。在此基礎(chǔ)上使用GPIO引腳擴(kuò)展的方法,對標(biāo)準(zhǔn)SD接口進(jìn)行擴(kuò)展,設(shè)計并實現(xiàn)N30掌上電腦的SD卡接口。

N30中選用的是Samsung的S3C2410A嵌入式ARM微處理器,采用ARM920T核心,內(nèi)部還有液晶顯示屏控制器,IIC總線和IIS總線控制單元,3通道的UART,4通道DMA控制器,電源控制單元,時鐘發(fā)生電路,USB主機(jī)控制器、USB設(shè)備接口和SD主控制器等,工作頻率可達(dá)到266MHz。適用于低成本的嵌入式應(yīng)用,滿足我們的設(shè)計需要。ARM9系列采用五級流水線和哈佛結(jié)構(gòu),提供1.1MIPS/MHz的性能,是高性能和低功耗的硬宏單元。ARM920T和ARM922T具有全性能MMU、指令和數(shù)據(jù)Cache以及高速AMBA總線接口,適用于高性能、低功耗的應(yīng)用。

N30系統(tǒng)由于采用Samsung的S3C2410A芯片,內(nèi)部支持內(nèi)存控制、NAND Flash和SD卡接口等。Flash存儲器采用的是一Samsung的K9F5608U0C,32MB的NANDFlash;RAM采用的是兩片Samsung的K4S561633C,構(gòu)成 16M*16bit*2的64MB內(nèi)存空間;SD卡接口采用APLS公司的SCDA1A0100 SD卡連接插槽,通過GPIO擴(kuò)展其 SD卡檢測引腳信號和電源使能信號等。

N30掌上電腦的硬件系統(tǒng)的主要模塊有:嵌入式處理器,電源模塊,LCD和觸摸屏,音頻模塊,時鐘,USB 接口等,另外還有用于調(diào)試的JTAG和串行接口。

嵌入式處理器是整個系統(tǒng)的核心,它主要負(fù)責(zé)整個系統(tǒng)的運行,控制各個部件的工作和協(xié)議轉(zhuǎn)換。

電源模塊負(fù)責(zé)整個系統(tǒng)的供電,主要向嵌入式系統(tǒng)提供2.5V,3.3V和5V的直流電壓,向LCD模塊提供3.3V、5V、12V的直流電壓。同時采用TI的MSP430F1111A微控制器,負(fù)責(zé)電池的溫度、電量監(jiān)測和電池充電,以及控制LED燈的狀態(tài)。

音頻模塊采用 Philips的UDA1380音頻編解碼芯片,連接外部話筒和耳機(jī),同時經(jīng)過音頻放大之后連接到內(nèi)部揚聲器,音頻模塊和CPU之間采用IIS總線連接。I2S(Inter IC Sound)總線是飛利浦半導(dǎo)體公司為數(shù)字音頻設(shè)備之間的音頻數(shù)據(jù)傳輸而制定的一種總線標(biāo)準(zhǔn),該總線專責(zé)于音頻設(shè)備之間的數(shù)據(jù)傳輸,廣泛應(yīng)用于各種多媒體系統(tǒng)中。I2S數(shù)據(jù)通過DMA或者PIO方式與系統(tǒng)內(nèi)存交互。

摸屏和LCD顯示屏是主要的人機(jī)交互接口,負(fù)責(zé)響應(yīng)用戶的觸摸筆輸入和顯示輸出,顯示屏是3.5寸 65536色的TFT 液晶顯示屏,分辨率為240*320,內(nèi)部集成觸摸屏電路和背景燈電路。

時鐘模塊由32.768KHz、13MHz的晶振和時鐘發(fā)生電路組成。32.768KHz的時鐘提供給RTC實時時鐘,用于低精度的系統(tǒng)計時。13MHz的晶體振蕩器經(jīng)過時鐘發(fā)生電路升頻以后,輸出FCLK,PCLK和HCLK三路。其中 FCLK專用于ARM920T核心;HCLK用于AHB高性能總線,提供給內(nèi)存控制單元、中斷控制單元、USB主機(jī)控制器單元等;PCLK用于APB高性能外部總線,提供給 SD/MMC、SPI接口等。

USB接口分為兩個模塊:USB主機(jī)控制器和USB設(shè)備端口。主機(jī)控制器可以連接USB鼠標(biāo)、鍵盤等USB設(shè)備,擴(kuò)展PDA的功能;USB 設(shè)備端口可以用于PDA和 PC端的USB連接,將PDA的存儲設(shè)備和PC連接起來,使得PDA成為PC機(jī)的移動存儲設(shè)備。

3驅(qū)動設(shè)計與實現(xiàn)

S3C2410A芯片內(nèi)部支持SD主控制器的基本接口,通過GPIO的擴(kuò)展完成了SD接口的硬件設(shè)計,本章主要針對SD卡擴(kuò)展的存儲接口進(jìn)行分析、設(shè)計和實現(xiàn)。我們?yōu)?N30掌上電腦上運行的 Windows CE系統(tǒng)開發(fā)了SD 主機(jī)控制器的驅(qū)動程序。Windows CE下,驅(qū)動程序是用戶態(tài)的動態(tài)鏈接庫(Dynamic Link Library,DLL),這些 DLL向內(nèi)核提供一些接口函數(shù),這樣設(shè)備管理模塊就可以通過這些函數(shù)與具體的硬件設(shè)備進(jìn)行通信。

其中,驅(qū)動軟件架構(gòu)分析如下。Windows CE的驅(qū)動程序模型主要有2種類型:流式接口驅(qū)動(Stream Interface Driver)和本地設(shè)備驅(qū)動(Native Device Driver)。流式設(shè)備驅(qū)動向上層提供統(tǒng)一的流式設(shè)備接口,而本地設(shè)備驅(qū)動可以根據(jù)具體設(shè)備要求提供相應(yīng)接口。N30掌上電腦系統(tǒng)中,SD Host的驅(qū)動程序采用流式接口驅(qū)動模型。驅(qū)動程序要實現(xiàn)相應(yīng)的XXX_Open( ),XXX_Close( )等響應(yīng)的流式設(shè)備接口函數(shù),其中XXX為設(shè)備驅(qū)動的前綴,應(yīng)用程序可以通過文件操作來控制設(shè)備。為了減少了 SD Host驅(qū)動程序設(shè)計的復(fù)雜性,使其具有較好的可移植性,采用BSQUARE提供的SD Host DDK,它在 BSQUARE SD協(xié)議棧的基礎(chǔ)上,提供了平臺獨立的總線和客戶端驅(qū)動和一組標(biāo)準(zhǔn)化的API供使用。在該體系結(jié)構(gòu)下,SD主控制器驅(qū)動負(fù)責(zé)檢查SD卡的插拔狀態(tài),檢測插入的卡的類型,設(shè)置SD主控制器時鐘等SD接口的硬件操作;SD總線驅(qū)動則負(fù)責(zé)上層卡驅(qū)動的裝載和移除,維護(hù)每一個插槽的總線請求隊列等。該結(jié)構(gòu)的設(shè)計很大程度上減少了SD Host驅(qū)動程序設(shè)計的復(fù)雜性,使SD Host控制器驅(qū)動程序設(shè)計可以專注于硬件相關(guān)的部分。總線驅(qū)動是SD卡客戶端驅(qū)動程序和SD Host 驅(qū)動程序之間的一個抽象層,它為SD卡客戶端驅(qū)動提供平臺獨立的服務(wù)接口。SD Host驅(qū)動程序需要完成處理器和硬件平臺相關(guān)的處理,向上層驅(qū)動提供統(tǒng)一的服務(wù)接口。

參考文獻(xiàn):

[1] 周維,陳默.基于S3C2410的ARM開發(fā)平臺[J].電子技術(shù),2004,31(7): 4-7.

猜你喜歡
掌上電腦存儲卡驅(qū)動程序
有Wi-Fi功能的高速卡 東芝FlashAirTM(W-04) 無線LAN SD存儲卡試用
掌上電腦在醫(yī)院信息系統(tǒng)中護(hù)理工作的應(yīng)用
三星發(fā)布首款UFS存儲卡
攝影世界(2016年9期)2016-11-03 16:31:26
存儲卡盒
存儲卡盒
影像視覺(2016年5期)2016-06-23 09:17:12
高考分類綜合訓(xùn)練一
“掌上”電腦
驅(qū)動程序更新與推薦
驅(qū)動程序更新與推薦
驅(qū)動程序更新與推薦
阿拉善右旗| 行唐县| 奇台县| 平陆县| 卢龙县| 西和县| 象山县| 南开区| 玛多县| 彭泽县| 手游| 南城县| 牟定县| 万荣县| 镇江市| 大新县| 固阳县| 茶陵县| 南部县| 思南县| 景泰县| 土默特右旗| 海林市| 桐乡市| 扎兰屯市| 托克逊县| 永州市| 祁门县| 涿鹿县| 水富县| 兴国县| 响水县| 麻江县| 丹东市| 遂溪县| 台南县| 莆田市| 濮阳县| 达州市| 澄江县| 车险|