新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 大容量閃存器件K9KAG08UOM與DSP接口設(shè)計(jì)

大容量閃存器件K9KAG08UOM與DSP接口設(shè)計(jì)

作者: 時(shí)間:2009-08-03 來(lái)源:網(wǎng)絡(luò) 收藏

  前言

  慣性導(dǎo)航系統(tǒng)、各種導(dǎo)引頭及空間飛行器等測(cè)試和記錄應(yīng)用系統(tǒng),都需要自主、實(shí)時(shí)、可靠存儲(chǔ)大量的關(guān)鍵信息,并保證即使整個(gè)系統(tǒng)掉電,所采集到的數(shù)據(jù)仍能長(zhǎng)時(shí)間保持不丟失,實(shí)現(xiàn)歷史數(shù)據(jù)查詢,便于數(shù)據(jù)分析。NAND Flash閃速存儲(chǔ)器(簡(jiǎn)稱)以其掉電非易失、功耗低、壽命長(zhǎng)、容量大、升級(jí)容易等獨(dú)有的特點(diǎn)迅速成為數(shù)據(jù)存儲(chǔ)的最佳選擇。

  某型激光陀螺慣導(dǎo)單元需要在湖試和海試試驗(yàn)過(guò)程中記錄大量導(dǎo)航參數(shù),為了便于在試驗(yàn)結(jié)束后有效分析數(shù)據(jù)。這里提出一種基于大容量器件K9KAG08UOM與DSP的接口設(shè)計(jì)方案。在激光慣導(dǎo)的計(jì)算機(jī)板上集成了一片NAND Flash閃速存儲(chǔ)器,根據(jù)試驗(yàn)的次數(shù)和每個(gè)航次存儲(chǔ)數(shù)據(jù)量的大小,選用SAMSUNG公司的K9KAG08UOM存儲(chǔ)器;為滿足導(dǎo)航控制的周期和算法的復(fù)雜程度,選用TI公司的浮點(diǎn)DSPTMS320C6713B作為主控處理器。TMS320C6713B的主頻可達(dá)300 MHz,浮點(diǎn)運(yùn)算速度可達(dá)1.8 GFLO/S,是目前運(yùn)算速度最快的浮點(diǎn)器件之一,已成為嵌入式系統(tǒng)設(shè)計(jì)中的主流處理器。其中NAND Flash與DSP的接口設(shè)計(jì)是整個(gè)計(jì)算機(jī)板設(shè)計(jì)的關(guān)鍵部分,這里詳細(xì)介紹大容量NAND Flash與DSP接口設(shè)計(jì)的電路和軟件實(shí)現(xiàn)方法。

  2 大容量K9KAG08UOM簡(jiǎn)介

  K9KAG08UOM是大容量、高可靠性的NAND Flash存儲(chǔ)器。其存儲(chǔ)容量為2 G字節(jié)(2 Gx8 bit);可將數(shù)據(jù)線與地址線復(fù)用為8條I/O線。并分別提供命令控制信號(hào)線;命令、地址和數(shù)據(jù)信息均通過(guò)8條I/O線傳輸,不會(huì)因存儲(chǔ)容量的增加而增加引腳數(shù),從而極大方便系統(tǒng)設(shè)計(jì)和產(chǎn)品升級(jí),而無(wú)需更改外部硬件連接,因此成為嵌入式系統(tǒng)中實(shí)時(shí)存儲(chǔ)大容量數(shù)據(jù)的最佳選擇。

  K9KAG08UOM引腳排列如圖1所示,其引腳功能如下:

  •   I/O0~I(xiàn)/O7:8根地址、數(shù)據(jù)和命令復(fù)用信號(hào)。用于輸入命令、數(shù)據(jù)、地址及輸出數(shù)據(jù)。
  •   CE:片選信號(hào)。用于選擇控制器件。
  •   WE:寫(xiě)使能信號(hào)。通過(guò)該端口可在寫(xiě)脈沖的上升沿鎖存指令、地址和數(shù)據(jù)。
  •   RE:讀使能信號(hào)。在讀信號(hào)的下降沿,輸出數(shù)據(jù)有效,并可累加其內(nèi)部數(shù)據(jù)地址。
  •   CLE:命令鎖存使能信號(hào)。CLE為高電平時(shí),命令通過(guò)I/O端口線在寫(xiě)信號(hào)的上升沿被鎖存入命令寄存器。
  •   ALE:地址鎖存信號(hào)。在寫(xiě)信號(hào)的上升沿且地址鎖存信號(hào)為高電平時(shí),地址被鎖存。
  •   WP:寫(xiě)保護(hù)信號(hào)。WP為低電平時(shí),禁止寫(xiě)或擦除操作。
  •   R/B:準(zhǔn)備就緒或忙輸出顯示信號(hào),當(dāng)R/B為低電平時(shí),表示有編程、擦除或隨機(jī)讀操作正在進(jìn)行,操作完成后.R/B信號(hào)自動(dòng)返回至高電平。

