《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 設(shè)計應(yīng)用 > 大容量閃存器件K9KAG08UOM與DSP的接口設(shè)計
大容量閃存器件K9KAG08UOM與DSP的接口設(shè)計
張春俠,林玉野
摘要: 詳細(xì)介紹了大容量閃存K9KAG08UOM與TMS320C6713B的硬件接口電路和軟件程序設(shè)計,所采用的接口技術(shù)靈活、簡單、可靠,在激光慣導(dǎo)單元進(jìn)行的湖試和海試試驗中成功地實現(xiàn)了數(shù)據(jù)的存儲。該接口設(shè)計方法可推廣應(yīng)用于大容量閃存器件與單片機(jī)、ARM及其他型號的DSP設(shè)計中。
Abstract:
Key words :

1前言
     慣性導(dǎo)航系統(tǒng)、各種導(dǎo)引頭及空間飛行器等測試和記錄應(yīng)用系統(tǒng),都需要自主、實時、可靠存儲大量的關(guān)鍵信息,并保證即使整個系統(tǒng)掉電,所采集到的數(shù)據(jù)仍能長時間保持不丟失,實現(xiàn)歷史數(shù)據(jù)查詢,便于數(shù)據(jù)分析。NAND Flash閃速存儲器(簡稱閃存)以其掉電非易失、功耗低、壽命長、容量大、升級容易等獨(dú)有的特點迅速成為數(shù)據(jù)存儲的最佳選擇。
     某型激光陀螺慣導(dǎo)單元需要在湖試和海試試驗過程中記錄大量導(dǎo)航參數(shù),為了便于在試驗結(jié)束后有效分析數(shù)據(jù)。這里提出一種基于大容量閃存器件K9KAG08UOMDSP接口設(shè)計方案。在激光慣導(dǎo)的計算機(jī)板上集成了一片NAND Flash閃速存儲器,根據(jù)試驗的次數(shù)和每個航次存儲數(shù)據(jù)量的大小,選用SAMSUNG公司的K9KAG08UOM存儲器;為滿足導(dǎo)航控制的周期和算法的復(fù)雜程度,選用TI公司的浮點DSPTMS320C6713B作為主控處理器。TMS320C6713B的主頻可達(dá)300 MHz,浮點運(yùn)算速度可達(dá)1.8 GFLO/S,是目前運(yùn)算速度最快的浮點器件之一,已成為嵌入式系統(tǒng)設(shè)計中的主流處理器。其中NAND Flash與DSP的接口設(shè)計是整個計算機(jī)板設(shè)計的關(guān)鍵部分,這里詳細(xì)介紹大容量NAND Flash與DSP接口設(shè)計的硬件接口電路和軟件實現(xiàn)方法。

2 大容量閃存K9KAG08UOM簡介
    K9KAG08UOM是大容量、高可靠性的NAND Flash存儲器。其存儲容量為2 G字節(jié)(2 Gx8 bit);可將數(shù)據(jù)線與地址線復(fù)用為8條I/O線。并分別提供命令控制信號線;命令、地址和數(shù)據(jù)信息均通過8條I/O線傳輸,不會因存儲容量的增加而增加引腳數(shù),從而極大方便系統(tǒng)設(shè)計和產(chǎn)品升級,而無需更改外部硬件連接,因此成為嵌入式系統(tǒng)中實時存儲大容量數(shù)據(jù)的最佳選擇。
    K9KAG08UOM引腳排列如圖1所示,其引腳功能如下:
    I/O0~I(xiàn)/O7:8根地址、數(shù)據(jù)和命令復(fù)用信號。用于輸入命令、數(shù)據(jù)、地址及輸出數(shù)據(jù)。
    CE:片選信號。用于選擇控制器件。
    WE:寫使能信號。通過該端口可在寫脈沖的上升沿鎖存指令、地址和數(shù)據(jù)。
    RE:讀使能信號。在讀信號的下降沿,輸出數(shù)據(jù)有效,并可累加其內(nèi)部數(shù)據(jù)地址。
    CLE:命令鎖存使能信號。CLE為高電平時,命令通過I/O端口線在寫信號的上升沿被鎖存入命令寄存器。
    ALE:地址鎖存信號。在寫信號的上升沿且地址鎖存信號為高電平時,地址被鎖存。
    WP:寫保護(hù)信號。WP為低電平時,禁止寫或擦除操作。
    R/B:準(zhǔn)備就緒或忙輸出顯示信號,當(dāng)R/B為低電平時,表示有編程、擦除或隨機(jī)讀操作正在進(jìn)行,操作完成后.R/B信號自動返回至高電平。


