Xscale PXA255處理器與CF卡的接口設(shè)計(jì)
發(fā)布時(shí)間:2008/5/27 0:00:00 訪問(wèn)次數(shù):606
    
    
    以導(dǎo)航設(shè)備存儲(chǔ)系統(tǒng)應(yīng)用為例,本文討論了intel xscale pxa255嵌入式處理器與cf卡的硬件接口設(shè)計(jì),并以讀寫(xiě)cf卡扇區(qū)的程序?yàn)槔,給出了cf卡軟件編寫(xiě)的技巧。該設(shè)計(jì)為基于pxa255處理器的嵌入式系統(tǒng)提供了擴(kuò)展存儲(chǔ)空間的一種方法。
    
    
    
    圖1:cf卡結(jié)構(gòu)框圖。
    
    intel xscale pxa255處理器是新一代的嵌入式處理器,基于armv5te體系結(jié)構(gòu)的微處理器,性價(jià)比較高、功耗較低,適合于數(shù)字移動(dòng)電話、個(gè)人數(shù)字助理、網(wǎng)絡(luò)路由器等嵌入式系統(tǒng)的應(yīng)用。在采用pxa255處理器開(kāi)發(fā)諸如車載導(dǎo)航系統(tǒng)時(shí),電子地圖等海量地理信息數(shù)據(jù)需要一個(gè)容量大、體積小、性能優(yōu)異的存儲(chǔ)器!癱ompact flash”卡,簡(jiǎn)稱cf卡,具有高速度、大容量、體積小、重量輕、功耗低和高性價(jià)比等優(yōu)點(diǎn),十分適合嵌入式系統(tǒng)的應(yīng)用。因此,可選擇cf卡作為地理信息數(shù)據(jù)的存儲(chǔ)載體。pxa255處理器提供了pcmcia/cf卡控制器,可以方便地實(shí)現(xiàn)pxa255處理器與cf卡的接口設(shè)計(jì)。
    
    cf卡結(jié)構(gòu)和工作原理
    
    compact flash技術(shù)是由cf協(xié)會(huì)(cfa)提出的一種與pc機(jī)ata接口標(biāo)準(zhǔn)兼容的技術(shù)。如圖1,cf卡由兩個(gè)基本部分構(gòu)成:內(nèi)部控制器和閃存模塊。cf卡的閃存模塊基本上都使用nand型閃存,用于存儲(chǔ)數(shù)據(jù)。內(nèi)部控制器用來(lái)實(shí)現(xiàn)cf卡與主機(jī)的接口以及控制數(shù)據(jù)的傳輸。cf卡內(nèi)部控制器的設(shè)計(jì)完全模擬硬盤(pán),使用標(biāo)準(zhǔn)的ata/ide接口。
    
    cf卡的存取方式有三種:pc card memory模式、pc card i/o模式以及true ide模式。pc card模式與pcmcia標(biāo)準(zhǔn)兼容。true ide模式與ata標(biāo)準(zhǔn)兼容。三種方式相比,在true ide模式下,cf卡與主機(jī)通信的信號(hào)最少,硬件接口最簡(jiǎn)單、軟件易于實(shí)現(xiàn),因此本設(shè)計(jì)采用了true ide模式。
    
    cf卡扇區(qū)尋址有兩種方式:物理尋址方式(chs)和邏輯尋址方式(lba)。物理尋址方式使用柱面、磁頭和扇區(qū)號(hào)表示一個(gè)特定的扇區(qū),起始扇區(qū)是0磁道、0磁頭、1扇區(qū),接著是2扇區(qū),一直到eof扇區(qū);接下來(lái)是同一柱面1頭、1扇區(qū)等。邏輯尋址方式將整個(gè)cf卡同一尋址。邏輯塊地址和物理地址的關(guān)系為:lba地址=(柱面號(hào)×磁頭數(shù)+磁頭號(hào))×扇區(qū)數(shù)+扇區(qū)數(shù)-1。
    
    cf卡沒(méi)有機(jī)械結(jié)構(gòu),因此cf卡的扇區(qū)尋址適宜采用邏輯尋址方式。邏輯尋址方式?jīng)]有磁頭和磁道的轉(zhuǎn)換操作,因此在訪問(wèn)連續(xù)扇區(qū)時(shí),操作速度比物理尋址方式快得多。
    
    對(duì)于cf卡的操作(如:讀/寫(xiě)),其實(shí)就是對(duì)cf卡控制器的寄存器進(jìn)行操作。所以,必須對(duì)cf卡的寄存器十分熟悉。這些寄存器統(tǒng)稱為任務(wù)文件(task file)寄存器:
    
    1.?dāng)?shù)據(jù)寄存器(讀/寫(xiě)),用于cf卡的讀寫(xiě)操作。主機(jī)通過(guò)該寄存器向cf卡數(shù)據(jù)緩沖寫(xiě)入或從cf卡數(shù)據(jù)緩沖讀出數(shù)據(jù)。
    
    2.錯(cuò)誤寄存器(read)和特性寄存器(write)。讀操作時(shí),此寄存器為錯(cuò)誤寄存器,用于指明錯(cuò)誤的原因;寫(xiě)操作時(shí),此寄存器為特性寄存器。
    
    3.扇區(qū)數(shù)寄存器(讀/寫(xiě)),用來(lái)記錄讀、寫(xiě)扇區(qū)的數(shù)目。
    
    4.扇區(qū)號(hào)寄存器(讀/寫(xiě)),用來(lái)記錄讀、寫(xiě)和校驗(yàn)命令指定的起始扇區(qū)號(hào)或邏輯塊地址(lba)的bit7:0。
    
    5.柱面號(hào)寄存器(讀/寫(xiě)),用來(lái)記錄讀、寫(xiě)、校驗(yàn)和尋址命令指定的柱面號(hào)或lba的bit23:8。
    
    6.驅(qū)動(dòng)器/磁頭寄存器(讀/寫(xiě)),記錄讀、寫(xiě)、校驗(yàn)和尋道命令指定的驅(qū)動(dòng)器號(hào)、磁頭號(hào)或lba的bit27:24,其中bit6(lba)用來(lái)設(shè)置cf卡扇區(qū)的尋址方式(lba=0,采用chs模式;lba=1,采用lba模式)。
    
    
    
    圖2:cf卡地址空間存儲(chǔ)映像。
    
    7.狀態(tài)寄存器(讀)和命令寄存器(讀/寫(xiě)),讀操作時(shí),該寄存器是狀態(tài)寄存器,指示cf卡控制器執(zhí)行命令后的狀態(tài),讀狀態(tài)寄存器則返回cf卡的當(dāng)前狀態(tài);寫(xiě)操作時(shí),
    
    
    以導(dǎo)航設(shè)備存儲(chǔ)系統(tǒng)應(yīng)用為例,本文討論了intel xscale a255嵌入式處理器與cf卡的硬件接口設(shè)計(jì),并以讀寫(xiě)cf卡扇區(qū)的程序?yàn)槔,給出了cf卡軟件編寫(xiě)的技巧。該設(shè)計(jì)為基于a255處理器的嵌入式系統(tǒng)提供了擴(kuò)展存儲(chǔ)空間的一種方法。
    
    
    
    圖1:cf卡結(jié)構(gòu)框圖。
    
    intel xscale a255處理器是新一代的嵌入式處理器,基于armv5te體系結(jié)構(gòu)的微處理器,性價(jià)比較高、功耗較低,適合于數(shù)字移動(dòng)電話、個(gè)人數(shù)字助理、網(wǎng)絡(luò)路由器等嵌入式系統(tǒng)的應(yīng)用。在采用a255處理器開(kāi)發(fā)諸如車載導(dǎo)航系統(tǒng)時(shí),電子地圖等海量地理信息數(shù)據(jù)需要一個(gè)容量大、體積小、性能優(yōu)異的存儲(chǔ)器!癱ompact flash”卡,簡(jiǎn)稱cf卡,具有高速度、大容量、體積小、重量輕、功耗低和高性價(jià)比等優(yōu)點(diǎn),十分適合嵌入式系統(tǒng)的應(yīng)用。因此,可選擇cf卡作為地理信息數(shù)據(jù)的存儲(chǔ)載體。a255處理器提供了pcmcia/cf卡控制器,可以方便地實(shí)現(xiàn)a255處理器與cf卡的接口設(shè)計(jì)。
    
    cf卡結(jié)構(gòu)和工作原理
    
    compact flash技術(shù)是由cf協(xié)會(huì)(cfa)提出的一種與pc機(jī)ata接口標(biāo)準(zhǔn)兼容的技術(shù)。如圖1,cf卡由兩個(gè)基本部分構(gòu)成:內(nèi)部控制器和閃存模塊。cf卡的閃存模塊基本上都使用nand型閃存,用于存儲(chǔ)數(shù)據(jù)。內(nèi)部控制器用來(lái)實(shí)現(xiàn)cf卡與主機(jī)的接口以及控制數(shù)據(jù)的傳輸。cf卡內(nèi)部控制器的設(shè)計(jì)完全模擬硬盤(pán),使用標(biāo)準(zhǔn)的ata/ide接口。
    
    cf卡的存取方式有三種:pc card memory模式、pc card i/o模式以及true ide模式。pc card模式與pcmcia標(biāo)準(zhǔn)兼容。true ide模式與ata標(biāo)準(zhǔn)兼容。三種方式相比,在true ide模式下,cf卡與主機(jī)通信的信號(hào)最少,硬件接口最簡(jiǎn)單、軟件易于實(shí)現(xiàn),因此本設(shè)計(jì)采用了true ide模式。
    
    cf卡扇區(qū)尋址有兩種方式:物理尋址方式(chs)和邏輯尋址方式(lba)。物理尋址方式使用柱面、磁頭和扇區(qū)號(hào)表示一個(gè)特定的扇區(qū),起始扇區(qū)是0磁道、0磁頭、1扇區(qū),接著是2扇區(qū),一直到eof扇區(qū);接下來(lái)是同一柱面1頭、1扇區(qū)等。邏輯尋址方式將整個(gè)cf卡同一尋址。邏輯塊地址和物理地址的關(guān)系為:lba地址=(柱面號(hào)×磁頭數(shù)+磁頭號(hào))×扇區(qū)數(shù)+扇區(qū)數(shù)-1。
    
    cf卡沒(méi)有機(jī)械結(jié)構(gòu),因此cf卡的扇區(qū)尋址適宜采用邏輯尋址方式。邏輯尋址方式?jīng)]有磁頭和磁道的轉(zhuǎn)換操作,因此在訪問(wèn)連續(xù)扇區(qū)時(shí),操作速度比物理尋址方式快得多。
    
    對(duì)于cf卡的操作(如:讀/寫(xiě)),其實(shí)就是對(duì)cf卡控制器的寄存器進(jìn)行操作。所以,必須對(duì)cf卡的寄存器十分熟悉。這些寄存器統(tǒng)稱為任務(wù)文件(task file)寄存器:
    
    1.?dāng)?shù)據(jù)寄存器(讀/寫(xiě)),用于cf卡的讀寫(xiě)操作。主機(jī)通過(guò)該寄存器向cf卡數(shù)據(jù)緩沖寫(xiě)入或從cf卡數(shù)據(jù)緩沖讀出數(shù)據(jù)。
    
    2.錯(cuò)誤寄存器(read)和特性寄存器(write)。讀操作時(shí),此寄存器為錯(cuò)誤寄存器,用于指明錯(cuò)誤的原因;寫(xiě)操作時(shí),此寄存器為特性寄存器。
    
    3.扇區(qū)數(shù)寄存器(讀/寫(xiě)),用來(lái)記錄讀、寫(xiě)扇區(qū)的數(shù)目。
    
    4.扇區(qū)號(hào)寄存器(讀/寫(xiě)),用來(lái)記錄讀、寫(xiě)和校驗(yàn)命令指定的起始扇區(qū)號(hào)或邏輯塊地址(lba)的bit7:0。
    
    5.柱面號(hào)寄存器(讀/寫(xiě)),用來(lái)記錄讀、寫(xiě)、校驗(yàn)和尋址命令指定的柱面號(hào)或lba的bit23:8。
    
    6.驅(qū)動(dòng)器/磁頭寄存器(讀/寫(xiě)),記錄讀、寫(xiě)、校驗(yàn)和尋道命令指定的驅(qū)動(dòng)器號(hào)、磁頭號(hào)或lba的bit27:24,其中bit6(lba)用來(lái)設(shè)置cf卡扇區(qū)的尋址方式(lba=0,采用chs模式;lba=1,采用lba模式)。
    
    
    
    圖2:cf卡地址空間存儲(chǔ)映像。
    
    7.狀態(tài)寄存器(讀)和命令寄存器(讀/寫(xiě)),讀操作時(shí),該寄存器是狀態(tài)寄存器,指示cf卡控制器執(zhí)行命令后的狀態(tài),讀狀態(tài)寄存器則返回cf卡的當(dāng)前狀態(tài);寫(xiě)操作時(shí),
熱門(mén)點(diǎn)擊
- TPMS技術(shù)發(fā)展現(xiàn)狀與趨勢(shì)
- 增強(qiáng)模式pHEMT MMIC使GPS LNA
- 在SoC中集成FlexRay網(wǎng)絡(luò)控制器的設(shè)計(jì)
- VFD控制/驅(qū)動(dòng)器μPD16312的原理與應(yīng)
- Xscale PXA255處理器與CF卡的接
- 紅旗488發(fā)動(dòng)機(jī)功率不足且有故障代碼顯示
- 低成本LIN總線協(xié)議在汽車網(wǎng)絡(luò)中的應(yīng)用
- 為實(shí)現(xiàn)iGeneration構(gòu)思遠(yuǎn)程信息系統(tǒng)
- ARM與NEC攜手開(kāi)發(fā)多處理器技術(shù)
- IBM與英飛凌發(fā)布共同開(kāi)發(fā)的0.18微米MR
推薦技術(shù)資料
- 按鈕與燈的互動(dòng)實(shí)例
- 現(xiàn)在趕快去看看這個(gè)目錄卞有什么。FGA15N120AN... [詳細(xì)]
- CV/CC InnoSwitch3-AQ 開(kāi)
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門(mén)信號(hào)調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究