專利名稱:一種具有指令隊列功能的Nandflash控制器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種Nandflash控制器,尤其涉及一種具有指令隊列功能的Nandflash 控制器。
背景技術(shù):
Nandflash在最近幾年里得到了突飛猛進的發(fā)展,由1位/單元的SLC(單層式存儲)技術(shù)發(fā)展到了 2位/單元甚至3位/單元的MLC(多層式存儲)技術(shù),同時Nandflash的生產(chǎn)工藝也不斷進步。隨著技術(shù)的發(fā)展,Nandflash容量不斷增大,單位容量的成本也大幅降低,應用Nandflash的領(lǐng)域也越來越多。隨著Nandflash技術(shù)的發(fā)展,Nandf Iash的指令越來越多,Nandflash控制器的硬件設(shè)計越來越復雜,同時越來越多的指令增加了系統(tǒng)軟件的設(shè)計復雜度?;谏鲜鰡栴},如何能在Nandflash控制器的設(shè)計過程中,找到一種較好的方案,既能解決當今Nandflash控制器控制指令多,執(zhí)行速度慢的情形,又能簡化系統(tǒng)軟件設(shè)計成為本發(fā)明要解決的問題。
發(fā)明內(nèi)容
本發(fā)明目的在于提供一種具有指令隊列功能的Nandflash控制器,通過在系統(tǒng)硬件中增加指令隊列設(shè)計,提高Nandflash控制器的執(zhí)行速度,從而簡化Nandflash控制器的程序設(shè)計,提高系統(tǒng)整體性能。一種具有指令隊列功能的Nandflash控制器,由微控制器、系統(tǒng)接口控制器、系統(tǒng)端DMA控制器、系統(tǒng)存儲器訪問仲裁邏輯單元、系統(tǒng)存儲器、Nandflash指令隊列存儲器、Nandflash指令隊列執(zhí)行控制邏輯單元、Nandflash DMA控制器、Nandflash數(shù)據(jù)緩存區(qū)和Nandflash接口控制器構(gòu)成。微控制器,系統(tǒng)主控制單元,控制系統(tǒng)中各單元;系統(tǒng)接口控制器,用于以特定協(xié)議和主控端進行數(shù)據(jù)傳輸,特定協(xié)議包含IDE、USB、SATA 禾口 PCIE 等;系統(tǒng)端DMA控制器(Direct Memory Access直接存儲器訪問),用于系統(tǒng)接口控制器和系統(tǒng)存儲器之間的數(shù)據(jù)傳輸;系統(tǒng)存儲器訪問仲裁邏輯單元,用于仲裁微控制器、系統(tǒng)接口控制器和Nandflash控制器對系統(tǒng)存儲器的訪問請求;系統(tǒng)存儲器,用于暫存存儲系統(tǒng)端和Nandflash控制器間傳輸?shù)臄?shù)據(jù),也用于存放當前數(shù)據(jù)讀寫所使用的地址映射表;Nandflash指令隊列存儲器,用于存放Nandflash指令執(zhí)行過程中所需的信息,包含指令類型、行地址、列地址、數(shù)據(jù)大小、系統(tǒng)存儲器地址等;Nandflash指令隊列執(zhí)行控制邏輯單元,用于根據(jù)Nandflash指令的信息控制指令的執(zhí)行;
Nandflash DMA控制器,用于控制系統(tǒng)存儲器與Nandflash數(shù)據(jù)緩存區(qū)的數(shù)據(jù)傳輸;Nandflash數(shù)據(jù)緩存區(qū),用于緩存從系統(tǒng)存儲器讀出但來不及寫入Nandflash的數(shù)據(jù),也用于緩存從Nandflash讀出但來不及寫入系統(tǒng)存儲器的數(shù)據(jù);Nandflash接口控制器,控制Nandflash控制器與Nandflash陣列之間的數(shù)據(jù)傳輸。系統(tǒng)接收到訪問Nandflash的請求時,將訪問請求拆分成對Nandflash的讀、寫或者擦除的指令,寫入Nandflash指令隊列并通知Nandflash指令隊列執(zhí)行控制邏輯單元開始執(zhí)行Nandflash的指令。Nandflash指令隊列執(zhí)行控制邏輯單元首先檢查要訪問的Nandflash的狀態(tài),若為空閑則將Nandflash指令發(fā)送給Nandflash。若不為空閑,則需等待Nandflash變?yōu)榭臻e,然后再將Nandflash指令發(fā)送給Nandflash。Nandflash指令隊列執(zhí)行控制邏輯單元將指令發(fā)送給Nandflash后,Nandf Iash準備好接收數(shù)據(jù)或者發(fā)送數(shù)據(jù)后,啟動Nandflash DMA控制器向Nandflash寫入數(shù)據(jù)或者從Nandflash讀出數(shù)據(jù)。Nandflash指令的整個執(zhí)行過程完全由Nandflash指令隊列執(zhí)行控制邏輯單元控制,無需微控制器的參與。Nandflash指令隊列執(zhí)行控制邏輯單元的控制可以更高效快速的執(zhí)行Nandflash指令,不需微控制器參與Nandflash指令執(zhí)行的控制,能夠簡化系統(tǒng)的程序設(shè)計,提高指令執(zhí)行速度。
圖1具有指令隊列功能的Nandflash控制器電路結(jié)構(gòu)2NandflaSh控制器讀/寫/擦除指令中Nandflash狀態(tài)跳轉(zhuǎn)示意圖
具體實施方案以下結(jié)合各附圖對本發(fā)明所提出的內(nèi)容進行詳細的描述。Nandflash指令隊列深度取決于Nandflash控制器可以同時執(zhí)行的Nandflash指令的數(shù)量,一般等于Nandflash控制器所連接的Nandflash的數(shù)量。以下表中Nandflash指令內(nèi)容為例
權(quán)利要求
1.一種具有指令隊列功能的Nandflash控制器,其特征在于包含Nandflash指令隊列存儲器和Nandflash指令隊列執(zhí)行控制邏輯單元。
2.如權(quán)利要求1所述的一種具有指令隊列功能的Nandflash控制器,其特征在于所述Nandflash指令隊列存儲器存放Nandflash指令執(zhí)行過程中所需的信息,包含指令類型、行地址、列地址、數(shù)據(jù)大小、系統(tǒng)存儲器地址。
3.如權(quán)利要求1或2所述的一種具有指令隊列存儲器的Nandflash控制器,其特征在于所述Nandflash指令隊列存儲器為系統(tǒng)軟件和硬件之間的接口。
4.如權(quán)利要求1所述的一種具有指令隊列功能的Nandflash控制器,其特征在于所述Nandflash指令隊列執(zhí)行控制邏輯單元先檢查要訪問的Nandflash的狀態(tài),若為空閑則將Nandflash 指令發(fā)送給 Nandflash。
5.如權(quán)利要求1所述的一種具有指令隊列功能的Nandflash控制器,其特征在于所述Nandflash指令隊列執(zhí)行控制邏輯單元控制Nandflash指令的整個執(zhí)行過程,無需系統(tǒng)中微控制器參與。
6.如權(quán)利要求1所述的一種具有指令隊列功能的Nandflash控制器,其特征在于所述Nandflash控制器與主控端通信接口包含SATA、USB、PCIE、PATA。
全文摘要
本發(fā)明提供一種具有指令隊列功能的Nandflash控制器,由微控制器、系統(tǒng)接口控制器、系統(tǒng)端DMA控制器、系統(tǒng)存儲器訪問仲裁邏輯單元、系統(tǒng)存儲器、Nandflash指令隊列存儲器、Nandflash指令隊列執(zhí)行控制邏輯單元、Nandflash DMA控制器、Nandflash數(shù)據(jù)緩存區(qū)和Nandflash接口控制器構(gòu)成。Nandflash指令的整個執(zhí)行過程完全由Nandflash指令隊列執(zhí)行控制邏輯單元控制,無須微控制器的參與。本發(fā)明能夠很大程度上簡化系統(tǒng)的程序設(shè)計,提高系統(tǒng)指令執(zhí)行速度,從而提高系統(tǒng)性能。
文檔編號G06F13/28GK102591823SQ201110009500
公開日2012年7月18日 申請日期2011年1月17日 優(yōu)先權(quán)日2011年1月17日
發(fā)明者遲志剛 申請人:上海華虹集成電路有限責任公司