專利名稱:Nandflash芯片組存儲(chǔ)控制器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及Nandflash (Nand型閃存)存儲(chǔ)設(shè)備,尤其涉及該存儲(chǔ)設(shè)備中用于控制 多個(gè)Nandflash芯片構(gòu)成的Nandflash芯片組(簡(jiǎn)稱"Flash組")讀寫操作的控制器,這 種控制器可以提高系統(tǒng)的存儲(chǔ)速度。
背景技術(shù):
當(dāng)前隨著集成電路制造技術(shù)的發(fā)展,移動(dòng)存儲(chǔ)設(shè)備發(fā)展迅速。如何實(shí)現(xiàn)高速度和 大容量存儲(chǔ)一直是移動(dòng)存儲(chǔ)領(lǐng)域技術(shù)人員追求的兩大目標(biāo)。Nandflash存儲(chǔ)設(shè)備(如U盤 或flash存儲(chǔ)器)作為移動(dòng)存儲(chǔ)設(shè)備的典型代表之一主要由Nandflash芯片、存儲(chǔ)控制器 和接口幾部分組成,其中Nandflash芯片是存儲(chǔ)介質(zhì),存儲(chǔ)控制器是存儲(chǔ)介質(zhì)讀寫操作的 控制單元,接口 (如USB2.0接口 )用于連接主設(shè)備。 隨著工藝及技術(shù)的改進(jìn),Nandflash生產(chǎn)商已經(jīng)可以提供速度更快、容量更大的 Nandflash芯片。但是就目前而言Nandflash芯片本身的讀寫速度與USB2. 0接口傳輸 速度相比還存在一段距離,因此對(duì)Nandflash芯片的操作速度仍然是進(jìn)一步提高存儲(chǔ)速 度的瓶頸所在。對(duì)Nandflash芯片的操作速度不僅取決于Nandflash芯片本身的讀寫速 度,而且與存儲(chǔ)控制器的設(shè)計(jì)有關(guān),特別是當(dāng)存儲(chǔ)控制器外掛Flash組時(shí),由于存儲(chǔ)介質(zhì) 由多個(gè)Nandflash芯片組成,而每個(gè)Nandflash芯片在操作上具有一定的獨(dú)立性,比如每 個(gè)Nandflash芯片讀寫操作完成后芯片本身都會(huì)產(chǎn)生一個(gè)中斷信號(hào),因此存儲(chǔ)控制器在操 作控制上如何協(xié)調(diào)和處理多個(gè)Nandflash芯片,對(duì)提高系統(tǒng)的存儲(chǔ)速度具有重要的意義。 目前現(xiàn)有技術(shù)中,存儲(chǔ)控制器通常由CPU、內(nèi)部總線和各種功能模塊組成,其中與本發(fā)明有 關(guān)的主要是CPU、內(nèi)部總線和中斷控制器。工作中,每當(dāng)一個(gè)Nandflash芯片完成讀寫操 作后都會(huì)發(fā)出一個(gè)中斷給系統(tǒng)CPU,使CPU執(zhí)行中斷程序。如果一次讀寫操作需要對(duì)多個(gè) Nandflash芯片進(jìn)行則系統(tǒng)CPU會(huì)收到多個(gè)中斷,這樣必然會(huì)影響系統(tǒng)的存儲(chǔ)速度,因此如 何在外掛多個(gè)Nandflash芯片的前提下,通過改變對(duì)Nandflash芯片的控制方法來提高系 統(tǒng)的存儲(chǔ)速度,是本發(fā)明研究的問題。
發(fā)明內(nèi)容
本發(fā)明提供一種Nandflash芯片組存儲(chǔ)控制器,目的旨在解決當(dāng)存儲(chǔ)控制器外掛 多個(gè)Nandflash芯片時(shí),由于每個(gè)Nandflash芯片的中斷信號(hào)相對(duì)獨(dú)立,影響系統(tǒng)存儲(chǔ)速度 的問題,從而進(jìn)一步提高系統(tǒng)的存儲(chǔ)速度。 為達(dá)到上述目的,本發(fā)明采用的技術(shù)方案是一種Nandflash芯片組存儲(chǔ)控制器, 包括 CPU,用于執(zhí)行存儲(chǔ)于內(nèi)部存儲(chǔ)器上的固件指令,完成對(duì)Nandflash芯片組的控制 和管理; 內(nèi)部總線,用于傳送數(shù)據(jù)信息、地址信息和控制信息; 中斷控制器,用于提供中斷信號(hào)給CPU,使CPU執(zhí)行中斷程序,中斷控制器與CPU經(jīng)內(nèi)部總線雙向連接; 其創(chuàng)新在于設(shè)有一個(gè)可配置Nandflash芯片數(shù)量和類型,并且支持Nandflash芯 片組查詢轉(zhuǎn)中斷模式的控制模塊,所述控制模塊由配置寄存器、讀信號(hào)發(fā)生器、狀態(tài)信號(hào)接 收器和中斷信號(hào)生成器這四個(gè)子模塊構(gòu)成,其中 配置寄存器具有第一控制段、第二控制段、第一控制位和第二控制位,第一控制段 用于配置Nandflash芯片控制信號(hào)的時(shí)序參數(shù);第二控制段用于配置Nandflash芯片的數(shù) 據(jù)位寬和Nandflash芯片的數(shù)量;第一控制位用于使能對(duì)當(dāng)前Nandflash芯片操作完成狀 態(tài)的查詢;第二控制位用于使能中斷信號(hào)生成器的中斷信號(hào)生成;配置寄存器與CPU經(jīng)內(nèi) 部總線雙向連接; 讀信號(hào)發(fā)生器用于生成Nandflash芯片的讀信號(hào),該讀信號(hào)發(fā)生器具有計(jì)數(shù)器和 第一比較器,計(jì)數(shù)器用來記錄系統(tǒng)時(shí)鐘周期數(shù),該計(jì)數(shù)器設(shè)有使能端,該使能端由配置寄存 器中第一控制位控制;第一比較器用來比較計(jì)數(shù)器的值與配置寄存器中第一控制段的值, 當(dāng)計(jì)數(shù)器的值與配置寄存器中第一控制段的值相等時(shí),第一比較器的輸出信號(hào)使讀信號(hào)的 電平翻轉(zhuǎn),利用這個(gè)計(jì)數(shù)器的值和系統(tǒng)時(shí)鐘頻率通過第一控制段來配置讀信號(hào)的寬度,該 讀信號(hào)輪流查詢Nandflash芯片組中每個(gè)Nandflash芯片完成當(dāng)前操作的狀態(tài)信息;
狀態(tài)信號(hào)接收器用于接收和判斷查詢Nandflash芯片完成當(dāng)前操作的狀態(tài)信息, 狀態(tài)信號(hào)接收器具有第二比較器,第二比較器的一個(gè)輸入端接收查詢Nandflash芯片完成 當(dāng)前操作的狀態(tài)信息,另一個(gè)輸入端為Nandflash芯片已完成當(dāng)前操作的設(shè)定值,第二比 較器將接收到的查詢狀態(tài)值與設(shè)定值進(jìn)行比較來判斷對(duì)Nandflash芯片的當(dāng)前操作是否 完成,當(dāng)查詢狀態(tài)值與設(shè)定值相等時(shí)第二比較器輸出已完成當(dāng)前操作的信號(hào),并建立對(duì)應(yīng) Nandflash芯片已完成當(dāng)前操作的標(biāo)志位; 中斷信號(hào)生成器用于生成最終的中斷信號(hào),中斷信號(hào)生成器具有譯碼器、與門和 二選一選擇器,譯碼器對(duì)配置寄存器中的第二控制段進(jìn)行譯碼,獲得當(dāng)前使用的Nandflash 芯片數(shù)量及配置信息,與門對(duì)當(dāng)前使用的各Nandflash芯片的標(biāo)志位進(jìn)行邏輯與運(yùn)算,當(dāng) 各Nandflash芯片均已完成當(dāng)前操作時(shí)與門輸出查詢完成標(biāo)志信號(hào),該標(biāo)志信號(hào)連接二選 一選擇器的一個(gè)輸入端,另一個(gè)輸入端接地,二選一選擇器的選擇控制端由配置寄存器中 的第二控制位控制,當(dāng)?shù)诙刂莆缓蜆?biāo)志信號(hào)有效時(shí)二選一選擇器輸出最終的中斷信號(hào), 該中斷信號(hào)連接中斷控制器的輸入端。
上述技術(shù)方案中的有關(guān)內(nèi)容解釋如下 1、上述方案中,所述"Nandflash芯片組存儲(chǔ)控制器"采用"包括"這一開放性表述 是因?yàn)榇鎯?chǔ)控制器中除了含有上述技術(shù)方案記載的技術(shù)特征而外,還包含本領(lǐng)域技術(shù)人員 知道的其它模塊,比如DMA (Direct MemoryAccess,直接內(nèi)存存取),ECC數(shù)據(jù)糾錯(cuò)控制器, FIFO數(shù)據(jù)緩存器等。而這些模塊由于與本發(fā)明實(shí)質(zhì)內(nèi)容不直接相關(guān),所以沒有記載這些模 塊。 2、上述方案中,所述"控制段"是指寄存器中由若干個(gè)控制位組成的一段控制位。 所述"控制位"是指寄存器中的一個(gè)位。 3、上述方案中,所述"Nandflash芯片組"由多個(gè)Nandflash芯片組成(比如二到 八片Nandflash芯片,甚至更多),Nandflash芯片組是通過外部總線存儲(chǔ)控制器連接。
4、上述方案中,對(duì)Nandflash芯片是否完成當(dāng)前操作的狀態(tài)查詢是利用現(xiàn)有
4Nandflash芯片的固有特性實(shí)現(xiàn)的。對(duì)現(xiàn)有Nandflash芯片來說有兩種方式可以知道該芯 片否完成當(dāng)前操作,第一種是Nandflash芯片在完成當(dāng)前操作后自身產(chǎn)生一個(gè)中斷信號(hào), 表明當(dāng)前操作已完成;第二種是通過讀取Nandflash芯片中相應(yīng)狀態(tài)字節(jié)的值可以知道該 芯片否完成當(dāng)前操作,因?yàn)閷?duì)確定的Nandflash芯片來說,對(duì)應(yīng)當(dāng)前操作已完成的狀態(tài)值 是已知的固定值,生產(chǎn)商可以提供。第二種方式比第一種方式更快。 本發(fā)明工作原理是根據(jù)外掛Nandflash芯片組的類型和個(gè)數(shù),CPU通過內(nèi)部總 線對(duì)配置寄存器進(jìn)行配置,讀信號(hào)發(fā)生器根據(jù)配置寄存器中第一控制段的參數(shù),產(chǎn)生符 合Flash時(shí)序的讀信號(hào),可以獨(dú)立的對(duì)Nandflash芯片組中的每個(gè)Nandflash芯片輪流 進(jìn)行狀態(tài)查詢。狀態(tài)信號(hào)接收器將接收到的Nandflash芯片的狀態(tài)進(jìn)行分析后,判斷當(dāng) 前Nandflash芯片的操作是否完成。中斷信號(hào)生成器根據(jù)狀態(tài)信號(hào)接收器的判斷結(jié)果以 及配置寄存器中第二控制段的配置參數(shù)來生成所有Nandflash芯片完成標(biāo)志位以及最終 的中斷信號(hào)。本發(fā)明將多個(gè)Nandflash芯片在操作中對(duì)應(yīng)產(chǎn)生的多個(gè)中斷,通過狀態(tài)查 詢方式轉(zhuǎn)變?yōu)樽罱K的一個(gè)中斷信號(hào),由于狀態(tài)查詢過程可以由存儲(chǔ)控制器完全獨(dú)立的對(duì) Nandflash芯片組進(jìn)行操作,不占用內(nèi)部總線,可以有效的提高系統(tǒng)的傳輸速度,同時(shí)由于 只產(chǎn)生一個(gè)Nandflash芯片組的中斷信號(hào),減少了中斷次數(shù),可以簡(jiǎn)化系統(tǒng)的流程控制以 及提高存儲(chǔ)速度,外掛Nandflash芯片越多,系統(tǒng)性能提升的效果越明顯。本發(fā)明有效的克 服了當(dāng)前的技術(shù)不足,提供了一種有效提高存儲(chǔ)速度而且切實(shí)可行的方案。
附圖1為本發(fā)明原理框圖; 附圖2為本發(fā)明配置寄存器示意圖; 附圖3為本發(fā)明系統(tǒng)操作時(shí)序圖。 以上附圖中,10、控制模塊;11、CPU ;12、中斷控制器;13、Nandflash芯片組;14、內(nèi) 部總線;15、外部總線;101、配置寄存器;102、讀信號(hào)發(fā)生器;103、狀態(tài)信號(hào)接收器;104、中 斷信號(hào)生成器;201、第一控制段;202、第二控制段;203、第一控制位;204、第二控制位。
具體實(shí)施例方式
下面結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步描述
實(shí)施例一種Nandflash芯片組存儲(chǔ)控制器
如圖1所示,該存儲(chǔ)控制器包括以下內(nèi)容 (l)CPU ll,用于執(zhí)行存儲(chǔ)于內(nèi)部存儲(chǔ)器上的固件指令,完成對(duì)Nandflash芯片組 13的控制和管理。 (2)內(nèi)部總線14,用于傳送數(shù)據(jù)信息、地址信息和控制信息。 (3)中斷控制器12,用于提供中斷信號(hào)給CPU ll,使CPU ll執(zhí)行中斷程序,中斷控 制器12與CPU 11經(jīng)內(nèi)部總線14雙向連接。 本發(fā)明的創(chuàng)新在于所述存儲(chǔ)控制器內(nèi)設(shè)有一個(gè)可配置Nandflash芯片數(shù)量和類 型,并且支持Nandflash芯片組13查詢轉(zhuǎn)中斷模式的控制模塊10,所述控制模塊10由配置 寄存器101、讀信號(hào)發(fā)生器102、狀態(tài)信號(hào)接收器103和中斷信號(hào)生成器104這四個(gè)子模塊 構(gòu)成,其中
5
如圖2所示,配置寄存器101具有第一控制段201、第二控制段202、第一控制位 203和第二控制位204,第一控制段201用于配置Nandflash芯片控制信號(hào)的時(shí)序參數(shù);第 二控制段202用于配置Nandflash芯片的數(shù)據(jù)位寬和Nandflash芯片的數(shù)量;第一控制位 203用于使能對(duì)當(dāng)前Nandflash芯片操作完成狀態(tài)的查詢;第二控制位204用于使能中斷 信號(hào)生成器104的中斷信號(hào)生成;配置寄存器101與CPU 11經(jīng)內(nèi)部總線14雙向連接。
讀信號(hào)發(fā)生器102用于生成Nandflash芯片的讀信號(hào),該讀信號(hào)發(fā)生器102具有 計(jì)數(shù)器和第一比較器,計(jì)數(shù)器用來記錄系統(tǒng)時(shí)鐘周期數(shù),該計(jì)數(shù)器設(shè)有使能端,該使能端由 配置寄存器101中第一控制位203控制;第一比較器用來比較計(jì)數(shù)器的值與配置寄存器 101中第一控制段201的值,當(dāng)計(jì)數(shù)器的值與配置寄存器101中第一控制段201的值相等 時(shí),第一比較器的輸出信號(hào)使讀信號(hào)的電平翻轉(zhuǎn),利用這個(gè)計(jì)數(shù)器的值和系統(tǒng)時(shí)鐘頻率通 過第一控制段201來配置讀信號(hào)的寬度,該讀信號(hào)輪流查詢Nandflash芯片組13中每個(gè) Nandflash芯片完成當(dāng)前操作的狀態(tài)信息。 狀態(tài)信號(hào)接收器103用于接收和判斷查詢Nandflash芯片完成當(dāng)前操作的狀態(tài)信 息,狀態(tài)信號(hào)接收器103具有第二比較器,第二比較器的一個(gè)輸入端接收查詢Nandflash芯 片完成當(dāng)前操作的狀態(tài)信息,另一個(gè)輸入端為Nandflash芯片已完成當(dāng)前操作的設(shè)定值, 第二比較器將接收到的查詢狀態(tài)值與設(shè)定值進(jìn)行比較來判斷對(duì)Nandflash芯片的當(dāng)前操 作是否完成,當(dāng)查詢狀態(tài)值與設(shè)定值相等時(shí)第二比較器輸出已完成當(dāng)前操作的信號(hào),并建 立對(duì)應(yīng)Nandflash芯片已完成當(dāng)前操作的標(biāo)志位。 中斷信號(hào)生成器104用于生成最終的中斷信號(hào),中斷信號(hào)生成器104具有譯碼器、 與門和二選一選擇器,譯碼器對(duì)配置寄存器101中的第二控制段202進(jìn)行譯碼,獲得當(dāng)前使 用的Nandflash芯片數(shù)量及配置信息,與門對(duì)當(dāng)前使用的各Nandflash芯片的標(biāo)志位進(jìn)行 邏輯與運(yùn)算,當(dāng)各Nandflash芯片均已完成當(dāng)前操作時(shí)與門輸出查詢完成標(biāo)志信號(hào),該標(biāo) 志信號(hào)連接二選一選擇器的一個(gè)輸入端,另一個(gè)輸入端接地,二選一選擇器的選擇控制端 由配置寄存器101中的第二控制位204控制,當(dāng)?shù)诙刂莆?04和標(biāo)志信號(hào)有效時(shí)二選一 選擇器輸出最終的中斷信號(hào),該中斷信號(hào)連接中斷控制器12的輸入端。
本發(fā)明工作過程如下 a)如果系統(tǒng)需要對(duì)Nandflash芯片存儲(chǔ)或讀取數(shù)據(jù),程序根據(jù)外掛Nandflash芯 片的數(shù)量及類型配置配置寄存器101。 b)使能控制模塊10的查詢使能位,即根據(jù)配置寄存器101中第一控制位203的值 對(duì)讀信號(hào)發(fā)生器102中計(jì)數(shù)器的使能端進(jìn)行使能,啟動(dòng)對(duì)Nandflash芯片組13的查詢轉(zhuǎn)中 斷模式。系統(tǒng)程序繼續(xù)進(jìn)行其它操作,控制模塊10獨(dú)立對(duì)Nandflash組13進(jìn)行控制,此時(shí) 系統(tǒng)和控制模塊10并行操作,直到中斷信號(hào)生成器104有中斷信號(hào)生成。
c)讀信號(hào)發(fā)生器102根據(jù)配置寄存器101中第一控制段201的值,利用計(jì)數(shù)器、系 統(tǒng)時(shí)鐘頻率和第一比較器生成Nandflash芯片的讀信號(hào),該讀信號(hào)輪流查詢Nandflash芯 片組13中每個(gè)Nandflash芯片完成當(dāng)前操作的狀態(tài)信息。 d)查詢值直接輸入到狀態(tài)信號(hào)接收器103,狀態(tài)信號(hào)接收器103對(duì)所有Nandflash 芯片的操作完成狀態(tài)進(jìn)行判斷,直到Nandflash芯片組13內(nèi)最后一個(gè)Nandflash芯片操作 完成,當(dāng)一個(gè)Nandflash芯片操作完成后建立對(duì)應(yīng)該Nandflash芯片已完成當(dāng)前操作的標(biāo) 志位。
e)中斷信號(hào)生成器104根據(jù)狀態(tài)信號(hào)接收器103的判斷結(jié)果以及配置寄存器101 中第二控制段202的配置參數(shù)來生成所有Nandf lash芯片完成操作的標(biāo)志信號(hào)以及最終的 中斷信號(hào)。 f)中斷信號(hào)送到中斷控制器12,中斷控制器12打斷程序執(zhí)行,系統(tǒng)程序進(jìn)入中斷 服務(wù)程序,不使能控制模塊10的查詢使能位,停止查詢Nandf lash芯片組13。以此循環(huán)往復(fù)。 下面結(jié)合圖1、圖2和圖3對(duì)本實(shí)施例加以描述 假設(shè)本實(shí)施例系統(tǒng)外掛兩塊8位Nandf lash芯片,根據(jù)Nandf lash供應(yīng)商提供的 產(chǎn)品說明書,可以得到Nandf lash芯片詳細(xì)的讀寫參數(shù)。 首先,根據(jù)Nandflash芯片讀寫參數(shù)配置第一控制段201,假設(shè)配置值是 Rats [15:0] = 0000, 0000, 0000, 1000,因?yàn)樾枰鈷靸蓧K8位Nandf lash芯片,因此配置第 二控制段202中的Mode[l:O] = 10。從圖3中的配置寄存器地址、讀寫控制信號(hào)以及配置 參數(shù)信號(hào)線可以看到較為詳細(xì)的時(shí)序信息,在第二個(gè)時(shí)鐘周期完成需要的參數(shù)配置。
然后,配置第二控制位204中的IE = l,用于允許中斷信號(hào)的生成,接著配置第一 控制位203中的Poll_en = 1 (注Poll_en可以和上一步的配置參數(shù)一起配置,圖3所描 述的就是這種情況)。配置都完成后,圖1中的讀信號(hào)發(fā)生器102產(chǎn)生符合要求的讀信號(hào) 來查詢Nandf lash芯片組13是否完成當(dāng)前操作的狀態(tài)信息,從圖3中可以看出在第三個(gè)時(shí) 鐘周期Flash控制信號(hào)組生成。在第四個(gè)時(shí)鐘周期圖1中的狀態(tài)信號(hào)接收器103不停的偵 測(cè)Nandflash芯片組13的狀態(tài)信息(圖3中的Flash狀態(tài)信號(hào)組)并判斷,同時(shí)判斷結(jié)果 輸入到圖1中的中斷信號(hào)生成器104,中斷信號(hào)生成器104根據(jù)第二控制段202以及狀態(tài) 信號(hào)接收器103的判斷結(jié)果,生成最終的中斷信號(hào)。從圖3可以看出在第k+3個(gè)時(shí)鐘周期 Flash狀態(tài)信號(hào)組發(fā)生變化,經(jīng)過中斷信號(hào)生成器104對(duì)變化數(shù)據(jù)的判斷,在第k+4個(gè)時(shí)鐘 周期生成中斷信號(hào),標(biāo)志著一次完整的操作完成。 上述實(shí)施例只為說明本發(fā)明的技術(shù)構(gòu)思及特點(diǎn),其目的在于讓熟悉此項(xiàng)技術(shù)的人 士能夠了解本發(fā)明的內(nèi)容并據(jù)以實(shí)施,并不能以此限制本發(fā)明的保護(hù)范圍。凡根據(jù)本發(fā)明 精神實(shí)質(zhì)所作的等效變化或修飾,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
一種Nandflash芯片組存儲(chǔ)控制器,包括CPU(11),用于執(zhí)行存儲(chǔ)于內(nèi)部存儲(chǔ)器上的固件指令,完成對(duì)Nandflash芯片組(13)的控制和管理;內(nèi)部總線(14),用于傳送數(shù)據(jù)信息、地址信息和控制信息;中斷控制器(12),用于提供中斷信號(hào)給CPU(11),使CPU(11)執(zhí)行中斷程序,中斷控制器(12)與CPU(11)經(jīng)內(nèi)部總線(14)雙向連接;其特征在于設(shè)有一個(gè)可配置Nandflash芯片數(shù)量和類型,并且支持Nandflash芯片組(13)查詢轉(zhuǎn)中斷模式的控制模塊(10),所述控制模塊(10)由配置寄存器(101)、讀信號(hào)發(fā)生器(102)、狀態(tài)信號(hào)接收器(103)和中斷信號(hào)生成器(104)這四個(gè)子模塊構(gòu)成,其中配置寄存器(101)具有第一控制段(201)、第二控制段(202)、第一控制位(203)和第二控制位(204),第一控制段(201)用于配置Nandflash芯片控制信號(hào)的時(shí)序參數(shù);第二控制段(202)用于配置Nandflash芯片的數(shù)據(jù)位寬和Nandflash芯片的數(shù)量;第一控制位(203)用于使能對(duì)當(dāng)前Nandflash芯片操作完成狀態(tài)的查詢;第二控制位(204)用于使能中斷信號(hào)生成器(104)的中斷信號(hào)生成;配置寄存器(101)與CPU(11)經(jīng)內(nèi)部總線(14)雙向連接;讀信號(hào)發(fā)生器(102)用于生成Nandflash芯片的讀信號(hào),該讀信號(hào)發(fā)生器(102)具有計(jì)數(shù)器和第一比較器,計(jì)數(shù)器用來記錄系統(tǒng)時(shí)鐘周期數(shù),該計(jì)數(shù)器設(shè)有使能端,該使能端由配置寄存器(101)中第一控制位(203)控制;第一比較器用來比較計(jì)數(shù)器的值與配置寄存器(101)中第一控制段(201)的值,當(dāng)計(jì)數(shù)器的值與配置寄存器(101)中第一控制段(201)的值相等時(shí),第一比較器的輸出信號(hào)使讀信號(hào)的電平翻轉(zhuǎn),利用這個(gè)計(jì)數(shù)器的值和系統(tǒng)時(shí)鐘頻率通過第一控制段(201)來配置讀信號(hào)的寬度,該讀信號(hào)輪流查詢Nandflash芯片組(13)中每個(gè)Nandflash芯片完成當(dāng)前操作的狀態(tài)信息;狀態(tài)信號(hào)接收器(103)用于接收和判斷查詢Nandflash芯片完成當(dāng)前操作的狀態(tài)信息,狀態(tài)信號(hào)接收器(103)具有第二比較器,第二比較器的一個(gè)輸入端接收查詢Nandflash芯片完成當(dāng)前操作的狀態(tài)信息,另一個(gè)輸入端為Nandflash芯片已完成當(dāng)前操作的設(shè)定值,第二比較器將接收到的查詢狀態(tài)值與設(shè)定值進(jìn)行比較來判斷對(duì)Nandflash芯片的當(dāng)前操作是否完成,當(dāng)查詢狀態(tài)值與設(shè)定值相等時(shí)第二比較器輸出已完成當(dāng)前操作的信號(hào),并建立對(duì)應(yīng)Nandflash芯片已完成當(dāng)前操作的標(biāo)志位;中斷信號(hào)生成器(104)用于生成最終的中斷信號(hào),中斷信號(hào)生成器(104)具有譯碼器、與門和二選一選擇器,譯碼器對(duì)配置寄存器(101)中的第二控制段(202)進(jìn)行譯碼,獲得當(dāng)前使用的Nandflash芯片數(shù)量及配置信息,與門對(duì)當(dāng)前使用的各Nandflash芯片的標(biāo)志位進(jìn)行邏輯與運(yùn)算,當(dāng)各Nandflash芯片均已完成當(dāng)前操作時(shí)與門輸出查詢完成標(biāo)志信號(hào),該標(biāo)志信號(hào)連接二選一選擇器的一個(gè)輸入端,另一個(gè)輸入端接地,二選一選擇器的選擇控制端由配置寄存器(101)中的第二控制位(204)控制,當(dāng)?shù)诙刂莆?204)和標(biāo)志信號(hào)有效時(shí)二選一選擇器輸出最終的中斷信號(hào),該中斷信號(hào)連接中斷控制器(12)的輸入端。
全文摘要
一種Nandflash芯片組存儲(chǔ)控制器,包括CPU、內(nèi)部總線和中斷控制器,其特征在于設(shè)有配置寄存器、讀信號(hào)發(fā)生器、狀態(tài)信號(hào)接收器和中斷信號(hào)生成器;CPU根據(jù)外掛Nandflash芯片組的類型和個(gè)數(shù),通過內(nèi)部總線對(duì)配置寄存器進(jìn)行配置;讀信號(hào)發(fā)生器根據(jù)相應(yīng)配置產(chǎn)生符合Flash時(shí)序的讀信號(hào),對(duì)Nandflash芯片輪流進(jìn)行狀態(tài)查詢;狀態(tài)信號(hào)接收器根據(jù)查詢狀態(tài)判斷當(dāng)前操作是否完成;中斷信號(hào)生成器根據(jù)判斷結(jié)果以及配置參數(shù)來生成所有Nandflash芯片完成標(biāo)志位以及最終的中斷信號(hào)。本發(fā)明將多個(gè)Nandflash芯片在操作中對(duì)應(yīng)產(chǎn)生的多個(gè)中斷,通過狀態(tài)查詢方式轉(zhuǎn)變?yōu)樽罱K的一個(gè)中斷信號(hào),由于狀態(tài)查詢由控制器獨(dú)立完全,不占用內(nèi)部總線,同時(shí)減少了中斷次數(shù),簡(jiǎn)化了系統(tǒng)的流程控制,提高了系統(tǒng)的儲(chǔ)速速度。
文檔編號(hào)G06F12/02GK101719098SQ20091022101
公開日2010年6月2日 申請(qǐng)日期2009年11月3日 優(yōu)先權(quán)日2009年5月26日
發(fā)明者周秀梅, 王宗寶, 肖佐楠, 鄭茳 申請(qǐng)人:蘇州國(guó)芯科技有限公司