新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于XCR3032的大容量FLASH存儲器接口設(shè)計

基于XCR3032的大容量FLASH存儲器接口設(shè)計

作者: 時間:2012-02-01 來源:網(wǎng)絡(luò) 收藏

  (FLASH Memory)是非易失存儲器,即使在供電電源關(guān)閉后仍然能保留信 息, 可以對存儲器單元塊進行擦除和再編程,并且不需要額外的編程電壓。具有工 作電壓低、擦寫速度快、功耗低、壽命長、價格低廉、控制方法靈活、體積小等優(yōu)點。近年 來,在嵌入式系統(tǒng)代碼存儲和大容量數(shù)據(jù)存儲領(lǐng)域中得到了廣泛的應(yīng)用。本文 介紹了使用實現(xiàn)與微控制器的接口原理,給出了HD L實現(xiàn)程序。對大容量FLASH存儲器的接口設(shè)計具有一定的參考價值。

  1

  是Xilinx公司生產(chǎn)的CoolRunner XPLA3系列CPLD。他具有如下特點:

  低功耗供電電壓僅為2.7~3.6 V。他采用Fast Zero PowerTM( FZP)技術(shù),使得器件的靜態(tài)電流非常低(小于100 μA);頻率為10 MHz時,工作電流僅為1 06mA,比其他公司的CPLD小50%~67%。

  高性能具有32個宏單元,器件所有信號具有等延時,與路徑無關(guān),t PD最快可達5 ns。最高運行時鐘頻率可達200 MHz,多時鐘資源使得設(shè)計更加方便 。

  總線接口友好特別適合應(yīng)用于3.3 V系統(tǒng)中,可無需外接上拉電阻而與5 V器件直接接口。

  具有Port Enable管腳使得JTAG管腳具有在系統(tǒng)可編程接口和通用I/O口 2種功能。芯片不處于編程狀態(tài)時,仍可用作一般I/O口。

  快速ISP編程可達至少1萬次的編程擦除次數(shù)。

  XCR3032最顯著的特點是低功耗和高速度。特別適用于手持、移動等功耗比較低的系統(tǒng)中。 如PDA、筆記本電腦、移動電話等領(lǐng)域。

  2

  是韓國三星(Samsung)公司采用NAND技術(shù)生產(chǎn)的128 MB大容量、高可靠、非 易 失性FLASH存儲器,具有高密度、高性能的特點。該器件所提供的片內(nèi)控制器、狀態(tài)寄存器 和專用命令集使其可以靈活地運用在各種存儲系統(tǒng)電路中。他的最大優(yōu)點是8位I/O端口是地 址、數(shù)據(jù)和命令的多路復(fù)用,這樣不但大大減少了芯片的引腳數(shù),而且簡化了系統(tǒng)的連線, 便于系統(tǒng)以后擴充芯片容量而不需改變系統(tǒng)板結(jié)構(gòu)設(shè)計。

  K9K1G08U0M對于諸如文件存儲、聲 音和音頻信號處理、智能儀器設(shè)備等要求大容量非易失性存儲的應(yīng)用場合提供了一種極佳的 解決方案。他的典型特性如下:

  (1)工作電壓:2.7~3.6 V

  (2)自動編程和擦除

  頁編程:(512+16)B
  塊擦除:(16 k+512)B
  (3)可進行528 B/頁讀操作

  隨機訪問:12μs(最大值)
  頁面連續(xù)訪問:50μs(最小值)
  (4)快速寫周期時間

  編程時間:200μs(典型值)
  塊擦除時間:2 ms(典型值)
  (5)硬件數(shù)據(jù)保護

  在電源電壓VCC2 V時,內(nèi)部電壓探測器禁止編程/擦除操作。

  使用壽命達100 k次編程、擦除,數(shù)據(jù)可保存達10年,48腳TSOP封裝。K9K1G08U0M的功能組成框圖如圖1所示。他與控制器的接口信號除8個I/O線外, 還包括地址鎖存使能ALE,命令鎖存使能CLE,片選信號CE,讀使能信號RE ,寫I/O信號WE,寫保護WP控制線,操作狀態(tài)指示信號 R/B等控制線,因此主控制器可以方便地實現(xiàn)對他的控制。K9K1G08U0M的地址、數(shù)據(jù)和命令信號輸入都使用8位的I/O口,當(dāng)CE為低 時,命令、地址和數(shù)據(jù)在WE變低時由I/O寫入,并在WE的上升沿鎖 存。通過命令鎖存信號CLE和地址鎖存信號ALE可實現(xiàn)命令和地址對I/O的復(fù)用。K9K1G 08U0M的引腳特性及常用命令見參考文獻[4]。

  3接口方法

  K9K1G08U0M與微控制器常規(guī)接口方法是使用專用的口線模擬ALE,CLE并在CE,RE,的時序配合下完成所有的命令。這種方法的缺點是占用微控制器寶貴的 硬件資源,并要求軟件嚴格控制他們之間的時序,增加了程序運行時間和軟件復(fù)雜度,降低 了程序的運行效率。而且對于使用5 V電源的微控制器,由于K9K1G08U0M電源電壓是3 V,所 以他們之間的接口還存在邏輯電平轉(zhuǎn)換的問題。

  本文提出的方法使用1片XCR3032 CPLD就可以完美地解決上述問題,高效地完成K9K1G08U 0 M的全部功能,而無需占用額外的口線,微控制器只需以固定的地址向XCR3032尋址,通過XC R3032產(chǎn)生的輸出信號實現(xiàn)對K9K1G08U0M的控制。XCR3032有如下作用:

  (1)對微控制器送出的最低4位地址信息進行譯碼。

  (2)分析地址總線的命令并根據(jù)命令內(nèi)容提供K9K1G08U0M的相應(yīng)接口信號。

  (3)監(jiān)控K9K1G08U0M的R/B的輸出。

  綜上所述,利用XCR3032實現(xiàn)的K9K1G08U0M與微控制器接口電路如圖2所示。

  根據(jù)K9K1G08U0M的接口時序要求,XCR3032要根據(jù)微控制器最低4位地址線解碼出K9K1G08U0 M相對應(yīng)的操作。XCR3032的輸出信號狀態(tài)取決于微控制器輸入的地址信息。假設(shè)XCR3032的 基地址是B,不同的輸入地址值所對應(yīng)的輸出操作和基本功能如表1所示。

  當(dāng)微控制器送出地址是B+0需要讀取K9K1G08U0M數(shù)據(jù)、狀態(tài)和ID時候RD信號置0 。當(dāng)微控制器送出地址是B+0并且要求寫數(shù)據(jù)地址或者微控制器送出地址是B+1要求寫命令時 應(yīng)置0。

  4-語言的實現(xiàn)

  經(jīng)過上述分析可知,輸入XCR3032的信號有微控制器讀寫信號WRIte, READ ,地址總線低4位address[3:0],
  
  使用語言設(shè)計組合邏輯和時序 邏輯具有很高的效率。由于篇幅所限,相關(guān)變量的聲明在此略去,部分Verilog- 代碼如下:
  
  
  

  5結(jié)語

  完整程序經(jīng)過Xilinx Project Navigator 6.1編譯、調(diào)試、仿真,利用并口下載電纜通 過 JTAG接口下載到XCR3032中后,使用C8051F021單片機進行接口實驗,證明使用該接口方法K9 K1G08U0M的各項功能和命令均可實現(xiàn)。現(xiàn)已成功應(yīng)用于國家“863”計劃項目“海洋生態(tài)環(huán) 境自動監(jiān)測技術(shù)”中。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