專利名稱:中心單元、存儲器模塊、存儲器系統(tǒng)和對其讀和寫的方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及一種中心單元、存儲器模塊、存儲器系統(tǒng)和對其進行讀和寫的方法。
背景技術(shù):
圖1說明了幾種傳統(tǒng)的存儲器模塊類型,其包括單列直插式存儲器模塊(SIMM)和雙列直插式存儲器模塊(DIMM)。SIMM使存儲器片在所述存儲器模塊一側(cè)上,其中DIMM使存儲器片在所述存儲器模塊兩側(cè)上。DIMM還可以定義為寄存的DIMM(R-DIMM)和完全緩沖的DIMM(FBDIMM)。
在R-DIMM中,除數(shù)據(jù)信號以外的信號經(jīng)由一個或多個寄存器從存儲器控制器傳送到存儲器片。在FBDIMM中,來自存儲器控制器的所有信號通過中心單元(hub)或高級存儲器緩沖器(AMB)傳送到存儲器片。如圖1所示,F(xiàn)BDIMM的優(yōu)點在于具有更高的速度和/或更高密度的應(yīng)用。
圖2說明傳統(tǒng)的FBDIMM,其包括中心單元和多個存儲器片。中心單元可以在接收器R處從存儲器控制器或相鄰的FBDIMM接收南向數(shù)據(jù)包(SB),并且將該SB數(shù)據(jù)包通過發(fā)送器T發(fā)送到相鄰的FBDIMM。從相反的方向,利用接收器R和發(fā)送器T,所述中心單元也可以從相鄰的FBDIMM接收北向數(shù)據(jù)包(NB),并且將其發(fā)送到存儲器控制器或相鄰的FBDIMM。中心單元可以向多個存儲器片提供時鐘(CLK)信號、控制(CON)信號、和/或地址(ADDR)信號。中心單元可以在多個存儲器片間來回地交換數(shù)據(jù)(DATA)。
圖3說明了傳統(tǒng)的存儲器系統(tǒng),其包括主機(例如,存儲器控制器)和多個存儲器模塊。CLK信號、南向信號(STx)和北向信號(NRx)與圖2所說明的一致。諸如圖3所說明的存儲器系統(tǒng)的傳統(tǒng)的存儲器系統(tǒng)可以包括FBDIMM。
圖4從不同透視圖,說明了諸如圖3的傳統(tǒng)存儲器系統(tǒng)的傳統(tǒng)存儲器系統(tǒng)。圖4所示的八(8)個存儲器模塊(例如,F(xiàn)BDIMM)被比喻為以“菊花鏈(daisy chain)”連接來進行連接,其中所述多個存儲器模塊通過菊花鏈總線串聯(lián)。在這樣的排列中,發(fā)送到和來自所述存儲器控制器的信號被依次傳送到每個相鄰的存儲器模塊。
圖5更為詳細(xì)地說明了傳統(tǒng)的存儲器系統(tǒng)。如圖5所示,主機(例如,存儲器控制器)包括發(fā)送器STx和接收器NRx,該發(fā)送器STx將南向數(shù)據(jù)包(例如,高速南向數(shù)據(jù)包)發(fā)送到第一FBDIMM MM1,該接收器NRx從所述第一FBDIMM MM1接收北向數(shù)據(jù)包。南向數(shù)據(jù)包包括FBDIMM選擇位、等級選擇位、控制信號、地址信號和/或要寫入的數(shù)據(jù)。北向數(shù)據(jù)包可以包括從多個FBDIMM MM1-MMn之一中讀取的數(shù)據(jù)。多個FBDIMM(MM1-MMn)的每一個可以包括中心單元,如圖2-4所示。除了中心單元,多個FBDIMM(MM1-MMn)的每一個還可以包括多個存儲器器件M1-Mn,其接收存儲器信息,并根據(jù)存儲器信息執(zhí)行讀或?qū)懖僮鳌?br>
如圖5所示,中心單元還可以包括南向接收器SRx、南向發(fā)送器STx、北向接收器NRx、北向發(fā)送器NTx、和控制電路。南向接收器(SRx)從第一(或存儲器控制器)或相鄰的FBDIMM接收南向數(shù)據(jù)包。南向發(fā)送器STx向相鄰的FBDIMM(除了菊花鏈中最后的中心單元外)發(fā)送南向數(shù)據(jù)包。
控制電路可以將南向數(shù)據(jù)包解碼為存儲器信息,該存儲器信息可以包括例如FBDIMM選擇位、等級選擇位、控制信號、地址信號和/或數(shù)據(jù)信號。該控制信號可以包括例如/CS、/RAS、/CAS、和/WE。
所述控制電路可以提供存儲器信息到存儲器接口、存儲器寄存器、或存儲器接口寄存器,例如,圖5中的DRAM接口DRAM IF(如果存儲器片M1-Mn是DRAM存儲器)。存儲器接口、存儲器寄存器、或存儲器接口寄存器,例如DRAM接口DRAM IF接收存儲器信息并將該存儲器信息傳送到多個存儲器器件M1-Mn。
控制電路也可以將經(jīng)由存儲器接口、存儲器寄存器、或存儲器接口寄存器從多個存儲器器件M1-M2中讀取的數(shù)據(jù)編碼為數(shù)據(jù)包格式。
每個中心單元(除了菊花鏈中最后的中心單元外)的北向接收器NRx可以從相鄰的FBDIMM接收北向數(shù)據(jù)包,并且北向發(fā)送器NTx可以將所接收的北向數(shù)據(jù)包發(fā)送到主機(或存儲器控制器)或相鄰的FBDIMM。
圖6A說明了傳統(tǒng)南向(SB)數(shù)據(jù)包格式的示例。如圖5所示,南向數(shù)據(jù)包在離開主機的方向上傳送。SB數(shù)據(jù)包可以包括10比特,并且每比特可以在存儲器時鐘的一個周期中觸發(fā)12次,如圖6A所示。圖6A中用“A”表示的前四個觸發(fā)可包含循環(huán)冗余碼校驗(CRC)碼和命令(CMD)/地址(ADDR)碼。CRC碼是可用于識別所傳送的信號中的錯誤的信號。用“B”表示的其余的觸發(fā)可以包含要寫入的數(shù)據(jù)或其他命令(CMD)。
圖6B說明了傳統(tǒng)的北向(NB)數(shù)據(jù)包格式的示例。如圖5所示,北向數(shù)據(jù)包在朝向主機的方向上傳送。如圖6B所示,北向數(shù)據(jù)包可以包括14比特,并且每比特在存儲器時鐘的一個周期中觸發(fā)12次。所述北向數(shù)據(jù)包可以劃分為一個或多個讀取幀,例如,讀取幀1(RDF1)和讀取幀2(RDF2),如圖6B所示。
圖6C說明了基準(zhǔn)時鐘(CLK_REF)、存儲器時鐘(CLK_MEM)、和數(shù)據(jù)包轉(zhuǎn)移之間的關(guān)系的示例。如圖6C的示例所述,CLK_MEM的頻率是CLK_REF頻率的兩倍,并且在CLK_MEM的一個周期中存在12個數(shù)據(jù)包轉(zhuǎn)移。
圖6D說明了FBDIMM南向數(shù)據(jù)包(SB)命令解碼系統(tǒng)的示例,包括幾個可以用來控制DRAM的示例命令。如圖所示,圖6D說明了從南向數(shù)據(jù)包解碼的存儲器信息。如圖6D所示,南向數(shù)據(jù)包可以包括模塊選擇位、命令位、一個或多個列選擇位和地址信息。
如圖6D的示例中所示,位21-23可以用來選擇多個FBDIMM中的一個FBDIMM,并且可以定義為模塊選擇位。如上所述,傳統(tǒng)的存儲器系統(tǒng)可以包括8個FBDIMM。結(jié)果,需要3位(位21-23),以便識別特定的FBDIMM。
如圖6D的示例中所示,位20-18可以用來識別所期望的命令CMD,其可以用來控制FBDIMM。
如圖6D的示例中所示,單個位(位17)可以用來選擇所選FBDIMM的列(rank)。所述列限定了所期望的FBDIMM在FBDIMM的哪一側(cè)上。
如圖6D的示例中所示,位16-0可以用來識別所期望的存儲器的存儲單元和地址。
圖7是說明圖5所述的傳統(tǒng)系統(tǒng)中南向(SB)數(shù)據(jù)包的寫和讀操作的時序圖。圖7說明了基準(zhǔn)時鐘CLK_REF、存儲器時鐘CLK_MEM、SB數(shù)據(jù)包、存儲器模塊MM1-MMn、和北向數(shù)據(jù)包。
在圖7所示的時序圖中,對于寫操作,基準(zhǔn)時鐘CLK_REF從時鐘傳送線傳送到中心單元。如以上結(jié)合圖6C的討論,CLK_MEM的頻率可以兩倍于CLK_REF的頻率,并且可以通過中心單元中的鎖相環(huán)路(PLL)來產(chǎn)生。
要寫入的南向SB數(shù)據(jù)包可以在CLK_MEM的一個周期中通過南向發(fā)送器STx和南向接收器SRx傳送到所有的FBDIMM。所接收的寫SB數(shù)據(jù)包可以被每個中心單元解碼為存儲器信息。如圖6D所示,所述存儲器信息可以包括模塊選擇位,其可以由中心單元進行解碼以指示已經(jīng)選擇了特定存儲器模塊(例如存儲器模塊MM1)。在存儲器模塊MM1上的存儲器器件根據(jù)存儲器信息執(zhí)行寫操作。所有其他存儲器模塊MM2-MMn不執(zhí)行寫操作,因為它們沒有被模塊選擇位識別。
如圖7所示,對于讀操作,讀SB數(shù)據(jù)包也可以在CLK_MEM的一個周期中通過南向發(fā)送器STx和南向接收器SRx傳送到所有的FBDIMM。所接收的讀SB數(shù)據(jù)包也可以被每個中心單元解碼為存儲器信息。如圖6D所示,存儲器信息可以包括模塊選擇位,其可以由中心單元進行解碼以指示已經(jīng)選擇了特定存儲器模塊(例如,存儲器模塊MM1)。在存儲器模塊MM1上的存儲器器件根據(jù)存儲器信息執(zhí)行寫操作。具體地講,從存儲器模塊MM1的存儲器器件到存儲器模塊MM1的中心單元傳送讀數(shù)據(jù)。然后,存儲器模塊MM1的中心單元可以將讀數(shù)據(jù)編碼為北向數(shù)據(jù)包,并經(jīng)由北向發(fā)送器NTx和北向接收器NRx將北向數(shù)據(jù)包發(fā)送到主機或存儲器控制器。
在傳統(tǒng)的存儲器系統(tǒng)中,例如,以上結(jié)合圖1-7所描述的,其優(yōu)點在于能夠判斷每個存儲器模塊MM1-MMn(例如,每個FBDIMM)是否正在合適地操作。在如上所述的傳統(tǒng)的存儲器系統(tǒng)中,包括八(8)個FBDIMM,為了測試每個FBDIMM,有必要對該系統(tǒng)執(zhí)行八(8)次寫操作和八(8)次讀操作。此外,當(dāng)存儲器更密集集成時,將包括更多的FBDIMM,因此,更多的寫和讀操作成為必要。
發(fā)明內(nèi)容
本發(fā)明的示例性實施例是針對中心單元、存儲器模塊、存儲器系統(tǒng)、和對其進行讀和寫的方法。
在示例性實施例中,在測試模式中,可以忽略存儲器模塊、存儲器器件、或存儲器單元識別信息,從而可以測試寫入或測試讀出所有存儲器模塊、存儲器器件、或存儲器單元。忽略存儲器識別信息可容許同時寫或讀所有的存儲器模塊、存儲器器件、或存儲器單元,因此,減少了測試時間。
在示例性實施例中,本發(fā)明針對一種用于存儲器模塊的中心單元,該中心單元包括控制器,用于在測試模式中,忽略來自存儲器控制器的南向數(shù)據(jù)包中的存儲器識別信息。
在示例性實施例中,本發(fā)明針對一種用于存儲器模塊的中心單元,該中心單元包括控制器,用于從存儲器模塊的存儲器單元接收第一輸出信息,并且在測試模式中將第一輸出信息和來自下游存儲器模塊的第二輸出信息進行比較,以及輸出比較結(jié)果。
在示例性實施例中,本發(fā)明針對一種中心單元,該中心單元包括接收和發(fā)送部件,用于經(jīng)由第一接收總線從第一接收器接收第一數(shù)據(jù)包,并經(jīng)由第一發(fā)送總線發(fā)送該第一數(shù)據(jù)包,以及經(jīng)由第二接收總線從第二接收器接收第二數(shù)據(jù)包,并經(jīng)由第二發(fā)送總線發(fā)送該第二數(shù)據(jù)包;第一連接部件,用于通過第三總線從存儲器控制器接收測試模式,以及向存儲器控制器發(fā)送測試模式的結(jié)果;第二連接部件,用于將來自所述第一數(shù)據(jù)包的存儲器數(shù)據(jù)發(fā)送到多個存儲器單元,以及從所述多個存儲器單元接收數(shù)據(jù);和數(shù)據(jù)包處理部件,用于響應(yīng)所述測試模式、通過所述第二連接部件將所述存儲器信息無條件地傳送到多個存儲器單元,并且將所述第二數(shù)據(jù)包與從所述多個存儲器單元輸出的數(shù)據(jù)進行比較。
在示例性實施例中,本發(fā)明針對一種存儲器模塊,該存儲器模塊包括多個存儲器單元;和中心單元,該中心單元響應(yīng)來自存儲器控制器的南向數(shù)據(jù)包而忽略存儲器識別信息,并且在測試模式中將與所述南向數(shù)據(jù)包相關(guān)聯(lián)的數(shù)據(jù)寫入所述存儲器模塊的多個存儲器單元的每一個。
在示例性實施例中,本發(fā)明針對一種存儲器系統(tǒng),包括存儲器控制器;多個存儲器模塊,其以菊花鏈的方式連接到所述存儲器控制器,所述多個存儲器模塊的每一個包括中心單元,每個中心單元響應(yīng)來自所述存儲器控制器的南向數(shù)據(jù)包而忽略存儲器識別信息,并且在測試模式中將與南向數(shù)據(jù)包相關(guān)聯(lián)的數(shù)據(jù)寫到多個存儲器模塊的多個存儲器單元的每一個。
在示例性實施例中,本發(fā)明針對一種寫入存儲器系統(tǒng)的方法,該存儲器系統(tǒng)具有主機和N個存儲器模塊(其中N是整數(shù)1),該方法包括在N個存儲器模塊中設(shè)置測試模式;傳送寫數(shù)據(jù)包到N個存儲器模塊;在所述N個存儲器模塊的每一個中,將所述寫數(shù)據(jù)包解碼為存儲器識別信息和存儲器信息;在響應(yīng)所述測試模式而忽略所述存儲器識別信息后,將所述存儲器信息提供給N個存儲器模塊的每一個上的存儲器單元;以及將包括所述存儲器信息的數(shù)據(jù)寫入所述N個存儲器模塊的每一個上的存儲器單元。
在示例性實施例中,本發(fā)明針對一種存儲器模塊,包括多個存儲器單元;以及中心單元,其接收來自對應(yīng)的存儲器模塊的多個存儲器單元的第一輸出信息和來自另一存儲器模塊的多個存儲器單元的第二輸出信息,在測試模式中將所述第一輸出信息和所述第二輸出信息進行比較,并且輸出比較結(jié)果。
在示例性實施例中,本發(fā)明針對一種存儲器系統(tǒng),包括存儲器控制器;以及多個存儲器模塊,每個存儲器模塊包括中心單元,每個中心單元從所述對應(yīng)的存儲器模塊的存儲器單元接收輸出信息,并且在測試模式中將對應(yīng)的存儲器模塊的每個存儲器單元的輸出信息與另一存儲器模塊的輸出信息進行比較,并且輸出比較結(jié)果。
在示例性實施例中,本發(fā)明針對一種讀取存儲器系統(tǒng)的方法,該存儲器系統(tǒng)具有主機和多個模塊,該方法包括響應(yīng)讀數(shù)據(jù)包,從所述第一存儲器模塊上的第一存儲器單元向第一中心單元輸出第一數(shù)據(jù);響應(yīng)所述讀數(shù)據(jù)包,從所述第二存儲器模塊上的第二存儲器單元向第二中心單元輸出第二數(shù)據(jù);向所述第一中心單元傳送所述第二數(shù)據(jù);以及將所述第一數(shù)據(jù)與所述第二數(shù)據(jù)進行比較并在所述第一中心單元存儲比較結(jié)果。
在示例性實施例中,本發(fā)明針對一種測試存儲器系統(tǒng)的方法,該存儲器系統(tǒng)具有存儲器控制器和多個存儲器模塊,其中所述多個存儲器模塊通過菊花鏈連接到所述主機,并且多個存儲器模塊的每一個具有模塊選擇代碼,該方法包括對所述多個存儲器模塊設(shè)置測試模式;同時在測試模式中、響應(yīng)寫數(shù)據(jù)包將測試數(shù)據(jù)寫入所述多個存儲器模塊上的每個存儲器單元;響應(yīng)讀數(shù)據(jù)包,從所述多個存儲器模塊上的每個存儲器單元讀取所述測試數(shù)據(jù);以及將來自自身存儲器模塊的所述測試數(shù)據(jù)與來自相鄰存儲器模塊的所述測試數(shù)據(jù)進行比較。
根據(jù)以下詳細(xì)的說明和附圖,能夠更完全地理解本發(fā)明,其僅僅是用于說明的目的,因此不對本發(fā)明有任何限制。
圖1說明了幾種類型的傳統(tǒng)存儲器模塊,其包括單列直插式存儲器模塊(SIMM)和雙列直插式存儲器模塊(DIMM);
圖2說明了傳統(tǒng)的FBDIMM,其包括中心單元和多個存儲器片;圖3說明了傳統(tǒng)存儲器系統(tǒng);圖4說明了與圖3不同的透視圖的傳統(tǒng)存儲器系統(tǒng);圖5更詳細(xì)地說明了傳統(tǒng)存儲器系統(tǒng);圖6A說明了傳統(tǒng)的南向(SB)數(shù)據(jù)包格式的示例;圖6B說明了傳統(tǒng)的北向(NB)數(shù)據(jù)包格式的示例;圖6C說明了基準(zhǔn)時鐘、存儲器時鐘和數(shù)據(jù)包轉(zhuǎn)移之間的示例關(guān)系;圖6D說明了FBDIMM南向(SB)命令解碼系統(tǒng)的示例;圖7是說明圖5中說明的傳統(tǒng)系統(tǒng)中南向(SB)數(shù)據(jù)包的讀和寫操作的時序圖;圖8說明了根據(jù)本發(fā)明實施例的存儲器系統(tǒng);圖9說明了根據(jù)本發(fā)明實施例的中心單元;圖10A說明了根據(jù)本發(fā)明實施例的在測試模式中寫入的時序圖;圖10B說明了根據(jù)本發(fā)明實施例的在測試模式中寫入的流程圖;圖11A說明了根據(jù)本發(fā)明實施例的在測試模式中讀取的時序圖;圖11B說明了根據(jù)本發(fā)明實施例的在測試模式中讀取的流程圖;和圖12說明了根據(jù)本發(fā)明實施例的中心單元,其將第一自身數(shù)據(jù)和來自相鄰存儲器單元模塊的第二數(shù)據(jù)進行比較。
應(yīng)該注意為了在此說明這些示例性實施例的目的,這些附圖目的在于說明本發(fā)明的示例性實施例的方法和器件的一般特征。然而,這些附圖沒有按比例并且可以不精確地反映任何所給定的實施例的特征,以及不應(yīng)該認(rèn)為限定或限制了本發(fā)明的范圍內(nèi)的示例性實施例的價值或性質(zhì)的范圍。
具體實施例方式
圖8說明了根據(jù)本發(fā)明的實施例存儲器系統(tǒng)。如圖8所示,存儲器系統(tǒng)100可以包括存儲器控制器600、時鐘源610、和多個存儲器模塊500。每個存儲器模塊500還可以包括多個存儲器,例如,多個DRAM520和一個或多個中心單元510。
在下游方向存儲器控制器600可以向多個存儲器模塊500傳送南向數(shù)據(jù)包,該南向數(shù)據(jù)包包括數(shù)據(jù)、控制、和/或地址信息10,以及存儲器控制器600可以在下游方向,從多個存儲器模塊500接收北向數(shù)據(jù)包數(shù)據(jù)14。存儲器控制器600也可以經(jīng)由SMBus與多個存儲器模塊500通信。時鐘源610可以向存儲器控制器600和/或多個存儲器模塊500提供諸如ECLK1的時鐘。
在圖8中說明的示例性實施例中,多個存儲器模塊500可以是完全緩沖的多個DIMM(多個FBDIMM)。
此外,在圖8的示例性實施例中,多個存儲器模塊500可以以菊花鏈的方式連接到存儲器控制器600。在圖8的示例性實施例中,存儲器系統(tǒng)包括八(8)個存儲器模塊500(或八個FBDIMM)。
如圖所示,信號10和14在存儲器控制器600和中心單元510之間進行交換。在示例性實施例中,每個信號10、14可以是一對低電壓差動信號。
圖9說明了根據(jù)本發(fā)明的實施例的中心單元的示例性實施例,例如,中心單元510。如圖9所說明的,每個中心單元510可以包括接收器/發(fā)送器10,其進一步包括多個接收器和發(fā)送器SRx、STx、NRx和NTx,例如以上結(jié)合附圖2-3和5描述的那些。
每個中心單元510也可以包括接口20、存儲器接口30和控制電路40??刂齐娐?0還可以包括比較器COM、數(shù)據(jù)包處理部件(PTP)、和多路復(fù)用器(MUX)。
接收器/發(fā)送器10可以接收和/或發(fā)送數(shù)據(jù)包。接收器/發(fā)送器10可以從諸如圖3-5的主機的主機、諸如圖8的存儲器控制器的存儲器控制器或以雙向從相鄰的FBDIMM傳送數(shù)據(jù)包。
接口20可以包括設(shè)置測試模式的模式寄存器RG1和故障檢測寄存器RG2。接口20可以經(jīng)由SMBus、向/從存儲器控制器發(fā)送/接收系統(tǒng)管理信息。具體地講,模式寄存器RG1可以存儲測試模式信號,并可以向PTP傳送測試模式信號。故障檢測寄存器RG2可以從比較器COM接收故障標(biāo)志,并可以經(jīng)由SMBus、向存儲器控制器傳送故障標(biāo)志。
存儲器接口30可以從PTP接收包括命令、地址和用于寫入的數(shù)據(jù)信息的存儲器信息,以及可以向多個存儲器器件520傳送存儲器信息。存儲器接口30還可以從多個存儲器器件520向控制電路40的PTP傳送讀數(shù)據(jù)。
PTP可以將數(shù)據(jù)包格式的南向數(shù)據(jù)包解碼為存儲器信息格式,其可以包括模塊選擇位、命令位、一個或多個列選擇位、命令信息和/或地址信息。
在標(biāo)準(zhǔn)模式中,PTP可以判斷模塊選擇位是否指示PTP是其一部分的FBDIMM,如果模塊選擇位指示PTP是其一部分的FBDIMM,則PTP可以向存儲器接口30發(fā)送命令和地址信息。否則,PTP可以忽略存儲器信息。如果所述命令是寫操作,則寫數(shù)據(jù)也向存儲器接口30傳送。
在測試模式中,PTP可以向存儲器接口30傳送命令和地址信息,不論是否(例如,由模塊選擇位)識別指定的FBDIMM。
具體地講,位于PTP和NRx之間的多路復(fù)用器MUX形成第一路徑和第二路徑。在標(biāo)準(zhǔn)模式中,MUX響應(yīng)來自PTP的第一控制信號C1,通過第一路徑、向NTx傳送NB數(shù)據(jù)包。
在測試模式中,MUX通過第二路徑、向比較器COM傳送NB數(shù)據(jù)包,其響應(yīng)來自PTP的第一控制信號C1。比較器COM具有兩個輸入,其中之一連接到NRx,并且另一個連接到多路復(fù)用器(MUX)的第二路徑。來自PTP的第二控制信號C2起動比較器COM。比較器COM的輸出連接到存儲比較操作結(jié)果的RG。
圖10A說明了根據(jù)本發(fā)明實施例的在測試模式中寫入的時序圖。圖10A的實施例說明了在測試模式中的寫操作。首先,在第一寫周期1中,由SMBus設(shè)置模式寄存器(RG1)。在測試模式中,可以忽略模塊選擇位、列選擇位、和存儲器信息。在第二寫周期2中,存儲器控制器600向第一存儲器模塊500發(fā)送激活的SB數(shù)據(jù)包,并且第一存儲器模塊500向相鄰的下游存儲器模塊500發(fā)送激活的SB數(shù)據(jù)包。在這種方式中,所有的存儲器模塊500在CLK_MEM時鐘的一個周期中接收激活的SB數(shù)據(jù)包。
在第三寫周期3中,在每個存儲器模塊500中的PTP中將激活的SB數(shù)據(jù)包解碼成存儲器信息。在第四寫周期4中,將存儲器信息傳送到每個中心單元510中的存儲器接口30。在第五寫周期5中,每個存儲器模塊500中的存儲器器件520根據(jù)存儲器信息同時執(zhí)行激活操作。在第六寫周期6中,以與激活的SB數(shù)據(jù)包相同的方式,將寫SB數(shù)據(jù)包從存儲器控制器600傳送到所有的存儲器模塊500。
具體地講,在每個存儲器模塊500中的PTP中,將寫SB數(shù)據(jù)包解碼成包括模塊選擇位、列選擇位、命令位、地址位和數(shù)據(jù)的存儲器信息。響應(yīng)于測試模式,在每個存儲器模塊500中的PTP中,忽略模塊選擇位和列選擇位。將除了模塊選擇位和列選擇位之外的存儲器信息傳送到每個中心單元510的存儲器接口30。在第七寫周期7中,所有存儲器模塊500執(zhí)行寫操作。
圖10B說明了本發(fā)明的實施例的在測試模式中進行寫入的流程圖。在圖10B說明的流程圖中,假設(shè)在可以寫入寫數(shù)據(jù)包之前執(zhí)行激活操作。
如步驟1000中說明的,在模式寄存器中設(shè)置模式,例如,將模式設(shè)置為測試模式。在步驟1002中,將寫SB數(shù)據(jù)包提供給每個存儲器模塊500用于寫入。在步驟1004中,在每個存儲器模塊500的中心單元中將寫SB數(shù)據(jù)包解碼成存儲器信息。在步驟1006中,響應(yīng)測試模式而忽略存儲器信息中的模塊選擇位和列選擇位,并將其余存儲器信息傳送到每個存儲器器件520。在步驟1008中,在每個存儲器模塊500的存儲器器件520中執(zhí)行寫操作。
圖11A說明了本發(fā)明的實施例的在測試模式中讀操作的示例時序圖。如在第一讀取周期1’中說明的,由SMBus設(shè)置模式寄存器。通過將模式設(shè)置為測試模式,可以忽略模塊選擇位和存儲器信息。如在第二讀取周期2’中,提供激活的SB數(shù)據(jù)包,并且所有的存儲器模塊執(zhí)行激活操作。在第三讀取周期3’中,將多個存儲器模塊500的存儲器器件520中讀取的讀SB數(shù)據(jù)包提供給所有的存儲器模塊。在所有存儲器模塊500的每個中心單元的PTP中將讀SB數(shù)據(jù)包解碼成存儲器信息。在測試模式中忽略包括在存儲器信息中的模塊選擇位。將其余存儲器信息傳送到每個中心單元510中的存儲器接口30。在所有存儲器模塊500上的存儲器器件520基于其余存儲器信息同時執(zhí)行讀操作,在第四讀操作4’中,將從存儲器器件520讀取的數(shù)據(jù)編碼成數(shù)據(jù)包信息,其將由每個中心單元510中的PTP接收。
在第五讀周期5’中,最后的存儲器模塊520(MMn)將數(shù)據(jù)包數(shù)據(jù)傳輸?shù)较噜彽纳嫌未鎯ζ髂K520(MMn-1)的NRx端口。以這種方式,在CLK_MEM的一個時鐘周期期間,可以將來自最后存儲器模塊520(MMn)的數(shù)據(jù)包數(shù)據(jù)傳送到存儲器控制器600。
在第六個讀周期6’中,除了最后的存儲器模塊520(MMn)的每個存儲器模塊520(MM1-MMn-1)中的中心單元510接收來自下游存儲器模塊520(MMn-1)的數(shù)據(jù)包。除了最后的存儲器模塊520(MMn)的每個存儲器模塊520(MMn-1)中的每個比較器COM將接收的數(shù)據(jù)包數(shù)據(jù)和來自存儲器模塊520(MMn-1自身)的數(shù)據(jù)包的數(shù)據(jù)進行比較。在第七讀周期7’中,如果比較結(jié)果指示該數(shù)據(jù)是相同的,則比較器COM向RG2輸出通過信號。如果該數(shù)據(jù)是不相同的,則比較器COM向RG2輸出故障標(biāo)志。
在第八讀周期8’中,存儲器控制器讀取所有的RG2,以便識別每個存儲器模塊520(MMn)是否正在合適操作。
圖11B說明了根據(jù)本發(fā)明實施例的在測試模式中讀取的流程圖。
如在步驟1100所說明的,在模式寄存器中設(shè)置模式,例如,將模式設(shè)置為測試模式。在步驟1102中,將讀SB數(shù)據(jù)包提供給所有的存儲器模塊500。在步驟1104中,在每個存儲器模塊500的中心單元510中將讀SB數(shù)據(jù)包解碼成存儲器信息。在步驟1106中,忽略存儲器信息中的模塊選擇位和/或列選擇位,以及將命令和地址信息傳送到每個存儲器器件520。在步驟1108中,在每個存儲器模塊500的存儲器器件520中執(zhí)行讀操作。
在步驟1110中,最后的存儲器模塊500(MMn)將NB數(shù)據(jù)包信息傳輸?shù)较噜彽纳嫌未鎯ζ髂K500(MMn-1)。在CLK MEM的一個時鐘周期中,將NB數(shù)據(jù)包傳送到存儲器控制器600。在步驟1112中,除了最后的存儲器模塊520(MMn)的中心單元510中的比較器COM以外,每個存儲器模塊520(MMn-1)的每個中心單元510中的每個比較器COM對所接收的NB數(shù)據(jù)包和自身產(chǎn)生的NB數(shù)據(jù)包進行比較。將比較結(jié)果存儲在RG2寄存器中。在步驟1114中,存儲器控制器600讀取RG2寄存器以判斷每個存儲器模塊500(MMn)是否正合適地操作。
圖12說明了第一自身數(shù)據(jù)和來自相鄰的存儲器模塊500(MMn)的第二數(shù)據(jù)在如圖9中說明的中心單元中進行比較的情況,,圖12與圖9類似,除了在圖9中、在比較器COM中比較數(shù)據(jù)包信息,而在圖12中,在比較器COM中比較存儲器信息。
如圖12中所說明的,每個中心單元510還可以包括接收器/發(fā)送器10,其進一步包括多個接收器和發(fā)送器SRx、STx、NRx和NTx,例如以上結(jié)合附圖2-3、5和9所述的那些。
每個中心單元510還可以包括接口20、存儲器接口30、和控制電路40??刂齐娐?0還可以包括比較器COM、數(shù)據(jù)包處理部件(PTP)、和多路復(fù)用器(MUX),與圖9類似。
接收器/發(fā)送器10可以接收和/或發(fā)送數(shù)據(jù)包。接收器/發(fā)送器10可以以雙向、從諸如圖3-5和9的主機的主機、諸如圖8的存儲器控制器的存儲器控制器或從相鄰的FBDIMM傳送數(shù)據(jù)包。
接口20可以包括用于設(shè)置測試模式的模式寄存器RG1和故障檢測寄存器RG2。接口20可以經(jīng)由SMBus,向/從存儲器控制器發(fā)送/接收系統(tǒng)管理信息。具體地講,模式寄存器RG1可以存儲測試模式信號,并且可以向PTP傳送測試模式信號。故障檢測寄存器RG2可以從比較器COM接收故障標(biāo)志,以及可以經(jīng)由SMBus將該故障標(biāo)志傳輸給存儲器控制器。
存儲器接口30可以從MUX接收存儲器信息,其包括命令、地址和用于寫入的數(shù)據(jù)信息,并且存儲器接口30可以將存儲器信息傳送至多個存儲器器件520。存儲器接口30還可以從多個存儲器器件520向控制電路40的MUX傳送讀數(shù)據(jù)。
PTP可以將數(shù)據(jù)包格式的南向數(shù)據(jù)包解碼成存儲器信息格式,其可以包括模塊選擇位、命令位、一個或多個列選擇位、命令信息和/或地址信息,并且可以在向南的方向上發(fā)送和接收數(shù)據(jù)包信息。
在標(biāo)準(zhǔn)模式中,PTP可以判斷模塊選擇位是否指示PTP是其一部分的FBDIMM。如果模塊選擇位指示PTP是是其一部分的FBDIMM,則PTP可以將數(shù)據(jù)包信息解碼成存儲器信息,并且經(jīng)由MUX、向存儲器接口30發(fā)送命令和地址信息。否則,PTP可以忽略存儲器信息。如果所述命令是寫操作,則寫數(shù)據(jù)也經(jīng)由MUX、由PTP向存儲器接口30傳送。
在測試模式中,PTP可以經(jīng)由MUX30、向存儲器接口30傳送命令和地址信息,而不管是否識別特定的FBDIMM(例如,由模塊選擇位)。
具體地講,位于PTP和存儲器接口30之間的多路復(fù)用器MUX形成第一路徑和第二路徑。在標(biāo)準(zhǔn)模式中,MUX將NB數(shù)據(jù)包傳送到PTP,并且響應(yīng)來自PTP的第一控制信號C1、通過第一路徑傳送到NTx。
在測試模式中,MUX通過第二路徑將NB數(shù)據(jù)包傳送到比較器COM,其響應(yīng)來自PTP的第一控制信號。比較器COM具有兩個輸入,其中之一連接到PTP,并且另一個連接到多路復(fù)用器MUX的第二路徑。來自PTP的第二控制信號C2起動比較器COM。比較器COM的輸出連接到RG2,用于存儲比較操作的結(jié)果。
如圖12所示,可以向PTP輸入來自相鄰的下游存儲器模塊500(MMn)的NB數(shù)據(jù)包。PTP可以將NB數(shù)據(jù)包解碼成存儲器信息。PTP可以從當(dāng)前的存儲器520接收存儲器信息以及從其他相鄰的存儲器520接收存儲器信息,并且在比較器COM中比較存儲器信息。
盡管已經(jīng)結(jié)合FBDIMM描述了一個或多個本發(fā)明的示例性實施例,然而本發(fā)明的技術(shù)可應(yīng)用到其他存儲器模塊,例如,多個R-DIMM或多個SIMM。此外,盡管已經(jīng)結(jié)合多個DRAM描述了一個或多個本發(fā)明的示例性實施例,然而本發(fā)明的技術(shù)可應(yīng)用到其他存儲器類型。
此外,盡管已經(jīng)結(jié)合主機或存儲器控制器描述了一個或多個本發(fā)明的示例性實施例,然而本發(fā)明的技術(shù)可應(yīng)用到其他控制器類型。此外,盡管已經(jīng)結(jié)合模塊選擇位和/或列選擇位描述了一個或多個本發(fā)明的示例性實施例,然而可以利用識別存儲器模塊、存儲器器件和存儲器單元的任何存儲器識別信息。
對于本領(lǐng)域的技術(shù)人員來講以下是明顯的,可以在上述實施例中進行其他改變和修改而不偏離本發(fā)明的范圍,并且目的在于以上的描述中包含的所有事實將被認(rèn)為是說明性的而沒有限制的意思。
權(quán)利要求
1.一種用于存儲器模塊的中心單元,該中心單元包括控制器,用于在測試模式中,忽略來自存儲器控制器的南向數(shù)據(jù)包中的存儲器識別信息。
2.根據(jù)權(quán)利要求1所述的中心單元,其中所述南向數(shù)據(jù)包可以是針對激活操作、寫入操作和讀取操作中的一個。
3.根據(jù)權(quán)利要求2所述的中心單元,所述控制器包括接收器,用于從上游存儲器模塊的中心單元或所述存儲器控制器接收所述南向數(shù)據(jù)包;以及發(fā)送器,用于將南向數(shù)據(jù)包發(fā)送至下游存儲器模塊的中心單元。
4.根據(jù)權(quán)利要求3所述的中心單元,所述控制器還包括寄存器,用于存儲測試模式;PTP,用于接收南向數(shù)據(jù)包并將所述南向數(shù)據(jù)包解碼成包括至少所述存儲器識別信息的存儲器信息;以及存儲器單元接口,用于連接至少一個存儲器單元,響應(yīng)所述測試模式、在不涉及存儲器識別信息的情況下,所述PTP傳送除所述存儲器識別信息以外的存儲器信息到該存儲器單元接口,所述存儲器單元接口將所述存儲器信息發(fā)送至所述至少一個存儲器單元。
5.一種用于存儲器模塊的中心單元,該中心單元包括控制器,用于從存儲器模塊的存儲器單元接收第一輸出信息,并且在測試模式中將第一輸出信息和來自下游存儲器模塊的第二輸出信息進行比較,以及輸出比較結(jié)果。
6.根據(jù)權(quán)利要求5所述的中心單元,所述控制器包括接收器,用于從下游存儲器模塊接收所述第二輸出信息;以及發(fā)送器,用于將所述第一輸出信息或所述第二輸出信息發(fā)送至上游存儲器模塊或存儲器控制器。
7.根據(jù)權(quán)利要求6所述的中心單元,所述控制器還包括第一模式寄存器,用于存儲所述測試模式;PTP,用于將來自相應(yīng)存儲器模塊的存儲器單元的數(shù)據(jù)轉(zhuǎn)換為所述第一輸出信息;MUX,用于接收所述第一輸出信息,并且在標(biāo)準(zhǔn)模式中向上游存儲器模塊的中心單元輸出所述第一輸出信息,以及在測試模式中向比較器輸出所述第一輸出信息;比較器,用于將所述第一輸出信息和所述第二輸出信息進行比較,并且輸出比較結(jié)果;以及第二寄存器,用于存儲所述比較結(jié)果。
8.根據(jù)權(quán)利要求7所述的中心單元,其中所述第一輸出信息和所述第二輸出信息是包括讀取數(shù)據(jù)的數(shù)據(jù)包。
9.根據(jù)權(quán)利要求1所述的中心單元,其中所述存儲器識別信息包括至少一個模塊選擇位。
10.根據(jù)權(quán)利要求4所述的中心單元,其中所述存儲器信息包括命令、地址和/或針對寫入的數(shù)據(jù)。
11.一種中心單元,該中心單元包括接收和發(fā)送部件,用于經(jīng)由第一接收總線從第一接收器接收第一數(shù)據(jù)包,并經(jīng)由第一發(fā)送總線發(fā)送該第一數(shù)據(jù)包,以及經(jīng)由第二接收總線從第二接收器接收第二數(shù)據(jù)包,并經(jīng)由第二發(fā)送總線發(fā)送該第二數(shù)據(jù)包;第一連接部件,用于通過第三總線從存儲器控制器接收測試模式,以及向存儲器控制器發(fā)送測試模式的結(jié)果;第二連接部件,用于將來自所述第一數(shù)據(jù)包的存儲器信息發(fā)送到多個存儲器單元,以及從所述多個存儲器單元接收數(shù)據(jù);和數(shù)據(jù)包處理部件,用于響應(yīng)所述測試模式、通過所述第二連接部件將所述存儲器信息無條件地傳送到多個存儲器單元,并且將所述第二數(shù)據(jù)包與從所述多個存儲器單元輸出的數(shù)據(jù)進行比較。
12.一種存儲器模塊,該存儲器模塊包括多個存儲器單元;和中心單元,其連接到所述多個存儲器單元,該中心單元響應(yīng)來自存儲器控制器的南向數(shù)據(jù)包而忽略存儲器識別信息,并且在測試模式中將與所述南向數(shù)據(jù)包相關(guān)聯(lián)的數(shù)據(jù)寫入所述存儲器模塊的多個存儲器單元的每一個。
13.根據(jù)權(quán)利要求12所述的存儲器模塊,所述中心單元包括第一接收器,用于接收南向數(shù)據(jù)包;第一發(fā)送器,用于發(fā)送所述南向數(shù)據(jù)包;模式寄存器,用于存儲測試模式;數(shù)據(jù)包處理部件,用于將所接收的南向數(shù)據(jù)包解碼為存儲器識別信息和存儲器信息,并且響應(yīng)所述測試模式,輸出與所述存儲器識別不相關(guān)的存儲器信息;以及存儲器接口,用于將存儲器信息寫入所述多個存儲器單元。
14.根據(jù)權(quán)利要求13所述的存儲器模塊,所述中心單元還包括第二接收器,用于接收包括第一數(shù)據(jù)的第一北向數(shù)據(jù)包;第二發(fā)送器,用于發(fā)送所述第一北向數(shù)據(jù)包;以及比較器,用于響應(yīng)包括讀命令和地址的讀數(shù)據(jù)包,比較第一北向數(shù)據(jù)包和從所述多個存儲器單元輸出的第二北向數(shù)據(jù)包。
15.根據(jù)權(quán)利要求14所述的存儲器模塊,所述中心單元還包括第二寄存器,用于存儲比較器的結(jié)果,其中響應(yīng)所述測試模式,起動所述比較器。
16.一種存儲器系統(tǒng),包括存儲器控制器;以及多個存儲器模塊,其以菊花鏈的方式連接到所述存儲器控制器,所述多個存儲器模塊的每一個包括中心單元,每個中心單元響應(yīng)來自所述存儲器控制器的南向數(shù)據(jù)包而忽略存儲器識別信息,并且在測試模式中將與南向數(shù)據(jù)包相關(guān)聯(lián)的數(shù)據(jù)寫到多個存儲器模塊的多個存儲器單元的每一個。
17.根據(jù)權(quán)利要求16所述的存儲器系統(tǒng),每個中心單元包括第一接收器;第一發(fā)送器;模式寄存器,用于存儲測試模式;數(shù)據(jù)包處理部件,用于將所接收的南向數(shù)據(jù)包解碼為存儲器識別信息和存儲器信息,并且響應(yīng)所述測試模式,輸出與所述存儲器識別不相關(guān)的存儲器信息;以及存儲器接口,用于將所述存儲器信息寫入多個存儲器單元。
18.根據(jù)權(quán)利要求17所述的存儲器系統(tǒng),所述中心單元還包括第二接收器,用于接收包括第一數(shù)據(jù)的第一北向數(shù)據(jù)包;第二發(fā)送器,用于發(fā)送所述第一北向數(shù)據(jù)包;比較器,用于響應(yīng)包括讀取命令和地址的讀數(shù)據(jù)包,比較所述第一北向數(shù)據(jù)包和從多個存儲器單元輸出的第二北向數(shù)據(jù)包。
19.根據(jù)權(quán)利要求18所述的存儲器系統(tǒng),所述中心單元還包括第二寄存器,用于存儲所述比較器的結(jié)果,其中響應(yīng)所述測試模式,起動所述比較器。
20.根據(jù)權(quán)利要求19所述的存儲器系統(tǒng),其中所述第一寄存器和所述第二寄存器通過系統(tǒng)管理總線連接到主機。
21.一種寫入存儲器系統(tǒng)的方法,該存儲器系統(tǒng)具有主機和N個存儲器模塊(其中N是整數(shù)1),該方法包括在N個存儲器模塊中設(shè)置測試模式;傳送寫數(shù)據(jù)包到N個存儲器模塊;在所述N個存儲器模塊的每一個中,將所述寫數(shù)據(jù)包解碼為存儲器識別信息和存儲器信息;在響應(yīng)所述測試模式而忽略所述存儲器識別信息后,將所述存儲器信息提供給在N個存儲器模塊的每一個上的存儲器單元;以及將包括所述存儲器信息的數(shù)據(jù)寫入所述在N個存儲器模塊的每一個上的存儲器單元。
22.根據(jù)權(quán)利要求21所述的方法,其中所述主機和所述N個存儲器模塊通過菊花鏈連接。
23.根據(jù)權(quán)利要求22所述的方法,其中所述設(shè)置測試模式是通過系統(tǒng)管理總線的。
24.一種存儲器模塊,包括多個存儲器單元;以及中心單元,其接收來自對應(yīng)的存儲器模塊的多個存儲器單元的第一輸出信息和來自另一存儲器模塊的多個存儲器單元的第二輸出信息,在測試模式中將所述第一輸出信息和所述第二輸出信息進行比較,并且輸出比較結(jié)果。
25.根據(jù)權(quán)利要求24所述的存儲器模塊,其中所述輸出信息是數(shù)據(jù)包信息和存儲器信息中的一個。
26.根據(jù)權(quán)利要求25所述的存儲器模塊,其中所述另一存儲器模塊是相鄰的下游存儲器模塊和最后的存儲器模塊中的一個。
27.一種存儲器系統(tǒng),包括存儲器控制器;以及多個存儲器模塊,每個存儲器模塊包括中心單元,每個中心單元從所述對應(yīng)的存儲器模塊的存儲器單元接收輸出信息,并且在測試模式中將對應(yīng)的存儲器模塊的每個存儲器單元的輸出信息與另一存儲器模塊的輸出信息進行比較,以及輸出比較結(jié)果。
28.根據(jù)權(quán)利要求27所述的存儲器系統(tǒng),其中所述輸出信息是數(shù)據(jù)包信息和存儲器信息中的一個。
29.根據(jù)權(quán)利要求28所述的存儲器系統(tǒng),其中所述另一存儲器模塊是相鄰的存儲器模塊和最后的存儲器模塊中的一個。
30.一種讀取存儲器系統(tǒng)的方法,該存儲器系統(tǒng)具有主機和多個模塊,該方法包括響應(yīng)讀數(shù)據(jù)包,從所述第一存儲器模塊上的第一存儲器單元向第一中心單元輸出第一數(shù)據(jù);響應(yīng)所述讀數(shù)據(jù)包,從所述第二存儲器模塊上的第二存儲器單元向第二中心單元輸出第二數(shù)據(jù);向所述第一中心單元傳送所述第二數(shù)據(jù);以及將所述第一數(shù)據(jù)與所述第二數(shù)據(jù)進行比較并在所述第一中心單元存儲比較結(jié)果。
31.根據(jù)權(quán)利要求30所述的方法,其中所述第二模塊與存儲器系統(tǒng)中的所述第一存儲器模塊或最后的存儲器模塊相鄰。
32.一種測試存儲器系統(tǒng)的方法,該存儲器系統(tǒng)具有存儲器控制器和多個存儲器模塊,其中所述多個存儲器模塊通過菊花鏈連接到所述主機,并且多個存儲器模塊的每一個具有模塊選擇代碼,該方法包括對所述多個存儲器模塊設(shè)置測試模式;在測試模式中響應(yīng)寫數(shù)據(jù)包,同時將測試數(shù)據(jù)寫入所述多個存儲器模塊上的每個存儲器單元;響應(yīng)讀數(shù)據(jù)包,從所述多個存儲器模塊上的每個存儲器單元讀取所述測試數(shù)據(jù);以及將來自自身存儲器模塊的所述測試數(shù)據(jù)與來自相鄰存儲器模塊的所述測試數(shù)據(jù)進行比較。
全文摘要
一種中心單元、存儲器模塊、存儲器系統(tǒng)和對其進行讀和寫的方法。在測試模式中,可以忽略存儲器模塊、存儲器器件、或存儲器單元識別信息,從而可以測試寫入或測試讀取所有的存儲器模塊、存儲器器件、或存儲器單元。忽略存儲器識別信息可以允許所有的存儲器模塊、存儲器器件、或存儲器單元同時被寫入或讀取,從而減少了測試時間。
文檔編號G06F13/36GK1707454SQ20051007271
公開日2005年12月14日 申請日期2005年5月17日 優(yōu)先權(quán)日2004年6月11日
發(fā)明者李起薰 申請人:三星電子株式會社