《電子技術應用》
您所在的位置:首頁 > 微波|射頻 > 設計應用 > 基于單片機的FIash存儲器壞塊自動檢測
基于單片機的FIash存儲器壞塊自動檢測
摘要: 雖然NAND型Flash具有許多優點,但其有隨機產生不可避免的壞塊,如果不能很好解決該壞塊將導致高故障率。因此,這里提出一種基于DSP的Flash存儲器壞塊自動檢測系統。
關鍵詞: 存儲器 單片機 FIash
Abstract:
Key words :

  隨著電子技術飛速發展,智能電子產品隨處可見,如PC機、移動電話、PDA、數碼相機、游戲機、數字電視等,而諸如此類的電子產品的核心器件往往離不開存儲器。無論是從存儲器的物理結構、存儲容量、數據讀寫速度、可靠性、耐用性,還是產品的實用性方面。其種類繁多。然而由于種種原因,越來越多的電子產品采用數據傳輸快、容量大的NAND型Flash存儲器。雖然NAND型Flash具有許多優點,但其有隨機產生不可避免的壞塊,如果不能很好解決該壞塊將導致高故障率。因此,這里提出一種基于DSP的Flash存儲器壞塊自動檢測系統。

  1 系統設計方案

  圖l為Flash存儲器壞塊自動檢測系統結構框圖。

Flash存儲器壞塊自動檢測系統結構框圖

  本系統設計采用AT89C51自動檢測NAND型Flash存儲器的無效塊,獲取Flash存儲器的壞塊信息,為后續數據存儲做準備。本系統設計包括硬件電路和配套軟件設計2部分。其硬件電路主要由單片機、控制、顯示和存儲器4部分組成,其中單片機部分采用常規的最小系統電路;控制部分由按鍵和單片機的外部中斷組成,按鈕通過電阻與接地端相連,而復位鍵則與電源端相連;顯示部分采用單片機的P0和P1端口控制8位七段共陽極數碼管,位選通端由P2端口控制數據端由Pl控制;存儲器部分與單片機相連,由于存在電平差異,所以需加電平轉換器74LVX42-45,可將由單片機輸出的5 V電壓轉到3 V,并將由Flash輸出的3 V電壓轉到5 V,其轉換方向便于控制。而軟件設計部分采用單片機C語言編寫程序,當數據存儲到單片機后,用一個循環語句將其放到數組里,這樣可以通過改變某一變量實現上下查詢。則將這個變量的改變放在外部中斷程序中。

  2 硬件電路設計

  硬件電路設計由于選用的51單片機是TTL器件,而所要檢測的NAND型Flash存儲器是CMOS器件,這2種類型器件的電平不相匹配,因此需增加電平轉換器74154245,從而實現電壓的5 V與3 V的雙向轉換。

  2.1 單片機的連接

  為了方便讀圖,該系統設計的電路原理圖中的許多導線連接都采用網絡標號的方法,而標號的命名基本采用引腳名稱。單片機的P1端口的位操作控制Flash的控制端,P0端口作為單片機和Flash的地址和數據傳輸端口。其中數據的流向采用P1.6和P1.7控制,要讀取Flash的數據時,如讀ID時,先對單片機的P1端口位操作,依照時序設置控制字,接著由單片機的PO端口輸出讀取ID的命令,然后設置寫地址的控制字,輸入地址00H。讀狀態時,連續的RE脈沖可輸出ID代碼。頁讀取操作與此類似。圖2為單片機電路連接圖。

單片機電路連接圖

  2.2 Flash存儲器的連接

  K9K8G08UOM是采用NAND技術的1 GB大容量、高可靠、非易失性Flash存儲器,具有高密度、高性能特點。其無效塊定義為包含有一個或更多無效字節,且其可靠性不能被保證,則無效塊中的信息稱為無效塊信息。和所有的有效塊一樣,它具有相同的AC和DC參數,一個無效塊不會影響有效塊的運行,因為它有相應獨立的指令資源依靠選擇晶體管,該系統設計必須通過地址掩蓋其無效塊。第l塊(地址是OOh)為了保證是有效塊,不要求糾錯l K編程/擦除周期。

  除了先裝載好的無效塊信息,所有器件的存儲單元都被擦除,無效塊狀態定義在空余區域的第1個字節。在每塊第1頁2 048字節的列地址中沒有FFh。很多情況下,無效塊信息也是能擦除的,一旦擦除,它不可能恢復其原有信息。因此,系統必須在原來無效塊的信息基礎上認識無效塊。該系統設計就是通過讀每塊的第1頁判定該塊是否為無效塊。

  依據該Flash器件數據資料中各個引腳的功能,設計Flash的電路連接,圖3只給出K9K8G08UOM部分所用引腳,電路中Flash的控制端經電平轉換器后與單片機的Pl端口相連,而I/O端口經電平轉換器與單片機的P0端口相連。

