新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于XCR3032的大容量FLASH存儲器接口設計

基于XCR3032的大容量FLASH存儲器接口設計

作者: 時間:2012-02-01 來源:網絡 收藏

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

  1

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

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

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

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

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

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

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

  2

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

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

  (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)硬件數據保護

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

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

  3接口方法

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

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

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

  (2)分析地址總線的命令并根據命令內容提供K9K1G08U0M的相應接口信號。

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

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

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

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

  4-語言的實現

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

  5結語

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



評論


相關推薦

技術專區(qū)

關閉