專利名稱:一種支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及與非型快閃(即NAND Flash)存儲(chǔ)芯片顆粒的存儲(chǔ)控制器,尤其指一種支持操作亂序執(zhí)行的存儲(chǔ)控制器。
背景技術(shù):
隨著集成電路工藝的不斷發(fā)展,NAND Flash存儲(chǔ)芯片顆粒的體積每年減小40% 50%,而芯片顆粒容量每年翻一番。與此同時(shí),NAND Flash集成電路工藝的進(jìn)步,使得芯片顆粒內(nèi)部組織結(jié)構(gòu)從傳統(tǒng)的單體、單基片逐步發(fā)展成為多體、多基片。例如,Micron公司的 MT29H32G08GCAH2存儲(chǔ)芯片顆粒,容量為32( ,內(nèi)部包含四個(gè)基片。四個(gè)基片之間共用I/O 總線以及五根控制信號(hào)線地址鎖存信號(hào)(ALE)、命令鎖存信號(hào)(CLE)、寫使能信號(hào)(WE#)、 讀使能信號(hào)(RE#)和寫保護(hù)信號(hào)(WP),但卻擁有自己獨(dú)立的片選信號(hào)(CE#)和忙閑信號(hào) (R/B#),利用CE#信號(hào)線可以獨(dú)立選擇顆粒內(nèi)部的特定基片,利用R/B#信號(hào)線可以反映出顆粒內(nèi)部特定基片的當(dāng)前狀態(tài)。針對(duì)NAND Flash存儲(chǔ)芯片顆粒大容量、多體化的發(fā)展趨勢(shì),當(dāng)前工業(yè)界主流的 NAND Flash存儲(chǔ)控制器并沒(méi)有主動(dòng)適應(yīng)芯片顆粒容量和內(nèi)部結(jié)構(gòu)的變化進(jìn)行重新設(shè)計(jì), 容易造成廣大嵌入式設(shè)備、高性能I/O存儲(chǔ)外設(shè)較低的數(shù)據(jù)吞吐率。目前工業(yè)界的NAND Flash存儲(chǔ)控制器主要有兩種結(jié)構(gòu)順序存儲(chǔ)控制器和解耦存儲(chǔ)控制器。1.[順序存儲(chǔ)控制器]大多數(shù)NAND Flash存儲(chǔ)控制器都是采用順序結(jié)構(gòu),由主機(jī)寄存器、數(shù)據(jù)緩沖區(qū), NAND控制模塊組成,順序存儲(chǔ)控制器把芯片當(dāng)成一個(gè)整體進(jìn)行操作,它按照訪存操作到達(dá)的先后順序來(lái)訪問(wèn)存儲(chǔ)芯片顆粒。該結(jié)構(gòu)硬件邏輯簡(jiǎn)單,但發(fā)送給芯片顆粒內(nèi)部不同基片的訪存操作只能在時(shí)間上串行執(zhí)行,無(wú)法實(shí)現(xiàn)顆粒內(nèi)部多個(gè)基片上的訪存操作并行,數(shù)據(jù)吞吐率較低。2.[解耦存儲(chǔ)控制器]解耦存儲(chǔ)控制器由解耦器、數(shù)據(jù)緩沖區(qū)、NAND控制模塊組成,特點(diǎn)在于將每個(gè)訪存操作的執(zhí)行過(guò)程分為兩個(gè)階段(如開(kāi)始階段與結(jié)束階段),允許針對(duì)不同基片的兩個(gè)訪存操作的執(zhí)行時(shí)間部分重疊。如果下一個(gè)訪存操作所訪問(wèn)的基片處于空閑狀態(tài),解耦控制器在完成當(dāng)前操作開(kāi)始階段之后立刻啟動(dòng)下一個(gè)操作的開(kāi)始階段;否則,需要等到下一個(gè)訪存操作所訪問(wèn)的基片狀態(tài)空閑之后才開(kāi)始啟動(dòng)下一個(gè)操作的開(kāi)始階段。解耦存儲(chǔ)控制器可以支持不同訪存操作之間的并發(fā)執(zhí)行,但一旦出現(xiàn)相鄰訪存操作之間的數(shù)據(jù)相關(guān),便會(huì)阻塞后續(xù)訪存操作的正常執(zhí)行,導(dǎo)致了存儲(chǔ)控制器的數(shù)據(jù)吞吐率仍然較低。綜合上述兩種NAND Flash存儲(chǔ)控制器結(jié)構(gòu),它們數(shù)據(jù)吞吐率有限的根本原因都在于沒(méi)有充分開(kāi)發(fā)NAND Flash芯片顆粒內(nèi)部多個(gè)基片之間的并行性。在順序結(jié)構(gòu)中,某一時(shí)刻只能有單個(gè)基片處于忙狀態(tài),最多只能發(fā)揮單基片存儲(chǔ)芯片顆粒的訪存性能;在解耦結(jié)構(gòu)中,雖然多個(gè)基片可以在時(shí)間上重疊工作,但允許進(jìn)入開(kāi)始階段的訪存操作數(shù)量仍然有限。如何提高顆粒內(nèi)部基片工作的并行度,有效提高訪存數(shù)據(jù)吞吐率是本領(lǐng)域技術(shù)人員極為關(guān)注的技術(shù)問(wèn)題。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問(wèn)題是針對(duì)現(xiàn)有NAND Flash存儲(chǔ)控制器訪問(wèn)NAND Flash芯片顆粒時(shí)數(shù)據(jù)傳輸率較低,提出一種支持操作亂序執(zhí)行的高吞吐率NAND Flash存儲(chǔ)控制器結(jié)構(gòu),提高芯片內(nèi)部基片工作的并行度,有效提高訪存數(shù)據(jù)吞吐率。本發(fā)明放在處理器CPU和低層閃存控制模塊之間,低層閃存控制模塊與芯片相連,芯片為NAND Flash芯片,內(nèi)部包含M個(gè)基片,M為2的正整數(shù)次冪,一般為4。本發(fā)明由預(yù)處理模塊、保留站模塊、動(dòng)態(tài)調(diào)度模塊和后處理模塊組成。與本發(fā)明相連的低層閃存控制模塊由背景技術(shù)中提到的M個(gè)順序存儲(chǔ)控制器并聯(lián)而成,分別控制芯片中的M個(gè)基片。預(yù)處理模塊與處理器、保留站模塊、動(dòng)態(tài)調(diào)度模塊相連,內(nèi)含第一數(shù)據(jù)隊(duì)列組,主要功能是識(shí)別處理器發(fā)送的訪存操作,訪存操作包括讀訪存操作和寫訪存操作。預(yù)處理模塊從處理器接收控制指令和地址指令,將控制指令、地址指令發(fā)送給保留站模塊,從保留站模塊接收表項(xiàng)編號(hào)??刂浦噶畎粋€(gè)命令域、一個(gè)標(biāo)識(shí)域和一個(gè)地址域,命令域?qū)挾葹镃, C為正整數(shù),一般為3,指明控制指令的類型,包括讀指令和寫指令;標(biāo)識(shí)域?qū)挾葹門,T為正整數(shù),一般為16,指明當(dāng)前指令的編號(hào);地址域?qū)挾葹?2-C-T,一般為13,指明指令操作的高位物理地址。地址指令包含一個(gè)地址域,寬度為32,指明指令操作的低位物理地址。預(yù)處理模塊從處理器接收寫數(shù)據(jù)指令,緩存寫數(shù)據(jù)指令中的數(shù)據(jù)到第一數(shù)據(jù)隊(duì)列組。寫數(shù)據(jù)指令包含一個(gè)數(shù)據(jù)域,寬度為32,指明要寫入基片的數(shù)據(jù)。預(yù)處理模塊從動(dòng)態(tài)調(diào)度模塊接收隊(duì)列編號(hào)與讀隊(duì)列信號(hào),讀取第一數(shù)據(jù)隊(duì)列組中的寫數(shù)據(jù),發(fā)送寫數(shù)據(jù)到動(dòng)態(tài)調(diào)度模塊。保留站模塊與預(yù)處理模塊、動(dòng)態(tài)調(diào)度模塊相連,內(nèi)有保留站表,保留站表由M個(gè)表項(xiàng)組成,每個(gè)表項(xiàng)由八個(gè)域構(gòu)成表項(xiàng)編號(hào)、控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)、命令相關(guān)性、基片狀態(tài)、有效性。表項(xiàng)編號(hào)域?qū)挾葹镮og2M,從0開(kāi)始編號(hào)。控制指令域?qū)挾葹镃,指明控制指令的類型。地址指令域?qū)挾葹?4-C-T,指明控制指令訪存的物理地址。標(biāo)識(shí)域?qū)挾葹門,指明控制指令的編號(hào)。基片編號(hào)域?qū)挾葹镮og2M,指明控制指令所操作的基片。命令相關(guān)性域?qū)挾葹镸,指明該表項(xiàng)中的控制指令與其他表項(xiàng)中的控制指令之間的相關(guān)性,若命令相關(guān)性域的第i位有效,i為正整數(shù),M,表示當(dāng)前表項(xiàng)中的控制指令與第i表項(xiàng)中的控制指令之間存在命令相關(guān),若無(wú)效,表示不存在命令相關(guān)?;瑺顟B(tài)域?qū)挾葹?,指明當(dāng)前控制指令所操作的目標(biāo)基片狀態(tài)。有效性域?qū)挾葹?,指明當(dāng)前表項(xiàng)的內(nèi)容是否有效。保留站模塊接收預(yù)處理模塊發(fā)送的控制指令,將控制指令的命令域、標(biāo)識(shí)域和地址域分離,命令域信息寫入保留站表的控制指令域,標(biāo)識(shí)域信息寫入保留站表的標(biāo)識(shí)域,地址域信息寫入保留站表中地址指令域的高32-C-T位,發(fā)送表項(xiàng)編號(hào)給預(yù)處理模塊。地址域的高Iog2M位表示控制指令操作的目標(biāo)基片編號(hào),保留站模塊將地址域的高Iog2M位寫入保留站表的基片編號(hào)域。保留站模塊接收預(yù)處理模塊發(fā)送的地址指令,寫入保留站表中與命令域同一表項(xiàng)的地址指令域的低32位,接收動(dòng)態(tài)調(diào)度模塊發(fā)送的基片狀態(tài),寫入保留站表的基片狀態(tài)域。如果當(dāng)前寫入保留站表項(xiàng)的基片編號(hào)與另一(設(shè)為第Ui不等于當(dāng)寫表項(xiàng)編號(hào)))個(gè)表項(xiàng)的基片編號(hào)相等,則表示當(dāng)前控制指令與第i個(gè)表項(xiàng)的控制指令具有相關(guān)性,將第i個(gè)表項(xiàng)的表項(xiàng)編號(hào)寫入當(dāng)前表項(xiàng)的命令相關(guān)性域的第i位,否則,命令相關(guān)性域?yàn)榱?。?dāng)保留站表項(xiàng)中的基片狀態(tài)空閑且命令相關(guān)性為零時(shí),保留站模塊向動(dòng)態(tài)調(diào)度模塊發(fā)送該保留站表項(xiàng)中的控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)、表項(xiàng)編號(hào)。動(dòng)態(tài)調(diào)度模塊與預(yù)處理模塊、保留站模塊、后處理模塊、低層閃存控制模塊相連。 動(dòng)態(tài)調(diào)度模塊接收并緩存保留站模塊發(fā)送的控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)和表項(xiàng)編號(hào),產(chǎn)生基片狀態(tài)信號(hào)并發(fā)送給保留站模塊,并把控制指令轉(zhuǎn)換成NAND Flash芯片所識(shí)別的時(shí)序,根據(jù)控制指令的類型產(chǎn)生訪存信號(hào),并將訪存信號(hào)發(fā)送給低層閃存控制模塊。如果控制指令是寫指令,動(dòng)態(tài)調(diào)度模塊發(fā)送讀隊(duì)列信號(hào)給預(yù)處理模塊,將表項(xiàng)編號(hào)作為隊(duì)列編號(hào)發(fā)送給預(yù)處理模塊,讀取第一數(shù)據(jù)隊(duì)列組中的寫數(shù)據(jù)發(fā)送給低層閃存控制模塊。如果控制指令是讀指令,動(dòng)態(tài)調(diào)度模塊從低層閃存控制模塊讀取從基片讀出的數(shù)據(jù)發(fā)送給后處理模塊,同時(shí)發(fā)送寫隊(duì)列信號(hào)和標(biāo)識(shí)給后處理模塊。后處理模塊內(nèi)含第二數(shù)據(jù)隊(duì)列組,與處理器、動(dòng)態(tài)調(diào)度模塊相連,主要功能是緩存從基片讀出的數(shù)據(jù),將讀出的數(shù)據(jù)按照讀訪存操作發(fā)出的順序輸出到處理器。后處理模塊從動(dòng)態(tài)調(diào)度模塊接收M路寫隊(duì)列信號(hào)和讀數(shù)據(jù),將讀數(shù)據(jù)寫入第二數(shù)據(jù)隊(duì)列組,從動(dòng)態(tài)調(diào)度模塊接收M路標(biāo)識(shí),從處理器接收一路標(biāo)識(shí),將從處理器接收的標(biāo)識(shí)與從動(dòng)態(tài)調(diào)度模塊接收的M路標(biāo)識(shí)一一進(jìn)行比較,將相等的標(biāo)識(shí)對(duì)應(yīng)的第二數(shù)據(jù)隊(duì)列組中的數(shù)據(jù)輸出給處理
ο預(yù)處理模塊由地址識(shí)別單元、第一多路選擇器、第二多路選擇器、第三多路選擇器、第一數(shù)據(jù)隊(duì)列組和第一邏輯或門組成。地址識(shí)別單元對(duì)外與處理器、動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第一多路選擇器相連,第一多路選擇器對(duì)外與保留站模塊、對(duì)內(nèi)與地址識(shí)別單元、第一數(shù)據(jù)隊(duì)列組相連,第二多路選擇器對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第一數(shù)據(jù)隊(duì)列組和第一邏輯或門相連,第三多路選擇器對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第一數(shù)據(jù)隊(duì)列組和第一邏輯或門相連,第一數(shù)據(jù)隊(duì)列組與第一多路選擇器、第二多路選擇器、第三多路選擇器相連,第一邏輯或門對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第二多路選擇器、第三多路選擇器相連。地址識(shí)別單元通過(guò)數(shù)據(jù)線從處理器接收控制指令、地址指令、寫數(shù)據(jù)指令,通過(guò)地址線從處理器接收地址,根據(jù)地址的值識(shí)別各個(gè)指令,如果是控制指令,則將控制指令發(fā)送給命令寄存器,如果是地址指令,則將地址指令發(fā)送給地址寄存器,如果是寫數(shù)據(jù)指令,則將寫數(shù)據(jù)指令中的數(shù)據(jù)發(fā)送給第一多路選擇器。第一邏輯或門接收動(dòng)態(tài)調(diào)度模塊發(fā)送的M路隊(duì)列編號(hào),如果某一路隊(duì)列編號(hào)沒(méi)有值,則該路隊(duì)列編號(hào)為零,每次只有一路隊(duì)列編號(hào)值不為零,對(duì)這些編號(hào)進(jìn)行邏輯或運(yùn)算, 取出不為零的一路隊(duì)列編號(hào),發(fā)送給第二多路選擇器和第三多路選擇器。第一多路選擇器是1 :M多路選擇器,它接收地址識(shí)別單元發(fā)送的寫數(shù)據(jù),根據(jù)從保留站模塊接收的表項(xiàng)編號(hào)將寫數(shù)據(jù)發(fā)送給第一數(shù)據(jù)隊(duì)列組中編號(hào)與表項(xiàng)編號(hào)相同的數(shù)據(jù)隊(duì)列。第二多路選擇器是M:1多路選擇器,它從動(dòng)態(tài)調(diào)度模塊接收M個(gè)讀隊(duì)列信號(hào),從第一邏輯或門接收隊(duì)列編號(hào),根據(jù)隊(duì)列編號(hào)的值i將讀隊(duì)列信號(hào)i(i = 1,2,……M)輸出到第一數(shù)據(jù)隊(duì)列組中的數(shù)據(jù)隊(duì)列i。 第三多路選擇器是M: 1多路選擇器,它接收第一數(shù)據(jù)隊(duì)列組發(fā)送的M路數(shù)據(jù)和第一邏輯或門發(fā)送的隊(duì)列編號(hào),根據(jù)隊(duì)列編號(hào)的值i將第i路寫數(shù)據(jù)輸出到動(dòng)態(tài)調(diào)度模塊。
第一數(shù)據(jù)隊(duì)列組由M個(gè)相同的數(shù)據(jù)隊(duì)列組成,每個(gè)數(shù)據(jù)隊(duì)列大小等于芯片內(nèi)頁(yè)面的大小。第一數(shù)據(jù)隊(duì)列組一方面將第一多路選擇器發(fā)送的寫數(shù)據(jù)寫入第一多路選擇器選中的數(shù)據(jù)隊(duì)列,一方面根據(jù)第二多路選擇器發(fā)送的讀隊(duì)列信號(hào)將數(shù)據(jù)隊(duì)列中的寫數(shù)據(jù)發(fā)送給第三多路選擇器。保留站模塊由第四多路選擇器、第五多路選擇器、表項(xiàng)編號(hào)寄存器、有效性監(jiān)聽(tīng)單元、相關(guān)性判斷單元、基片狀態(tài)設(shè)置單元、輸出判斷單元、控制邏輯單元和保留站表組成。第四多路選擇器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與有效性監(jiān)聽(tīng)單元、控制邏輯單元相連,第五多路選擇器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與表項(xiàng)編號(hào)寄存器、控制邏輯單元相連, 表項(xiàng)編號(hào)寄存器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與有效性監(jiān)聽(tīng)單元、第五多路選擇器相連,有效性監(jiān)聽(tīng)單元與第四多路選擇器、表項(xiàng)編號(hào)寄存器、控制邏輯單元相連,相關(guān)性判斷單元與控制邏輯單元相連,基片狀態(tài)設(shè)置單元對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與控制邏輯單元相連,輸出判斷單元對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與控制邏輯單元相連,控制邏輯單元與第四多路選擇器、第五多路選擇器、有效性監(jiān)聽(tīng)單元、相關(guān)性判斷單元、基片狀態(tài)設(shè)置單元、輸出判斷單元、保留站表相連,保留站表與控制邏輯單元相連。有效性監(jiān)聽(tīng)單元接收控制邏輯單元發(fā)送的各個(gè)表項(xiàng)的有效性域值,根據(jù)有效性域的值產(chǎn)生保留站表中第一個(gè)空表項(xiàng)的表項(xiàng)編號(hào),把第一個(gè)空表項(xiàng)的表項(xiàng)編號(hào)發(fā)送給第四多路選擇器??刂浦噶顚懭氡A粽颈淼谋眄?xiàng)后,表項(xiàng)的有效性域發(fā)生由0到1的變化,有效性監(jiān)聽(tīng)單元通過(guò)邊沿檢測(cè),檢測(cè)到該變化,將變化的表項(xiàng)編號(hào)輸出到表項(xiàng)編號(hào)寄存器。表項(xiàng)編號(hào)寄存器是寬度為Iog2M位的寄存器,它存儲(chǔ)有效性監(jiān)聽(tīng)單元發(fā)來(lái)的控制指令寫入的表項(xiàng)編號(hào),將表項(xiàng)編號(hào)發(fā)送給第五多路選擇器和預(yù)處理模塊的第一多路選擇器。第四多路選擇器接收預(yù)處理模塊發(fā)送的控制指令,根據(jù)有效性監(jiān)聽(tīng)單元發(fā)來(lái)的保留站表第一個(gè)空表項(xiàng)的表項(xiàng)編號(hào)將控制指令發(fā)送給控制邏輯單元。第五多路選擇器接收預(yù)處理模塊發(fā)送的地址指令,根據(jù)表項(xiàng)編號(hào)寄存器中的值將地址指令發(fā)送給控制邏輯單元。控制邏輯單元從第四多路選擇器接收控制指令,將控制指令的命令域、標(biāo)識(shí)域和地址域分離,命令域信息寫入保留站表中第一個(gè)空表項(xiàng)的控制指令域,標(biāo)識(shí)域信息寫入表項(xiàng)的標(biāo)識(shí)域,地址域信息寫入表項(xiàng)中地址指令域的高32-C-T位。地址域的高Iog2M位表示控制指令操作的目標(biāo)基片編號(hào),控制邏輯單元將地址域的高Iog2M位寫入表項(xiàng)的基片編號(hào)域;從第五多路選擇器接收地址指令,寫入與控制指令同一個(gè)表項(xiàng)的地址指令域的低32 位。控制邏輯單元將基片編號(hào)發(fā)送到相關(guān)性判斷單元和基片狀態(tài)設(shè)置單元,從相關(guān)性判斷單元接收相關(guān)性信息,寫入與控制指令同一個(gè)表項(xiàng)的命令相關(guān)性域,從基片狀態(tài)設(shè)置單元接收基片狀態(tài)信息,寫入與控制指令同一個(gè)表項(xiàng)的基片狀態(tài)域。當(dāng)控制邏輯單元將基片狀態(tài)寫入保留站表后,發(fā)送該保留站表項(xiàng)的內(nèi)容到輸出判斷單元,發(fā)送完畢后等待從輸出判斷單元接收表項(xiàng)清零信號(hào),以將保留站表中信息已輸出的表項(xiàng)清零。相關(guān)性判斷單元產(chǎn)生各保留站表項(xiàng)之間的命令相關(guān)信息,將相關(guān)性信息發(fā)送給控制邏輯單元。相關(guān)性判斷單元接收控制邏輯單元發(fā)送的各個(gè)表項(xiàng)的基片編號(hào),判斷最近寫入表項(xiàng)j(j為正整數(shù),1 < j ^ Μ)的基片編號(hào)與其他表項(xiàng)的基片編號(hào)是否相等,如果表項(xiàng) k(k為正整數(shù),1彡k彡M)的基片編號(hào)與表項(xiàng)j的基片編號(hào)相等,則表項(xiàng)j中的控制指令與表項(xiàng)k中的控制指令具有相關(guān)性,將表項(xiàng)編號(hào)k發(fā)送給控制邏輯單元,由控制邏輯單元在表項(xiàng)j的相關(guān)性域?qū)懭氡眄?xiàng)編號(hào)k?;瑺顟B(tài)設(shè)置單元由M個(gè)寄存器組成,從動(dòng)態(tài)調(diào)度模塊接收M個(gè)基片的基片狀態(tài)信號(hào),緩存在M個(gè)寄存器中,從控制邏輯單元接收保留站中M個(gè)表項(xiàng)的基片編號(hào),將各個(gè)基片編號(hào)分別與1、……M比較,如果相等,則將對(duì)應(yīng)基片編號(hào)的基片狀態(tài)信號(hào)發(fā)送給控制邏輯單元,由控制邏輯單元寫入保留站表的基片狀態(tài)域。輸出判斷單元是一個(gè)比較器,它接收控制邏輯單元發(fā)送的某一保留站表項(xiàng)的信息,判斷表項(xiàng)的相關(guān)性域和基片狀態(tài)域的值是否為零,判斷表項(xiàng)的有效性域的值是否為一。 如果保留站表項(xiàng)中的相關(guān)性域和基片狀態(tài)域?yàn)榱?,且有效性域?yàn)橐?,輸出判斷單元發(fā)送該保留站表項(xiàng)中的控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)、表項(xiàng)編號(hào)信息給動(dòng)態(tài)調(diào)度模塊。信息輸出后,輸出判斷單元發(fā)送表項(xiàng)清零信號(hào)給控制邏輯單元。動(dòng)態(tài)調(diào)度模塊由第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器、第十多路選擇器、M個(gè)狀態(tài)機(jī)、仲裁器和第二邏輯或門組成,狀態(tài)機(jī)編號(hào)為狀態(tài)機(jī)1,……狀態(tài)機(jī)k,……狀態(tài)機(jī)M,第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器、第十多路選擇器都是1:M多路選擇器,第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器對(duì)外與保留站模塊相連,對(duì)內(nèi)與所有的狀態(tài)機(jī)相連,第十多路選擇器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與所有的狀態(tài)機(jī)相連,每個(gè)狀態(tài)機(jī)對(duì)外與預(yù)處理模塊、保留站模塊、后處理模塊相連,對(duì)內(nèi)與第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器、第十多路選擇器、仲裁器、第二邏輯或門相連,仲裁器與所有狀態(tài)機(jī)相連,第二邏輯或門對(duì)外與低層閃存控制模塊相連,對(duì)內(nèi)與所有狀態(tài)機(jī)相連。第六多路選擇器接收保留站模塊發(fā)送的控制指令和基片編號(hào),根據(jù)基片編號(hào)的值,將控制指令發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī)。第七多路選擇器接收保留站模塊發(fā)送的地址指令和基片編號(hào),將地址指令發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī)。第八多路選擇器接收保留站模塊發(fā)送的標(biāo)識(shí)和基片編號(hào),將標(biāo)識(shí)發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī)。第九多路選擇器接收保留站模塊發(fā)送的表項(xiàng)編號(hào)和基片編號(hào),將表項(xiàng)編號(hào)發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī)。第十多路選擇器接收預(yù)處理模塊發(fā)送的寫數(shù)據(jù)和保留站模塊發(fā)送的基片編號(hào),將寫數(shù)據(jù)發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī)。狀態(tài)機(jī)k(k = 1,2……,M)由7個(gè)狀態(tài)組成,“000”狀態(tài)表示狀態(tài)機(jī)空閑,“001”
狀態(tài)表示等待仲裁器的應(yīng)答信號(hào),“010”狀態(tài)表示分析控制指令,“011”狀態(tài)表示等待數(shù)據(jù)從基片讀出并寫入低層閃存控制模塊,“100”狀態(tài)表示等待數(shù)據(jù)從低層閃存控制模塊讀出并寫入后處理模塊,“ 101”狀態(tài)表示等待數(shù)據(jù)從預(yù)處理模塊寫入低層閃存控制模塊,“ 110” 狀態(tài)表示等待數(shù)據(jù)從低層閃存控制模塊寫入基片。上電復(fù)位時(shí),狀態(tài)機(jī)處于“000”狀態(tài), 從第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器接收保留站表的信息后,轉(zhuǎn)移到“001”狀態(tài)。狀態(tài)機(jī)處于“001”狀態(tài)時(shí),向仲裁器發(fā)送請(qǐng)求信號(hào),等待仲裁器分配訪存信號(hào)線的使用,狀態(tài)機(jī)接收到仲裁器應(yīng)答信號(hào)后轉(zhuǎn)移到“010”狀態(tài)。狀態(tài)機(jī)處于 “010”狀態(tài)時(shí),向保留站模塊發(fā)送基片忙狀態(tài)信號(hào),分析控制指令,生成訪存信號(hào),將訪存信號(hào)輸出到第二邏輯或門。分析控制指令后,如果是讀指令,則轉(zhuǎn)移到“011”狀態(tài),如果是寫指令,則轉(zhuǎn)移到“101”狀態(tài)。狀態(tài)機(jī)處于“011”狀態(tài)時(shí),狀態(tài)機(jī)等待低層閃存控制模塊將數(shù)據(jù)從基片讀出并緩存在低層閃存控制模塊,當(dāng)數(shù)據(jù)讀出完畢后,轉(zhuǎn)移到“100”狀態(tài)。狀態(tài)機(jī)處于“100”狀態(tài)時(shí),向保留站模塊發(fā)送基片空閑狀態(tài)信號(hào),向后處理模塊發(fā)送寫隊(duì)列信號(hào)和從保留站模塊接收的標(biāo)識(shí),等待數(shù)據(jù)從低層閃存控制模塊讀出并寫入后處理模塊,當(dāng)數(shù)據(jù)從低層閃存控制模塊讀出完畢后,狀態(tài)機(jī)轉(zhuǎn)移到“000”狀態(tài)。狀態(tài)機(jī)處于“101”狀態(tài)時(shí), 等待數(shù)據(jù)從預(yù)處理模塊寫入低層閃存控制模塊,寫入完畢后,轉(zhuǎn)移到“110”狀態(tài)。狀態(tài)機(jī)處于“110”狀態(tài)時(shí),等待數(shù)據(jù)從低層閃存控制模塊寫入基片,寫入完畢后轉(zhuǎn)移到“000”狀態(tài)。仲裁器接收所有狀態(tài)機(jī)發(fā)送的請(qǐng)求信號(hào),初始情況下,從第一個(gè)狀態(tài)機(jī)(即狀態(tài)機(jī)1)的請(qǐng)求信號(hào)開(kāi)始檢測(cè),如果請(qǐng)求信號(hào)有效,則發(fā)送應(yīng)答信號(hào)給狀態(tài)機(jī)1,否則,檢測(cè)下一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào),直到找到有效的請(qǐng)求信號(hào)。響應(yīng)某一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào)后,記錄狀態(tài)機(jī)編號(hào),此后再檢測(cè)請(qǐng)求信號(hào)時(shí),根據(jù)記錄的上次使用訪存信號(hào)線的狀態(tài)機(jī)編號(hào),從下一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào)開(kāi)始檢測(cè)。如果某一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào)一直為高,表示狀態(tài)機(jī)一直占用訪存信號(hào)線,此時(shí)不響應(yīng)其他的請(qǐng)求信號(hào),直到請(qǐng)求信號(hào)為低。第二邏輯或門接收M個(gè)狀態(tài)機(jī)發(fā)送的M路訪存信號(hào),如果某一路訪存信號(hào)沒(méi)有值, 則該路訪存信號(hào)為零,由于每次仲裁器只給一個(gè)狀態(tài)機(jī)分配訪存信號(hào)線的使用,所以只有一路訪存信號(hào)有效,對(duì)這些訪存信號(hào)進(jìn)行邏輯或運(yùn)算,得到其中有效的一路訪存信號(hào),發(fā)送到低層閃存控制模塊。后處理模塊由比較器、第二數(shù)據(jù)隊(duì)列組、第十一多路選擇器組成。比較器對(duì)外與動(dòng)態(tài)調(diào)度模塊、處理器相連,對(duì)內(nèi)與第二數(shù)據(jù)隊(duì)列組、第十一多路選擇器相連,第二數(shù)據(jù)隊(duì)列組對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與比較器、第十一多路選擇器相連,第十一多路選擇器對(duì)外與處理器相連,對(duì)內(nèi)與比較器、第二數(shù)據(jù)隊(duì)列組相連。第二數(shù)據(jù)隊(duì)列組的參數(shù)與組成和第一數(shù)據(jù)隊(duì)列組相同,它接收動(dòng)態(tài)調(diào)度模塊發(fā)送的M路寫隊(duì)列信號(hào)和讀數(shù)據(jù),將讀數(shù)據(jù)寫入寫隊(duì)列信號(hào)有效的數(shù)據(jù)隊(duì)列中,接收比較器發(fā)送的M路讀隊(duì)列信號(hào),將讀隊(duì)列信號(hào)有效的數(shù)據(jù)隊(duì)列中的數(shù)據(jù)讀出發(fā)送到第十一多路選擇
ο比較器從動(dòng)態(tài)調(diào)度模塊接收M路標(biāo)識(shí),從處理器接收一路標(biāo)識(shí),對(duì)從處理器接收的標(biāo)識(shí)與從動(dòng)態(tài)調(diào)度模塊接收的標(biāo)識(shí)一一比較,如果第i路標(biāo)識(shí)(i = 1,2,……M)與從處理器接收的標(biāo)識(shí)相等,則發(fā)送讀隊(duì)列信號(hào)i到第二數(shù)據(jù)隊(duì)列組中的數(shù)據(jù)隊(duì)列i,發(fā)送值為i 的隊(duì)列編號(hào)到第十一多路選擇器。第十一多路選擇器是M:1多路選擇器,它接收第二數(shù)據(jù)隊(duì)列組發(fā)送的M路讀數(shù)據(jù), 接收比較器發(fā)送的值為i的隊(duì)列編號(hào),將第i路讀數(shù)據(jù)發(fā)送到處理器。采用本發(fā)明從芯片讀數(shù)據(jù)的過(guò)程是預(yù)處理模塊接收處理器發(fā)送的讀訪存操作, 即控制指令和地址指令,并發(fā)送到保留站模塊。保留站模塊接收預(yù)處理模塊發(fā)送的控制指令和地址指令,寫入保留站表中第一個(gè)空表項(xiàng),然后產(chǎn)生標(biāo)識(shí)、命令相關(guān)性、基片編號(hào)信息,并寫入保留站表;保留站模塊接收動(dòng)態(tài)調(diào)度模塊發(fā)送的基片狀態(tài),寫入表項(xiàng)的基片狀態(tài)域。如果表項(xiàng)中的信息滿足輸出條件,則將表項(xiàng)中的控制指令、地址指令、標(biāo)識(shí)、表項(xiàng)編號(hào)、 基片編號(hào)發(fā)送到動(dòng)態(tài)調(diào)度模塊。動(dòng)態(tài)調(diào)度模塊接收到保留站模塊發(fā)送的信息,根據(jù)基片編號(hào)的值選擇一個(gè)狀態(tài)機(jī)接收信息,狀態(tài)機(jī)向仲裁器申請(qǐng)使用訪存信號(hào)線,得到應(yīng)答后,狀態(tài)機(jī)產(chǎn)生訪存信號(hào),發(fā)送到低層閃存控制模塊,低層閃存控制模塊讀出基片中的數(shù)據(jù),發(fā)送給動(dòng)態(tài)調(diào)度模塊,動(dòng)態(tài)調(diào)度模塊將讀數(shù)據(jù)和標(biāo)識(shí)發(fā)送給后處理模塊。后處理模塊接收到讀數(shù)據(jù)后,緩存在第二數(shù)據(jù)隊(duì)列組,然后接收處理器發(fā)送的標(biāo)識(shí),將此標(biāo)識(shí)和從動(dòng)態(tài)調(diào)度模塊接收的標(biāo)識(shí)一一比較,讀出相等的標(biāo)識(shí)對(duì)應(yīng)的第二數(shù)據(jù)隊(duì)列組中的數(shù)據(jù)。采用本發(fā)明對(duì)芯片進(jìn)行寫數(shù)據(jù)的過(guò)程是預(yù)處理模塊接收處理器發(fā)送的寫訪存操作,即控制指令和地址指令,并發(fā)送到保留站模塊,接收處理器發(fā)送的寫數(shù)據(jù)指令,將寫數(shù)據(jù)緩存在第一數(shù)據(jù)隊(duì)列組。保留站模塊接收預(yù)處理模塊發(fā)送的控制指令和地址指令,寫入保留站表中第一個(gè)空表項(xiàng),然后產(chǎn)生標(biāo)識(shí)、命令相關(guān)性、基片編號(hào)信息,并寫入保留站表;保留站模塊接收動(dòng)態(tài)調(diào)度模塊發(fā)送的基片狀態(tài),寫入表項(xiàng)的基片狀態(tài)域。如果表項(xiàng)中的信息滿足輸出條件,則將表項(xiàng)中的控制指令、地址指令、標(biāo)識(shí)、表項(xiàng)編號(hào)、基片編號(hào)發(fā)送到動(dòng)態(tài)調(diào)度模塊。動(dòng)態(tài)調(diào)度模塊接收到保留站模塊發(fā)送的信息,根據(jù)基片編號(hào)的值選擇一個(gè)狀態(tài)機(jī)接收信息,狀態(tài)機(jī)向仲裁器申請(qǐng)使用訪存信號(hào)線,得到應(yīng)答后,狀態(tài)機(jī)產(chǎn)生訪存信號(hào),發(fā)送到低層閃存控制模塊;狀態(tài)機(jī)從預(yù)處理模塊的第一數(shù)據(jù)隊(duì)列組讀出寫數(shù)據(jù),發(fā)送到低層閃存控制模塊,由低層閃存控制模塊控制將數(shù)據(jù)寫入到基片。采用本發(fā)明可以達(dá)到以下技術(shù)效果1.由于在同一時(shí)間,針對(duì)不同基片的訪存操作可以并行執(zhí)行,如果訪存操作的目標(biāo)基片處于忙狀態(tài),緩存該操作,后續(xù)到達(dá)的針對(duì)不同基片的訪存操作可以繼續(xù)執(zhí)行,這樣就使得不同基片可以并行工作,有效提高訪存數(shù)據(jù)吞吐率。2.本發(fā)明由預(yù)處理模塊負(fù)責(zé)識(shí)別指令和緩存寫入基片的數(shù)據(jù),保留站模塊負(fù)責(zé)緩存指令,如果指令操作的目標(biāo)基片處于忙狀態(tài),則緩存該指令,直到目標(biāo)基片變成空閑狀態(tài),在此期間,后續(xù)的操作如果針對(duì)其他的基片,且該基片空閑,則該后續(xù)操作能正常執(zhí)行, 從而實(shí)現(xiàn)了操作的“亂序”執(zhí)行,進(jìn)一步提高了訪存數(shù)據(jù)吞吐率。
圖1是本發(fā)明的總體結(jié)構(gòu)框圖。圖2是本發(fā)明中預(yù)處理模塊結(jié)構(gòu)示意圖。圖3是本發(fā)明中保留站模塊結(jié)構(gòu)示意圖。圖4是本發(fā)明中保留站內(nèi)保留站表示意圖。圖5是本發(fā)明中動(dòng)態(tài)調(diào)度模塊結(jié)構(gòu)示意圖。圖6是本發(fā)明中動(dòng)態(tài)調(diào)度模塊內(nèi)狀態(tài)機(jī)示意圖。圖7是本發(fā)明中后處理模塊結(jié)構(gòu)示意圖。
具體實(shí)施例方式圖1是本發(fā)明的總體結(jié)構(gòu)框圖。本發(fā)明放在處理器CPU和低層閃存控制模塊之間,低層閃存控制模塊與芯片相連,芯片為NAND Flash芯片,內(nèi)部包含M個(gè)基片,M為2的正整數(shù)次冪,一般為4。本發(fā)明由預(yù)處理模塊、保留站模塊、動(dòng)態(tài)調(diào)度模塊和后處理模塊組成。與本發(fā)明相連的低層閃存控制模塊由背景技術(shù)中提到的M個(gè)順序存儲(chǔ)控制器并聯(lián)而成,分別控制芯片中的M個(gè)基片。預(yù)處理模塊與處理器、保留站模塊、動(dòng)態(tài)調(diào)度模塊相連,內(nèi)含第一數(shù)據(jù)隊(duì)列組,預(yù)處理模塊從處理器接收控制指令和地址指令,將控制指令、地址指令發(fā)送給保留站模塊,從保留站模塊接收表項(xiàng)編號(hào)。預(yù)處理模塊從處理器接收寫數(shù)據(jù)指令,緩存寫數(shù)據(jù)指令中的數(shù)據(jù)到第一數(shù)據(jù)隊(duì)列組。預(yù)處理模塊從動(dòng)態(tài)調(diào)度模塊接收隊(duì)列編號(hào)與讀隊(duì)列信號(hào),讀取第一數(shù)據(jù)隊(duì)列組中的寫數(shù)據(jù),發(fā)送寫數(shù)據(jù)到動(dòng)態(tài)調(diào)度模塊。保留站模塊與預(yù)處理模塊、動(dòng)態(tài)調(diào)度模塊相連,內(nèi)有保留站表。保留站模塊接收預(yù)處理模塊發(fā)送的控制指令,將控制指令的命令域、標(biāo)識(shí)域和地址域分離,命令域信息寫入保
13留站表的控制指令域,標(biāo)識(shí)域信息寫入保留站表的標(biāo)識(shí)域,地址域信息寫入保留站表中地址指令域的高32-C-T位,發(fā)送表項(xiàng)編號(hào)給預(yù)處理模塊。保留站模塊將地址域的高Iog2M位寫入保留站表的基片編號(hào)域。保留站模塊接收預(yù)處理模塊發(fā)送的地址指令,寫入保留站表中與命令域同一表項(xiàng)的地址指令域的低32位,接收動(dòng)態(tài)調(diào)度模塊發(fā)送的基片狀態(tài),寫入保留站表的基片狀態(tài)域。如果當(dāng)前寫入保留站表項(xiàng)的基片編號(hào)與另一(設(shè)為第Ui不等于當(dāng)寫表項(xiàng)編號(hào)))個(gè)表項(xiàng)的基片編號(hào)相等,則表示當(dāng)前控制指令與第i個(gè)表項(xiàng)的控制指令具有相關(guān)性,將第i個(gè)表項(xiàng)的表項(xiàng)編號(hào)寫入當(dāng)前表項(xiàng)的命令相關(guān)性域的第i位,否則,命令相關(guān)性域?yàn)榱?。?dāng)保留站表項(xiàng)中的基片狀態(tài)空閑且命令相關(guān)性為零時(shí),保留站模塊向動(dòng)態(tài)調(diào)度模塊發(fā)送該保留站表項(xiàng)中的控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)、表項(xiàng)編號(hào)。動(dòng)態(tài)調(diào)度模塊與預(yù)處理模塊、保留站模塊、后處理模塊、低層閃存控制模塊相連。 動(dòng)態(tài)調(diào)度模塊接收并緩存保留站模塊發(fā)送的控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)和表項(xiàng)編號(hào),產(chǎn)生基片狀態(tài)信號(hào)并發(fā)送給保留站模塊,并把控制指令轉(zhuǎn)換成NAND Flash芯片所識(shí)別的時(shí)序,根據(jù)控制指令的類型產(chǎn)生訪存信號(hào),并將訪存信號(hào)發(fā)送給低層閃存控制模塊。如果控制指令是寫指令,動(dòng)態(tài)調(diào)度模塊發(fā)送讀隊(duì)列信號(hào)給預(yù)處理模塊,將表項(xiàng)編號(hào)作為隊(duì)列編號(hào)發(fā)送給預(yù)處理模塊,讀取第一數(shù)據(jù)隊(duì)列組中的寫數(shù)據(jù)發(fā)送給低層閃存控制模塊。如果控制指令是讀指令,動(dòng)態(tài)調(diào)度模塊從低層閃存控制模塊讀取從基片讀出的數(shù)據(jù)發(fā)送給后處理模塊,同時(shí)發(fā)送寫隊(duì)列信號(hào)和標(biāo)識(shí)給后處理模塊。后處理模塊內(nèi)含第二數(shù)據(jù)隊(duì)列組,與處理器、動(dòng)態(tài)調(diào)度模塊相連,主要功能是緩存從基片讀出的數(shù)據(jù),將讀出的數(shù)據(jù)按照讀訪存操作發(fā)出的順序輸出到處理器。后處理模塊從動(dòng)態(tài)調(diào)度模塊接收M路寫隊(duì)列信號(hào)和讀數(shù)據(jù),將讀數(shù)據(jù)寫入第二數(shù)據(jù)隊(duì)列組,從動(dòng)態(tài)調(diào)度模塊接收M路標(biāo)識(shí),從處理器接收一路標(biāo)識(shí),將從處理器接收的標(biāo)識(shí)與從動(dòng)態(tài)調(diào)度模塊接收的M路標(biāo)識(shí)一一進(jìn)行比較,將相等的標(biāo)識(shí)對(duì)應(yīng)的第二數(shù)據(jù)隊(duì)列組中的數(shù)據(jù)輸出給處理
ο圖2是本發(fā)明中預(yù)處理模塊結(jié)構(gòu)示意圖。預(yù)處理模塊由地址識(shí)別單元、第一多路選擇器、第二多路選擇器、第三多路選擇器、第一數(shù)據(jù)隊(duì)列組和第一邏輯或門組成。地址識(shí)別單元對(duì)外與處理器、動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第一多路選擇器相連,第一多路選擇器對(duì)外與保留站模塊、對(duì)內(nèi)與地址識(shí)別單元、第一數(shù)據(jù)隊(duì)列組相連,第二多路選擇器對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第一數(shù)據(jù)隊(duì)列組和第一邏輯或門相連,第三多路選擇器對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第一數(shù)據(jù)隊(duì)列組和第一邏輯或門相連,第一數(shù)據(jù)隊(duì)列組與第一多路選擇器、第二多路選擇器、第三多路選擇器相連,第一邏輯或門對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第二多路選擇器、第三多路選擇器相連。地址識(shí)別單元通過(guò)數(shù)據(jù)線從處理器接收控制指令、地址指令、寫數(shù)據(jù)指令,通過(guò)地址線從處理器接收地址,根據(jù)地址的值識(shí)別各個(gè)指令,如果是控制指令,則將控制指令發(fā)送給命令寄存器,如果是地址指令,則將地址指令發(fā)送給地址寄存器,如果是寫數(shù)據(jù)指令,則將寫數(shù)據(jù)指令中的數(shù)據(jù)發(fā)送給第一多路選擇器。第一邏輯或門接收動(dòng)態(tài)調(diào)度模塊發(fā)送的M路隊(duì)列編號(hào),如果某一路隊(duì)列編號(hào)沒(méi)有值,則該路隊(duì)列編號(hào)為零,每次只有一路隊(duì)列編號(hào)值不為零,對(duì)這些編號(hào)進(jìn)行邏輯或運(yùn)算, 取出不為零的一路隊(duì)列編號(hào),發(fā)送給第二多路選擇器和第三多路選擇器。
第一多路選擇器是1 :M多路選擇器,它接收地址識(shí)別單元發(fā)送的寫數(shù)據(jù),根據(jù)從保留站模塊接收的表項(xiàng)編號(hào)將寫數(shù)據(jù)發(fā)送給第一數(shù)據(jù)隊(duì)列組中編號(hào)與表項(xiàng)編號(hào)相同的數(shù)據(jù)隊(duì)列。第二多路選擇器是M:1多路選擇器,它從動(dòng)態(tài)調(diào)度模塊接收M個(gè)讀隊(duì)列信號(hào),從第一邏輯或門接收隊(duì)列編號(hào),根據(jù)隊(duì)列編號(hào)的值i將讀隊(duì)列信號(hào)i(i = 1,2,……M)輸出到第一數(shù)據(jù)隊(duì)列組中的數(shù)據(jù)隊(duì)列i。第三多路選擇器是M: 1多路選擇器,它接收第一數(shù)據(jù)隊(duì)列組發(fā)送的M路數(shù)據(jù)和第一邏輯或門發(fā)送的隊(duì)列編號(hào),根據(jù)隊(duì)列編號(hào)的值i將第i路寫數(shù)據(jù)輸出到動(dòng)態(tài)調(diào)度模塊。第一數(shù)據(jù)隊(duì)列組由M個(gè)相同的數(shù)據(jù)隊(duì)列組成,每個(gè)數(shù)據(jù)隊(duì)列大小等于芯片內(nèi)頁(yè)面的大小。第一數(shù)據(jù)隊(duì)列組一方面將第一多路選擇器發(fā)送的寫數(shù)據(jù)寫入第一多路選擇器選中的數(shù)據(jù)隊(duì)列,一方面根據(jù)第二多路選擇器發(fā)送的讀隊(duì)列信號(hào)將數(shù)據(jù)隊(duì)列中的寫數(shù)據(jù)發(fā)送給第三多路選擇器。圖3是本發(fā)明中保留站模塊結(jié)構(gòu)示意圖。保留站模塊由第四多路選擇器、第五多路選擇器、表項(xiàng)編號(hào)寄存器、有效性監(jiān)聽(tīng)單元、相關(guān)性判斷單元、基片狀態(tài)設(shè)置單元、輸出判斷單元、控制邏輯單元和保留站表組成。第四多路選擇器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與有效性監(jiān)聽(tīng)單元、控制邏輯單元相連,第五多路選擇器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與表項(xiàng)編號(hào)寄存器、控制邏輯單元相連,表項(xiàng)編號(hào)寄存器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與有效性監(jiān)聽(tīng)單元、第五多路選擇器相連,有效性監(jiān)聽(tīng)單元與第四多路選擇器、表項(xiàng)編號(hào)寄存器、控制邏輯單元相連,相關(guān)性判斷單元與控制邏輯單元相連,基片狀態(tài)設(shè)置單元對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與控制邏輯單元相連,輸出判斷單元對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與控制邏輯單元相連,控制邏輯單元與第四多路選擇器、第五多路選擇器、有效性監(jiān)聽(tīng)單元、相關(guān)性判斷單元、基片狀態(tài)設(shè)置單元、輸出判斷單元、保留站表相連,保留站表與控制邏輯單元相連。有效性監(jiān)聽(tīng)單元接收控制邏輯單元發(fā)送的各個(gè)表項(xiàng)的有效性域值,根據(jù)有效性域的值產(chǎn)生保留站表中第一個(gè)空表項(xiàng)的表項(xiàng)編號(hào),把第一個(gè)空表項(xiàng)的表項(xiàng)編號(hào)發(fā)送給第四多路選擇器。控制指令寫入保留站表的表項(xiàng)后,表項(xiàng)的有效性域發(fā)生由0到1的變化,有效性監(jiān)聽(tīng)單元通過(guò)邊沿檢測(cè),檢測(cè)到該變化,將變化的表項(xiàng)編號(hào)輸出到表項(xiàng)編號(hào)寄存器。表項(xiàng)編號(hào)寄存器是寬度為Iog2M位的寄存器,它存儲(chǔ)有效性監(jiān)聽(tīng)單元發(fā)來(lái)的控制指令寫入的表項(xiàng)編號(hào),將表項(xiàng)編號(hào)發(fā)送給第五多路選擇器和預(yù)處理模塊的第一多路選擇器。第四多路選擇器接收預(yù)處理模塊發(fā)送的控制指令,根據(jù)有效性監(jiān)聽(tīng)單元發(fā)來(lái)的保留站表第一個(gè)空表項(xiàng)的表項(xiàng)編號(hào)將控制指令發(fā)送給控制邏輯單元。第五多路選擇器接收預(yù)處理模塊發(fā)送的地址指令,根據(jù)表項(xiàng)編號(hào)寄存器中的值將地址指令發(fā)送給控制邏輯單元??刂七壿媶卧獜牡谒亩嗦愤x擇器接收控制指令,將控制指令的命令域、標(biāo)識(shí)域和地址域分離,命令域信息寫入保留站表中第一個(gè)空表項(xiàng)的控制指令域,標(biāo)識(shí)域信息寫入表項(xiàng)的標(biāo)識(shí)域,地址域信息寫入表項(xiàng)中地址指令域的高32-C-T位。地址域的高Iog2M位表示控制指令操作的目標(biāo)基片編號(hào),控制邏輯單元將地址域的高Iog2M位寫入表項(xiàng)的基片編號(hào)域;從第五多路選擇器接收地址指令,寫入與控制指令同一個(gè)表項(xiàng)的地址指令域的低32 位。控制邏輯單元將基片編號(hào)發(fā)送到相關(guān)性判斷單元和基片狀態(tài)設(shè)置單元,從相關(guān)性判斷單元接收相關(guān)性信息,寫入與控制指令同一個(gè)表項(xiàng)的命令相關(guān)性域,從基片狀態(tài)設(shè)置單元
1接收基片狀態(tài)信息,寫入與控制指令同一個(gè)表項(xiàng)的基片狀態(tài)域。當(dāng)控制邏輯單元將基片狀態(tài)寫入保留站表后,發(fā)送該保留站表項(xiàng)的內(nèi)容到輸出判斷單元,發(fā)送完畢后等待從輸出判斷單元接收表項(xiàng)清零信號(hào),以將保留站表中信息已輸出的表項(xiàng)清零。相關(guān)性判斷單元產(chǎn)生各保留站表項(xiàng)之間的命令相關(guān)信息,將相關(guān)性信息發(fā)送給控制邏輯單元。相關(guān)性判斷單元接收控制邏輯單元發(fā)送的各個(gè)表項(xiàng)的基片編號(hào),判斷最近寫入表項(xiàng)j(j為正整數(shù),1 < j ^ Μ)的基片編號(hào)與其他表項(xiàng)的基片編號(hào)是否相等,如果表項(xiàng) k(k為正整數(shù),1彡k彡M)的基片編號(hào)與表項(xiàng)j的基片編號(hào)相等,則表項(xiàng)j中的控制指令與表項(xiàng)k中的控制指令具有相關(guān)性,將表項(xiàng)編號(hào)k發(fā)送給控制邏輯單元,由控制邏輯單元在表項(xiàng)j的相關(guān)性域?qū)懭氡眄?xiàng)編號(hào)k?;瑺顟B(tài)設(shè)置單元由M個(gè)寄存器組成,從動(dòng)態(tài)調(diào)度模塊接收M個(gè)基片的基片狀態(tài)信號(hào),緩存在M個(gè)寄存器中,從控制邏輯單元接收保留站中M個(gè)表項(xiàng)的基片編號(hào),將各個(gè)基片編號(hào)分別與1、……M比較,如果相等,則將對(duì)應(yīng)基片編號(hào)的基片狀態(tài)信號(hào)發(fā)送給控制邏輯單元,由控制邏輯單元寫入保留站表的基片狀態(tài)域。輸出判斷單元是一個(gè)比較器,它接收控制邏輯單元發(fā)送的某一保留站表項(xiàng)的信息,判斷表項(xiàng)的相關(guān)性域和基片狀態(tài)域的值是否為零,判斷表項(xiàng)的有效性域的值是否為一。 如果保留站表項(xiàng)中的相關(guān)性域和基片狀態(tài)域?yàn)榱?,且有效性域?yàn)橐?,輸出判斷單元發(fā)送該保留站表項(xiàng)中的控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)、表項(xiàng)編號(hào)信息給動(dòng)態(tài)調(diào)度模塊。信息輸出后,輸出判斷單元發(fā)送表項(xiàng)清零信號(hào)給控制邏輯單元。圖4是本發(fā)明中保留站內(nèi)保留站表示意圖。保留站表由M個(gè)表項(xiàng)組成,每個(gè)表項(xiàng)由八個(gè)域構(gòu)成表項(xiàng)編號(hào)、控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)、命令相關(guān)性、基片狀態(tài)、有效性。表項(xiàng)編號(hào)域?qū)挾葹镮og2M,從0開(kāi)始編號(hào)??刂浦噶钣?qū)挾葹镃,指明控制指令的類型。地址指令域?qū)挾葹?4-C-T,指明控制指令訪存的物理地址。標(biāo)識(shí)域?qū)挾葹門,指明控制指令的編號(hào)?;幪?hào)域?qū)挾葹镮og2M,指明控制指令所操作的基片。命令相關(guān)性域?qū)挾葹镸,指明該表項(xiàng)中的控制指令與其他表項(xiàng)中的控制指令之間的相關(guān)性,若命令相關(guān)性域的第i位有效,i為正整數(shù),M,表示當(dāng)前表項(xiàng)中的控制指令與第i表項(xiàng)中的控制指令之間存在命令相關(guān),若無(wú)效,表示不存在命令相關(guān)。 基片狀態(tài)域?qū)挾葹?,指明當(dāng)前控制指令所操作的目標(biāo)基片狀態(tài)。有效性域?qū)挾葹?,指明當(dāng)前表項(xiàng)的內(nèi)容是否有效。圖5是本發(fā)明中動(dòng)態(tài)調(diào)度模塊結(jié)構(gòu)示意圖。動(dòng)態(tài)調(diào)度模塊由第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器、第十多路選擇器、M個(gè)狀態(tài)機(jī)、仲裁器和第二邏輯或門組成,狀態(tài)機(jī)編號(hào)為狀態(tài)機(jī) 1,……狀態(tài)機(jī)k,……狀態(tài)機(jī)M,第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器、第十多路選擇器都是1:M多路選擇器,第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器對(duì)外與保留站模塊相連,對(duì)內(nèi)與所有的狀態(tài)機(jī)相連,第十多路選擇器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與所有的狀態(tài)機(jī)相連,每個(gè)狀態(tài)機(jī)對(duì)外與預(yù)處理模塊、保留站模塊、后處理模塊相連,對(duì)內(nèi)與第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器、第十多路選擇器、仲裁器、第二邏輯或門相連,仲裁器與所有狀態(tài)機(jī)相連,第二邏輯或門對(duì)外與低層閃存控制模塊相連,對(duì)內(nèi)與所有狀態(tài)機(jī)相連。第六多路選擇器接收保留站模塊發(fā)送的控制指令和基片編號(hào),根據(jù)基片編號(hào)的值,將控制指令發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī)。第七多路選擇器接收保留站模塊發(fā)送的地址指令和基片編號(hào),將地址指令發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī)。第八多路選擇器接收保留站模塊發(fā)送的標(biāo)識(shí)和基片編號(hào),將標(biāo)識(shí)發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī)。第九多路選擇器接收保留站模塊發(fā)送的表項(xiàng)編號(hào)和基片編號(hào),將表項(xiàng)編號(hào)發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī)。第十多路選擇器接收預(yù)處理模塊發(fā)送的寫數(shù)據(jù)和保留站模塊發(fā)送的基片編號(hào),將寫數(shù)據(jù)發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī)。仲裁器接收所有狀態(tài)機(jī)發(fā)送的請(qǐng)求信號(hào),初始情況下,從第一個(gè)狀態(tài)機(jī)(即狀態(tài)機(jī)1)的請(qǐng)求信號(hào)開(kāi)始檢測(cè),如果請(qǐng)求信號(hào)有效,則發(fā)送應(yīng)答信號(hào)給狀態(tài)機(jī)1,否則,檢測(cè)下一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào),直到找到有效的請(qǐng)求信號(hào)。響應(yīng)某一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào)后,記錄狀態(tài)機(jī)編號(hào),此后再檢測(cè)請(qǐng)求信號(hào)時(shí),根據(jù)記錄的上次使用訪存信號(hào)線的狀態(tài)機(jī)編號(hào),從下一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào)開(kāi)始檢測(cè)。如果某一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào)一直為高,表示狀態(tài)機(jī)一直占用訪存信號(hào)線,此時(shí)不響應(yīng)其他的請(qǐng)求信號(hào),直到請(qǐng)求信號(hào)為低。第二邏輯或門接收M個(gè)狀態(tài)機(jī)發(fā)送的M路訪存信號(hào),如果某一路訪存信號(hào)沒(méi)有值, 則該路訪存信號(hào)為零,由于每次仲裁器只給一個(gè)狀態(tài)機(jī)分配訪存信號(hào)線的使用,所以只有一路訪存信號(hào)有效,對(duì)這些訪存信號(hào)進(jìn)行邏輯或運(yùn)算,得到其中有效的一路訪存信號(hào),發(fā)送到低層閃存控制模塊。圖6是本發(fā)明中動(dòng)態(tài)調(diào)度模塊內(nèi)狀態(tài)機(jī)示意圖。狀態(tài)機(jī)k(k = 1,2……,M)均由7個(gè)狀態(tài)組成,“000”狀態(tài)表示狀態(tài)機(jī)空閑,“001” 狀態(tài)表示等待仲裁器的應(yīng)答信號(hào),“010”狀態(tài)表示分析控制指令,“011”狀態(tài)表示等待數(shù)據(jù)從基片讀出并寫入低層閃存控制模塊,“100”狀態(tài)表示等待數(shù)據(jù)從低層閃存控制模塊讀出并寫入后處理模塊,“ 101”狀態(tài)表示等待數(shù)據(jù)從預(yù)處理模塊寫入低層閃存控制模塊,“ 110” 狀態(tài)表示等待數(shù)據(jù)從低層閃存控制模塊寫入基片。上電復(fù)位時(shí),狀態(tài)機(jī)處于“000”狀態(tài),從第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器接收保留站表的信息后,轉(zhuǎn)移到“001”狀態(tài)。狀態(tài)機(jī)處于“001”狀態(tài)時(shí),向仲裁器發(fā)送請(qǐng)求信號(hào),等待仲裁器分配訪存信號(hào)線的使用,狀態(tài)機(jī)接收到仲裁器應(yīng)答信號(hào)后轉(zhuǎn)移到“010”狀態(tài)。狀態(tài)機(jī)處于 “010”狀態(tài)時(shí),向保留站模塊發(fā)送基片忙狀態(tài)信號(hào),分析控制指令,生成訪存信號(hào),將訪存信號(hào)輸出到第二邏輯或門。分析控制指令后,如果是讀指令,則轉(zhuǎn)移到“011”狀態(tài),如果是寫指令,則轉(zhuǎn)移到“101”狀態(tài)。狀態(tài)機(jī)處于“011”狀態(tài)時(shí),狀態(tài)機(jī)等待低層閃存控制模塊將數(shù)據(jù)從基片讀出并緩存在低層閃存控制模塊,當(dāng)數(shù)據(jù)讀出完畢后,轉(zhuǎn)移到“100”狀態(tài)。狀態(tài)機(jī)處于“100”狀態(tài)時(shí),向保留站模塊發(fā)送基片空閑狀態(tài)信號(hào),向后處理模塊發(fā)送寫隊(duì)列信號(hào)和從保留站模塊接收的標(biāo)識(shí),等待數(shù)據(jù)從低層閃存控制模塊讀出并寫入后處理模塊,當(dāng)數(shù)據(jù)從低層閃存控制模塊讀出完畢后,狀態(tài)機(jī)轉(zhuǎn)移到“000”狀態(tài)。狀態(tài)機(jī)處于“101”狀態(tài)時(shí),等待數(shù)據(jù)從預(yù)處理模塊寫入低層閃存控制模塊,寫入完畢后,轉(zhuǎn)移到“110”狀態(tài)。狀態(tài)機(jī)處于 “ 110”狀態(tài)時(shí),等待數(shù)據(jù)從低層閃存控制模塊寫入基片,寫入完畢后轉(zhuǎn)移到“000”狀態(tài)。圖7是本發(fā)明中后處理模塊結(jié)構(gòu)示意圖。后處理模塊由比較器、第二數(shù)據(jù)隊(duì)列組、第十一多路選擇器組成。比較器對(duì)外與動(dòng)態(tài)調(diào)度模塊、處理器相連,對(duì)內(nèi)與第二數(shù)據(jù)隊(duì)列組、第十一多路選擇器相連,第二數(shù)據(jù)隊(duì)列組對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與比較器、第十一多路選擇器相連,第十一多路選擇器對(duì)外與處理器相連,對(duì)內(nèi)與比較器、第二數(shù)據(jù)隊(duì)列組相連。
第二數(shù)據(jù)隊(duì)列組的參數(shù)與組成和第一數(shù)據(jù)隊(duì)列組相同,它接收動(dòng)態(tài)調(diào)度模塊發(fā)送的M路寫隊(duì)列信號(hào)和讀數(shù)據(jù),將讀數(shù)據(jù)寫入寫隊(duì)列信號(hào)有效的數(shù)據(jù)隊(duì)列中,接收比較器發(fā)送的M路讀隊(duì)列信號(hào),將讀隊(duì)列信號(hào)有效的數(shù)據(jù)隊(duì)列中的數(shù)據(jù)讀出發(fā)送到第十一多路選擇
ο比較器從動(dòng)態(tài)調(diào)度模塊接收M路標(biāo)識(shí),從處理器接收一路標(biāo)識(shí),對(duì)從處理器接收的標(biāo)識(shí)與從動(dòng)態(tài)調(diào)度模塊接收的標(biāo)識(shí)一一比較,如果第i路標(biāo)識(shí)(i = 1,2,……M)與從處理器接收的標(biāo)識(shí)相等,則發(fā)送讀隊(duì)列信號(hào)i到第二數(shù)據(jù)隊(duì)列組中的數(shù)據(jù)隊(duì)列i,發(fā)送值為i 的隊(duì)列編號(hào)到第十一多路選擇器。第十一多路選擇器是M:1多路選擇器,它接收第二數(shù)據(jù)隊(duì)列組發(fā)送的M路讀數(shù)據(jù), 接收比較器發(fā)送的值為i的隊(duì)列編號(hào),將第i路讀數(shù)據(jù)發(fā)送到處理器。
權(quán)利要求
1. 一種支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,放在處理器和低層閃存控制模塊之間,低層閃存控制模塊與芯片相連,芯片為與非型快閃芯片,內(nèi)部包含M個(gè)基片,M為2的正整數(shù)次冪,其特征在于支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器由預(yù)處理模塊、保留站模塊、動(dòng)態(tài)調(diào)度模塊和后處理模塊組成,所述低層閃存控制模塊由M個(gè)順序存儲(chǔ)控制器并聯(lián)而成,分別控制芯片中的一個(gè)基片預(yù)處理模塊與處理器、保留站模塊、動(dòng)態(tài)調(diào)度模塊相連,內(nèi)含第一數(shù)據(jù)隊(duì)列組,預(yù)處理模塊從處理器接收控制指令和地址指令,將控制指令、地址指令發(fā)送給保留站模塊,從保留站模塊接收表項(xiàng)編號(hào);控制指令包含一個(gè)命令域、一個(gè)標(biāo)識(shí)域和一個(gè)地址域,命令域?qū)挾葹?C,C為正整數(shù),指明控制指令的類型,包括讀指令和寫指令;標(biāo)識(shí)域?qū)挾葹門,T為正整數(shù),指明當(dāng)前指令的編號(hào);地址域?qū)挾葹?2-C-T,指明指令操作的高位物理地址;地址指令包含一個(gè)地址域,指明指令操作的低位物理地址;預(yù)處理模塊從處理器接收寫數(shù)據(jù)指令,緩存寫數(shù)據(jù)指令中的數(shù)據(jù)到第一數(shù)據(jù)隊(duì)列組;寫數(shù)據(jù)指令包含一個(gè)數(shù)據(jù)域,指明要寫入基片的數(shù)據(jù);預(yù)處理模塊從動(dòng)態(tài)調(diào)度模塊接收隊(duì)列編號(hào)與讀隊(duì)列信號(hào),讀取第一數(shù)據(jù)隊(duì)列組中的寫數(shù)據(jù),發(fā)送寫數(shù)據(jù)到動(dòng)態(tài)調(diào)度模塊;保留站模塊與預(yù)處理模塊、動(dòng)態(tài)調(diào)度模塊相連,內(nèi)有保留站表,保留站表由M個(gè)表項(xiàng)組成,每個(gè)表項(xiàng)由八個(gè)域構(gòu)成表項(xiàng)編號(hào)、控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)、命令相關(guān)性、 基片狀態(tài)、有效性;表項(xiàng)編號(hào)域從0開(kāi)始編號(hào);控制指令域指明控制指令的類型;地址指令域指明控制指令訪存的物理地址;標(biāo)識(shí)域指明控制指令的編號(hào);基片編號(hào)域指明控制指令所操作的基片;命令相關(guān)性域指明該表項(xiàng)中的控制指令與其他表項(xiàng)中的控制指令之間的相關(guān)性,若命令相關(guān)性域的第i位有效,i為正整數(shù),M,表示當(dāng)前表項(xiàng)中的控制指令與第i表項(xiàng)中的控制指令之間存在命令相關(guān),若無(wú)效,表示不存在命令相關(guān);基片狀態(tài)域指明當(dāng)前控制指令所操作的目標(biāo)基片狀態(tài);有效性域指明當(dāng)前表項(xiàng)的內(nèi)容是否有效;保留站模塊接收預(yù)處理模塊發(fā)送的控制指令,將控制指令的命令域、標(biāo)識(shí)域和地址域分離,命令域信息寫入保留站表的控制指令域,標(biāo)識(shí)域信息寫入保留站表的標(biāo)識(shí)域,地址域信息寫入保留站表中地址指令域的高32-C-T位,發(fā)送表項(xiàng)編號(hào)給預(yù)處理模塊;保留站模塊將地址域的高Iog2M位寫入保留站表的基片編號(hào)域;保留站模塊接收預(yù)處理模塊發(fā)送的地址指令,寫入保留站表中與命令域同一表項(xiàng)的地址指令域的低32位,接收動(dòng)態(tài)調(diào)度模塊發(fā)送的基片狀態(tài),寫入保留站表的基片狀態(tài)域;如果當(dāng)前寫入保留站表項(xiàng)的基片編號(hào)與第i 個(gè)表項(xiàng)的基片編號(hào)相等,則表示當(dāng)前控制指令與第i個(gè)表項(xiàng)的控制指令具有相關(guān)性,將第i 個(gè)表項(xiàng)的表項(xiàng)編號(hào)寫入當(dāng)前表項(xiàng)的命令相關(guān)性域的第i位,否則,命令相關(guān)性域?yàn)榱?,i不等于當(dāng)前寫表項(xiàng)編號(hào);當(dāng)保留站表項(xiàng)中的基片狀態(tài)空閑且命令相關(guān)性為零時(shí),保留站模塊向動(dòng)態(tài)調(diào)度模塊發(fā)送該保留站表項(xiàng)中的控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)、表項(xiàng)編號(hào);動(dòng)態(tài)調(diào)度模塊與預(yù)處理模塊、保留站模塊、后處理模塊、低層閃存控制模塊相連;動(dòng)態(tài)調(diào)度模塊接收并緩存保留站模塊發(fā)送的控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)和表項(xiàng)編號(hào), 產(chǎn)生基片狀態(tài)信號(hào)并發(fā)送給保留站模塊,并把控制指令轉(zhuǎn)換成NAND Flash芯片所識(shí)別的時(shí)序,根據(jù)控制指令的類型產(chǎn)生訪存信號(hào),并將訪存信號(hào)發(fā)送給低層閃存控制模塊;如果控制指令是寫指令,動(dòng)態(tài)調(diào)度模塊發(fā)送讀隊(duì)列信號(hào)給預(yù)處理模塊,將表項(xiàng)編號(hào)作為隊(duì)列編號(hào)發(fā)送給預(yù)處理模塊,讀取第一數(shù)據(jù)隊(duì)列組中的寫數(shù)據(jù)發(fā)送給低層閃存控制模塊;如果控制指令是讀指令,動(dòng)態(tài)調(diào)度模塊從低層閃存控制模塊讀取從基片讀出的數(shù)據(jù)發(fā)送給后處理模塊,同時(shí)發(fā)送寫隊(duì)列信號(hào)和標(biāo)識(shí)給后處理模塊;后處理模塊內(nèi)含第二數(shù)據(jù)隊(duì)列組,與處理器、動(dòng)態(tài)調(diào)度模塊相連,后處理模塊從動(dòng)態(tài)調(diào)度模塊接收M路寫隊(duì)列信號(hào)和讀數(shù)據(jù),將讀數(shù)據(jù)寫入第二數(shù)據(jù)隊(duì)列組,從動(dòng)態(tài)調(diào)度模塊接收M路標(biāo)識(shí),從處理器接收一路標(biāo)識(shí),將從處理器接收的標(biāo)識(shí)與從動(dòng)態(tài)調(diào)度模塊接收的M路標(biāo)識(shí)一一進(jìn)行比較,將相等的標(biāo)識(shí)對(duì)應(yīng)的第二數(shù)據(jù)隊(duì)列組中的數(shù)據(jù)輸出給處理器。
2.如權(quán)利要求1所述的支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,其特征在于所述控制指令的命令域?qū)挾菴為3,標(biāo)識(shí)域?qū)挾萒為16,地址域?qū)挾葹?3 ;地址指令的地址域?qū)挾葹?2 ;寫數(shù)據(jù)指令的數(shù)據(jù)域?qū)挾葹?2。
3.如權(quán)利要求1所述的支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,其特征在于預(yù)處理模塊由地址識(shí)別單元、第一多路選擇器、第二多路選擇器、第三多路選擇器、第一數(shù)據(jù)隊(duì)列組和第一邏輯或門組成;地址識(shí)別單元對(duì)外與處理器、動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第一多路選擇器相連,第一多路選擇器對(duì)外與保留站模塊、對(duì)內(nèi)與地址識(shí)別單元、第一數(shù)據(jù)隊(duì)列組相連,第二多路選擇器對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第一數(shù)據(jù)隊(duì)列組和第一邏輯或門相連,第三多路選擇器對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第一數(shù)據(jù)隊(duì)列組和第一邏輯或門相連,第一數(shù)據(jù)隊(duì)列組與第一多路選擇器、第二多路選擇器、第三多路選擇器相連,第一邏輯或門對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與第二多路選擇器、第三多路選擇器相連;地址識(shí)別單元通過(guò)數(shù)據(jù)線從處理器接收控制指令、地址指令、寫數(shù)據(jù)指令,通過(guò)地址線從處理器接收地址,根據(jù)地址的值識(shí)別各個(gè)指令,如果是控制指令,則將控制指令發(fā)送給命令寄存器,如果是地址指令,則將地址指令發(fā)送給地址寄存器,如果是寫數(shù)據(jù)指令,則將寫數(shù)據(jù)指令中的數(shù)據(jù)發(fā)送給第一多路選擇器;第一邏輯或門接收動(dòng)態(tài)調(diào)度模塊發(fā)送的M路隊(duì)列編號(hào),如果某一路隊(duì)列編號(hào)沒(méi)有值, 則該路隊(duì)列編號(hào)為零,每次只有一路隊(duì)列編號(hào)值不為零,對(duì)這些編號(hào)進(jìn)行邏輯或運(yùn)算,取出不為零的一路隊(duì)列編號(hào),發(fā)送給第二多路選擇器和第三多路選擇器;第一多路選擇器是1:M多路選擇器,它接收地址識(shí)別單元發(fā)送的寫數(shù)據(jù),根據(jù)從保留站模塊接收的表項(xiàng)編號(hào)將寫數(shù)據(jù)發(fā)送給第一數(shù)據(jù)隊(duì)列組中編號(hào)與表項(xiàng)編號(hào)相同的數(shù)據(jù)隊(duì)列;第二多路選擇器是M:1多路選擇器,它從動(dòng)態(tài)調(diào)度模塊接收M個(gè)讀隊(duì)列信號(hào),從第一邏輯或門接收隊(duì)列編號(hào),根據(jù)隊(duì)列編號(hào)的值i將讀隊(duì)列信號(hào)i輸出到第一數(shù)據(jù)隊(duì)列組中的數(shù)據(jù)隊(duì)列 i,i = 1,2,......M;第三多路選擇器是M: 1多路選擇器,它接收第一數(shù)據(jù)隊(duì)列組發(fā)送的M路數(shù)據(jù)和第一邏輯或門發(fā)送的隊(duì)列編號(hào),根據(jù)隊(duì)列編號(hào)的值i將第i路寫數(shù)據(jù)輸出到動(dòng)態(tài)調(diào)度模塊。第一數(shù)據(jù)隊(duì)列組由M個(gè)相同的數(shù)據(jù)隊(duì)列組成,第一數(shù)據(jù)隊(duì)列組一方面將第一多路選擇器發(fā)送的寫數(shù)據(jù)寫入第一多路選擇器選中的數(shù)據(jù)隊(duì)列,一方面根據(jù)第二多路選擇器發(fā)送的讀隊(duì)列信號(hào)將數(shù)據(jù)隊(duì)列中的寫數(shù)據(jù)發(fā)送給第三多路選擇器。
4.如權(quán)利要求1所述的支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,其特征在于所述保留站模塊由第四多路選擇器、第五多路選擇器、表項(xiàng)編號(hào)寄存器、有效性監(jiān)聽(tīng)單元、相關(guān)性判斷單元、基片狀態(tài)設(shè)置單元、輸出判斷單元、控制邏輯單元和保留站表組成;第四多路選擇器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與有效性監(jiān)聽(tīng)單元、控制邏輯單元相連,第五多路選擇器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與表項(xiàng)編號(hào)寄存器、控制邏輯單元相連,表項(xiàng)編號(hào)寄存器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與有效性監(jiān)聽(tīng)單元、第五多路選擇器相連,有效性監(jiān)聽(tīng)單元與第四多路選擇器、表項(xiàng)編號(hào)寄存器、控制邏輯單元相連,相關(guān)性判斷單元與控制邏輯單元相連,基片狀態(tài)設(shè)置單元對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與控制邏輯單元相連,輸出判斷單元對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與控制邏輯單元相連,控制邏輯單元與第四多路選擇器、第五多路選擇器、有效性監(jiān)聽(tīng)單元、相關(guān)性判斷單元、基片狀態(tài)設(shè)置單元、輸出判斷單元、保留站表相連,保留站表與控制邏輯單元相連;有效性監(jiān)聽(tīng)單元接收控制邏輯單元發(fā)送的各個(gè)表項(xiàng)的有效性域值,根據(jù)有效性域的值產(chǎn)生保留站表中第一個(gè)空表項(xiàng)的表項(xiàng)編號(hào),把第一個(gè)空表項(xiàng)的表項(xiàng)編號(hào)發(fā)送給第四多路選擇器;控制指令寫入保留站表的表項(xiàng)后,表項(xiàng)的有效性域發(fā)生由0到1的變化,有效性監(jiān)聽(tīng)單元通過(guò)邊沿檢測(cè),檢測(cè)到該變化,將變化的表項(xiàng)編號(hào)輸出到表項(xiàng)編號(hào)寄存器;表項(xiàng)編號(hào)寄存器存儲(chǔ)有效性監(jiān)聽(tīng)單元發(fā)來(lái)的控制指令寫入的表項(xiàng)編號(hào),將表項(xiàng)編號(hào)發(fā)送給第五多路選擇器和預(yù)處理模塊的第一多路選擇器;第四多路選擇器接收預(yù)處理模塊發(fā)送的控制指令,根據(jù)有效性監(jiān)聽(tīng)單元發(fā)來(lái)的保留站表第一個(gè)空表項(xiàng)的表項(xiàng)編號(hào)將控制指令發(fā)送給控制邏輯單元;第五多路選擇器接收預(yù)處理模塊發(fā)送的地址指令,根據(jù)表項(xiàng)編號(hào)寄存器中的值將地址指令發(fā)送給控制邏輯單元;控制邏輯單元從第四多路選擇器接收控制指令,將控制指令的命令域、標(biāo)識(shí)域和地址域分離,命令域信息寫入保留站表中第一個(gè)空表項(xiàng)的控制指令域,標(biāo)識(shí)域信息寫入表項(xiàng)的標(biāo)識(shí)域,地址域信息寫入表項(xiàng)中地址指令域的高32-C-T位,將地址域的高Iog2M位寫入表項(xiàng)的基片編號(hào)域;從第五多路選擇器接收地址指令,寫入與控制指令同一個(gè)表項(xiàng)的地址指令域的低32位;控制邏輯單元將基片編號(hào)發(fā)送到相關(guān)性判斷單元和基片狀態(tài)設(shè)置單元,從相關(guān)性判斷單元接收相關(guān)性信息,寫入與控制指令同一個(gè)表項(xiàng)的命令相關(guān)性域,從基片狀態(tài)設(shè)置單元接收基片狀態(tài)信息,寫入與控制指令同一個(gè)表項(xiàng)的基片狀態(tài)域;當(dāng)控制邏輯單元將基片狀態(tài)寫入保留站表后,發(fā)送該保留站表項(xiàng)的內(nèi)容到輸出判斷單元,發(fā)送完畢后等待從輸出判斷單元接收表項(xiàng)清零信號(hào),以將保留站表中信息已輸出的表項(xiàng)清零;相關(guān)性判斷單元產(chǎn)生各保留站表項(xiàng)之間的命令相關(guān)信息,將相關(guān)性信息發(fā)送給控制邏輯單元;相關(guān)性判斷單元接收控制邏輯單元發(fā)送的各個(gè)表項(xiàng)的基片編號(hào),判斷最近寫入表項(xiàng)j的基片編號(hào)與其他表項(xiàng)的基片編號(hào)是否相等,如果表項(xiàng)k的基片編號(hào)與表項(xiàng)j的基片編號(hào)相等,則表項(xiàng)j中的控制指令與表項(xiàng)k中的控制指令具有相關(guān)性,將表項(xiàng)編號(hào)k 發(fā)送給控制邏輯單元,由控制邏輯單元在表項(xiàng)j的相關(guān)性域?qū)懭氡眄?xiàng)編號(hào)k,j為正整數(shù), 1彡j彡M,k為正整數(shù),1彡k彡M ;基片狀態(tài)設(shè)置單元由M個(gè)寄存器組成,從動(dòng)態(tài)調(diào)度模塊接收M個(gè)基片的基片狀態(tài)信號(hào), 緩存在M個(gè)寄存器中,從控制邏輯單元接收保留站中M個(gè)表項(xiàng)的基片編號(hào),將各個(gè)基片編號(hào)分別與1、……M比較,如果相等,則將對(duì)應(yīng)基片編號(hào)的基片狀態(tài)信號(hào)發(fā)送給控制邏輯單元, 由控制邏輯單元寫入保留站表的基片狀態(tài)域;輸出判斷單元是一個(gè)比較器,它接收控制邏輯單元發(fā)送的某一保留站表項(xiàng)的信息,判斷表項(xiàng)的相關(guān)性域和基片狀態(tài)域的值是否為零,判斷表項(xiàng)的有效性域的值是否為一;如果保留站表項(xiàng)中的相關(guān)性域和基片狀態(tài)域?yàn)榱?,且有效性域?yàn)橐?,輸出判斷單元發(fā)送該保留站表項(xiàng)中的控制指令、地址指令、標(biāo)識(shí)、基片編號(hào)、表項(xiàng)編號(hào)信息給動(dòng)態(tài)調(diào)度模塊;信息輸出后,輸出判斷單元發(fā)送表項(xiàng)清零信號(hào)給控制邏輯單元。
5.如權(quán)利要求1所述的支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,其特征在于所述動(dòng)態(tài)調(diào)度模塊由第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器、第十多路選擇器、M個(gè)狀態(tài)機(jī)、仲裁器和第二邏輯或門組成,第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器、第十多路選擇器都是1:M多路選擇器,第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器對(duì)外與保留站模塊相連,對(duì)內(nèi)與所有的狀態(tài)機(jī)相連,第十多路選擇器對(duì)外與預(yù)處理模塊相連,對(duì)內(nèi)與所有的狀態(tài)機(jī)相連,每個(gè)狀態(tài)機(jī)對(duì)外與預(yù)處理模塊、保留站模塊、后處理模塊相連,對(duì)內(nèi)與第六多路選擇器、第七多路選擇器、第八多路選擇器、第九多路選擇器、第十多路選擇器、仲裁器、第二邏輯或門相連,仲裁器與所有狀態(tài)機(jī)相連,第二邏輯或門對(duì)外與低層閃存控制模塊相連,對(duì)內(nèi)與所有狀態(tài)機(jī)相連;第六多路選擇器接收保留站模塊發(fā)送的控制指令和基片編號(hào),根據(jù)基片編號(hào)的值,將控制指令發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī);第七多路選擇器接收保留站模塊發(fā)送的地址指令和基片編號(hào),將地址指令發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī);第八多路選擇器接收保留站模塊發(fā)送的標(biāo)識(shí)和基片編號(hào),將標(biāo)識(shí)發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī);第九多路選擇器接收保留站模塊發(fā)送的表項(xiàng)編號(hào)和基片編號(hào),將表項(xiàng)編號(hào)發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī);第十多路選擇器接收預(yù)處理模塊發(fā)送的寫數(shù)據(jù)和保留站模塊發(fā)送的基片編號(hào),將寫數(shù)據(jù)發(fā)送給編號(hào)與基片編號(hào)相等的狀態(tài)機(jī);仲裁器接收所有狀態(tài)機(jī)發(fā)送的請(qǐng)求信號(hào),初始情況下,從第一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào)開(kāi)始檢測(cè),如果請(qǐng)求信號(hào)有效,則發(fā)送應(yīng)答信號(hào),否則,檢測(cè)下一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào),直至檢測(cè)到有效的請(qǐng)求信號(hào);響應(yīng)某一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào)后,記錄狀態(tài)機(jī)編號(hào),此后再檢測(cè)請(qǐng)求信號(hào)時(shí),根據(jù)記錄的上次使用訪存信號(hào)線的狀態(tài)機(jī)編號(hào),從下一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào)開(kāi)始檢測(cè);如果某一個(gè)狀態(tài)機(jī)的請(qǐng)求信號(hào)一直為高,表示狀態(tài)機(jī)一直占用訪存信號(hào)線,此時(shí)不響應(yīng)其他的請(qǐng)求信號(hào),直到請(qǐng)求信號(hào)為低;第二邏輯或門接收M個(gè)狀態(tài)機(jī)發(fā)送的M路訪存信號(hào),如果某一路訪存信號(hào)沒(méi)有值,則該路訪存信號(hào)為零,對(duì)這些訪存信號(hào)進(jìn)行邏輯或運(yùn)算,得到其中有效的一路訪存信號(hào),發(fā)送到低層閃存控制模塊。
6.如權(quán)利要求1所述的支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,其特征在于所述后處理模塊由比較器、第二數(shù)據(jù)隊(duì)列組、第十一多路選擇器組成;比較器對(duì)外與動(dòng)態(tài)調(diào)度模塊、處理器相連,對(duì)內(nèi)與第二數(shù)據(jù)隊(duì)列組、第十一多路選擇器相連,第二數(shù)據(jù)隊(duì)列組對(duì)外與動(dòng)態(tài)調(diào)度模塊相連,對(duì)內(nèi)與比較器、第十一多路選擇器相連,第十一多路選擇器對(duì)外與處理器相連,對(duì)內(nèi)與比較器、第二數(shù)據(jù)隊(duì)列組相連;第二數(shù)據(jù)隊(duì)列組由M個(gè)相同的數(shù)據(jù)隊(duì)列組成,它接收動(dòng)態(tài)調(diào)度模塊發(fā)送的M路寫隊(duì)列信號(hào)和讀數(shù)據(jù),將讀數(shù)據(jù)寫入寫隊(duì)列信號(hào)有效的數(shù)據(jù)隊(duì)列中,接收比較器發(fā)送的M路讀隊(duì)列信號(hào),將讀隊(duì)列信號(hào)有效的數(shù)據(jù)隊(duì)列中的數(shù)據(jù)讀出發(fā)送到第十一多路選擇器;比較器從動(dòng)態(tài)調(diào)度模塊接收M路標(biāo)識(shí),從處理器接收一路標(biāo)識(shí),對(duì)從處理器接收的標(biāo)識(shí)與從動(dòng)態(tài)調(diào)度模塊接收的標(biāo)識(shí)一一比較,如果第i路標(biāo)識(shí)與從處理器接收的標(biāo)識(shí)相等, 則發(fā)送讀隊(duì)列信號(hào)i到第二數(shù)據(jù)隊(duì)列組中的數(shù)據(jù)隊(duì)列i,發(fā)送值為i的隊(duì)列編號(hào)到第十一多路選擇器,i = 1,2,……M;第十一多路選擇器是M:1多路選擇器,它接收第二數(shù)據(jù)隊(duì)列組發(fā)送的M路讀數(shù)據(jù),接收比較器發(fā)送的值為i的隊(duì)列編號(hào),將第i路讀數(shù)據(jù)發(fā)送到處理器。
7.如權(quán)利要求1所述的支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,其特征在于所述保留站表中的表項(xiàng)編號(hào)域?qū)挾葹镮og2M,從0開(kāi)始編號(hào);控制指令域?qū)挾葹镃,地址指令域?qū)挾葹?4-C-T,標(biāo)識(shí)域?qū)挾葹門,基片編號(hào)域?qū)挾葹镮og2M,命令相關(guān)性域?qū)挾葹镸,基片狀態(tài)域?qū)挾葹?,有效性域?qū)挾葹?。
8.如權(quán)利要求2所述的支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,其特征在于所述第一數(shù)據(jù)隊(duì)列組、第二數(shù)據(jù)隊(duì)列組中M個(gè)數(shù)據(jù)隊(duì)列中每個(gè)數(shù)據(jù)隊(duì)列的大小等于芯片內(nèi)頁(yè)面的大小。
9.如權(quán)利要求3所述的支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,其特征在于所述表項(xiàng)編號(hào)寄存器是寬度為Iog2M位的寄存器。
10.如權(quán)利要求4所述的支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,其特征在于所述M個(gè)狀態(tài)機(jī)編號(hào)為狀態(tài)機(jī)1,……狀態(tài)機(jī)k,……,狀態(tài)機(jī)M,狀態(tài)機(jī)k由7個(gè)狀態(tài)組成,k = 1,2……,M,“000”狀態(tài)表示狀態(tài)機(jī)空閑,“001”狀態(tài)表示等待仲裁器的應(yīng)答信號(hào), “010”狀態(tài)表示分析控制指令,“011”狀態(tài)表示等待數(shù)據(jù)從基片讀出并寫入低層閃存控制模塊,“ 100”狀態(tài)表示等待數(shù)據(jù)從低層閃存控制模塊讀出并寫入后處理模塊,“ 101”狀態(tài)表示等待數(shù)據(jù)從預(yù)處理模塊寫入低層閃存控制模塊,“110”狀態(tài)表示等待數(shù)據(jù)從低層閃存控制模塊寫入基片;上電復(fù)位時(shí),狀態(tài)機(jī)處于“000”狀態(tài),從第六多路選擇器、第七多路選擇器、 第八多路選擇器、第九多路選擇器接收保留站表的信息后,轉(zhuǎn)移到“001”狀態(tài);狀態(tài)機(jī)處于 “001”狀態(tài)時(shí),向仲裁器發(fā)送請(qǐng)求信號(hào),等待仲裁器分配訪存信號(hào)線的使用,狀態(tài)機(jī)接收到仲裁器應(yīng)答信號(hào)后轉(zhuǎn)移到“010”狀態(tài);狀態(tài)機(jī)處于“010”狀態(tài)時(shí),向保留站模塊發(fā)送基片忙狀態(tài)信號(hào),分析控制指令,生成訪存信號(hào),將訪存信號(hào)輸出到第二邏輯或門;分析控制指令后,如果是讀指令,則轉(zhuǎn)移到“011”狀態(tài),如果是寫指令,則轉(zhuǎn)移到“ 101”狀態(tài);狀態(tài)機(jī)處于 “011”狀態(tài)時(shí),狀態(tài)機(jī)等待低層閃存控制模塊將數(shù)據(jù)從基片讀出并緩存在低層閃存控制模塊,當(dāng)數(shù)據(jù)讀出完畢后,轉(zhuǎn)移到“100”狀態(tài);狀態(tài)機(jī)處于“100”狀態(tài)時(shí),向保留站模塊發(fā)送基片空閑狀態(tài)信號(hào),向后處理模塊發(fā)送寫隊(duì)列信號(hào)和從保留站模塊接收的標(biāo)識(shí),等待數(shù)據(jù)從低層閃存控制模塊讀出并寫入后處理模塊,當(dāng)數(shù)據(jù)從低層閃存控制模塊讀出完畢后,狀態(tài)機(jī)轉(zhuǎn)移到“000”狀態(tài);狀態(tài)機(jī)處于“101”狀態(tài)時(shí),等待數(shù)據(jù)從預(yù)處理模塊寫入低層閃存控制模塊,寫入完畢后,轉(zhuǎn)移到“110”狀態(tài);狀態(tài)機(jī)處于“110”狀態(tài)時(shí),等待數(shù)據(jù)從低層閃存控制模塊寫入基片,寫入完畢后轉(zhuǎn)移到“000”狀態(tài)。
全文摘要
本發(fā)明公開(kāi)了一種支持操作亂序執(zhí)行的與非型快閃存儲(chǔ)控制器,目的是提高提高訪存數(shù)據(jù)吞吐率。本發(fā)明由預(yù)處理模塊、保留站模塊、動(dòng)態(tài)調(diào)度模塊和后處理模塊組成,預(yù)處理模塊由地址識(shí)別單元、三個(gè)多路選擇器、第一數(shù)據(jù)隊(duì)列組和第一邏輯或門組成;保留站模塊由二個(gè)多路選擇器、表項(xiàng)編號(hào)寄存器、有效性監(jiān)聽(tīng)單元、相關(guān)性判斷單元、基片狀態(tài)設(shè)置單元、輸出判斷單元、控制邏輯單元和保留站表組成;動(dòng)態(tài)調(diào)度模塊由五個(gè)多路選擇器、M個(gè)狀態(tài)機(jī)、仲裁器和第二邏輯或門組成;后處理模塊由比較器、第二數(shù)據(jù)隊(duì)列組、一個(gè)多路選擇器組成。采用本發(fā)明可以并行執(zhí)行對(duì)存儲(chǔ)芯片不同基片的訪存操作,提高基片工作的并行度,有效提高訪存數(shù)據(jù)吞吐率。
文檔編號(hào)G06F13/16GK102567246SQ20111045230
公開(kāi)日2012年7月11日 申請(qǐng)日期2011年12月29日 優(yōu)先權(quán)日2011年12月29日
發(fā)明者肖儂, 賴明澈, 陳博, 黃立波 申請(qǐng)人:中國(guó)人民解放軍國(guó)防科學(xué)技術(shù)大學(xué)