基于A(yíng)RM的嵌入式系統(tǒng)CF卡存儲(chǔ)技術(shù)
摘要:針對(duì)當(dāng)前現(xiàn)有的CF 卡接口電路存在接口復(fù)雜、穩(wěn)定性不高、存儲(chǔ)速度緩慢等缺點(diǎn),通過(guò)深入研究ARM 處理器AT91RM9200 的外部總線(xiàn)接口(EBI)及CF 卡、CPLD 的工作原理,設(shè)計(jì)了新的CF 卡接口電路。新的CF 卡接口電路中采用了CPLD 來(lái)代替一般CF 卡接口電路中的雙向緩沖器、與非門(mén)等所有邏輯器件,通過(guò)現(xiàn)場(chǎng)對(duì)CPLD 編程來(lái)實(shí)現(xiàn)不同的邏輯功能。實(shí)驗(yàn)表明,該電路更加簡(jiǎn)單、靈活、穩(wěn)定、高速,對(duì)接口電路的設(shè)計(jì)有重要的參考價(jià)值。
本文引用地址:http://www.ex-cimer.com/article/149510.htm關(guān)鍵詞:嵌入式系統(tǒng);總線(xiàn)接口技術(shù);CF 卡存儲(chǔ)技術(shù);CPLD 編程;高速存儲(chǔ)
1 引言
隨著應(yīng)用需求的不斷提高,許多嵌入式系統(tǒng)在應(yīng)用時(shí)都要求帶有擴(kuò)展的大容量存儲(chǔ)器來(lái)存儲(chǔ)數(shù)據(jù)。CF 卡(Compact Flsah Card)由于價(jià)格便宜、存儲(chǔ)容量大、體積小、兼容性好等優(yōu)點(diǎn)被廣泛應(yīng)用于嵌入式產(chǎn)品。然而現(xiàn)有的CF 卡接口電路存在接口復(fù)雜,穩(wěn)定性不高等缺點(diǎn),不能滿(mǎn)足客戶(hù)的需求。通過(guò)深入研究ARM 處理器AT91RM9200 的外部總線(xiàn)接口(EBI)、CF 卡和CPLD 的工作原理,提出利用CPLD來(lái)改進(jìn)CF 卡接口電路以解決現(xiàn)有接口電路中存在的缺點(diǎn)。
2 器件簡(jiǎn)介
2.1 外部總線(xiàn)接口
系統(tǒng)采用了以ARM920T 為內(nèi)核的AT91RM9200作為微處理器,它是完全圍繞ARM920T Thumb 處理器構(gòu)建的系統(tǒng)。它有豐富的系統(tǒng)與應(yīng)用外設(shè)及標(biāo)準(zhǔn)的接口,包括一個(gè)高速片上SRAM 工作區(qū)及一個(gè)低等待時(shí)間的外部總線(xiàn)接口(EBI)以完成應(yīng)用所要求的片外存儲(chǔ)區(qū)和內(nèi)部存儲(chǔ)器映射外設(shè)配置的無(wú)縫連接。外部總線(xiàn)接口結(jié)構(gòu)如圖1 所示。
EBI 通過(guò)集成電路支持CF 卡與SmartMedia 協(xié)議,從而極大地降低了對(duì)外部組件的需求。此外,EBI可處理多達(dá)8 個(gè)外設(shè)的數(shù)據(jù)傳輸,每個(gè)外設(shè)分配8 個(gè)在內(nèi)置存儲(chǔ)控制器中定義的地址空間。數(shù)據(jù)通過(guò)16 位或32 位數(shù)據(jù)總線(xiàn)進(jìn)行傳輸,地址總線(xiàn)高達(dá)26位,8個(gè)芯片選擇口(NCS[7:0])和在不同外部存儲(chǔ)控制器間復(fù)用的多個(gè)控制引腳進(jìn)行復(fù)用。
2.2 CF 卡
CF 卡(Compact Flash Card)是采用Flash Memory技術(shù)的存儲(chǔ)卡,具有體積小、價(jià)格低廉、兼容性強(qiáng)、存儲(chǔ)量大等優(yōu)點(diǎn)。CF 卡支持三種接口模式,分別是PCCard Memory Mode、PC Card I/O Mode、True IDEMode。因?yàn)門(mén)rue IDE Mode 不經(jīng)常使用,故接口電路以PC Card Memory Mode 和PC Card I/O Mode設(shè)計(jì)。
2.3 CPLD
CPLD(Complex Programmable Logic Device)是一種較PLD 復(fù)雜的邏輯元件[2],是一種用戶(hù)根據(jù)各自需要而自行構(gòu)造邏輯功能的數(shù)字集成電路。其基本設(shè)計(jì)方法是借助集成開(kāi)發(fā)軟件平臺(tái),用原理圖、硬件描述語(yǔ)言等方法,生成相應(yīng)的目標(biāo)文件,通過(guò)下載電纜(“在系統(tǒng)”編程)將代碼傳送到目標(biāo)芯片中,實(shí)現(xiàn)設(shè)計(jì)的數(shù)字系統(tǒng)。
該文采用的CPLD 是Altera 公司的MAX7000S系列的EPM7128SQL100-10。它有84 個(gè)引腳,其中5 根用于ISP(IN System Programmable)下載,可方便的對(duì)其進(jìn)行“在系統(tǒng)”編程。EPM7128SQL100-10支持對(duì)電壓工作,可以利用Altera 公司的第四代開(kāi)發(fā)平臺(tái)quartus Ⅱ方便地進(jìn)行仿真、綜合和下載。
3 硬件接口電路設(shè)計(jì)
硬件接口電路的電路圖如圖2 所示。在此電路中用CPLD 來(lái)實(shí)現(xiàn)一般CF 卡接口電路中的雙向緩沖器和與非門(mén)等一些邏輯器件的邏輯功能,使接口電路變的更為簡(jiǎn)單、穩(wěn)定、高速,而且可以通過(guò)現(xiàn)場(chǎng)修改程序來(lái)實(shí)現(xiàn)不同的功能。
CF 卡中的_CD1、_CD2 是CF 卡是否安裝的狀態(tài)檢測(cè)信號(hào),在CF 卡中接地。當(dāng)CF 卡沒(méi)有安裝時(shí),電路中_CD1、_CD2 由上拉電阻將其輸出拉為高電平;當(dāng)CF 卡安裝時(shí),_CD1、_CD2 由CF 卡接地輸出為低電平,_CD1、_CD2 相當(dāng)于CF 卡的總開(kāi)關(guān)。在實(shí)際接口電路中_CD1、_CD2 要接10 kΩ 的上拉電阻。
linux操作系統(tǒng)文章專(zhuān)題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論