本發(fā)明是關于存儲器,尤其是關于存儲器的可靠度驗證。
背景技術:
在一個采用存儲器的應用系統(tǒng)中,例如多媒體系統(tǒng),因為存在來自電源線及/或信號線的干擾,所以必須對存儲器執(zhí)行電源完整性(power integrity,PI)及/或信號完整性(signal integrity,SI)的測試分析,以驗證存儲器的可靠度。上述的存儲器包含DRAM(dynamic random access memory,動態(tài)隨機存取存儲器)、SDRAM(synchronous dynamic random access memory,同步動態(tài)隨機存取存儲器)等。在PISI的分析或模擬中,常采用最壞噪聲模式來測試存儲器。例如以電源完整性而言,當信號快速轉換的時候,電源會因為阻抗、電壓平面、以及接地平面所形成的腔特性而產生電源供應或接地準位的波動,進而影響系統(tǒng)的可靠度。另一方面,以信號完整性而言,由于信號傳輸線間會有彼此的耦合、串擾、以及互擾,進而影響系統(tǒng)的可靠度,例如傳輸線中僅有一信號線的信號由低準位轉態(tài)至高準位,其它多個信號線的信號則由高準位轉態(tài)至低準位,因而對于該信號線而言,其它多個信號將會透過所述的耦合、串擾、以及互擾效應,使得該信號線轉態(tài)至高準位的信號特性較差,包含轉態(tài)至高準位的轉態(tài)速率低、或者高準位的目標電壓因而降低,進而影響系統(tǒng)的可靠度。藉由前述的PISI測試分析,可模擬系統(tǒng)操作于最壞的可靠度狀況,即最壞噪聲模式。請參閱圖1,其系習知測試數(shù)據(jù)產生電路的功能方塊圖。存儲器測試數(shù)據(jù)產生電路120透過存儲器控制器130存取存儲器140。存儲器測試數(shù)據(jù)產生電路120與存儲器控制器130之間的數(shù)據(jù)總線可能是256位或是128位,而存儲器控制器130與存儲器140之間的數(shù)據(jù)總線可能是16位或是8位。分析存儲器時,存儲器測試數(shù)據(jù)產生電路120發(fā)出模擬最壞噪聲的預設測試數(shù)據(jù)及相關的測試控制信號,此測試數(shù)據(jù)藉由存儲器控制器130的控制寫入及讀出存儲器140, 最后分析讀出的數(shù)據(jù)以驗證存儲器140的可靠度。
預設的測試數(shù)據(jù)必須具有代表性以利存儲器140的分析。然而如圖1所示,在不同的存儲器測試數(shù)據(jù)產生電路120與存儲器控制器130之間有不同的數(shù)據(jù)總線位寬度,例如256位或128位,存儲器控制器130與存儲器140之間也有不同的數(shù)據(jù)總線位寬度,例如16位或8位。更有如圖2所示,一個存儲器控制器130與兩個存儲器140耦接的情況,此時存儲器控制器130與存儲器140之間的數(shù)據(jù)總線位寬度為32位。如此多種不同的數(shù)據(jù)總線位寬度組合使得存儲器測試數(shù)據(jù)產生電路120難以在存儲器140端以相同的最壞噪聲模式來驗證存儲器140的可靠度,造成測試存儲器的復雜度提高。
技術實現(xiàn)要素:
鑒于先前技術的不足,本發(fā)明的一目的在于提供一種存儲器測試數(shù)據(jù)產生電路與方法,以簡化測試存儲器的程序。
本發(fā)明揭露了一種存儲器測試數(shù)據(jù)產生電路,用來產生多個測試數(shù)據(jù),該些測試數(shù)據(jù)藉一存儲器控制器經由多個通道耦接于一存儲器以對該存儲器進行測試,該存儲器測試數(shù)據(jù)產生電路包含:多個計數(shù)器,用來產生多個計數(shù)值;以及一數(shù)據(jù)重復及組合單元,依據(jù)該多個計數(shù)值、該測試數(shù)據(jù)產生電路與該存儲器控制器之間的位寬度、以及該存儲器控制器與該存儲器之間的位寬度產生該些測試數(shù)據(jù);其中,每一通道的測試數(shù)據(jù)系周期性的相同數(shù)據(jù)數(shù)列。
本發(fā)明另揭露了一種產生存儲器測試數(shù)據(jù)的方法,用于產生多個測試數(shù)據(jù),該些測試數(shù)據(jù)藉一存儲器控制器經由多個通道耦接于一存儲器以對該存儲器進行測試,該產生存儲器測試數(shù)據(jù)的方法包含:產生多個計數(shù)值;以及依據(jù)該存儲器控制器接收該些測試數(shù)據(jù)時所使用的位寬度以及該存儲器控制器與該存儲器之間的位寬度,對該多個計數(shù)値進行重復與組合,以產生該些測試數(shù)據(jù);其中,每一通道的測試數(shù)據(jù)系周期性的相同數(shù)據(jù)數(shù)列。
本發(fā)明的存儲器測試數(shù)據(jù)產生電路與方法能夠因應存儲器控制器與測試數(shù)據(jù)產生電路之間及與存儲器之間的不同的數(shù)據(jù)總線位寬度組合,以相同的數(shù)據(jù)數(shù)列所構成的存儲器測試數(shù)據(jù)進行測試。相較于習知技術,本發(fā)明大幅降低產生測試數(shù)據(jù)的復雜度,并提升存儲器測試的便利性及效率。
有關本發(fā)明的特征、實作與功效,茲配合圖式作較佳實施例詳細說明如下。
附圖說明
圖1為習知測試數(shù)據(jù)產生電路、存儲器控制器與存儲器的功能方塊圖;
圖2為習知測試數(shù)據(jù)產生電路、存儲器控制器與存儲器的另一功能方塊圖;
圖3為本發(fā)明的存儲器測試數(shù)據(jù)產生電路與存儲器控制器的連接關系圖;
圖4為本發(fā)明的存儲器測試數(shù)據(jù)的示意圖;
圖5為本發(fā)明的存儲器測試數(shù)據(jù)產生電路的一實施例的電路圖;
圖6A~圖6E為本發(fā)明的存儲器測試數(shù)據(jù)對應不同數(shù)據(jù)總線位寬度組合的示意圖;以及
圖7為本發(fā)明存儲器測試數(shù)據(jù)產生方法的一實施例的流程圖。
符號說明
120、320 存儲器測試數(shù)據(jù)產生電路
130、330 存儲器控制器
140、340 存儲器
510 計數(shù)器
530 數(shù)據(jù)重復及組合單元
S710~S720 步驟
具體實施方式
本發(fā)明的揭露內容包含存儲器測試數(shù)據(jù)產生電路與方法,該電路與方法可應用于采用存儲器元件的系統(tǒng)。在實施為可能的前提下,本技術領域具有通常知識者能夠依本說明書的揭露內容來選擇等效的元件或步驟來實現(xiàn)本發(fā)明,亦即本發(fā)明的實施并不限于后敘的實施例。
請參閱圖3,其系本發(fā)明的存儲器測試數(shù)據(jù)產生電路與存儲器控制器的連接關系圖。在一實施例中,存儲器測試數(shù)據(jù)產生電路320可用來產生各種不同的噪聲,例如為最壞噪聲。存儲器測試數(shù)據(jù)產生電路320與存儲器控制器330之間的數(shù)據(jù)總線位寬度為m位,而存儲器控制器330與存儲器340之間的數(shù)據(jù) 總線位寬度為n位,m與n皆為正整數(shù)。更詳細地說,存儲器控制器330與存儲器340之間n位數(shù)據(jù)總線通常被劃分為n/8個通道(channel),意即每個通道的位寬度為一個字節(jié)(byte)。存儲器測試數(shù)據(jù)產生電路320依據(jù)兩個設定值產生多個測試數(shù)據(jù)。該兩個設定值即為存儲器控制器330與存儲器測試數(shù)據(jù)產生電路320之間的數(shù)據(jù)總線位寬度以及存儲器控制器330與存儲器340之間的數(shù)據(jù)總線位寬度。兩設定值可以以m及n或是其等效的數(shù)值表示,例如以2的冪次表示。存儲器測試數(shù)據(jù)產生電路320所產生的測試數(shù)據(jù)經過設計,使得依據(jù)m與n的數(shù)值所產生的測試數(shù)據(jù),經由存儲器控制器330存取轉換后,每個通道皆包含相同的數(shù)據(jù)數(shù)列,以利于分析存儲器340的測試結果。如此一來,存儲器測試數(shù)據(jù)產生電路320無需針對各種不同的數(shù)據(jù)總線位寬度組合(即m與n的組合),而設計不同的噪聲產生器以對應不同的測試數(shù)據(jù),因此本發(fā)明可大幅降低存儲器測試的復雜度。請注意,存儲器340可能由單一或是兩個以上的物理內存元件所組成,其位寬度的總合為n位。存儲器測試數(shù)據(jù)產生電路320及存儲器控制器330依據(jù)時鐘CLK動作。視存儲器為單倍數(shù)據(jù)率(single data rate,SDR)、雙倍數(shù)據(jù)率(single data rate,DDR)或更高的數(shù)據(jù)倍率,存儲器控制器330有不同的動作方式,此為本技術領域具有通常知識者所熟知,故不贅述。
請參閱圖4,其系本發(fā)明的存儲器測試數(shù)據(jù)的示意圖。圖中的4個通道代表存儲器控制器330與存儲器340之間的數(shù)據(jù)總線。此例中n=32,表示所耦接的存儲器裝置為總和32位寬度,亦表示本例中的4個通道皆傳輸測試數(shù)據(jù)。通道1隨時間遞增(T0、T1、T2、…、Tx-1、Tx、Tx+1、Tx+2、…)依序輸出數(shù)據(jù)D0、D1、D2、…、Dx-1、Dx、D0、D1、…。通道1所輸出的數(shù)據(jù)數(shù)列為周期性的數(shù)據(jù)數(shù)列,周期為Tx。其中,圖中所示不同標號的數(shù)據(jù)有可能相等或不相等,例如D2可以等于或不等于D3,在較佳的測試操作下,不同標號的數(shù)據(jù)不相等,即D2不等于D3。通道2、通道3及通道4輸出的數(shù)據(jù)與通道1為相同的數(shù)據(jù)數(shù)列,且同樣具有周期Tx。但各通道間的數(shù)據(jù)具有時間上的差異,例如通道4在時間T0輸出數(shù)據(jù)D3,相同的數(shù)據(jù)D3在通道3、通道2及通道1中則分別在時間T1、T2及T3輸出。因此可以視為通道4的數(shù)據(jù)數(shù)列領先通道3的數(shù)據(jù)1個時鐘周期,通道4的數(shù)據(jù)數(shù)列領先通道2的數(shù)據(jù)2個時鐘周期, 以及通道4的數(shù)據(jù)數(shù)列領先通道1的數(shù)據(jù)3個時鐘周期。雖然每個通道的數(shù)據(jù)數(shù)列互有落后或領先,但長時間下來(即整個測試時間而輸出大量測試數(shù)據(jù)時),可視為每個通道輸出同樣的內容,意即相同的數(shù)據(jù)數(shù)列。當存儲器340的數(shù)據(jù)總線位寬度為16位(即n=16)時,只要選取4個通道中的任2個通道;當存儲器340的數(shù)據(jù)總線位寬度為8位(即n=8)時,只要選取4個通道中的任1個通道。也就是說每個通道皆可獨立作為最壞噪聲模式信號的測試。
請參閱圖5,其系本發(fā)明的存儲器測試數(shù)據(jù)產生電路的一實施例的電路圖。存儲器測試數(shù)據(jù)產生電路320包含k個計數(shù)器510以及數(shù)據(jù)重復及組合單元530。所有計數(shù)器510的初始值構成數(shù)據(jù)D0~Dx的連續(xù)的一部分。舉例來說,若k等于10,則此10個計數(shù)器510的初始值可以是D0~D9,或是D1~D10,...,以此類推。計數(shù)器510依據(jù)圖3的時鐘CLK動作,并依據(jù)數(shù)據(jù)數(shù)列的順序產生計數(shù)值。也就是說,每個計數(shù)器510以D0→D1→D2→...→Dx-1→Dx→D0→D1→...的順序循環(huán)產生計數(shù)值。數(shù)據(jù)重復及組合單元530依據(jù)設定值m及n來選取需要的數(shù)據(jù),依據(jù)不同的位寬度組合(即m與n的組合),所需要的計數(shù)器510的個數(shù)也不同。以SDR的存儲器為例,所需的計數(shù)器510的個數(shù)為:(m/n)+(n/8)-1。舉例來說,當m=128,n=16時,共有9個計數(shù)器510的數(shù)據(jù)被數(shù)據(jù)重復及組合單元530所選取,并進一步組合成存儲器測試數(shù)據(jù)。數(shù)據(jù)重復及組合單元530同樣依據(jù)時鐘CLK動作。以SDR的存儲器為例,數(shù)據(jù)重復及組合單元530每m/n個時鐘CLK的周期產生一次存儲器測試數(shù)據(jù)。以下以不同的m/n組合以及簡化的數(shù)值來舉例說明數(shù)據(jù)重復及組合單元530進行存儲器測試數(shù)據(jù)組合的動作。
請參閱圖6A~圖6E,其系本發(fā)明的存儲器測試數(shù)據(jù)對應不同數(shù)據(jù)總線位寬度組合的示意圖。圖中的每一個數(shù)值代表一字節(jié)的數(shù)據(jù)。圖6A的例子中,m=256且n=32。也就是說存儲器測試數(shù)據(jù)產生電路320在T0時傳輸256位的數(shù)據(jù)給存儲器控制器330,存儲器控制器330再將該些256位的數(shù)據(jù)平均于T0~T7中輸出。更詳細地說,數(shù)據(jù)重復及組合單元530依據(jù)m/n=256/32以及上述的公式共選出11個計數(shù)器510的計數(shù)值,該些計數(shù)器510在T0時輸出0~10的數(shù)據(jù),以圖6A為例,即數(shù)據(jù)重復及組合單元530在T0時接收計數(shù)器510-1至計數(shù)器510-10的計數(shù)值,各計數(shù)值分別自計數(shù)0至10;數(shù)據(jù)重復及組 合單元530再依據(jù)這些數(shù)據(jù)組合出通道1~4在T0~T7中的所有輸出數(shù)據(jù)(共256位),例如為0、1、2、3、1、2、3、4、2、3、4、5、3、4、5、6、4、5、6、7、5、6、7、8、6、7、8、9、7、8、9、10的位續(xù)接(bit-by-bit concatenation)。T1~T7的時間內,數(shù)據(jù)重復及組合單元530暫停輸出存儲器測試數(shù)據(jù),但計數(shù)器510繼續(xù)改變其計數(shù)值。直到T8(與T0相距m/n=256/32=8個周期)時,數(shù)據(jù)重復及組合單元530再依據(jù)此時該些11個計數(shù)器510的計數(shù)值(8~18)組合成存儲器測試數(shù)據(jù)并輸出,再以圖6A為例,即數(shù)據(jù)重復及組合單元530在T8時接收計數(shù)器510-1至計數(shù)器510-10的計數(shù)值,此時經過8個時間周期后,各計數(shù)值分別自計數(shù)8至18,所組合的存儲器測試數(shù)據(jù)(共256位)例如為8、9、10、11、9、10、11、12、10、11、12、13、11、12、13、14、12、13、14、15、13、14、15、16、14、15、16、17、15、16、17、18的位續(xù)接(bit-by-bit concatenation);。重復以上的動作則通道1~4將各自輸出周期性的數(shù)據(jù),且各通道的數(shù)據(jù)順序相同但具有時間差。請注意,圖中僅描繪T0~T31的情況,實際上有更多的數(shù)據(jù)產生,而且此例中數(shù)據(jù)周期大于等于32個時鐘周期。圖6B~圖6E分別為m/n=256/16、128/32、128/16及128/8的情況,相關的操作原理原則類似,不再此贅述。明顯可見,各通道可以獨立用于最壞噪聲模式信號的測試,因此本發(fā)明適用于各種m/n的組合,亦即存儲器控制器與測試數(shù)據(jù)產生電路之間及與存儲器之間的數(shù)據(jù)總線位寬度的各種組合,大幅減低測試的復雜度。
除前述的存儲器測試數(shù)據(jù)產生電路外,本發(fā)明亦相對應地揭露了一種存儲器測試數(shù)據(jù)產生方法。本方法可以由前揭存儲器測試數(shù)據(jù)產生電路或其等效電路執(zhí)行。該些存儲器測試數(shù)據(jù)藉存儲器控制器經由多個通道存取于存儲器以對存儲器進行測試。該些存儲器測試數(shù)據(jù)以m位的數(shù)據(jù)總線位寬度傳送至該存儲器控制器,且該存儲器控制器以n位的數(shù)據(jù)總線位寬度存取存儲器。如圖7所示,本發(fā)明存儲器測試數(shù)據(jù)產生方法的一實施例包含下列步驟:
步驟S710:產生多個計數(shù)值;以及
步驟S720:依據(jù)該存儲器控制器接收該些測試數(shù)據(jù)時所使用的位寬度以及該存儲器控制器與該存儲器之間的位寬度,對該多個計數(shù)値進行重復與組合,以產生該些測試數(shù)據(jù)。存儲器測試數(shù)據(jù)可以依據(jù)計數(shù)器所產生的計數(shù)值排 列組合而成,計數(shù)器的初始值依據(jù)該存儲器控制器接收該些測試數(shù)據(jù)時所使用的位寬度以及該存儲器控制器與該存儲器之間的位寬度決定。計數(shù)器的個數(shù)與上述的數(shù)值m及數(shù)值n有關。在一個實施例中,計數(shù)器的時鐘與存儲器控制器的時鐘相同,所需的計數(shù)器個數(shù)為(m/n)+(n/8)-1。計數(shù)器每個時鐘周期改變一次計數(shù)值,而此步驟每m/n個時鐘周期產生一次存儲器測試數(shù)據(jù)。
如圖4所示,上述的存儲器測試數(shù)據(jù)經過存儲器控制器后會分布在多個通道上,每個通道可傳8位的數(shù)據(jù),所以存取存儲器時總共使用的通道數(shù)為n/8。每個通道的數(shù)據(jù)呈現(xiàn)周期性,因此長時間下來每個通道可視為具有相同數(shù)據(jù)數(shù)列的存儲器測試數(shù)據(jù)。此外,通道與通道之間的數(shù)據(jù)在時間上延遲,也就是各通道間的數(shù)據(jù)具有時間差。由圖4可見,每個通道皆可獨立用于存儲器的最壞噪聲模式信號的測試,因此不需要因為不同的m/n組合而產生多個測試模型(pattern)。當本發(fā)明用于一個存儲器控制器連接兩個存儲器的情形時(如圖2所示),兩個存儲器可以使用相同的存儲器測試數(shù)據(jù)進行測試,如此可以簡化測試結果的比對復雜度,并且可以提高存儲器驗證的準確性。
以上雖以SDR的存儲器為例,然而本技術領域具有通常知識者可以依據(jù)以上的揭露將本發(fā)明應用于當存儲器控制器330及存儲器340以雙倍或更高倍的數(shù)據(jù)率操作的情形。例如當本發(fā)明應用于雙倍數(shù)據(jù)率的存儲器,在產生測試數(shù)據(jù)時,可能需要更多的計數(shù)器,以同時選取更多的計數(shù)器來滿足更多存儲器測試數(shù)據(jù)的需求。
由于本領域技術人員可藉由圖3及圖5的電路發(fā)明的揭露內容來了解圖7的方法發(fā)明的實施細節(jié)與變化,因此雖然本發(fā)明的實施例如上所述,然而該些實施例并非用來限定本發(fā)明,本領域技術人員可依據(jù)本發(fā)明的明示或隱含的內容對本發(fā)明的技術特征施以變化,凡此種種變化均可能屬于本發(fā)明所尋求的專利保護范疇,換言之,本發(fā)明的專利保護范圍須視本說明書的權利要求所界定者為準。