K9KAG08UOM引腳排列

  3 設(shè)計(jì)

  3.1 計(jì)算機(jī)板設(shè)計(jì)方案

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

計(jì)算機(jī)板的設(shè)計(jì)原理

  計(jì)算機(jī)板主要包括:核心CPU完成導(dǎo)航計(jì)算及對(duì)外圍接口的管理與控制等:監(jiān)控與導(dǎo)航Flash完成程序的自主加載引導(dǎo);NAND Flash完成試驗(yàn)數(shù)據(jù)的記錄與下載;FPGA輔助完成A/D轉(zhuǎn)換時(shí)序控制、總線譯碼控制、開(kāi)關(guān)電路控制、分頻及脈沖計(jì)數(shù)等功能:4通道串行控制器 TL16C754控制4個(gè)通道串口。

  主機(jī)CPU選用DSP器件 TMS320C6713B,其內(nèi)含浮點(diǎn)數(shù)值處理器,支持64位浮點(diǎn)運(yùn)算,內(nèi)部RAM容量為256 K字節(jié),主頻最高可達(dá)300 MHz,帶有的鎖相環(huán)電路使其能夠通過(guò)軟件編程設(shè)置實(shí)際工作頻率。

  根據(jù)系統(tǒng)時(shí)序控制和計(jì)數(shù)等功能需要邏輯門(mén)的大?。瓼PGA選用ACTEL公司的APA300。該器件內(nèi)部自帶ROM,上電后自主運(yùn)行,無(wú)需外部ROM引導(dǎo),可靠性高。

  串行通信控制器選用,TI公司的TL16C754B。該器件采用3.3 V供電,功耗低,內(nèi)部有4個(gè)并行的串行通信控制器,內(nèi)部白帶FIFO模式,與DSP無(wú)縫接口,使用靈活方便,滿足系統(tǒng)設(shè)計(jì)需要。

  3.2 NAND Flash與DSP設(shè)計(jì)

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

