專利名稱::Nandflash控制器的制作方法
技術領域:
:本實用新型涉及NANDFLASH控制器領域,特別是涉及一種NANDFLASH控制器。
背景技術:
:NAND型快閃存儲器(NANDFLASH)是一種可在線進行電擦寫的非易失半導體存儲器,具有擦寫速度快、低功耗、大容量、低成本等優(yōu)點,廣泛應用于MP3、MP4、手機、數(shù)碼照相機、攝像機等電子產品中。NANDFLASH芯片通過NANDFLASH控制器寫入、讀取lt據(jù),NANDFLASH控制器傳送到NANDFLASH芯片的數(shù)據(jù)包括地址和命令數(shù)據(jù)、及信息數(shù)據(jù)?,F(xiàn)有的NANDFLASH控制器通過內部數(shù)據(jù)傳輸通道,將地址和命令數(shù)據(jù)、及信息數(shù)據(jù)傳送到NANDFLASH芯片。參閱圖1,為現(xiàn)有的NANDFLASH控制器結構示意圖,包括總線時序接口11、內部數(shù)據(jù)傳輸通道12、命令數(shù)據(jù)解碼器13、及FLASH時序發(fā)生器14??偩€時序接口11將接收到系統(tǒng)總線傳送的數(shù)據(jù)通過內部數(shù)據(jù)傳輸通道12直接傳送至FLASH時序發(fā)生器14,F(xiàn)LASH時序發(fā)生器14將系統(tǒng)總線時序轉換為NANDFLASH芯片時序,傳送該數(shù)據(jù)到NANDFLASH芯片。上述數(shù)據(jù)包括命令和地址數(shù)據(jù)、及信息數(shù)據(jù),命令數(shù)據(jù)在內部數(shù)據(jù)傳輸通道12傳輸時,需要命令數(shù)據(jù)解碼器13對命令數(shù)據(jù)進行解析,轉換為真實的命令數(shù)據(jù)后再傳送到NANDFLASH芯片。NANDFLASH控制器屬于異步慢速器件,傳輸速率較低,一般不高于40MHz,而系統(tǒng)總線傳輸速率較高,一般可達到133MHz。在數(shù)據(jù)傳輸過程中,系統(tǒng)總線的數(shù)據(jù)往往處于等待傳輸狀態(tài),而命令數(shù)據(jù)在內部數(shù)據(jù)傳輸通道12傳輸中,還需命令數(shù)據(jù)解碼器13對其進行轉換操作,該轉換操作進一步延緩NANDFLASH控制器的傳輸速度,降低NANDFLASH控制器的數(shù)據(jù)傳輸效率。N緒DFLASH芯片因生產廠商不同,命令數(shù)據(jù)的數(shù)值各不相同,即使同一廠商生產的不同型號的NANDFLASH芯片,其命令數(shù)據(jù)的數(shù)值也不盡相同。FLASH控制器中的命令數(shù)據(jù)解碼器13對照其內部存儲的命令轉換信息,轉換不同廠商的NANDFLASH芯片的命令數(shù)據(jù)。但是,命令數(shù)據(jù)解碼器13可存儲的命令轉換信息非常有限,很難把所有廠商的NANDFLASH芯片的命令數(shù)據(jù)都包括,并且MNDFLASH芯片發(fā)展得很快,把命令數(shù)據(jù)做成硬解析的方式無法兼容以后不斷推出的命令數(shù)據(jù)。因此,NANDFLASH控制器的兼容性受到一定的限制,不能靈活地與各種NANDFLASH芯片進行數(shù)據(jù)交互。
實用新型內容本實用新型所要解決的技術問題是提供一種NANDFLASH控制器,該NANDFLASH控制器能夠提高數(shù)據(jù)傳輸效率,并能夠靈活兼容各種NANDFLASH芯片。本實用新型的再一個目的是提供一種NANDFLASH控制器在NANDFLASH芯片讀取數(shù)據(jù)的方法,該方法可降低從讀取數(shù)據(jù)的復雜程度,提高數(shù)據(jù)傳輸效率。本實用新型涉及一種NANDFLASH控制器,包括總線時序接口、FLASH時序發(fā)生器、DMA數(shù)據(jù)傳輸通道,還包括命令和地址數(shù)據(jù)傳輸通道、通道選擇器、數(shù)據(jù)緩沖區(qū)、及邏輯控制器所述命令和地址數(shù)據(jù)傳輸通道,連接所述總線時序接口和所述通道選擇器,用于傳輸命令和地址數(shù)據(jù);所述數(shù)據(jù)緩沖區(qū),用于接收系統(tǒng)總線通過總線時序接口傳送的信息數(shù)據(jù);所述控制寄存器,用于接收系統(tǒng)總線通過總線時序接口配置的工作參數(shù);所述邏輯控制器,用于依據(jù)所述工作參數(shù)在所述數(shù)據(jù)緩沖區(qū)寫入或讀取上述數(shù)據(jù)信息;所述通道選擇器,用于依據(jù)所述工作參數(shù)接通DMA數(shù)據(jù)傳輸通道或命令和地址數(shù)據(jù)傳輸通道,傳送數(shù)據(jù)。優(yōu)選的,還包括BCH編碼/解碼器和BCH結果寄存器所述BCH編碼/解碼器,用于對所述DMA數(shù)據(jù)傳輸通道傳輸?shù)男畔?shù)據(jù)進行編碼、解碼,并將編碼、解碼結果發(fā)送到所述BCH結果寄存器;所述BCH結果寄存器,用于寄存BCH結果數(shù)據(jù)。所述邏輯控制器在所述BCH結果寄存器讀取BCH結果數(shù)據(jù)。優(yōu)選的,,還包括FLASH時序控制寄存器,用于調整所述FLASH時序發(fā)生器的時序。優(yōu)選的,所述數(shù)據(jù)緩沖區(qū)包括多片預設字節(jié)的靜態(tài)隨機存儲器和預置字節(jié)的寄存器。優(yōu)選的,所述預設字節(jié)為512字節(jié),所述預置字節(jié)為64字節(jié)。與現(xiàn)有技術相比,本實用新型具有以下優(yōu)點本實用新型NANDFLASH控制器選用DMA數(shù)據(jù)傳輸通道傳輸信息數(shù)據(jù),選用命令和地址數(shù)據(jù)傳輸通道傳輸命令和地址數(shù)據(jù),將信息數(shù)據(jù)、命令和地址數(shù)據(jù)分開傳輸,避免在傳輸時對命令和地址數(shù)據(jù)進行轉換梯:作,延誤數(shù)據(jù)的傳輸,提高傳輸效率。同時,選取專用的數(shù)據(jù)傳輸通道傳輸命令和地址數(shù)據(jù),不需在數(shù)據(jù)傳輸過程中對命令和地址數(shù)據(jù)進行轉換,避免現(xiàn)有技術中將命令數(shù)據(jù)做成硬解析的方式,而無法兼容以后不斷推出的命令數(shù)據(jù)的缺陷,使NANDFLASH控制器能夠靈活地適應各種NANDFLASH芯片。圖1為現(xiàn)有的NANDFLASH控制器結構示意圖2為本實用新型第一實施例提供的NANDFLASH控制器示意圖3為本實用新型第二實施例提供的NANDFLASH控制器示意圖4為本實用新型第三實施例提供的NANDFLASH控制器示意圖5為本實用新型向數(shù)據(jù)緩沖區(qū)寫入信息數(shù)據(jù)流程圖6為本實用新型提供的NANDFLASH控制器向NANDFLASH芯片寫入凝:據(jù)的方法流程圖7為本實用新型向NANDFLASH芯片寫入數(shù)據(jù)示意圖8為本實用新型提供的NANDFLASH控制器向NANDFLASH芯片讀取數(shù)據(jù)的方法流程圖9為本實用新型在ANDFLASH芯片讀取數(shù)據(jù)示意圖。具體實施方式本實用新型NANDFLASH控制器選用DMA數(shù)據(jù)傳輸通道傳輸信息數(shù)據(jù),選用命令和地址數(shù)據(jù)傳輸通道傳輸命令和地址數(shù)據(jù),將信息數(shù)據(jù)、命令和地址數(shù)據(jù)分開傳輸。同時,本實用新型將NANDFLASH芯片存儲頁格式設置為存儲信息數(shù)據(jù)及其對應的文件系統(tǒng)信息、校驗位的地址順序排列。NANDFLASH控制器在與NANDFLASH芯片進行數(shù)據(jù)交互時,不需發(fā)送特別的操作命令和地址用于改變地址指針,即可順序地寫入或讀取信息數(shù)據(jù)、文件系統(tǒng)信息、校-險位。為使本實用新型的上述目的、特征和優(yōu)點能夠更加明顯易懂,以下結合附圖和具體實施方式對本實用新型作進一步詳細的說明。參照圖2,為本實用新型第一實施例提供的MNDFLASH控制器示意圖,該NANDFLASH控制器包括總線時序接口11、FLASH時序發(fā)生器14、DMA數(shù)據(jù)傳輸通道15、命令和地址數(shù)據(jù)傳輸通道16、通道選擇器17、數(shù)據(jù)緩沖區(qū)18、邏輯控制器19、及控制寄存器23??偩€時序接口ll與系統(tǒng)總線相連接,進行數(shù)據(jù)交互。交互的數(shù)據(jù)主要包括信息數(shù)據(jù)、命令和地址凄l(xiāng)據(jù)。總線時序接口11將系統(tǒng)總線傳輸?shù)拿詈偷刂窋?shù)據(jù)通過命令和地址數(shù)據(jù)傳輸通道16、通道選擇器17、FLASH時序發(fā)生器14寫入MNDFLASH芯片。系統(tǒng)總線通過總線時序接口11將信息數(shù)據(jù)寫入數(shù)據(jù)緩沖區(qū)18。命令和地址數(shù)據(jù)傳輸通道16連接總線時序接口11和通道選擇器17,專用于傳輸命令和地址教:據(jù)。數(shù)據(jù)緩沖區(qū)18存儲總線時序接口11傳送的信息數(shù)據(jù)。邏輯控制器19在數(shù)據(jù)緩沖區(qū)18讀取上述信息數(shù)據(jù),經DMA數(shù)據(jù)傳輸通道15、通道選擇器17、FLASH時序發(fā)生器14寫入MNDFUSH芯片。數(shù)據(jù)緩沖區(qū)18可以528字節(jié)的碼字為單位,用多片512字節(jié)的靜態(tài)隨機存儲器(SRAM)來存儲對應每個碼字的信息數(shù)據(jù),用64字節(jié)的寄存器來存儲文件系統(tǒng)信息和BCH檢驗位。其組成如下表1所示512字節(jié)SRAM0512字節(jié)SRAM1512字節(jié)SRAM2512字節(jié)SRAM364字節(jié)冗余寄存器表l邏輯控制器19生成邏輯控制信號,發(fā)送到通道選擇器17。通道選擇器17根據(jù)上述邏輯控制信號,接通DMA數(shù)據(jù)傳輸通道15或命令和地址數(shù)據(jù)傳輸通道16,將所選傳輸通道的數(shù)據(jù)傳送至FLASH時序發(fā)生器14。FLASH時序發(fā)生器14將接收到的數(shù)據(jù)寫入NANDFLASH芯片。數(shù)據(jù)寄存器接收系統(tǒng)總線通過總線時序接口11配置的工作參數(shù)。本實用新型選用DMA數(shù)據(jù)傳輸通道15傳輸信息數(shù)據(jù),選用命令和地址數(shù)據(jù)傳輸通道16傳輸命令和地址數(shù)據(jù),將信息數(shù)據(jù)、命令和地址數(shù)據(jù)分開傳輸,避免在傳輸時對命令數(shù)據(jù)進行轉換操作,延誤數(shù)據(jù)的傳輸,提高傳輸效率。同時,選取專用的數(shù)據(jù)傳輸通道傳輸命令和地址數(shù)據(jù),不需對命令數(shù)據(jù)進行轉換,使NANDFLASH控制器能夠靈活地適應各種NANDFLASH芯片。本實用新型NANDFLASH控制器還可包括BCH編碼/解碼器和BCH結果寄存器,用于對DMA數(shù)據(jù)傳輸通道15傳送的信息數(shù)據(jù)進行編碼、解碼。參照圖3,為本實用新型第二實施例提供的NANDFLASH控制器示意圖,該NANDFLASH控制器包括總線時序接口11、FLASH時序發(fā)生器14、DMA數(shù)據(jù)傳輸通道15、命令和地址數(shù)據(jù)傳輸通道16、通道選擇器17、數(shù)據(jù)緩沖區(qū)18、邏輯控制器19、BCH編碼/解碼器20、BCH結果寄存器21、及控制寄存器23。在往N緒DFLASH芯片寫入信息數(shù)據(jù)時,BCH編碼/解碼器20對該信息數(shù)據(jù)進行編碼,將編碼結果存儲到BCH結果寄存器21。邏輯控制器19在BCH結果寄存器21讀取該編碼結果,通過DMA數(shù)據(jù)傳輸通道15寫入到MNDFLASH芯片的相應的校驗位。從NANDFLASH芯片讀取數(shù)據(jù)時,BCH編碼/解碼器20對該信息數(shù)據(jù)進行解碼,將解碼的結果保存在BCH結果寄存器21。邏輯控制器19在BCH結果寄存器21讀取BCH結果數(shù)據(jù),并根據(jù)BCH結果數(shù)據(jù)自動糾正錯誤。在編碼時,需要將每個碼字的信息數(shù)據(jù)和其對應的文件系統(tǒng)信息依次送入BCH編碼/解碼器20,才能得到編碼結果;在解碼時,需要將每個碼字的信息數(shù)據(jù)、文件系統(tǒng)信息和檢驗位依次送入BCH編碼/解碼器20才能得到解碼結果。BCH結果寄存器21可保存4個碼字的編碼/解碼結果。4個碼字的編碼結果結構如下表2所示<table>tableseeoriginaldocumentpage7</column></row><table>表24個碼字的解碼碼結果也同樣保存4組值。每組解碼結果包含錯誤個數(shù)、錯誤地址、及錯誤值。如下表3所示;錯誤個數(shù)錯誤地址o錯誤值o錯誤地址l錯誤值l錯誤地址t—錯誤值t表3BCH編碼解碼在BCH編碼/解碼器20的GF(213)域上進行,每組編碼結果包含13*t位的冗余位。t為可糾正的錯誤個數(shù)。錯誤個數(shù)為BCH編碼/解碼器20通過解碼找到的對應碼字中包含的錯誤比特數(shù),每個碼字最多只能有t個錯誤。參照圖4,為本實用新型第三實施例提供的NANDFLASH控制器示意圖,該NANDFLASH控制器包括總線時序接口11、FLASH時序發(fā)生器14、DMA數(shù)據(jù)傳輸通道15、命令和地址數(shù)據(jù)傳輸通道16、通道選擇器17、數(shù)據(jù)緩沖區(qū)18、邏輯控制器19、BCH編碼/解碼器20、BCH結果寄存器21、FLASH時序控制寄存器22、及控制寄存器23。FLASH時序控制寄存器22以系統(tǒng)總線時鐘HCLK的周期為最小時間單位,保存片選使能信號的建立時間、寫/讀信號的有效寬度、片選使能信號的保持時間、命令/地址信號的建立時間、命令/地址信號的保持時間等時間值。不同的MNDFLASH芯片的上述時間值各不相同,為了兼容所有的MNDFLASH芯片,NANDFLASH控制器靈活地配置上述時間值,以更好的兼容不同的NANDFLASH芯片。應用時,根據(jù)各NANDFLASH芯片的具體要求,配置FLASH時序控制寄存器22,FLASH時序控制寄存器22根據(jù)上述時間值調整FLASH時序發(fā)生器14的時序。NANDFLASH控制器在傳輸數(shù)據(jù)時,系統(tǒng)總線首先通過總線時序^^妄口11配置控制寄存器23設定各種工作參數(shù),邏輯控制器19根據(jù)設定的工作參數(shù)控制各模塊間協(xié)同工作,發(fā)出控制信號。通道選擇器17根據(jù)控制信號接通命令和地址數(shù)據(jù)傳輸通道17,傳送命令和地址數(shù)據(jù)到NANDFLASH芯片。在往NANDFLASH芯片寫入數(shù)據(jù)時,系統(tǒng)總線過總線時序接口11將信息數(shù)據(jù)寫入數(shù)據(jù)緩沖區(qū)18,邏輯控制器19從數(shù)據(jù)緩沖區(qū)18讀出數(shù)據(jù)通過DMA數(shù)據(jù)傳輸通道15寫入到NANDFLASH芯片,當傳輸完預設字節(jié)數(shù)據(jù)后,邏輯控制器19生成中斷信息通知系統(tǒng)數(shù)據(jù)傳輸已經結束;從MNDFLASH芯片讀取時,邏輯控制器19發(fā)出控制信號通過DMA數(shù)據(jù)傳輸通道15從MNDFLASH芯片中讀取數(shù)據(jù)存儲至數(shù)據(jù)緩沖區(qū)18,當傳輸完預設字節(jié)數(shù)據(jù)后,邏輯控制器19生成中斷信息通知系統(tǒng)數(shù)據(jù)傳輸已經結束,系統(tǒng)總線再通過總線時序接口11從數(shù)據(jù)緩沖區(qū)18中讀取數(shù)據(jù)。因數(shù)據(jù)緩沖區(qū)18的多片SRAM和冗余積存器都是系統(tǒng)總線可尋址的,并且在地址上是連續(xù)的。多片SRAM的結構使對數(shù)據(jù)緩沖區(qū)18的寫入或讀取數(shù)據(jù)操作可以以碼字為單位,進行兵乓方式的操作。參閱圖5,為本實用新型向數(shù)據(jù)緩沖區(qū)18寫入信息數(shù)據(jù)流程圖,具體步驟如下步驟S501、系統(tǒng)總線通過總線時序接口ll將信息數(shù)據(jù)寫入數(shù)據(jù)緩沖區(qū)18的某一部分存儲地址。如,系統(tǒng)總線將信息數(shù)據(jù)寫入表1中SRAMO和SRAM1存儲地址,并把相應的文件系統(tǒng)信息寫入表l中的冗余寄存器的對應地址。步驟S502、系統(tǒng)總線通過配置控制寄存器23啟動邏輯控制器19將數(shù)據(jù)緩沖區(qū)18的上述部分存儲地址存儲的信息數(shù)據(jù)、文件系統(tǒng)信息和BCH結果寄存器21中編碼得到的檢驗位寫入NANDFLASH芯片,完成寫入后,生成傳輸完成的中斷。如,將表l中SRAMO和SRAMl存儲地址存儲的信息數(shù)據(jù)和對應的文件系統(tǒng)信息、檢驗位寫入NANDFLASH芯片。步驟S503、系統(tǒng)總線通過總線時序接口ll將信息數(shù)據(jù)寫入數(shù)據(jù)緩沖區(qū)18的另一部分存儲地址。如,系統(tǒng)總線將信息數(shù)據(jù)寫入表1中SRAM2和SRAM3存儲地址。因為系統(tǒng)總線數(shù)據(jù)傳輸速率比較快,步驟S503要先于步驟S502完成。步驟S504、在S502傳輸完成后,系統(tǒng)總線通過配置控制寄存器23啟動將數(shù)據(jù)緩沖區(qū)18的上述另一部分存儲地址存儲的信息數(shù)據(jù)、文件系統(tǒng)信息和BCH結果寄存器21中編碼得到的4企—險位寫入NANDFLASH芯片,完成寫入后,生成傳輸完成的中斷,并轉到步驟S501。如,將表1中SRAM2和SRAM3存儲地址存儲的信息數(shù)據(jù)和對應的文件系統(tǒng)信息、4企驗位寫入NANDFLASH芯片。此種兵乓操作的方式以BCH碼字為單位進行數(shù)據(jù)傳輸,通過循環(huán)多次的配置控制寄存器23,加快數(shù)據(jù)的傳輸效率。并且乒乓操作的方式可較小對數(shù)據(jù)緩沖區(qū)18存儲容量的要求,減小NANDFLASH控制器的面積,降低芯片成本。以上為本實用新型NANDFLASH控制器的各實施例,下面詳細介紹本實用新型NANDFLASH芯片數(shù)據(jù)存儲格式。為方便數(shù)據(jù)的寫入和讀取,本實用新型將NANDFLASH芯片存儲頁格式設置為存儲信息數(shù)據(jù)及其對應的文件系統(tǒng)信息、4交驗位的地址順序排列。如下表4,為本實用新型NANDFLASH芯片2K存儲頁的格式表<table>tableseeoriginaldocumentpage10</column></row><table>表4在表4中,每BCH碼字的信息凄t據(jù)、文件系統(tǒng)信息、校驗位順序排列。在NANDFLASH芯片寫入或讀取數(shù)據(jù)時,不需要發(fā)送特別的操作命令和地址用于改變地址指針,只需順序地寫入或讀取信息數(shù)據(jù)、文件系統(tǒng)信息、校驗位,便于BCH編/解碼器20進行編碼、解碼,極大的簡化了在NANDFLASH芯片寫入或讀取數(shù)據(jù)的復雜程度,進一步提高數(shù)據(jù)傳輸效率?;谏鲜鯪ANDFLASH芯片存儲頁格式,本實用新型提供NANDFLASH控制器與NANDFLASH芯片的數(shù)據(jù)交互方法,該方法可降低從寫入、讀取數(shù)據(jù)的復雜程度,提高數(shù)據(jù)傳輸效率。下面以NANDFLASH控制器向NANDFLASH芯片寫入1BCH碼字數(shù)據(jù),在NANDFLASH芯片讀取1BCH碼字數(shù)據(jù)為例,進行說明。參閱圖6,為本實用新型提供的NANDFLASH控制器向NANDFLASH芯片寫入數(shù)據(jù)的方法流程圖,具體步驟如下。步驟S601、傳送命令和地址數(shù)據(jù)到NANDFLASH芯片。系統(tǒng)總線通過命令和地址數(shù)據(jù)傳輸通道16傳送命令和地址數(shù)據(jù)至NANDFLASH芯片。步驟S602、傳送數(shù)據(jù)信息到NANDFLASH芯片存儲頁的相應地址,對該數(shù)據(jù)信息進行編碼。系統(tǒng)總線配置控制寄存器21的各項參數(shù),邏輯控制器20通過DMA數(shù)據(jù)傳輸通道15讀取數(shù)據(jù)緩沖區(qū)的數(shù)據(jù)信息,存儲至NANDFLASH芯片存儲頁相應地址,同時BCH編碼/解碼器20對該數(shù)據(jù)信息進行編碼。參閱圖7,圖7為本實用新型NANDFLASH芯片寫入數(shù)據(jù)示意圖。包括:凄史據(jù)緩沖區(qū)寄存器71、MNDFLASH芯片存儲頁72、BCH結果寄存器n。將數(shù)據(jù)緩沖區(qū)寄存器71內的信息數(shù)據(jù)O地址內的信息數(shù)據(jù)傳送到MNDFLASH芯片存儲頁72中信息數(shù)據(jù)0地址內。同時將該信息數(shù)據(jù)發(fā)送到BCH編碼/解碼器20進行編碼。步驟S603、將上述數(shù)據(jù)信息對應的文件系統(tǒng)信息傳送到NANDFLASH芯片中上述地址的下一相臨地址,同時對該文件系統(tǒng)信息進行編碼;參見圖7,傳送數(shù)據(jù)緩沖區(qū)中冗余寄存器71內的文件系統(tǒng)信息O地址內的數(shù)據(jù)到NANDFLASH芯片存儲頁72內文件系統(tǒng)信息0地址內。由圖7可見,NANDFLASH芯片存儲頁72中,信息數(shù)據(jù)Q地址與文件系統(tǒng)信息Q地址相鄰,無需改變NANDFLASH芯片中的存儲地址,自動將文件系統(tǒng)信息存^f渚到該地址。同時,將該文件系統(tǒng)信息發(fā)送到BCH編碼/解碼器20進行編碼,將編碼結果存儲到BCH結果寄存器21的碼字Q編碼結果地址中。步驟S604、將上述編碼得到的結果數(shù)據(jù)繼續(xù)存儲到NANDFLASH芯片中上述下一相臨地址的下一相臨地址,完成一個BCH碼字存儲至NANDFLASH芯片過程。循環(huán)重復上述步驟,將數(shù)據(jù)順序寫入NANDFLASH芯片。參見圖7,將BCH結果寄存器21內碼字0編碼結果中的結果數(shù)據(jù)直接傳送至NANDFLASH芯片存儲頁72的校驗位0地址內。由圖7可見,校驗位0地址為文件系統(tǒng)信息Q地址的下一相鄰地址,無需改變NANDFLASH芯片中的存儲地址,自動將該編碼結果存儲到該地址。由上述步驟可知,在NANDFLASH芯片寫入數(shù)據(jù)時,無需改變NANDFLASH芯片中的存儲地址,即可順序地寫入信息數(shù)據(jù)、文件系統(tǒng)信息、及校驗位,極大的簡化了在NANDFLASH芯片寫入數(shù)據(jù)的復雜程度,進一步提高數(shù)據(jù)傳輸效率。參閱圖8,為本實用新型提供的在NANDFLASH控制器在NANDFLASH芯片讀取數(shù)據(jù)的方法流程圖,具體步驟如下。步驟S801、傳送命令和地址數(shù)據(jù)到NANDFLASH芯片。系統(tǒng)總線過命令和地址數(shù)據(jù)傳輸通道16傳送命令和地址數(shù)據(jù)至NANDFLASH芯片。步驟S802、系統(tǒng)總線配置控制寄存器21的各項參數(shù),啟動邏輯控制器19,通過DMA數(shù)據(jù)傳輸通道15讀取NANDFLASH芯片存儲頁相應地址的數(shù)據(jù)信息,存儲至數(shù)據(jù)緩沖區(qū)18,同時BCH解碼器對該數(shù)據(jù)信息進行解碼。圖9為本實用新型ANDFLASH芯片讀取數(shù)據(jù)示意圖。包括數(shù)據(jù)緩沖區(qū)寄存器71、NANDFLASH芯片存儲頁72、BCH結果寄存器21。在NANDFLASH芯片存儲頁72的信息數(shù)據(jù)O地址內讀取信息數(shù)據(jù),并發(fā)送到數(shù)據(jù)緩沖區(qū)寄存器71的信息數(shù)據(jù)0地址內。同時將該信息數(shù)據(jù)發(fā)送到BCH編碼/解碼器20進行解碼。步驟S803、在NANDFLASH芯片存儲頁上述地址的下一相臨地址讀取文件系統(tǒng)信息,存儲至數(shù)據(jù)緩沖區(qū)18,同時BCH編碼/解碼器20對該文件系統(tǒng)信息進行解碼。參見圖9,NANDFLASH芯片的地址指針順序移動到下一相鄰位置,接著讀取文件系統(tǒng)信息Q地址的數(shù)據(jù),傳送至數(shù)據(jù)緩沖區(qū)寄存器71的文件系統(tǒng)信息O地址內。同時,將該文件系統(tǒng)信息發(fā)送到BCH編碼/解碼器20進行解碼。步驟S804、在NANDFLASH芯片存儲頁上述下一相臨地址的下一相臨地址讀取校驗位信息,存儲至數(shù)據(jù)緩沖區(qū)18,同時BCH編碼/解碼器20對該校驗位進行解碼。參見圖9,NANDFLASH芯片的地址指針再順序移動到下一相鄰位置,讀取校驗位0地址的數(shù)據(jù),傳送至數(shù)據(jù)緩沖區(qū)寄存器71的校驗位0地址內。同時,將該校驗位發(fā)送到BCH編碼/解碼器20進行解碼。步驟S805、邏輯控制器19獲取上述解碼得到的結果數(shù)據(jù),并根據(jù)該結果數(shù)據(jù)糾正數(shù)據(jù)緩沖區(qū)18中上述數(shù)據(jù)信息、文件系統(tǒng)信息、及校驗位中的數(shù)據(jù)錯誤。循環(huán)重復上述步驟,在NANDFLASH芯片內順序讀取數(shù)據(jù)。參見圖9,在BCH結果寄存器21的碼字Q解碼結果地址中讀取結果數(shù)據(jù),根據(jù)該結果數(shù)據(jù),自動糾正碼字中出現(xiàn)的錯誤。如上述數(shù)據(jù)信息、文件系統(tǒng)信息、及校驗位信息中出現(xiàn)的錯誤個數(shù)大于可糾正個數(shù),生成錯誤信息。在NANDFLASH芯片讀取數(shù)據(jù)時,無需改變MNDFLASH芯片中的存儲地址,即可順序地讀取信息數(shù)據(jù)、文件系統(tǒng)信息、校驗位,極大的簡化了在NANDFLASH芯片讀取數(shù)據(jù)的復雜程度,進一步提高數(shù)據(jù)傳輸效率。以上是對本實用新型所提供的一種NANDFLASH控制器及其與NANDFLASH芯片數(shù)據(jù)交互方法,進行了詳細介紹,本文中應用了具體個例對本實用新型的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本實用新型的方法及其核心思想;同時,對于本領域的一般技術人員,依據(jù)本實用新型的思想,在具體實施方式及應用范圍上均會有改變之處,綜上所述,本說明書內容不應理解為對本實用新型的限制。權利要求1、一種NANDFLASH控制器,包括總線時序接口、FLASH時序發(fā)生器、DMA數(shù)據(jù)傳輸通道,其特征在于,還包括命令和地址數(shù)據(jù)傳輸通道、通道選擇器、數(shù)據(jù)緩沖區(qū)、及邏輯控制器所述命令和地址數(shù)據(jù)傳輸通道,連接所述總線時序接口和所述通道選擇器,用于傳輸命令和地址數(shù)據(jù);所述數(shù)據(jù)緩沖區(qū),用于接收系統(tǒng)總線通過總線時序接口傳送的信息數(shù)據(jù);所述控制寄存器,用于接收系統(tǒng)總線通過總線時序接口配置的工作參數(shù);所述邏輯控制器,用于依據(jù)所述工作參數(shù)在所述數(shù)據(jù)緩沖區(qū)寫入或讀取上述數(shù)據(jù)信息;所述通道選擇器,用于依據(jù)所述工作參數(shù)接通DMA數(shù)據(jù)傳輸通道或命令和地址數(shù)據(jù)傳輸通道,傳送數(shù)據(jù)。2、如權利要求1所述的NANDFLASH控制器,其特征在于,還包括BCH編碼/解碼器和BCH結果寄存器所述BCH編碼/解碼器,用于對所述DMA數(shù)據(jù)傳輸通道傳輸?shù)男畔?shù)據(jù)進行編碼、解碼,并將編碼、解碼結果發(fā)送到所述BCH結果寄存器;所述BCH結果寄存器,用于寄存BCH結果數(shù)據(jù)。所述邏輯控制器在所述BCH結果寄存器讀取BCH結果數(shù)據(jù)。3、如權利要求1所述的NANDFLASH控制器,其特征在于,還包括FLASH時序控制寄存器,用于調整所述FLASH時序發(fā)生器的時序。4、如權利要求l、2或3所述的NANDFLASH控制器,其特征在于,所述數(shù)據(jù)緩沖區(qū)包括多片預設字節(jié)的靜態(tài)隨機存儲器和預置字節(jié)的寄存器。5、如權利要求4所述的NANDFLASH控制器,其特征在于,所述預設字節(jié)為512字節(jié),所述預置字節(jié)為64字節(jié)。專利摘要本實用新型涉及一種NANDFLASH控制器,包括命令和地址數(shù)據(jù)傳輸通道,連接所述總線時序接口和所述通道選擇器,用于傳輸命令和地址數(shù)據(jù);數(shù)據(jù)緩沖區(qū),用于接收系統(tǒng)總線通過述總線時序接口傳送的信息數(shù)據(jù);控制寄存器,用于接收系統(tǒng)總線通過述總線時序接口配置的工作參數(shù);邏輯控制器,用于依據(jù)工作參數(shù)在數(shù)據(jù)緩沖區(qū)寫入或讀取數(shù)據(jù)信息;通道選擇器,用于依據(jù)工作參數(shù)接通DMA數(shù)據(jù)傳輸通道或命令和地址數(shù)據(jù)傳輸通道,將傳輸通道的數(shù)據(jù)傳送至FLASH時序發(fā)生器。同時,本實用新型還公開NANDFLASH控制器與NANDFLASH芯片數(shù)據(jù)交互方法。本實用新型能夠提高數(shù)據(jù)傳輸效率,并能夠靈活兼容各種NANDFLASH芯片。文檔編號G11C16/06GK201134270SQ20072017832公開日2008年10月15日申請日期2007年10月8日優(yōu)先權日2007年10月8日發(fā)明者闕金珍申請人:福州瑞芯微電子有限公司