K9K8G08UOM部分所用引腳

  2.3 74LVX4245電平轉換器

  74LVX4245提供5 V和3 V之間轉換的8位雙向電平轉換器。該器件的T/R引腳控制數據流向。發射端使數據由A端到B端,而接收端使數據由B端到A端。A端接5 V總線,而B端接3 V總線,如圖4所示。

74LVX4245電平轉換器

  2.4 數碼管

  采用共陽極數碼管動態顯示方式。為了提高驅動能力,采用三極管驅動,用P2端口的低電平對數碼管進行位點亮,P0端口輸入要顯示的字符。本系統設計時,第l位和第2位顯示第幾個壞塊,后3位顯示無效塊地址。

  3 系統軟件設計

  采用μVision2集成開發環境,μVision2支持8051的所有Keil工具包,其中包括C編輯器、宏匯編器、鏈接器,定位器和目標文件至HEX格式的轉換器。系統軟件設計,即單片機代碼設計通常可采用匯編語言或C語言。圖5是無效塊判斷的主要流程。

無效塊判斷的主要流程

  本設計中軟件核心部分是存儲器的頁讀取函數。函數中定義無符號整型變量賦值2 048,依據頁讀取的時序,先將讀指令00H由函數Writ-eCommand寫入Flash的命令寄存器,接著由WriteAddress函數將4個周期的地址寫入Flash的地址寄存器,再由WriteCommand函數將讀命令30H寫入Flash指令寄存器,延時后讀狀態的控制字的設置,在2 048個讀信號脈沖中讀取緩存數據。該函數完整源程序代碼如下:

 

程序

  4 結論

  本設計滿足系統設計要求,能夠實現對Flash存儲器的ID號的讀取,準確讀取存儲器無效塊的數目和相應的物理地址,通過功能按鈕實現對無效塊地址的上下查詢。將存儲器換成fLash后可以很好地檢測器件的無效塊的分布情況。可以成為選擇性能更好的器件工具,同時還可準確獲取無效塊地址,為以后數據存儲打好基礎。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 中国一级特黄的片子免费| 亚洲国产综合精品| 老师在办公室疯狂的肉我| 国产日韩av在线播放| 88av在线视频| 夜爽爽爽爽爽影院| yjsp妖精视频网站| 成人午夜福利视频镇东影视| 久久成人无码国产免费播放| 棉袜足j吐奶视频| 亚洲国产成人久久精品软件| 欧美精品国产综合久久| 人人狠狠综合久久亚洲| 精品一区二区三区av天堂| 又湿又紧又大又爽a视频国产| 色综合久久久久久久久五月 | 久久午夜无码免费| 日韩精品一区二区三区老鸭窝| 亚洲人妖女同在线播放| 欧美成人怡红院在线观看| 亚洲熟妇无码爱v在线观看| 澳门a毛片免费观看 | 大胸喷奶水的www的视频网站 | 欧美日韩亚洲国产无线码| 亚洲男人电影天堂| 波多野结衣一区在线| 亚洲综合第一区| 特级毛片www| 人人爽人人澡人人高潮| 男人j桶进女人p无遮挡免费观看 | 中文japanese在线播放| 成人自拍视频在线观看| 中文字幕无码精品亚洲资源网久久 | 日韩精品中文字幕在线| 久久综合色综合| 日韩精品无码一区二区三区不卡 | 丁香花免费高清视频完整版| 成人欧美在线视频| 中文字幕免费在线播放| 成年女性特黄午夜视频免费看 | 久久精品国产9久久综合|