3 硬件接口設(shè)計
3.1 計算機(jī)板設(shè)計方案
    激光陀螺慣導(dǎo)計算機(jī)板以CPU為核心,完成數(shù)據(jù)的采集、運(yùn)算、通信、數(shù)據(jù)存儲等任務(wù)。計算機(jī)板的設(shè)計原理如圖2所示。

    計算機(jī)板主要包括:核心CPU完成導(dǎo)航計算及對外圍接口的管理與控制等:監(jiān)控與導(dǎo)航Flash完成程序的自主加載引導(dǎo);NAND Flash完成試驗數(shù)據(jù)的記錄與下載;FPGA輔助完成A/D轉(zhuǎn)換時序控制、總線譯碼控制、開關(guān)電路控制、分頻及脈沖計數(shù)等功能:4通道串行控制器 TL16C754控制4個通道串口。
    主機(jī)CPU選用DSP器件 TMS320C6713B,其內(nèi)含浮點數(shù)值處理器,支持64位浮點運(yùn)算,內(nèi)部RAM容量為256 K字節(jié),主頻最高可達(dá)300 MHz,帶有的鎖相環(huán)電路使其能夠通過軟件編程設(shè)置實際工作頻率。
    根據(jù)系統(tǒng)時序控制和計數(shù)等功能需要邏輯門的大?。瓼PGA選用ACTEL公司的APA300。該器件內(nèi)部自帶ROM,上電后自主運(yùn)行,無需外部ROM引導(dǎo),可靠性高。
    串行通信控制器選用,TI公司的TL16C754B。該器件采用3.3 V供電,功耗低,內(nèi)部有4個并行的串行通信控制器,內(nèi)部白帶FIFO模式,與DSP無縫接口,使用靈活方便,滿足系統(tǒng)設(shè)計需要。

3.2 NAND Flash與DSP硬件接口設(shè)計
    大容量閃存NAND Flash與DSP之間的接口設(shè)計是CPU板設(shè)計的關(guān)鍵。DSP主要通過EMIF外部存儲器接口訪問片外存儲器,TMS320C6713B可與大多數(shù)的同步存儲器和異步存儲器靈活配置,使用簡單方便。TMS320C6713B與K9KAG08UOM的硬件接口電路如圖3所示。

 

    TMS320C6713B的外部存儲器接口包括:20位地址線、32位數(shù)據(jù)線、4個片選控制線及讀寫控制信號線。4個片選信號分別對應(yīng)4個存儲空間,CE3對應(yīng)的地址空間為OxB0000000-OxBFFFFFFF,設(shè)計中通過地址譯碼實現(xiàn)地址空間的分隔,其中大容量閃存器件K9KAG08UOM的片選面對應(yīng)的地址為OxB0400000。
    K9KAG08UOM無地址線,命令、地址和數(shù)據(jù)信息均通過I/00~I(xiàn)/07傳輸。雖然K9KAG08UOM的容量達(dá)到2 G字節(jié),遠(yuǎn)遠(yuǎn)超出TMS320C6713B存儲區(qū)域CE3的可尋址容量256 M字節(jié),但由于訪問NAND Flash的地址是通過I/O端口輸入,無需通過地址線尋址,因此不用考慮邏輯存儲空間與實際物理空間的映射問題,簡化了DSP與NAND Flash的硬件接口。
    TMS320C6713B和K9KAG08UOM的工作電壓均是3.3 V,因此兩者引腳可直接連接,無需電平轉(zhuǎn)換。設(shè)計中K9KAG-08UOM的ALE和CLE兩個信號分別由DSP的最低兩位地址EA3和EA2控制。DSP的低8位數(shù)據(jù)線直接與NAND Flash的I/00~I(xiàn)/07相連。DSP的通用輸人輸出端口GP3接R/B,用于監(jiān)測NAND Flash的工作狀態(tài)。當(dāng)R/B處于低電平時,表示有編程、擦除或隨機(jī)讀操作正在進(jìn)行;當(dāng)R/B處于高電平時,表示操作已經(jīng)完成。K9KAG08UOM的讀寫控制信號RE和WE由DSP的讀寫控制信號ARE和AWE和譯碼產(chǎn)生的片選信號CE通過邏輯或得到,只有當(dāng)DSP的讀寫控制信號和片選同時有效即為低電平時才能對K9KAG08UOM進(jìn)行讀寫操作。
    該硬件接口設(shè)計利用DSP的地址線EA3、EA2分別控制NAND Flash的命令鎖存ALE和地址鎖存CLE信號,此時對K9KAG08UOM的訪問相當(dāng)于訪問地址分別為OxB0400002、OxB0400001和OxB0400000的3個端口.分別對應(yīng)K9KAG08UOM的地址端口、命令端口和數(shù)據(jù)端口。DSP對K9KAG08UOM的命令、地址和數(shù)據(jù)操作可通過不同端口進(jìn)行。簡化了對K9KAG08UOM讀寫控制和軟件編程設(shè)計的難度。


