《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 業界動態 > 大容量NAND FALSH的原理及應用

大容量NAND FALSH的原理及應用

2018-06-06
關鍵詞: NANDFALSH FPGA NiosII


  1. 引言

  NAND   FLASH被廣泛應用于電子系統中作為數據存儲。在各種高端電子系統中現場可編程門陣列(FPGA)已被廣泛應用。FPGA靈活的硬件邏輯能實現對NAND  FLASH的讀寫操作。本文中闡述了一種基于NIOS II 軟核的NAND FLASH的驅動方法。

  2. VDNF2T16VP193EE4V25簡介

  歐比特公司的VDNF2T16VP193EE4V25是一款容量為2Tb、位寬為16位的NAND  FLASH,其內部由8片基片拓撲而成,其拓撲結構如下:

1.png

  圖1 VD1D8G08VS66EE8T7B拓撲結構

  其主要特性如下:

  ? 總容量2Tb;

  ? 位寬:16位;

  ? SLC;

  ? 兼容ONFI2.2;

  ? 封裝:PGA193;

  ? 電源:+3.3V(VCC)、+1.8V(VCCQ)。

  3. VDNF2T16VP193EE4V25的控制器設計

  大容量NAND FLASH控制器設計包括一個IP核設計。其基于NIOS II  的AVALON總線。AVALON總線能兼容大部分存儲器接口,IP核將AVALON總線時序轉接至NAND FLASH,從而對NAND  FLASH進行讀寫操作。

  IP邏輯主要有片選信號產生、ALE、CLE、RE、WE等控制信號的轉接。其中RE、WE信號可采用AVALON總線的RE、WE信號;CLE、ALE采用總線地址的低2位進行控制;片選數量較多可依據AVALON總線的byteen信號進行譯碼產生。

2.png

  圖2 控制器功能框圖

  //寫信號

  assign nand_wr_n = {avalon_wr_n,avalon_wr_n,avalon_wr_n,avalon_wr_n};

  //讀信號

  assign nand_rd_n = {avalon_rd_n,avalon_rd_n,avalon_rd_n,avalon_rd_n};

  //ALE信號,采用地址0

  assign nand_ale = {avalon_add[0],avalon_add[0]};

  //CLE信號,采用地址1

  assign nand_cle = {avalon_add[1],avalon_add[1]};

  //片選信號

  assign nand_cs_n[0] = temcs[0]|avalon_byteen_n[0];

  assign nand_cs_n[1] = temcs[0]|avalon_byteen_n[1];

  ……

  IP核設計完成后采用QSYS進行硬件平臺搭建,QSYS系統軟核對外引出信號有EPCS、UART、NAND FLASH接口,在Quartus  II建立原理圖塊進行編譯產生硬件信息。

3.png

  采用Nios II Software Build Tools for Eclipse 對QSYS進行軟件編程可實現對NAND FLASH的驅動。

  //NAND FLASH數據寄存器地址定義

  #define NandFlashDataReg0 (VDNF2T16_V1_0_BASE)

  //NAND FLASH ALE寄存器地址定義

  #define NandFlashAddReg0 (VDNF2T16_V1_0_BASE+4)

  //NAND FLASH CLE寄存器地址定義

  #define NandFlashCmdReg0 (VDNF2T16_V1_0_BASE+8)

  ……

  以下為讀取ID及壞塊的信息:

  ******************************************************************

  The cs=0 NAND_FLASH's ID is Right ,The ID is=0x2c881a7a9000

  ***********************************************************************

  This cs=0 FLASH's Bank=0 have 5 BadBlocks:

  The num=0 Bank LUN1's num=90 is BadBlock.

  The num=0 Bank LUN1's num=91 is BadBlock.

  The num=0 Bank LUN1's num=1738 is BadBlock.

  The num=0 Bank LUN2's num=90 is BadBlock.

  The num=0 Bank LUN2's num=91 is BadBlock.

  The Number of Bank's Valid Block is Right.

  ……

  4. 結論

  本文闡述了一種通過FPGA實現對歐比特公司的大容量NAND   FLASH芯片VDNF2T16VP193EE4V25的操作方法。設計中采用ALTERA公司FPGA芯片,利用自建IP搭建硬件平臺實現NAND   FLASH的驅動。該設計也可移植到其他FPGA上,可以很好地應用在各嵌入式電子系統中。

  參考文獻:

  [1] 珠海歐比特控制工程股份有限公司. VDNF2T16VP193EE4V25使用說明書[Z]. 2016.

  [2] Nios II Software Developer’s Handbook[Z].2011.

  [3] Embedded Peripherals IP User Guide [Z].2011.

  [4] Avalon Interface Specifications [Z].2011.


本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:[email protected]
主站蜘蛛池模板: 国产欧美一区二区三区视频 | 亚洲福利精品一区二区三区 | 久久国产精品久久精品国产 | 国产乱码精品一区二区三区中 | 日本一区二区三区在线 视频观看免费 | 国产精品免费大片 | 日本a级精品一区二区三区 日本a级毛片免费视频播放 | 亚洲免费一级片 | 亚洲国产成人在人网站天堂 | 国产伦子伦视频免费 | 国产精品国产三级国产a | 九九手机视频 | 香蕉视频国产精品 | 成人免费xxx色视频 成人免费大片a毛片 | 国产成人精品午夜在线播放 | 毛片免费观看的视频在线 | 中文字幕在线视频网 | 成人看免费一级毛片 | 模特视频一二三区 | japanesevideo国产在线 | 一级做a爰片久久毛片唾 | 国产成人一区二区三区免费观看 | 亚洲欧美日韩中文字幕在线一区 | 亚洲线精品一区二区三区 | 久久精品一区二区三区日韩 | 草久久久 | 成人免费观看网欧美片 | xxxwww在线播放 | 欧美一级毛片日韩一级 | 18视频网站在线观看 | 亚洲天堂国产 | 成人国产永久福利看片 | 视频网18免费 | 日本一区二区高清不卡 | 欧美一级手机免费观看片 | 精品国产亚洲一区二区在线3d | 91成年人视频 | 久久精品人人爽人人爽快 | 91成人在线免费观看 | 日韩二区三区 | 九九全国免费视频 |