Nios II與CF卡的接口設(shè)計
發(fā)布時間:2008/9/2 0:00:00 訪問次數(shù):1163
。薄。悖婵ǖ奶攸c及應(yīng)用
。悖婵ㄊ亲罱鼛啄昱畈l(fā)展固態(tài)非易失的存儲介質(zhì),由于cf卡具有攜帶方便、易于升級、存儲量大、抗震性好等優(yōu)點,在大容量便攜式數(shù)據(jù)存儲和傳輸過程中,cf 有著非常廣泛的應(yīng)用前景,如數(shù)碼相機、mp3播放器、pda(個人數(shù)字助理)、數(shù)字式錄音機、筆記本電腦、手提電話、機頂盒等。預(yù)計今后在其他領(lǐng)域?qū)⒂懈鼮閺V泛的應(yīng)用。另外cf卡的兼容性佳,不僅同時支持3.3 v和5。龅碾妷,而且不同的cf卡都可以用單一的機構(gòu)讀寫,特別是cf卡升級換代時也可以保證舊設(shè)備的兼容性。而純電子運動的cf卡耗電量很低,僅為ibm 微型硬盤的5%。目前,cf卡容量從最早的2。恚獾浆F(xiàn)今的8。纾猓瑪(shù)據(jù)傳輸從最早的5。恚猓蟀l(fā)展到現(xiàn)在的20 mb/s。
。悖婵ㄓ桑矀基本部分構(gòu)成:內(nèi)部控制器和閃存模塊。cf卡的閃存模塊基本上都使用nand型閃存,用于存儲數(shù)據(jù)。內(nèi)部控制器用來實現(xiàn)cf卡與主機的接口以及控制數(shù)據(jù)的傳輸。cf卡內(nèi)部控制器的設(shè)計完全模擬硬盤,使用標準的ata/ide接口。
cf 的存取方式有3種:pc。悖幔颍洹。恚澹恚铮颍J、pc card。椋锬J揭约埃簦颍酰濉。椋洌迥J。pc。悖幔颍淠J脚cpcmcia標準兼容。true。椋洌迥J脚cata標準兼容。
。撤N方式相比,在true ide模式下,cf卡與主機通信的信號最少,硬件接口最簡單、軟件易于實現(xiàn),因此本設(shè)計采用true。椋洌迥J。
2。悖婵ń涌诳刂破鞯募拇嫫鞯亩x
在設(shè)計中,采用altera提供的一個cf接口控制器內(nèi)核實現(xiàn)cf卡數(shù)據(jù)的傳輸.該內(nèi)核提供一個連接片外cf卡的avalon總線接口,通過使用適當?shù)臅r序把avalon總線信號映射到cf卡,提供了對標準的實ide模式寄存器的訪問,允許設(shè)計者在nios。椋橄到y(tǒng)中簡易連接就可以使用cf卡。圖1所示為cf卡接口控制器內(nèi)核的結(jié)構(gòu)框圖。
圖1。悖婵ǹ刂破鲀(nèi)核結(jié)構(gòu)框圖
該內(nèi)核提供2個avalon總線從端口.第一個是為了訪問cf設(shè)備內(nèi)部的寄存器組,第二個是為了訪問控制器內(nèi)核內(nèi)部的寄存器文件,cf核提供2個高有效的中斷請求輸出,一個是cf插入或移除的中斷信號,另一個是把設(shè)備上的中斷信號傳送到avalon主設(shè)備。
對于cf卡的操作(如:讀/寫),其實就是對cf卡控制器的寄存器進行操作。所以,必須對cf卡的寄存器十分熟悉。這些寄存器統(tǒng)稱為任務(wù)文件(task。妫椋欤澹┘拇嫫鳎
(1)數(shù)據(jù)寄存器(讀/寫),用于cf卡的讀寫操作。主機通過該寄存器向cf卡數(shù)據(jù)緩沖寫入或從cf卡數(shù)據(jù)緩沖讀出數(shù)據(jù)。
。ǎ玻╁e誤寄存器(讀)和特性寄存器(寫) 讀操作時,此寄存器為錯誤寄存器,用于指明錯誤的原因;寫操作時,此寄存器為特性寄存器。
。ǎ常┥葏^(qū)數(shù)寄存器(讀/寫)。用來記錄讀、寫扇區(qū)的數(shù)目。
。ǎ矗┥葏^(qū)號寄存器(讀/寫),用來記錄讀、寫和校驗命令指定的起始扇區(qū)號或邏輯塊地址(lba)的bit7:0。
。ǎ担┲嫣柤拇嫫鳎ㄗx/寫),用來記錄讀、寫、校驗和尋址命令指定的柱面號或lba的bit23:8。
。ǎ叮(qū)動器/磁頭寄存器(讀/寫),記錄讀、寫、校驗和尋道命令指定的驅(qū)動器號、磁頭號或lba的bit27:24,其中bit6(lba)用來設(shè)置cf卡扇區(qū)的尋址方式(lba=0,采用chs模式;lba=1。采用lba模式)。
。ǎ罚顟B(tài)寄存器(讀)和命令寄存器(寫),在讀操作時,該寄存器是狀態(tài)寄存器,指示cf卡控制器執(zhí)行命令后的狀態(tài),讀狀態(tài)寄存器則返回cf卡的當前狀態(tài);在寫操作時,該寄存器是命令寄存器,接收主機發(fā)送給cf卡的控制命令。
。场。睿椋铮蟆。椋樘幚砥髋ccf卡的硬件接口設(shè)計
在altera公司提供的sopc軟件中對該軟核進行配置時,選用nios。椋椤。悖穑、內(nèi)部定時器、cf卡接口控制器、sdram 控制器、flash 存儲器接口、lcd 接口和epcs4串行配置器件控制器接口。其框圖如圖2所示。
圖2 硬件接口框圖
。础。悖婵ǖ慕涌诳刂破鞯能浖僮
在nios。椋橄到y(tǒng)中,應(yīng)用軟件架構(gòu)在hal(硬件抽象層)和c標準庫函數(shù)上。在nios。椋椤。椋洌濉≈薪⑿碌能浖こ虝r,ide會根據(jù)sopc。猓酰椋欤洌澹?qū)ο到y(tǒng)的硬件配置自動生成一個定制hal系統(tǒng)庫。這個庫能為程序和底層硬件的通信提供接口驅(qū)動程序,hal系統(tǒng)庫為cf卡接口控制器內(nèi)核提供
。薄。悖婵ǖ奶攸c及應(yīng)用
。悖婵ㄊ亲罱鼛啄昱畈l(fā)展固態(tài)非易失的存儲介質(zhì),由于cf卡具有攜帶方便、易于升級、存儲量大、抗震性好等優(yōu)點,在大容量便攜式數(shù)據(jù)存儲和傳輸過程中,cf 有著非常廣泛的應(yīng)用前景,如數(shù)碼相機、mp3播放器、pda(個人數(shù)字助理)、數(shù)字式錄音機、筆記本電腦、手提電話、機頂盒等。預(yù)計今后在其他領(lǐng)域?qū)⒂懈鼮閺V泛的應(yīng)用。另外cf卡的兼容性佳,不僅同時支持3.3。龊停怠。龅碾妷,而且不同的cf卡都可以用單一的機構(gòu)讀寫,特別是cf卡升級換代時也可以保證舊設(shè)備的兼容性。而純電子運動的cf卡耗電量很低,僅為ibm 微型硬盤的5%。目前,cf卡容量從最早的2 mb到現(xiàn)今的8。纾猓瑪(shù)據(jù)傳輸從最早的5。恚猓蟀l(fā)展到現(xiàn)在的20。恚猓蟆
。悖婵ㄓ桑矀基本部分構(gòu)成:內(nèi)部控制器和閃存模塊。cf卡的閃存模塊基本上都使用nand型閃存,用于存儲數(shù)據(jù)。內(nèi)部控制器用來實現(xiàn)cf卡與主機的接口以及控制數(shù)據(jù)的傳輸。cf卡內(nèi)部控制器的設(shè)計完全模擬硬盤,使用標準的ata/ide接口。
。悖妗〉拇嫒》绞接校撤N:pc。悖幔颍洹。恚澹恚铮颍J、pc card。椋锬J揭约埃簦颍酰濉。椋洌迥J。pc。悖幔颍淠J脚cpcmcia標準兼容。true。椋洌迥J脚cata標準兼容。
。撤N方式相比,在true。椋洌迥J较,cf卡與主機通信的信號最少,硬件接口最簡單、軟件易于實現(xiàn),因此本設(shè)計采用true。椋洌迥J健
。病。悖婵ń涌诳刂破鞯募拇嫫鞯亩x
在設(shè)計中,采用altera提供的一個cf接口控制器內(nèi)核實現(xiàn)cf卡數(shù)據(jù)的傳輸.該內(nèi)核提供一個連接片外cf卡的avalon總線接口,通過使用適當?shù)臅r序把avalon總線信號映射到cf卡,提供了對標準的實ide模式寄存器的訪問,允許設(shè)計者在nios ii系統(tǒng)中簡易連接就可以使用cf卡。圖1所示為cf卡接口控制器內(nèi)核的結(jié)構(gòu)框圖。
圖1 cf卡控制器內(nèi)核結(jié)構(gòu)框圖
該內(nèi)核提供2個avalon總線從端口.第一個是為了訪問cf設(shè)備內(nèi)部的寄存器組,第二個是為了訪問控制器內(nèi)核內(nèi)部的寄存器文件,cf核提供2個高有效的中斷請求輸出,一個是cf插入或移除的中斷信號,另一個是把設(shè)備上的中斷信號傳送到avalon主設(shè)備。
對于cf卡的操作(如:讀/寫),其實就是對cf卡控制器的寄存器進行操作。所以,必須對cf卡的寄存器十分熟悉。這些寄存器統(tǒng)稱為任務(wù)文件(task。妫椋欤澹┘拇嫫鳎
。ǎ保⿺(shù)據(jù)寄存器(讀/寫),用于cf卡的讀寫操作。主機通過該寄存器向cf卡數(shù)據(jù)緩沖寫入或從cf卡數(shù)據(jù)緩沖讀出數(shù)據(jù)。
(2)錯誤寄存器(讀)和特性寄存器(寫) 讀操作時,此寄存器為錯誤寄存器,用于指明錯誤的原因;寫操作時,此寄存器為特性寄存器。
。ǎ常┥葏^(qū)數(shù)寄存器(讀/寫)。用來記錄讀、寫扇區(qū)的數(shù)目。
。ǎ矗┥葏^(qū)號寄存器(讀/寫),用來記錄讀、寫和校驗命令指定的起始扇區(qū)號或邏輯塊地址(lba)的bit7:0。
。ǎ担┲嫣柤拇嫫鳎ㄗx/寫),用來記錄讀、寫、校驗和尋址命令指定的柱面號或lba的bit23:8。
(6)驅(qū)動器/磁頭寄存器(讀/寫),記錄讀、寫、校驗和尋道命令指定的驅(qū)動器號、磁頭號或lba的bit27:24,其中bit6(lba)用來設(shè)置cf卡扇區(qū)的尋址方式(lba=0,采用chs模式;lba=1。采用lba模式)。
。ǎ罚顟B(tài)寄存器(讀)和命令寄存器(寫),在讀操作時,該寄存器是狀態(tài)寄存器,指示cf卡控制器執(zhí)行命令后的狀態(tài),讀狀態(tài)寄存器則返回cf卡的當前狀態(tài);在寫操作時,該寄存器是命令寄存器,接收主機發(fā)送給cf卡的控制命令。
。场。睿椋铮蟆。椋樘幚砥髋ccf卡的硬件接口設(shè)計
在altera公司提供的sopc軟件中對該軟核進行配置時,選用nios ii。悖穑、內(nèi)部定時器、cf卡接口控制器、sdram 控制器、flash 存儲器接口、lcd 接口和epcs4串行配置器件控制器接口。其框圖如圖2所示。
圖2 硬件接口框圖
。础。悖婵ǖ慕涌诳刂破鞯能浖僮
在nios ii系統(tǒng)中,應(yīng)用軟件架構(gòu)在hal(硬件抽象層)和c標準庫函數(shù)上。在nios。椋椤。椋洌濉≈薪⑿碌能浖こ虝r,ide會根據(jù)sopc。猓酰椋欤洌澹?qū)ο到y(tǒng)的硬件配置自動生成一個定制hal系統(tǒng)庫。這個庫能為程序和底層硬件的通信提供接口驅(qū)動程序,hal系統(tǒng)庫為cf卡接口控制器內(nèi)核提供
熱門點擊
- USB 通信技術(shù)
- Nios II與CF卡的接口設(shè)計
- 基于80C196KC的ARINC429總線接
- 非易失性并行存儲器的應(yīng)用
- ACTEL發(fā)布兩款實現(xiàn)人機接口(HMI)和微
- 揭密DRAM陣列架構(gòu) — 8F2 vs. 6
- 基于USB的接口卡
- 慧榮科技新款固態(tài)驅(qū)動器控制芯片支持MLC F
- TMS320VC5402串行通信接口設(shè)計
- 基于EZ-USB的數(shù)據(jù)傳輸接口設(shè)計
推薦技術(shù)資料
- MOSFET 電感單片降壓開關(guān)模式變換器優(yōu)勢
- SiC MOSFET 和 IG
- 新型 電隔離無芯線性霍爾效應(yīng)電
- 業(yè)界超小絕對位置編碼器技術(shù)參數(shù)設(shè)計
- 高帶寬、更高分辨率磁角度傳感技術(shù)應(yīng)用探究
- MagAlpha 角度位置傳感
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究