TMS320C6713B與K9KAG08UOM的硬件接口電路

  TMS320C6713B的外部存儲(chǔ)器接口包括:20位地址線、32位數(shù)據(jù)線、4個(gè)片選控制線及讀寫(xiě)控制信號(hào)線。4個(gè)片選信號(hào)分別對(duì)應(yīng)4個(gè)存儲(chǔ)空間,CE3對(duì)應(yīng)的地址空間為OxB0000000-OxBFFFFFFF,設(shè)計(jì)中通過(guò)地址譯碼實(shí)現(xiàn)地址空間的分隔,其中大容量閃存器件K9KAG08UOM的片選面對(duì)應(yīng)的地址為OxB0400000。

  K9KAG08UOM無(wú)地址線,命令、地址和數(shù)據(jù)信息均通過(guò)I/00~I(xiàn)/07傳輸。雖然K9KAG08UOM的容量達(dá)到2 G字節(jié),遠(yuǎn)遠(yuǎn)超出TMS320C6713B存儲(chǔ)區(qū)域CE3的可尋址容量256 M字節(jié),但由于訪問(wèn)NAND Flash的地址是通過(guò)I/O端口輸入,無(wú)需通過(guò)地址線尋址,因此不用考慮邏輯存儲(chǔ)空間與實(shí)際物理空間的映射問(wèn)題,簡(jiǎn)化了DSP與NAND Flash的硬件接口。

  TMS320C6713B和K9KAG08UOM的工作電壓均是3.3 V,因此兩者引腳可直接連接,無(wú)需電平轉(zhuǎn)換。設(shè)計(jì)中K9KAG-08UOM的ALE和CLE兩個(gè)信號(hào)分別由DSP的最低兩位地址EA3和EA2控制。DSP的低8位數(shù)據(jù)線直接與NAND Flash的I/00~I(xiàn)/07相連。DSP的通用輸人輸出端口GP3接R/B,用于監(jiān)測(cè)NAND Flash的工作狀態(tài)。當(dāng)R/B處于低電平時(shí),表示有編程、擦除或隨機(jī)讀操作正在進(jìn)行;當(dāng)R/B處于高電平時(shí),表示操作已經(jīng)完成。K9KAG08UOM的讀寫(xiě)控制信號(hào)RE和WE由DSP的讀寫(xiě)控制信號(hào)ARE和AWE和譯碼產(chǎn)生的片選信號(hào)CE通過(guò)邏輯或得到,只有當(dāng)DSP的讀寫(xiě)控制信號(hào)和片選同時(shí)有效即為低電平時(shí)才能對(duì)K9KAG08UOM進(jìn)行讀寫(xiě)操作。

  該硬件接口設(shè)計(jì)利用DSP的地址線EA3、EA2分別控制NAND Flash的命令鎖存ALE和地址鎖存CLE信號(hào),此時(shí)對(duì)K9KAG08UOM的訪問(wèn)相當(dāng)于訪問(wèn)地址分別為OxB0400002、OxB0400001和OxB0400000的3個(gè)端口.分別對(duì)應(yīng)K9KAG08UOM的地址端口、命令端口和數(shù)據(jù)端口。DSP對(duì)K9KAG08UOM的命令、地址和數(shù)據(jù)操作可通過(guò)不同端口進(jìn)行。簡(jiǎn)化了對(duì)K9KAG08UOM讀寫(xiě)控制和軟件編程設(shè)計(jì)的難度。

  4

  NAND Flash的基本操作主要包括:讀數(shù)據(jù),編程(寫(xiě))數(shù)據(jù),擦除、讀器件ID號(hào)等。NAND Flash的主要關(guān)注以下幾個(gè)方面:

  (1)讀、寫(xiě)操作以頁(yè)為單位;

  (2)擦除操作以塊為單位;

  (3)對(duì)NAND Flash寫(xiě)數(shù)據(jù)時(shí),位數(shù)據(jù)只能由1變?yōu)?,因此對(duì)Flash寫(xiě)操作前必須把寫(xiě)單元所在塊擦除;

  (4)NAND Flash同其他固體存儲(chǔ)器一樣會(huì)產(chǎn)生壞塊,如果將數(shù)據(jù)存儲(chǔ)在壞塊區(qū)域?qū)?dǎo)致無(wú)法正?;謴?fù)。壞塊區(qū)域一般不超過(guò)器件總?cè)萘康?‰,如果系統(tǒng)的工作狀態(tài)允許存儲(chǔ)的數(shù)據(jù)可以出現(xiàn)少量錯(cuò)誤,比如圖像記錄功能,時(shí)可不用標(biāo)記為壞區(qū);如果系統(tǒng)的工作狀態(tài)不允許存儲(chǔ)的數(shù)據(jù)出錯(cuò),則需根據(jù)器件出廠時(shí)自帶的壞塊信息表標(biāo)記壞塊區(qū)域,以保證數(shù)據(jù)不被寫(xiě)到壞塊區(qū)域。

  (5)在對(duì)NAND Flash進(jìn)行擦除、編程或者讀取操作流程時(shí),不允許有中斷信號(hào)打斷CPU的工作,否則會(huì)讀寫(xiě)錯(cuò)誤。在軟件設(shè)計(jì)時(shí),如果對(duì)NAND Flash進(jìn)行存取操作,需先屏蔽中斷,讀寫(xiě)操作完成后再把中斷重新打開(kāi)。

  NAND Flash最基本的塊擦除、頁(yè)編程時(shí)序流程如圖4和圖5所示。

塊擦除

  5 結(jié)束語(yǔ)

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



評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