專利名稱:基于fpga的快速nand flash控制器及其控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及NAND FLASH控制器的設(shè)計(jì)領(lǐng)域,尤其涉及基于FPGA的快速NANDFLASH控制器及其控制方法。
背景技術(shù):
FLASH,又稱閃存,它結(jié)合了 ROM和RAM的優(yōu)勢(shì),不僅具備EEPROM電子可擦出可編程的性能,還具有NVRAM可以快速讀取數(shù)據(jù)的優(yōu)勢(shì),具有體積小、功耗低、速度快、非易失等特點(diǎn),廣泛的應(yīng)用于嵌入式領(lǐng)域,如數(shù)字家電,手機(jī)等。近年來(lái),F(xiàn)LASH的應(yīng)用領(lǐng)域獲得了極大的擴(kuò)展,尤其是在嵌入式領(lǐng)域以及大容量高速數(shù)據(jù)存儲(chǔ)領(lǐng)域。FLASH按其內(nèi)部架構(gòu)主要分為NOR和NAND兩類,兩者的區(qū)別主要體現(xiàn)在讀寫速度、擦除性能、密度、成本、使用壽命等方面。NOR FLASH源于傳統(tǒng)的EPROM器件,程序和數(shù)據(jù)可存放在同一芯片上,具有獨(dú)立的數(shù)據(jù)和地址總線,隨機(jī)讀取速度快,能夠直接執(zhí)行程序代碼,可靠性高。而NAND FLASH沒有單獨(dú)的地址和數(shù)據(jù)總線,實(shí)現(xiàn)串行讀取,以頁(yè)為單位進(jìn)行讀、寫操作,頁(yè)大小通常為2K字節(jié),以塊為單位進(jìn)行擦出,一塊通常包括32或64頁(yè)。與NOR FLASH相比,NAND FLASH的讀取速度稍慢,但擦寫速度卻快很多,并且在容量、使用壽命、成本上也有較大優(yōu)勢(shì)。NAND FLASH復(fù)用地址線和數(shù)據(jù)線,因此在編程上較NOR FLASH復(fù)雜。NOR FLASH的成本較高,一般用于啟動(dòng)代碼的存儲(chǔ),而NAND FLASH主要用于大容量數(shù)據(jù)的存儲(chǔ),另外在NAND FLASH中存在位反轉(zhuǎn)現(xiàn)象,因此在使用時(shí),一般同時(shí)使用ECC (ErrorChecking and Correcting)校驗(yàn)算法完成對(duì)數(shù)據(jù)的糾錯(cuò)。在嵌入式設(shè)備中,多采用NAND FLASH用來(lái)進(jìn)行大數(shù)據(jù)的存儲(chǔ),在存儲(chǔ)過(guò)程中對(duì)NAND FLASH的基本操作有:塊擦除、讀頁(yè)、寫頁(yè)、讀狀態(tài)、讀ID和復(fù)位操作;由于NAND FLASH數(shù)據(jù)總線和地址總線復(fù)用,接口復(fù)雜,不易操作,因此需要設(shè)計(jì)NAND FLASH控制器將復(fù)雜不易操作的NAND FLASH接口轉(zhuǎn)換為簡(jiǎn)單通用的SRAM接口,目前常見的NAND FLASH控制器大多以將NAND FLASH接口轉(zhuǎn)換為SRAM接口為目的,對(duì)嵌入式設(shè)備的速度和能耗方面缺少考慮,本發(fā)明旨在減少主控制器的占用時(shí)間,主控制器的占用時(shí)間通過(guò)下面的公式進(jìn)行計(jì)算
權(quán)利要求
1.基于FPGA的快速NANDFLASH控制器,其特征是,包括指令寄存器、可編程狀態(tài)機(jī)和ECC糾錯(cuò)檢錯(cuò)邏輯模塊,所述控制器還包括buffer陣列,所述buffer陣列中包含若干個(gè)buffer模塊,所述BUFFER陣列中包含片選邏輯,所述NAND FLASH控制器采用流水線方式進(jìn)行數(shù)據(jù)存儲(chǔ)。
2.如權(quán)利要求1所述的基于FPGA的快速NANDFLASH控制器,其特征是,所述NANDFLASH控制器通過(guò)SRAM接口與主控制器連接。
3.如權(quán)利要求1所述的基于FPGA的快速NANDFLASH控制器,其特征是,所述NANDFLASH控制器通過(guò)NAND FLASH接口與NAND FLASH芯片連接。
4.上述任一權(quán)利要求所述的基于FPGA的快速NANDFLASH控制器所采用的控制方法,其特征是,主要分為如下步驟: 步驟(I):采用流水線的方式對(duì)NAND FLASH控制器加速; 步驟(2):當(dāng)一個(gè)buffer存儲(chǔ)完畢后,繼續(xù)選取其他buffer存儲(chǔ)后續(xù)數(shù)據(jù); 步驟(3):當(dāng)數(shù)據(jù)傳輸 完畢或所有的buffer滿時(shí),釋放主控制器,由NAND FLASH控制器控制進(jìn)行將數(shù)據(jù)由buffer存入到NAND FLASH芯片中。
5.如權(quán)利要求4所述的基于FPGA的快速NANDFLASH控制器的控制方法,其特征是,所述步驟(I)中的流水結(jié)構(gòu)如下: 步驟(1-1):數(shù)據(jù)從主控制器進(jìn)入NAND FLASH控制器; 步驟(1-2):要寫入的數(shù)據(jù)經(jīng)過(guò)ECC糾錯(cuò)檢錯(cuò)邏輯模塊,計(jì)算出校驗(yàn)碼; 步驟(1-3):將數(shù)據(jù)和檢驗(yàn)碼存儲(chǔ)在由buffer陣列中的片選邏輯選出的buffer中。
全文摘要
本發(fā)明公開了基于FPGA的快速NAND FLASH控制器及其控制方法,包括指令寄存器、可編程狀態(tài)機(jī)和ECC糾錯(cuò)檢錯(cuò)邏輯模塊,所述控制器還包括buffer陣列,所述buffer陣列中包含若干個(gè)buffer模塊,所述BUFFER陣列中包含片選邏輯。所述NAND FLASH控制器通過(guò)SRAM接口與主控制器連接。所述NAND FLASH控制器通過(guò)NAND FLASH接口與NAND FLASH芯片連接,所述NAND FLASH控制器采用流水線方式進(jìn)行數(shù)據(jù)存儲(chǔ)。本發(fā)明的有益效果它具有減少在存儲(chǔ)過(guò)程中對(duì)主控制器的占用時(shí)間,提高主控制器的釋放速度,從而提高效率節(jié)省能耗優(yōu)點(diǎn)。
文檔編號(hào)G11C16/10GK103226977SQ20131009277
公開日2013年7月31日 申請(qǐng)日期2013年3月21日 優(yōu)先權(quán)日2013年3月21日
發(fā)明者賈智平, 鞠磊, 申兆巖, 劉鵬 申請(qǐng)人:山東大學(xué)