4 軟件設(shè)計
    NAND Flash的基本操作主要包括:讀數(shù)據(jù),編程(寫)數(shù)據(jù),擦除、讀器件ID號等。NAND Flash的軟件設(shè)計主要關(guān)注以下幾個方面:
    (1)讀、寫操作以頁為單位;
    (2)擦除操作以塊為單位;
    (3)對NAND Flash寫數(shù)據(jù)時,位數(shù)據(jù)只能由1變?yōu)?,因此對Flash寫操作前必須把寫單元所在塊擦除;
    (4)NAND Flash同其他固體存儲器一樣會產(chǎn)生壞塊,如果將數(shù)據(jù)存儲在壞塊區(qū)域?qū)?dǎo)致無法正?;謴?fù)。壞塊區(qū)域一般不超過器件總?cè)萘康?‰,如果系統(tǒng)的工作狀態(tài)允許存儲的數(shù)據(jù)可以出現(xiàn)少量錯誤,比如圖像記錄功能,軟件設(shè)計時可不用標(biāo)記為壞區(qū);如果系統(tǒng)的工作狀態(tài)不允許存儲的數(shù)據(jù)出錯,則需根據(jù)器件出廠時自帶的壞塊信息表標(biāo)記壞塊區(qū)域,以保證數(shù)據(jù)不被寫到壞塊區(qū)域。
    (5)在對NAND Flash進(jìn)行擦除、編程或者讀取操作流程時,不允許有中斷信號打斷CPU的工作,否則會讀寫錯誤。在軟件設(shè)計時,如果對NAND Flash進(jìn)行存取操作,需先屏蔽中斷,讀寫操作完成后再把中斷重新打開。
    NAND Flash最基本的塊擦除、頁編程時序流程如圖4和圖5所示。

5 結(jié)束語
    由于NAND Flash具有非易失性、大容量、低成本、接口簡單等優(yōu)點。在組合導(dǎo)航數(shù)據(jù)存儲設(shè)備,激光慣導(dǎo)單元及紅外導(dǎo)引頭的圖像采集等智能儀器中得到廣泛應(yīng)用。詳細(xì)介紹了大容量閃存K9KAG08UOM與TMS320C6713B的硬件接口電路和軟件程序設(shè)計,所采用的接口技術(shù)靈活、簡單、可靠,在激光慣導(dǎo)單元進(jìn)行的湖試和海試試驗中成功地實現(xiàn)了數(shù)據(jù)的存儲。該接口設(shè)計方法可推廣應(yīng)用于大容量閃存器件與單片機(jī)、ARM及其他型號的DSP設(shè)計中。
 

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。