專利名稱:多組、容錯、高性能存儲器尋址系統(tǒng)及其方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及存儲器尋址系統(tǒng)及其方法,并且具體的涉及提供高性能訪問具有任意組數(shù)的多組存儲器的存儲器尋址系統(tǒng)和方法。
背景技術(shù):
對于實現(xiàn)最高性能的常規(guī)存儲器設(shè)計,存儲器空間由獨立元件組成,通常稱為組,其數(shù)量通常是2的冪。存儲器空間在組中交叉存取,即連續(xù)的地址通常映射到不同的組。在這種情況下,組數(shù)可以通過簡單地看地址的最低位A來確定即,組=A模2b,其中2b為組數(shù)N。該方法已被用于采用多達512組存儲器的高性能系統(tǒng)中。增加存儲器組的數(shù)量通常增加了存儲器的處理量并由此增加了存儲器系統(tǒng)到處理單元的帶寬。該處理量通常是計算機運算的最弱點。
該存儲器的已知的問題表現(xiàn)在當(dāng)以偶數(shù)或能被2的更高次冪整除的間隔訪問數(shù)組或其它數(shù)據(jù)結(jié)構(gòu)時性能的降低。例如,在16組的系統(tǒng)中,以16的間隔訪問將導(dǎo)致最差的性能,因為只有16組中的一組被訪問。在許多實際的應(yīng)用中,陣列訪問具有能被2的高次冪整除的間隔。例如,在2m×2m尺寸的矩陣中,由于m≥b,列訪問只能提供峰值性能的1/N,因為整個列屬于同一個存儲區(qū)組。類似的性能降低發(fā)生在其他類型的明確圖形的訪問中(即,明確限定的訪問順序,通常稱為有規(guī)律的訪問順序,例如,上述矩陣中的對角線訪問)。
該存儲器的另一個問題表現(xiàn)為缺乏容錯性,特別是在單個芯片中具有多個存儲器組的存儲器器件中。在這種單芯片器件中,單個壞組(即,具有至少一個不能使用的存儲器單元的組)通常導(dǎo)致或者整個存儲器件報廢或者所用的組數(shù)減少為2的更低一次冪。該問題特別明顯,因為新存儲器部件的產(chǎn)量非常低,所以,制造這種器件的設(shè)備的部分生產(chǎn)能力被用于制造賣不出去的產(chǎn)品。在具有嵌入存儲器單元的新一代多處理器芯片中,該問題進一步惡化。例如,這種芯片可能包含2b個微處理器和2b個存儲單元(例如,每個單元具有1到8Mbit的DRAM),理論上,相互通信需要全2b×2b的縱橫交換網(wǎng)絡(luò)。在這種芯片中的存儲器可以作為2b·2m的存儲單元的浮動地址空間的共享存儲器方式來處理,其中2m為每個獨立存儲單元的尺寸。嵌入存儲器芯片比普通存儲器單元復(fù)雜得多;因此,這種芯片報廢或降級的成本相對比普通存儲器單元這樣做的成本高。
嘗試解決這些問題并未取得完全的成功。
例如,RAMBUS和其它類似的技術(shù)嘗試對不分組存儲器通過更快的存儲器操作或簡化交叉存取的多組存儲器來緩解處理器-存儲器之間的瓶頸。但是,主要在僅用于連續(xù)存儲器請求上取得了進步。此外,隨著處理單元速度的顯著增加,瓶頸依然存在。
特別針對組沖突問題的另一個技術(shù)在P.P.Budnick and D.J.Kuck,“The organization and use of parallel memories”,IEEE Trans.Computers,20,pp.1566-1569(1971)中進行了說明。Budnick等人建議采用p個存儲器組來實現(xiàn)存儲器,其中p為素數(shù)。在這種情況下,對于線性陣列的組沖突僅發(fā)生在間隔能被p整除的情況下??梢宰C明,在這種情況下組沖突可能比實際的少。但是,譯碼邏輯顯著地增加了一一特別是需要除數(shù)為p的全整數(shù)除法電路。對于請求的地址A,Amod P的余數(shù)給定了地址的組,同時A/p的商給定了組內(nèi)的地址。早期的BSP(巴勒斯科學(xué)處理機)具有這種類型的存儲器系統(tǒng),其中p=17。除了譯碼邏輯的增加,這種解決方法是不適當(dāng)?shù)?,因為組數(shù)限定為素數(shù)對于例如布局、布線和接口造成了太多的限制,非素數(shù)組數(shù),特別是2的冪是最佳選擇。
另一個組沖突問題的補救方法是采用偽隨機數(shù)發(fā)生器產(chǎn)生邏輯地址A和對應(yīng)組之間的映射。例如,在R.Raghavan,J.P.Hayes,“Onrandomly interleaved memories”,Proceedings of Supercomputing,pp.49-58,1990中說明了一個這種系統(tǒng)。偽隨機發(fā)生器為輸入值的有序序列產(chǎn)生輸出值的隨機序列,但對于給定的輸入值將一直產(chǎn)生相同的輸出值。這種技術(shù)的一個問題是對于間隔為1的訪問將產(chǎn)生組沖突。間隔為1的訪問在大多數(shù)計算機應(yīng)用中是最普通的訪問模式(例如,當(dāng)讀取指令流時發(fā)生),因此,對于這種訪問在存儲器性能的任何降低都是不能接受的。通常的問題是偽隨機或真隨機映射產(chǎn)生的組沖突即使對于相當(dāng)大的N平均不少于訪問的1/e%(即,36.78…%)(其中e為自然對數(shù)的底)。這導(dǎo)致相當(dāng)大的峰值性能降低。此外,某種已知的偽隨機數(shù)發(fā)生器可能在地址空間和所有組之間產(chǎn)生不一致的映射(即,某些組可能比其它組具有更多的地址映射),從而增加組沖突并降低性能。
因此,當(dāng)簡單地址翻譯方案(標(biāo)準(zhǔn)交叉存取方案或來自Budnick-Kuck翻譯的各種方案)產(chǎn)生用于固定間隔方式的序列(并由此在許多間隔遇到可重復(fù)的組沖突)的組數(shù)的簡單周期序列時,一般的地址不規(guī)則映射產(chǎn)生用于任意具體訪問序列的組數(shù)的隨機序列。如上所述,屬于相應(yīng)的物理地址的這些組數(shù)的序列具有統(tǒng)計上的顯著的組沖突(在N地址的序列內(nèi)),并且,充分隨機化后,沒有小于加擾的地址空間的尺寸的周期。
因此,通常提供用于間隔為1的訪問方式的無沖突訪問的低復(fù)雜性的容錯加擾技術(shù)、其它特別重要的明確訪問方式,例如偶間隔方式、2的冪間隔方式或?qū)蔷€和其它感興趣的訪問方式是非常需要的。
發(fā)明概要因此,本發(fā)明的目的是提供一種多組存儲器尋址系統(tǒng)以及通常提供間隔為1的訪問方式下無組沖突并在其他所關(guān)心的訪問方式下很少發(fā)生組沖突的方法。在一個實施例中,所提供的存儲器件具有N個包括多個可尋址存儲器單元的存儲器組。每個存儲器單元具有邏輯地址和對應(yīng)的物理地址,物理地址包括組號和存儲器組中的局部地址。存儲器件含有包括地址翻譯單元的地址映射系統(tǒng),對于每個邏輯地址得到對應(yīng)的物理地址。在優(yōu)選實施例中,地址翻譯單元工作,從而,對于邏輯地址的至少一個明確的訪問序列(例如,序列中的每一個邏輯地址與序列中的其它地址相隔間隔值),在對應(yīng)的物理地址的序列中得到的物理地址具有形成的重復(fù)方式不小于N+1的周期并在對應(yīng)的物理地址的序列中平均重復(fù)組號不在大約N地址之內(nèi)的存儲器組號(或者甚至周期小于地址空間的尺寸)。
由地址翻譯單元進行的映射在這里稱作“有限準(zhǔn)晶體映射”。該術(shù)語是由根據(jù)本發(fā)明的優(yōu)選實施例的翻譯單元對于大多數(shù)間隔產(chǎn)生幾乎是周期性的組訪問方式(即,準(zhǔn)晶體形)得出的;例如,所選擇的組通常間隔固定的值,但偶爾也會間隔不同的值。為了說明的目的,一個給定間隔的16組存儲器系統(tǒng)的準(zhǔn)晶體映射的例子為0、2、4、6、8、10、13、15、1、3、5、7、9、12、14…,其中組編號為0到15。在該例子中,序列中的組編號通常間隔為2,但偶爾間隔為其它值(例如3,從10到13和從9到12)。對于特別明確的訪問方式的優(yōu)選準(zhǔn)晶體映射為每個存儲器組的訪問次數(shù)大致相等。在優(yōu)選實施例中,差異(在這里該術(shù)語的意思為組訪問與均勻分布的偏差)為最小。這里每組的偏差僅僅為O(1)(order 1)。
在一個實施例中,準(zhǔn)晶體映射通過采用下面形式的模變換加擾地址a來實現(xiàn)a-A=Λa mod 2K其中A為對應(yīng)于a的加擾后的地址,2K為地址空間(其中K依賴于存儲器制造工藝,并且在下面的例子中對于字對準(zhǔn)存儲器通常為大約21),Λ為奇數(shù)常數(shù)。在該例子中的組號由加擾地址A的高位得到。
為了在該方案中得到有限準(zhǔn)晶體映射,選擇Λ以便使在2K的地址空間上的重要的明確訪問方式(例如變化的固定間隔或在二維或多維表中訪問的線性序列,包括對角線訪問方式)中發(fā)生的組號的均勻分布的偏差最小。
采用各種技術(shù)使Λ的適當(dāng)范圍變窄。例如,最小化與組號均勻分布的偏差類似于最小化與{n·θ}的小數(shù)部分的一致分配偏差的問題。因此,類似于二次方程的無理解(quadratic irrationality)的乘數(shù)Λ給出了更好的均勻分布特性。(例如,參考H.Behnke,ZiirTheorie der Diophantischen Approximationen,I,Abh.Math Sem.Hamburg 3(1924),pp.261-318)。受到黃金分割τ=(5-1)/2]]>(大約為0.6180)的啟發(fā),一種方法是對于M≤K將Λ設(shè)為接近于τ·2M的整數(shù)。這不是優(yōu)選實施例,并且遇到性能下降的問題。下面說明更好的實施例。
此外,通過用于有理數(shù)的公式Λ/2K的連續(xù)小數(shù)展開式算法的優(yōu)化使Λ的潛在的合適范圍變窄。例如,參考Rockett和Szüsz的Continued Fractions,World Scientifica Publishing Co.Pte.Ltd.(1994)。優(yōu)化算法設(shè)法找到潛在的適當(dāng)?shù)恼麛?shù)乘數(shù)Λ,從而兩個條件同時滿足(a)對于M≤K,在Λ/2M的連續(xù)小數(shù)展開式中的初項ai都很小(例如,1或2);并且(b)在滿足條件(a)的乘數(shù)中Λ的二進制(或Booth編碼二進制)展開式中的非零位的位數(shù)最少。該非線性優(yōu)化提供用于加擾和實現(xiàn)加擾器的最小化電路所需的最佳乘數(shù)Λ。Λ的最終選擇僅僅根據(jù)用于地址空間上的各種明確的訪問方式的組訪問的均勻分布偏差的最小化。通過在整個地址空間上對各種間隔或其它明確的訪問方式的組訪問的徹底模擬來計算偏差。通過對Λ的所有可能值的偏差的徹底計算來選擇合適的ΛS(即,奇數(shù),并在范圍1≤Λ≤2K內(nèi))。
本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解各種組合電路、查表法或者甚至模擬方法而不是模乘法可以與實現(xiàn)低差異映射相同的效果構(gòu)成有限準(zhǔn)晶體映射。
如果所有的組是無缺陷的(N=2b),組和邏輯地址可由如下的加擾地址A得到A的最高b位為組號,而A的其它位為組中的局部地址。
但是,如果一個或多個組有缺陷,則地址空間收縮到N·2m個存儲單元,其中N<2b。在這種情況下,需要將有效范圍為0…N·2m-1的邏輯地址a翻譯為在范圍0…N-1中的唯一組號u,和在范圍0…2m-1的局部地址la。實現(xiàn)翻譯的硬件邏輯的復(fù)雜性是至關(guān)重要的。
在具有在同一個芯片中多處理器與多個存儲單元通信的嵌入邏輯的多組存儲器部分中特別重要。在芯片上具有嵌入存儲器的多處理器芯片的常規(guī)結(jié)構(gòu)由N=2b個微處理器和每個尺寸為2m(例如,每個為1到8Mbit的DRAM)的N=2b個存儲器組(單元)組成,通過交換網(wǎng)絡(luò)相互通信。該交換網(wǎng)絡(luò)為全2b×2b的縱橫交換網(wǎng)絡(luò)。如上所述,在該芯片中的全部存儲器可以作為N·2m的存儲單元的平坦地址空間的共享存儲器方式來處理。因為在部件中的所有多處理器都需要這些翻譯單元,地址翻譯邏輯的硬件實現(xiàn)的簡單性是至關(guān)重要的。作為實際的例子,在這里和后面,我們考慮b=6的情況,64個存儲器組與64個微處理器,每個存儲器組包含213個高速緩存線(每個高速緩存線有多達32個字節(jié))。在這種情況下,地址空間在“無缺陷”的情況下的可尋址單元(所說的高速緩存線)為219。由于相對較大的芯片面積,缺陷是常見的,并且好的處理器的數(shù)量N可能低于32或者更低。這些部件只能由存儲器翻譯單元來補救。對于高帶寬容錯大存儲器模塊和特別是具有嵌入存儲器作為多組模塊的大的片上系統(tǒng)產(chǎn)品,具有上述額外加擾特性的動態(tài)地址重映射單元的結(jié)構(gòu)是至關(guān)重要的應(yīng)用。
本發(fā)明針對存儲器翻譯(重映射)問題提供了幾種低成本解決方法,并采用加擾技術(shù)實現(xiàn)更好的固定間隔訪問(以及其它明確的訪問方式)。這些解決方法基于普通的有限準(zhǔn)晶體映射方法來實現(xiàn)高性能。在優(yōu)選實施例中的解決方法采用模乘法(具有額外的低偏差特性)。
可能的實現(xiàn)方法之一是將地址空間細分為N組并同時進行加擾的新穎方法。例如,對于2K的地址空間(如前所述)和N個存儲器單元(組),其中N為任意數(shù),首先進行加擾映射a-A=Λa mod 2K然后確定單元數(shù)u=A·N/2K,具有局部地址la=A-u·2K/N的存儲單元的位置。這里N為短常數(shù),2K/N為(更長的)常數(shù)。除了標(biāo)準(zhǔn)的加擾,該方法只要求2乘以短數(shù)(6位)和加法/減法。可以將各種模乘法(加擾和翻譯)合并到一個模塊中,以加速整個過程,從而優(yōu)選在一個周期時間T(~2.5)ns內(nèi)完成。
在上述的例子中,每單元的局部子組的數(shù)量為1(S=1)。這使下面說明的普通方法的最簡單的情況。對于可變組數(shù)N和子組數(shù)S操作的方案,明顯優(yōu)于上述例子,并且由于它們具有最小的復(fù)雜性和高性能,我們推薦他們。這種由加擾地址A獲得組號u和局部地址la的低復(fù)雜性的技術(shù)在下面的本發(fā)明的實施例的詳細說明中提供。
附圖簡要說明
圖1是本發(fā)明的存儲器尋址系統(tǒng)的一個實施例的框圖。
圖2是本發(fā)明的一個實施例的存儲器部分的框圖。
圖3是本發(fā)明的一個實施例的翻譯單元的框圖。
圖4示出了S-Box工作的流程圖。
圖5示出了M-Box工作的流程圖。
圖6示出了N-Box工作的流程圖。
圖7示出了連接到單存儲器陣列的本發(fā)明的實施例。
圖8示出了連接到可切換總線結(jié)構(gòu)中的單存儲器陣列的本發(fā)明的實施例。
圖9示出了多處理器和存儲器系統(tǒng)。
圖10示出了在多處理器和存儲器系統(tǒng)中連接到局部存儲器單元的本發(fā)明的實施例。
圖11示出了本發(fā)明的另一個實施例的流程圖。
圖12-37為本發(fā)明的實施例的硬件實現(xiàn)的層次設(shè)計圖。
附圖中采用的公共原理圖模塊如在圖12-37中所述,下面列出在分層設(shè)計原理圖中采用的公共功能模塊。他們?yōu)楸绢I(lǐng)域的技術(shù)人員所熟知的邏輯模塊,并由一個或多個數(shù)據(jù)確定其參數(shù)。對于每一個模塊類型,由圖12-37中的全部原理圖說明一個例子。
模塊名稱和功能說明1.Bits_N_K_L 輸入N位總線A[N-10],輸出子總線A[LK]。
2.AddN在A[N-10]和B[N-10]上的N位加法器。
3.CSA 進位存儲(全)加法器。
4.CSA-N 具有X[N-10]、Y[N-10]、Z[N-10]輸入,S[N-10]、C[N-10]輸出的CSA的N個長陣列。
5.DECNE(其中N為任意數(shù))具有使能E的[log2N]到N的譯碼器。
6.GNDxN 返回N個地(0);Q[N-10]=0。
7.INS_N_M_L 接收A[N-10](N個輸入),并在其下面填充L個地,在其上面插入適合M個輸出的A[J0]位,并且如果N+L<M,在結(jié)果Q[M-10]的上面增加地(0)。
8.N_K_M 具有M位輸出Q[M-10]的硬接線的十進制常數(shù)K。
9.Pad_N_M 在A[N-10]下面加入M-N個地(0)以得到M位輸出。
10.PDMuxN_M 預(yù)譯碼多路器。輸入N個獨立選擇信號S[N-10]和矢量總線A
[M-10],…,A[N-1][M-10],得到輸出Q[M-10]。
11.Up_N_M 接收A[N-10]并在其低位加入M個0(左移M位)。結(jié)果為N+M長。
12.TrAddN 帶進位輸入CI和進位輸出CO的N位加法器13.SubN N長度的減單元14.CPM N(截斷乘積多路器(chopped product mux))以譯碼的形式從0、B[N-10]、左移僅左移N-1位的B[N-
10]和B[N-10]的反中以該順序選擇。選擇線為A[20]。
15.ProdMux_N B[N-10]和{0,1,2,3=-1}的簡化有符號的乘積。在最高位(第N位)上加VCC(=1)。
16.Recode將0、1、2、3、進位輸入(CI)以基數(shù)4重新編碼(recoding)為0、1、2、-1、進位輸出(CO)。
17.Recode_{6,8}采用重新編碼模塊連續(xù)重新編碼6或8位。
詳細說明I.2的冪組數(shù)的實施例如果組數(shù)N為2的冪(即,N=2b),根據(jù)本發(fā)明的實施例的地址翻譯單元執(zhí)行如下步驟(1)設(shè)置A=Λa mod 2K,其中A為對應(yīng)于邏輯地址a的加擾后的地址,2K為地址空間(其中K對于字對準(zhǔn)存儲器通常為大約21),Λ為奇數(shù)值常數(shù);并且(2)將組號設(shè)置在A的高b位并將邏輯地址設(shè)置在A的剩余位。
選擇Λ從而最小化與在2K的地址空間上發(fā)生在所關(guān)心的明確的訪問方式(例如,各種固定間隔或?qū)蔷€訪問方式)中的組號的均勻分布的偏差。對Λ的選擇依賴于用戶的要求,并且本發(fā)明不限定于任何特定的標(biāo)準(zhǔn)。適當(dāng)?shù)摩梢酝ㄟ^例如直接計算機模擬將Λ的所有可能的值(即,1≤Λ≤2K)的偏差的徹底計算來選擇,選擇Λ以最小化與用于所關(guān)心的明確的一維和多維存儲器訪問方式的特定類型的組訪問的均勻分布的偏差。此外,基于Λ在數(shù)論上的性質(zhì)的分析技術(shù)可用于預(yù)選擇滿足最小化與均勻分布的偏差的所需性質(zhì)的Λ的類型;從而減少徹底模擬所需要的時間。
模塊2K的選擇是最佳的,因為Λa mod 2K的乘法可以用相對簡單的硬件來實現(xiàn),就像在本領(lǐng)域的技術(shù)人員理解的那樣。該方案在其實現(xiàn)中只要求幾個門延時,并由此在存儲器訪問上至多增加一個額外的管線級。模乘法mod,比方說216,只占16位定點乘法器的芯片面積的一半(即,只需要一半的門)。它也足夠快,因為乘數(shù)Λ預(yù)先是已知的,并可以是布斯譯碼以減少在乘法樹(Wallace)中的級數(shù)。通過在硬件中固定Λ的值可以進一步減小電路的復(fù)雜性。
在下面介紹在相當(dāng)?shù)湫偷亩嘟M存儲器片上子系統(tǒng)的情況下準(zhǔn)晶體地址映射方案的特殊例子。在該特殊例子中,片上有16個存儲器組,并且訪問流由在每個存儲器組的輸入端的FIFO和在輸出端的FIFO緩沖。緩沖確保了存儲器訪問的正確順序。組沖突的定義只是基于每個存儲器組的周期時間。在該例子中,代表當(dāng)前先進技術(shù)的系統(tǒng)周期時間為T ns(T~2.5),并且每個存儲器組具有10T ns的周期時間(或者在下一代技術(shù)中甚至為8T ns)。因此,訪問的非沖突方式是不很嚴(yán)格的條件。在該例中,組沖突只發(fā)生在如果在10個連續(xù)的存儲器請求之內(nèi)訪問同一個組時。相反地,如果在10個連續(xù)的存儲器請求之內(nèi)沒有發(fā)生組沖突,則訪問在沒有額外等待時間的情況下進行并且處在系統(tǒng)的峰值帶寬。雖然隨后的討論假設(shè)該存儲器結(jié)構(gòu)是恰當(dāng)?shù)?,但是本發(fā)明并不限于該結(jié)構(gòu),并且本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解具體的制造商可能具有不同的結(jié)構(gòu)或不同的定時特性。
在該特殊例子中,在存儲器中采用邏輯地址到物理地址的偽隨機或隨機映射將產(chǎn)生存儲器沖突并將顯著降低系統(tǒng)的峰值性能。這里所有的明確的邏輯地址訪問方式,包括最重要的間隔為1的訪問方式,將變?yōu)榫哂胁豢杀苊獾慕M沖突的物理地址的隨機訪問。例如,在存儲器組的輸入和輸出上具有深度為2的FIFO,處理量僅為66%。增加FIFO的深度到6使處理量增加到96%,但要花費超過三倍的平均等待時間。
例如,在對于尺寸達到不是13的倍數(shù)的O(2M)的所有間隔的存儲器訪問中,可選擇Λ以產(chǎn)生非沖突的組訪問,并由此最小化等待時間。數(shù)字13是具有該特性的最大(并且因此是最佳的)數(shù)字,但是可以采用其它數(shù)字,例如11或其它更小的素數(shù)。例如,對于M=14,加擾乘數(shù)Λ=3781提供了100%的存儲器利用率,并且對于直到不能被13整除的350的所有間隔等待時間最小。
該特定例子對于大多數(shù)間隔和任意數(shù)量的存儲器組保持了非沖突組訪問(包括,但不限定于2的冪的組數(shù)),同時提供隨機化的其它訪問。該加擾器對于固定的乘數(shù)Λ具有最小的復(fù)雜度(其尺寸僅為輸入/輸出的線性關(guān)系),這對于該尋址方案的實際實現(xiàn)很重要,因為它減少了電路中門的數(shù)量。此外,在該加擾方案中對于固定間隔陣列的組訪問方式類似于有限準(zhǔn)晶體tiling。該存儲器翻譯單元的例子的特征在于在這里公開的系統(tǒng)的所有優(yōu)選實施例中的地址加擾方案。
在Λ的選擇中可采用類似的優(yōu)化方法以最小化與對于間隔大于1的邏輯地址的其它序列和其它明確的存儲器訪問的一維和多維方式的組訪問的均勻分布的偏差。在其它的這種例子中,可選擇Λ從而對于間隔為1(連續(xù))的陣列提供無沖突訪問,對于所有更大的不能被89整除的間隔(直到O(2M))提供100%的帶寬,但是對于小于89的某些間隔組訪問具有比最小等待時間大的等待時間。
在該存儲器組結(jié)構(gòu)的特殊例子中,本發(fā)明的總的性能,如在模擬中所測定的,幾乎是單處理器的存儲器處理量的有效帶寬的兩倍。
II.任意組數(shù)的實施例但是,如果一個或多個組有缺陷,則地址空間收縮到N·2m個存儲單元,其中N<2b。在這種情況下,必須將具有有效范圍0…N·2m-1的邏輯地址a翻譯為在0…N-1范圍內(nèi)的唯一組號u,并且局部地址la在0…2m-1的范圍內(nèi)。進行翻譯的硬件邏輯的復(fù)雜性對于應(yīng)用(特別是當(dāng)這種地址翻譯單元與多處理器系統(tǒng)中的各處理單元相連時)是至關(guān)重要的。此外,存儲器組的尺寸是可變的。這通常通過進一步將N個組的每一個細分為S個子組來實現(xiàn)(由此N和S都可變)。設(shè)計存儲器地址翻譯(和加擾)單元使得當(dāng)存儲器組數(shù)N和子組數(shù)S被設(shè)置(動態(tài)地)為小于或等于在存儲器系統(tǒng)中的可能的最大值時,該存儲器地址翻譯(和加擾)單元能夠工作。
下面提供用于在這種一般情況下由加擾的地址A得到的組數(shù)u和局部地址la的低復(fù)雜性技術(shù)的特殊例子。
A.定義/基本假設(shè)在這里所用到的術(shù)語“邏輯地址”是指器件向外輸出到存儲器系統(tǒng)的用于識別存儲器中的一個對象的地址。術(shù)語“物理地址”是指物理存儲器單元并包含組號和組內(nèi)的局部地址。在整個地址空間上邏輯地址和物理地址的映射是一一對應(yīng)的。
該實施例結(jié)合N組存儲器進行說明,其中1≤N≤64,在每組中包含S·210個字,其中1≤S≤8?!白帧被颉案咚倬彺婢€”是可尋址的存儲器單元,并且可以是任意長度的。在典型的存儲器系統(tǒng)中,每個可尋址的存儲器單元包含預(yù)定的字節(jié)數(shù),例如32字節(jié)。在該例子中,地址空間為N·S·210,最大為219有效字節(jié)。因此,所有的有效存儲器單元可由19位邏輯地址A表示,范圍為0≤A ≤ N·S·210。每個邏輯地址對應(yīng)于物理存儲器單元,其中物理存儲器單元由組號和組內(nèi)的局部地址確定;即A→(組,局部),其中0≤組≤N,0≤局部≤S·210。本發(fā)明并不局限于具有上述結(jié)構(gòu)的存儲器。例如,本發(fā)明可以應(yīng)用于具有多于或少于64組或者每組多于8·210字或少于1·210字的存儲器。
B.存儲器尋址系統(tǒng)說明在地址翻譯和加擾單元中,根據(jù)優(yōu)選實施例,組號Bank(=u)和局部物理地址Local(=la)都由邏輯地址A的位的幾個模塊上的模乘法確定,然后選擇相應(yīng)結(jié)果的位范圍。如上所述,該原理在N=2b的情況下非常容易實施,并且實施起來對于任意的組號N和子組號S變化較小。這里對于存儲器翻譯單元采用模乘法作為構(gòu)造有限準(zhǔn)晶體映射的方法(多個可能的方法之一,但在本實施例中是最佳的)。
圖1是根據(jù)本發(fā)明的用于任意組數(shù)的存儲器尋址系統(tǒng)的框圖。在該實施例中,翻譯單元1接收19位邏輯地址A、組號N、子組號S和乘數(shù)Λ,并將邏輯地址A翻譯為6位組號和13位局部地址,然后輸出。然后組號被用于在存儲器部分2中尋址將組號依次映射為無缺陷組的物理組號的無缺陷組表6。物理組號和局部地址用來尋址附屬的存儲器件。無缺陷組表6優(yōu)選可寫存儲器(例如RAM)?;蛘?,如果只設(shè)置一次,例如在附屬存儲器件初始測試之后,可以是只讀存儲器(ROM)。在一個實施例中,無缺陷組表6為64×6位的表,其中行號對應(yīng)于邏輯組號,并且表中每一行的內(nèi)容提供了相應(yīng)的無缺陷組的物理組號。如果少于64組,表中的行并不是都被使用。存儲器表6顯示為64×6位的存儲器是因為在該例中的有效組最大為64。當(dāng)然,如果存儲器系統(tǒng)具有更多的組,則需要更大的存儲器,而如果存儲器系統(tǒng)具有更少的組,則只需要較小的存儲器。
N、S和Λ的值分別儲存在存儲器部分2的寄存器3、4和5中?;蛘撸鼈兊闹悼梢詢Υ嬖谥蛔x存儲器或硬連線中。
優(yōu)選的,配置寄存器3、4和5以及無缺陷組表6從而他們能夠采用例如圖2所示的掃描路徑加載來更新(注意,在不同的圖中相同的編號代表相同的元件)。采用該技術(shù),N、S和Λ的值進入寄存器3,進入寄存器3的每一位使得寄存器3、4和5的內(nèi)容右移,同時寄存器3的最后一位移入寄存器4,寄存器4的最后一位移入寄存器5,直到所有三個寄存器填入所需要的值。在無缺陷組表6中的值采用同樣的方法設(shè)置。
圖3是翻譯單元1的框圖。S-Box 12在其B輸入端接收A的高9位(即,A[1810],在下面表示為Atop)并在其S輸入端接收S。它產(chǎn)生Atop/S的商Q和余數(shù)R,在本實施例中,其中S的值在1到8之間;即,Atop=Q·S+R。Q和R可以采用如下方法更有效的得到Q=(L(S)·Atop+C(S))[高位低位],其中L(S)和C(S)是只依賴于S的常數(shù),并且[高位低位]定義了位的范圍。例如,L(S)和C(S)可存儲在寄存器或在硬件中實現(xiàn)。R為Atop-Q·S模8;即,Atop-Q·S的最低三位。對于L(S)和C(S)的值,1≤S≤8,對于位范圍[1510]如下Case S=1→L=1024,C=0Case S=2→L=512,C=0Case S=3→L=342,C=0Case S=4→L=256,C=0Case S=5→L=205,C=0Case S=6→L=171,C=0Case S=7→L=146,C=128Case S=8→L=128,C=0此外,例如Q可以如下確定Case S=1→Q=(Atop·128)[127]或Q=Atop[50]Case S=2→Q=(Atop·64)[127]或Q=Atop[61]
Case S=3→Q=(Atop·171)[149]Case S=4→Q=(Atop·32)[127]或Q=Atop[72]Case S=7→Q=(Atop·73+64)[149]圖4示出了用于確定Q和R的上述過程。在步驟20中,輸入Atop和S的值并設(shè)置B等于Atop。在步驟21、22和23中,L(S)、C和范圍[高位低位]的值分別根據(jù)S的值確定。在步驟24中,商Q設(shè)置為(B·L(S)+C)[高位低位]。在步驟25中,R設(shè)置為(B-S·Q)模8。在步驟26中,Q和R為輸出。
再參考圖3,M-Box 14(a)在其B輸入端接收A的低10位(即,A[90],在下面表示為Abot),并在其A輸入端輸入乘數(shù)Λ,(b)計算D=(Abot·Λ)模210,并且(c)在其Q輸出端輸出結(jié)果D。該過程在圖5中的步驟31、32和33中分別示出。
例如,通過徹底計算重新確定適當(dāng)?shù)摩?;即,通過在翻譯單元中采用這里所述的各種值并確定對于N和S的特定值產(chǎn)生最佳組訪問方式的Λ值。如上所述,當(dāng)兩個邏輯地址被映射到同一個組號時發(fā)生沖突。這種沖突每N+1次訪問至少發(fā)生一次。此外,最佳組訪問方式對于所關(guān)心的明確的訪問方式使組沖突最小化,例如,固定間隔方式和線性兩維和多維訪問方式(包括在矩陣中的對角線訪問方式)。在優(yōu)選實施例中,間隔1沖突和對于所關(guān)心的其它明確訪問方式的沖突(包括固定間隔方式)平均發(fā)生的次數(shù)不超過每N次訪問。對于各種間隔,產(chǎn)生最少組沖突的ΛS為最佳。根據(jù)該說明書的原理構(gòu)成的地址翻譯單元包括采用模乘法或下面所述的其它選擇中的一個的地址翻譯單元,避免例如在“發(fā)明背景”中所述的偽隨機映射的缺點。
對于N的各種值,優(yōu)選的ΛS對于低范圍間隔并且特別是間隔1的優(yōu)化在下面提供;對于所有的S在其允許的范圍1≤S≤8內(nèi)采用相同的值N=33,Λ=33,83,99,165,231,247,249,353,415,459;N=34,Λ=25,33,83,99,165,231,247,249,353,415,459;
N=35,Λ=25,33,75,83,99,119,165,231,247,249,353,415,459;N=36,Λ=25,33,75,83,99,119,165,231,247,249,381,415;N=37,Λ=25,33,75,83,99,119,165,231,249,381,415;N=38,Λ=25,75,83,119,165,231,249,381,415;N=39,Λ=25,75,83,119,231,249,305,381,415;N=40,Λ=25,75,83,119,249,305,381;N=41,Λ=25,75,83,119,209,249,305,381;N=42,Λ=25,75,83,119,209,249,305,381;N=43,Λ=25,75,83,87,119,209,249,305,381,425;N=44,Λ=25,87,119,209,249,305,381,425;N=45,Λ=25,87,119,209,305,381,425,483;N=46,Λ=25,87,209,305,381,425,483;N=47,Λ=25,87,209,305,381,425,483;N=48,Λ=25,87,209,305,381,425,483;N=49,Λ=109,209,305,381,425,483;N=50,Λ=109,209,305,381,425,483;N=51,Λ=109,209,243,305,425,483;N=52,Λ=109,209,243,305,425,483;N=53,Λ=109,209,235,243,305,397,483;N=54,Λ=109,209,235,243,305,397,483;N=55,Λ=109,209,235,243,319,397,483;N=56,Λ=209,235,243,319,397,483;N=57,Λ=107,235,243,319,483;N=58,Λ=107,235,243,319,483;N=59,Λ=107,235,243,319,483;N=60,Λ=107,235,243,319,483;N=61,Λ=107,235,243,319,483;N=62,Λ=107,235,243,319;N=63,Λ=107,235,243,375;
N=64,Λ=107,235,243,375;重新參考圖3,N-Box 16在其Q輸入端接收S-Box 12的Q輸出;在其D輸入端接收M-Box 14的輸出,并且組號N在其N輸入端。N-Box 16計算并輸出組號和局部地址的低10位LA[90],如圖6所述。由N-Box 16輸出的局部地址的低10位與由S-Box的R輸出端輸出的高3位LA[1210]組合形成整個局部地址。
由N-Box 16執(zhí)行的過程在圖6中示出。在步驟41中,Q、D和N輸入。步驟42將X設(shè)置為D·N+Q。步驟43將邏輯組號設(shè)置為X的位[1510];即,Logical Bank=X[1510]。步驟44將局部地址的位[90]設(shè)置為X[90];即,Local Address[90]=X[90]。步驟45輸出邏輯組號和局部地址的低位。
然后邏輯組號發(fā)送并作為無缺陷組表6的地址,如上面結(jié)合圖1的說明。
下面提供的是S-Box 12、M-Box 14和N-Box 16對于N=64、S=8、Λ=235(=28-24-22-20)和邏輯地址A=0x3DF29(或二進制0111101111100101001)的工作的例子
所說明的該實施例具有2K地址空間,其中K=19。不需要任何進一步的改進,通過例如采用地址的19位子集(例如低19位)所得到的組號即可在任意K>19的地址空間上實施。在這種情況下,局部地址可通過例如將由19位子集所獲得的局部地址添加到K位地址的未使用位來獲得。
此外,在該實施例中所說明的技術(shù)可以容易地適應(yīng)下面值的范圍的任何一個K大于或小于19;N大于或小于64;S大于或小于8。在這種變型中,參數(shù)Λ的選擇根據(jù)上述的準(zhǔn)晶體映射的原理作出。建立在適當(dāng)改進的S-、M-和N-Box上的正確選擇Λ的地址翻譯單元的性能隨著K的增加(對于K>19)而提高。
C.硬件實現(xiàn)對于圖1-6中示出的實施例的硬件實現(xiàn),在圖12-37中示出的層次設(shè)計圖中進行了說明。在這些原理圖中的低級模塊的實現(xiàn)代表說明性的目的,并且在產(chǎn)品中以庫和技術(shù)特定方式來實現(xiàn)。本領(lǐng)域的技術(shù)人員應(yīng)理解特定實現(xiàn)的范圍并能選擇適當(dāng)?shù)膸旌吞囟üに?。例如,在較新的技術(shù)中采用緩沖器來減小寫長度,而在較早的技術(shù)中優(yōu)選更小門延時的更長的線。
圖12示出了S-Box 12的硬件實現(xiàn)。Sub3 101接收4四位常數(shù)S[30]和來自硬連線的常數(shù)114(或者,從寄存器)的值1,并由S中減去1。這將包含在范圍1到8中的S轉(zhuǎn)換為包含在范圍0到7中,作為索引。結(jié)果發(fā)送到選擇的相應(yīng)的L(S)的多路器MUX8×8 104的S輸入端和確定C的相應(yīng)值和范圍[高位低位]的譯碼器DEC8110。
多路器MUX8×8 104根據(jù)輸入S的值選擇并輸出八個輸入值A(chǔ)-H中的一個。這些輸入值(對應(yīng)于圖4中的L(S))來自常數(shù)排102。如圖所示,常數(shù)排102在位置0到7中分別包含如下的硬編碼常數(shù)128、64、171、32、205、171、146和128。此外,在排102中的值可存儲在寄存器中。
譯碼器DEC8 110也接收Box Sub3 101的輸出,并將其輸出Q0-Q7中的一個根據(jù)接收的值置為高(例如,如果接收的值為0,則Q0置為高;如果接收的值為1,則Q1置為高;等)。
SBox_Mult 105計算B·L(S)+C,其中C對于S=7等于128,否則為0,并在其Q輸出端輸出結(jié)果。它在其A輸入端接收來自多路器104的L(S),并在其B輸入端接收記作B[80]的邏輯地址A的高9位。在該實施例中,C只在S=7時非零,在此情況下譯碼器DEC8 110的Q6輸出端輸出1并送到SBox_Mult 105的ADD128輸入端。
元件106、107和108,PDMux3_6 109和OR門111和112選擇SBox_Mult 105的輸出的位范圍(即,[高位低位])。范圍取決于譯碼器DEC8 110的輸出。元件106引導(dǎo)這里為SBox_Mult 105的輸出Q的位Q[127]到PDMux3_6 109的輸入端A;元件107引導(dǎo)位Q[149]到PDMux3_6 109的輸入端B;元件108引導(dǎo)位Q[1510]到PDMux3_6109的輸入端C。PDMux3_6 109為具有只有一個為邏輯1的三個獨立選擇線S[20]的預(yù)譯碼多路器,選擇并輸出三個對應(yīng)的輸入A、B和C中的一個。在該實施例中,如果S等于1、2或4(即,由譯碼器DEC8 110到OR門111的輸出Q0、Q1或Q3為邏輯1)則選擇輸入端A(范圍[127]);如果S等于3(即,譯碼器DEC8 110的輸出Q2為邏輯1)則選擇輸入端B(范圍[149]);如果S等于5、6、7或8(即,由譯碼器DEC8 110到OR門112的輸出Q4、Q5、Q6或Q7為邏輯1)則選擇輸入端C(范圍[1510])。多路器PDMux3_6 109的輸出對應(yīng)于圖1所示的S-Box 2的Q輸出。
SBox_BMSQ 113計算(B-S·Q)mod 23;具體地,它在其B[20]、S[20]和Q[20]輸入端上分別接收B[20]、S[20]和多路器109的輸出的低三位,并在其R輸出端上輸出結(jié)果。每個輸入僅為3位,因為計算只決定結(jié)果的低三位(即,模23)。
在圖14中示出了SBox_Mult 105的實現(xiàn)。Recode8 250重新編碼在8位輸入端A的位,以利于高效率的乘法。在圖15中示出了具有四個Recode 300模塊的Recode 250的實現(xiàn)。在圖16中示出了Recode300模塊的實現(xiàn)。ProdMux_9 251、252、253和254根據(jù)其A輸入端是否為0、1、2或3分別計算其9位B輸入端與0、1、2或-1的簡單有符號乘積,并產(chǎn)生11位輸出Q,其中Q[10]只在輸入端A等于3時置1,而Q[11]一直置為1。ProdMux_9可以以與圖17中所示的ProdMux_10相同的方式實現(xiàn)。元件256、257、258、259和260進行總線交換。元件261和262為通用形式Pad_N_M的電路;每個在其長度為N的輸入端加入(Pad)M-N個地(0),以產(chǎn)生長度為M的輸出。在圖18中示出了Pad_N_M的例子Pad_6_10;它在其6位輸入中加入4個0以產(chǎn)生10位輸出。在圖18中的元件Gndx4 340為返回N個地(0)的通用形式GndxN的元件;在Gndx4 340的情況下返回4個地。Up_14_2 263為通用形式Up_N_M的電路;它接收N位輸入并在其低位加入M個0,產(chǎn)生長度為N+M的結(jié)果。在圖19中示出了Up_N_M的例子Up_8_2。元件264、265、269、271和272為通用形式Ins_N_M_L的電路;每個接收長度為N的輸入,在其低位增加L個地,在其高位插入適合M個輸出的位數(shù),并且,如果N+L<M,在結(jié)果的高位增加地(0)。在圖20中示出了Ins_N_M_L的例子Ins_14_20_5。CSA_16 266、270和273以及CSA_14 268為通用形式CSA_N的電路;每個為N位長的進位存儲(全)加法器CSA的陣列。在圖21中示出了CSA_N的例子CSA_10,并且在圖22中示出了構(gòu)成CSA電路的實現(xiàn)。如圖22所示,CSA分別計算其三個輸入X、Y和Z的和以及進位S和C。如果(XY)Z為1,XOR 135設(shè)置和S為1,其它情況為0(即,如果X、Y和Z中的一個為1或它們都為1,則S置1)。如果X、Y和Z中的至少兩個為1,則AND門136和OR門139設(shè)置進位C為1,否則設(shè)為0。最后,在圖14中的Add16274為N位加法器的通用形式AddN的電路。在圖23中示出了AddN電路的一個例子Add16;它由四個作為TrAddN電路的例子的TrAdd4290電路組成。TrAddN電路為具有進位輸入(CI)和進位輸出(CO)的N位加法器。在圖24中示出了TrAddN電路的一個例子TrAdd4290。
在圖13中示出了Sbox_BMSQ 113的實現(xiàn)。AND門200、201和202、Up_2_1 203和Up_1_2 204、CSA_3 205、Ins_3_3_1 206和Add3207計算由Add3 207輸出的S·Q。Sub3 208接收Add3 207的輸出并將其從B中減去(其中B是Atop的低三位)。在上面說明了在Up_2_1203和Up_1_2 204、CSA_3 205、Ins_3_3_1 206和Add3 207中的電路。Sub3 208是減去N位輸入產(chǎn)生N位輸出的通用形式SubN的電路。在圖25中示出了SubN電路的一個例子Sub3 208。
圖25示出了3位輸入A減去3位輸入B并輸出3位結(jié)果的電路。NOT門130輸出B的反碼,記為Y。輸入A記為X。CSA 131、132和133為進位儲存(全)加法器,每個在其S輸出端輸出結(jié)果,并在其C輸出端輸出進位。CSA 131計算結(jié)果的低位Q
,CSA 132計算結(jié)果的中間位Q[1],而CSA 133計算結(jié)果的高位Q[2]。具體地,CSA131將X
、Y
和硬連線1(即,VCC)相加并在其S輸出端輸出結(jié)果的第一位Q
,在其C輸出端輸出進位值。CSA 132接收并將X[1]、Y[1]和CSA 131的C輸出相加并在其S輸出端輸出結(jié)果的第二位Q[1],在其C輸出端輸出進位值。CSA 133接收并將X[2]、Y[2]和CSA 133的C輸出相加并在其S輸出端輸出結(jié)果的第三位Q[2]。
在圖26-28中示出了圖12中的MUX8×8 104的實現(xiàn)。如圖26所示,多路器104為8個MUX8 150單元的硬件陣列,一個單元對應(yīng)于8位輸入值A(chǔ)-H的每一位。在圖27中示出了MUX8 150單元并包含7個MUX單元170-176。每個MUX單元根據(jù)其S輸入選擇并輸出其輸入端A或B中的一個。MUX單元170-173根據(jù)S的低位(即,S
)選擇輸出;MUX單元174-175根據(jù)S[1]選擇輸出;MUX單元176根據(jù)S[2]選擇輸出。在圖28中示出了MUX單元的實現(xiàn),并且其工作原理對于本領(lǐng)域的技術(shù)人員是容易理解的。
在圖12中的常數(shù)排102和N_1_3 114為通用形式N_K_M的硬連線常數(shù),其中K為常數(shù)的值,M為輸出的位數(shù)。在圖29中示出了N_K_M的例子N_171_8。它在8位總線上輸出值171(二進制10101011)。
在圖12中的元件106、107和108為通用形式Bit_N_K_L的子總線結(jié)點;結(jié)點接收N位總線A[N-10],并輸出子總線A[LK]。在圖30中示出了Bit_N_K_L的例子Bit_16_9_14。它輸出16位輸入總線的9-14位。
圖12中的PDMux3_6 109為通用形式PDMuxN_M的預(yù)編碼多路器;這種多路器接收N個獨立的選擇線并輸出寬度為M的N個矢量總線中的一個。在圖31中示出了PDMuxN_M的例子PDMux3_10。它具有三個選擇線S選擇三個10位寬的輸入A、B、C中的一個的選擇線S并輸出選中的輸入。
在圖36中示出了譯碼器DEC8 110的實現(xiàn)。DEC8 110根據(jù)其3位輸入端A接收的值將其輸出Q0-Q7中的一個置為高。它包括通用形式的電路的例子的DEC2E 281和DEC4E 283和285;每一個接收log2N寬的輸入,并且如果其使能輸入E也高,則設(shè)置其N個輸出中的一個為高。在圖37中示出了DECNE的例子DEC2E。
圖32示出了M-Box 14的硬件實現(xiàn)。它在其A輸入端接收8位值A(chǔ),并在其B輸入端上接收地址A的低10位(即,A[90]或Abot),計算Abot·Λmod 210,并輸出10位結(jié)果。上面已討論了圖32的所有元件,除了CPM_10 301、CPM_8 302、CPM_6 303和CPM_4 304,他們中的每一個都是CPM_N形式的chopped product多路器。CPM_N多路器接收N位輸入B[N-10],并根據(jù)輸入A[20]的選擇線哪一個為邏輯1輸出B[N-10](即,1·B)、B[N-10]左移一位(即,2·B)或B[N-10]的反碼(即,-1·B)。在圖33中示出了CPM_N的例子CPM_10301。在該例子中,輸入為10位寬。
圖34示出了N-Box 16的硬件實現(xiàn)。它在其D輸入端上接收M-Box14的輸出、在其Q輸入端上接收S-Box 12的Q輸出并在其N輸入端上接收組號N。D、Q和N輸入分別送到Nbox_Mult 350的B、C和A輸入端,計算D·N+Q,并輸出16位的結(jié)果。當(dāng)沒有缺陷組時,對于N=64的情況也有特殊的規(guī)定。
在圖35中示出了Nbox_Mult 350的硬件實現(xiàn)。圖35的所有元件已在上面說明過了。
優(yōu)選的硬件實現(xiàn)具有單周期操作,通常用于常規(guī)系統(tǒng)。在系統(tǒng)中,存儲器子系統(tǒng)通過例如當(dāng)服務(wù)上一個請求時,準(zhǔn)備新的未完成的請求可容許等待狀態(tài),“S-,M-,N-Box”的流水線操作是有利的——他能夠在只增加幾個用于保存中間結(jié)果的短寄存器的成本的條件下顯著縮短循環(huán)時間。另一個可能性是在上述S-,M-,N-Box中的所有短乘法采用異步實現(xiàn)。對于異步訪問存儲器陣列,這種方法去掉了建立/保持常數(shù),并為大多數(shù)數(shù)據(jù)方式提供了最快的時間。根據(jù)異步乘法器陣列的實現(xiàn),這種方法導(dǎo)致數(shù)據(jù)相關(guān)定時。
D.備選實施例根據(jù)模乘法作為產(chǎn)生準(zhǔn)晶體映射的方法,對于本系統(tǒng)的地址翻譯的各種實現(xiàn)有廣泛的選擇。它們在實現(xiàn)的復(fù)雜性以及對于不同的組數(shù)和不同的存儲器訪問的明確方式上變化。在這些優(yōu)選的實施例中,對于任意的組數(shù)存在最小復(fù)雜度的硬件實現(xiàn)。
對于由加擾地址A(其中A=Aa mod 2K)得到的組號u和局部地址la,一個低復(fù)雜度技術(shù)是當(dāng)每組的子組數(shù)S為1(S=1)時,設(shè)u=(A·N)/2K和la=A-u·2K/N,其中N為組數(shù)。這里N為短常數(shù),對于固定數(shù)N,2K/N為(更長的)常數(shù)。因此,除了標(biāo)準(zhǔn)加擾以外,該方法只要求兩個短數(shù)(例如,6位)乘法和加法/減法。此外,各種模乘法(加擾和翻譯)可以合并到一個模塊中,以加速整個過程,結(jié)果在過程中能在時間Tns內(nèi)完成。
圖11示出了根據(jù)本發(fā)明的翻譯單元的備選實施例。這里,如上所述,組數(shù)N不超過64。如在上一個實施例中,翻譯單元接收地址A并產(chǎn)生相應(yīng)的組號和局部地址。在步驟51中,A_Top設(shè)為A[1813],A_Mid設(shè)為A[127],A_Bot設(shè)為A[60]。在步驟52中,A_S設(shè)為A_Top·27+A_Bot。步驟51和52從A中選12位用于確定組號。也可以用在這些步驟中指定的位以外的其它位。在步驟53中,Middle_bits設(shè)為(A_S·Λ)[1813]。在步驟54中,Middle_bits通過無缺陷組表或類似的翻譯機制映射到組號。最后,在步驟55中,局部地址A_Local設(shè)為A_Mid·27+A_S[ES],其中[ES]對于奇數(shù)N和N=64為[60];對于偶數(shù)N但N≠64為[N2+6N2],其中N=N_Odd*2N2(即,N_Odd為N的奇數(shù)系數(shù)并且N2為2的最大冪次除以N)。
根據(jù)本發(fā)明的另一個實施例,采用模乘法以產(chǎn)生準(zhǔn)晶體映射,對于各種明確的存儲器訪問方式用于最小化組沖突。在又一個這種實施例中,A首先與19位常數(shù)LL相乘,看乘積A·LL的位[3618]。在這種實施例的不同例子中,采用如下的模乘法(變換)方法A→A·4161+127乘積位[1714]和[1918]提供有效的組號,同時乘積的更高位提供局部地址。
上面所示的實施例立即采用更多的門,并且可能比圖1-4中所示的實施例慢。在某些情況下,(例如,N=61)它們對于固定間隔訪問較好,而對于其它(例如,N=63)它們要差一些。
本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,各種組合電路,包括加法器(例如,在有限或無限域上多項式乘法的實現(xiàn)等)、查表和模乘法的變形,或者甚至是模擬方案而不是模乘法可用來構(gòu)成用在地址翻譯單元中的與在多組存儲器的明確訪問方式中減少存儲器組沖突具有相同效果的有限準(zhǔn)晶體映射(包括,但不限定于在多維表中的固定間隔方式和/或線性訪問方式)。
E.容錯工作上述的重映射和加擾系統(tǒng)允許整個存儲器系統(tǒng)容錯工作,以及片上多處理器和多組存儲器的容錯工作。
對于任何容錯工作的先決條件是確定個存儲器組或模塊失效的存儲器測試和/或控制這些組或模塊(單元)的處理器單元。該測試可在存儲器和/或處理器使用中的任何階段進行——在元件制造后的初始測試,或在壽命期和元件工作期間的任何時間。該測試可在外部(例如,通過外部存儲器總線進行存儲器訪問的方法)或內(nèi)部采用現(xiàn)有技術(shù)的各種形式,例如串行或并行掃描路徑、BIST(內(nèi)建自測試)或產(chǎn)生測試圖形用于全面測試的專用的片上電路。
一旦進行測試并發(fā)現(xiàn)缺陷元件——存儲器模塊、組或處理單元,必須存儲缺陷信息,從而能夠被重映射電路有效地利用。有很多普通的方法存儲該信息。首先,在制造期間進行測試,缺陷信息可以在芯片中以硬連線的形式存儲——但是,通常不能進行進一步的修改。其次,在測試之后,缺陷信息可以寫入或下載到芯片上的RAM區(qū)。這要求分別存儲壞元件號。這種存儲可在外部的PROM或其它機械可讀形式(條形碼、磁條碼、系統(tǒng)存儲等)進行。第三,在芯片上的專用非易失性區(qū)域可用于這種存儲和后來的訪問或進一步測試后的重新寫入。第四,在許多情況下,測試和重新寫入可完全由軟件進行,例如,起動過程后軟件測試存儲器并將壞元件的列表下載到芯片上的RAM(或寄存器)區(qū)中。在上面結(jié)合圖1和2說明的無缺陷組表6特別適合于第三和第四種技術(shù)。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,用于存儲缺陷信息的其它技術(shù)也可以采用,并且本發(fā)明并不局限于上述特定技術(shù)。
關(guān)于缺陷元件的信息(例如,存儲器組、單元或處理單元)可采用多種形式。例如,如果預(yù)計只有幾個缺陷元件,可存儲缺陷元件號,用重映射確保這些元件號不被使用。在缺陷元件的數(shù)量很多的情況下,可采用簡單的RAM存儲好(無缺陷)元件的列表。作為這種實現(xiàn)的典型情況,考慮64個存儲器組(單元)的系統(tǒng),其中任何數(shù)量的組可以標(biāo)記為有缺陷的,并且只有N個是好的(無缺陷的)。在圖1中的無缺陷組表6是這種RAM的一個例子。如上所述,它含有存儲每個有效的6位組號Bank(1≤Bank≤N)的64×6 RAM(或ROM)陣列,Bank是在芯片上的N個無缺陷組中的一個的實際號。
此外,缺陷或無缺陷組的列表可以采用各種用于RAM陣列的壓縮技術(shù)進行壓縮,從而顯著地減少存儲缺陷信息所需要的位數(shù)。例如,位數(shù)可由64×6位(即,如果幾乎所有的組都有缺陷,不壓縮所需的最大位數(shù))減少到最多W×6位,其中W為最小的缺陷或無缺陷組的數(shù)量。雖然這種壓縮產(chǎn)生額外的解壓縮電路的成本(大約為O(W)個門),以及翻譯組號的額外的時間延遲。只有當(dāng)在芯片上的小RAM(ROM)模塊不能被有效的利用時,并且在用存儲陣列而不是寄存器來實現(xiàn)的情況下,它可能是有用的。
其它參數(shù)的值可能也需要調(diào)整,以提供容錯工作,例如N和S的值——即,存儲器組的數(shù)量和子組(單元)、常數(shù)L和乘數(shù)Λ或LL。N、S、L和/或Λ的值可以與無缺陷單元的列表一起存儲或下載。它們應(yīng)當(dāng)保存在有緩沖輸出信號的快速寄存器中,或直接硬連線的(如果在制造期間進行了測試和更改)??梢韵螺d或用于L、Λ或LL的固定值的常數(shù)L、A或LL的值可以是簡單的硬連線。如果相當(dāng)數(shù)量的模塊失效(大于50%),硬連線L、Λ或LL會降低性能,但也能顯著地減少在圖3中的S-Box 12和M-Box 14中的門的數(shù)量。
存儲有缺陷或無缺陷元件的列表的位置依賴于放置在芯片上的存儲器系統(tǒng)的類型。在如圖7所示的表示具有用于所有存儲器元件的單個存儲器總線的單個存儲器模塊的芯片中,或如圖8所示的具有可切換總線的單個存儲器模塊中,一個位置用于存儲列表(無缺陷組表和地址翻譯參數(shù)值),一個位置用于重映射和加擾電路,即,存儲器區(qū)2和翻譯單元1。(在圖7中,無缺陷組標(biāo)記為60,有缺陷組標(biāo)記為61。)但是,在片上系統(tǒng)中,如圖9和10所示,可能多個處理器訪問多個存儲器單元和組,有缺陷或無缺陷單元的列表以分布方式與各處理單元存儲在一起(或其簇)。此外,重映射和加擾電路與各處理單元(或它們的簇)放置在一起。這顯著增加了實現(xiàn)重映射和加擾電路所需的最少的門,并使圖1-6的實現(xiàn)為最佳。圖9示出了多處理器和由單元70組成的存儲器系統(tǒng)。圖10示出了各單元70中與存儲器相關(guān)的部分。翻譯單元81和存儲區(qū)82控制對局部存儲單元(子組)B1-B883的訪問。開關(guān)80為局部和全局地址以及控制位的通道,并為存儲器數(shù)據(jù)信息進出各單元(70)往來于整個片上系統(tǒng)的通信開關(guān)提供通路,提出重映射電路(或其軟件實現(xiàn))的目的是允許有許多存儲器和處理元件的大系統(tǒng)的容錯工作,其能容忍許多失效的存儲器或處理元件而不降低系統(tǒng)性能。為以降低的是適當(dāng)減小的可用存儲容量(或處理器性能)。地址翻譯和加擾單元確保與可用(無缺陷的)存儲器系統(tǒng)相同質(zhì)量的存儲器訪問。
此外,如果在芯片上要求具有固定數(shù)量的存儲器組和/或處理單元,提出的容錯解決方案是在芯片上增加一定數(shù)量的額外(稱作空閑或保留)存儲器組和/或處理單元。這種空閑組或單元的數(shù)量由成品率和工藝因素決定并且可以變化。此外,也可以配置系統(tǒng)使某些存儲器組優(yōu)于其它原因而被忽略。在這里公開的系統(tǒng)允許這種可變性。具有空閑組或單元的備選方法對用戶有效地隱藏了在芯片上不可避免地存在的缺陷和失效元件。此外,在不允許出故障的關(guān)鍵性任務(wù)(mission-critical)的應(yīng)用中,比如說3個處理器/存儲器單元執(zhí)行相同的任務(wù),通過比較,一個可以對芯片的內(nèi)部工作進行連續(xù)的檢驗。這允許對各元件進行動態(tài)運轉(zhuǎn)檢查,允許他們離線運轉(zhuǎn)而不對芯片的工作造成任何中斷。與空閑的概念結(jié)合,這能保持芯片對于在其壽命期和工作期間的故障能夠不降低性能的工作。
在上述實施例上進行許多變形對于本領(lǐng)域的技術(shù)人員是可能的和顯然的,并且本發(fā)明并不限于這些實施例。例如,在上述實施例中示出的電路對于特定的硬件可以很容易地改變和優(yōu)化,并且可以包含更多或更少的電路和元件。而且,除了以片上電路和分立元件組合的形式硬件實現(xiàn)以外,本方面可以將虛擬地址訪問重映射到物理地址或重新組織的訪問重映射到程序可用的可變存儲器陣列,從而用軟件實現(xiàn)。此外,雖然本發(fā)明的某些實施例結(jié)合19位(字或高速緩存線)地址空間和特定最大數(shù)量的組和子組進行說明,但是本發(fā)明可以很容易地適應(yīng)更大或更小的地址空間和更大或更小的可變數(shù)量的組和子組和處理器單元。
權(quán)利要求
1.一種存儲器件,具有多個,N個,存儲器組,每個存儲器組包括多個尋址存儲器單元,每個存儲器單元具有邏輯地址和對應(yīng)的物理地址,物理地址包括存儲器組號和局部地址;存儲器件含有地址翻譯單元,對于每個邏輯地址得到對應(yīng)的物理地址,其中對于邏輯地址的至少一個明確的訪問序列,在對應(yīng)的物理地址的序列中得到的物理地址具有形成的重復(fù)方式不小于N+1的周期,并在對應(yīng)的物理地址的序列中平均重復(fù)組號不在大約N個地址之內(nèi)的存儲器組號。
2.根據(jù)權(quán)利要求1的存儲器件,其中在至少一個明確的邏輯地址的訪問序列中的每個邏輯地址在序列中與另一個地址間隔固定的值。
3.根據(jù)權(quán)利要求1的存儲器件,其中至少一個明確的邏輯地址的訪問序列是在一維或多維表中的線性訪問序列。
4.根據(jù)權(quán)利要求1的存儲器件,其中對于多個明確的邏輯地址的訪問序列,所得到的對應(yīng)于物理地址的序列中的物理地址具有形成的重復(fù)方式不小于N+1的周期并在相應(yīng)的物理地址的序列中平均重復(fù)組號不在大約N地址之內(nèi)的存儲器組號。
5.根據(jù)權(quán)利要求4的存儲器件,其中在多個明確的邏輯地址的訪問序列中的每個邏輯地址在序列中與另一個地址間隔固定的值。
6.根據(jù)權(quán)利要求4的存儲器件,其中多個明確的邏輯地址的訪問序列是在一維或多維表中的線性訪問序列。
7.根據(jù)權(quán)利要求1的存儲器件,其中對于每一個邏輯地址a,相應(yīng)的組號B和相應(yīng)的局部地址la在模乘法結(jié)果Λ·a’中的位的范圍得到,其中a’含有a的位的范圍,Λ代表不等于1的整數(shù)乘數(shù)。
8.根據(jù)權(quán)利要求7的存儲器件,其中Λ由下面確定(a)將Λ設(shè)為值的范圍;(b)對于每個值計算與在至少一個明確的訪問方式上的組號的均勻分布的偏差;并且(c)從產(chǎn)生最小偏差的值中選擇Λ。
9.根據(jù)權(quán)利要求7的存儲器件,其中每組包含子組數(shù)量S,并且對于每個邏輯地址a,對應(yīng)的組號B進一步由S獲得。
10.根據(jù)權(quán)利要求9的存儲器件,除了S個存儲器子組,還包括至少一個缺陷存儲器子組。
11.根據(jù)權(quán)利要求9的存儲器件,還包括(a)存儲值Λ的Λ存儲器;(b)存儲值N的N存儲器;(c)存儲值S的S存儲器;以及(d)將組號映射到無缺陷組號的組表;其中如果在一個或多個組中檢測到錯誤,Λ存儲器、N存儲器、S存儲器和組表是可修改的。
12.根據(jù)權(quán)利要求9的存儲器件,還包括存儲S的值的S存儲器。
13.根據(jù)權(quán)利要求7的存儲器件,還包括存儲Λ的值的Λ存儲器。
14.根據(jù)權(quán)利要求7的存儲器件,還包括存儲N的值的N存儲器。
15.根據(jù)權(quán)利要求7的存儲器件,除了N個存儲器組,還包括至少一個缺陷存儲器組。
16.根據(jù)權(quán)利要求7的存儲器件,還包括將組號映射到無缺陷組號的組表。
17.根據(jù)權(quán)利要求1的存儲器件,其中對于每一個邏輯地址a,相應(yīng)的組號B和相應(yīng)的局部地址la由號a’的查表結(jié)果中的位的范圍得到,其中a’含有a的位的范圍。
18.根據(jù)權(quán)利要求1的存儲器件,其中對于每一個邏輯地址a,相應(yīng)的組號B和相應(yīng)的局部地址la由a’的一個系數(shù)在有限或無限域上的多項式乘法的結(jié)果中的位的范圍得到,其中a’含有a的位的范圍。
19.根據(jù)權(quán)利要求1的存儲器件,其中對于每一個邏輯地址a,相應(yīng)的組號B和相應(yīng)的局部地址la由具有輸入a’的組合電路的輸出中的位的范圍得到,其中a’含有a的位的范圍。
20.一種具有多個,N個,存儲器組的存儲器件,每個存儲器組包括多個尋址存儲器單元,每個存儲器單元具有邏輯地址a和對應(yīng)的物理地址,物理地址由存儲器組號B和局部地址la組成,存儲器件含有地址翻譯單元,對于每個邏輯地址得到對應(yīng)的物理地址,其中(a)對于邏輯地址的至少一個明確的訪問序列,在對應(yīng)的物理地址的序列中得到的物理地址具有平均重復(fù)組號不在對應(yīng)的物理地址的序列中的大約N個地址之內(nèi)的存儲器組號,并且(b)N的值可以重新設(shè)置為在所述存儲器件上小于可用組的最大數(shù)量的任何數(shù)量的組。
21.根據(jù)權(quán)利要求20的存儲器件,其中在至少一個明確的邏輯地址的訪問序列中的每個邏輯地址在序列中與另一個地址間隔固定的值。
22.根據(jù)權(quán)利要求20的存儲器件,其中至少一個明確的邏輯地址的訪問序列是在一維或多維表中的線性訪問序列。
23.根據(jù)權(quán)利要求20的存儲器件,其中對于多個明確的邏輯地址的訪問序列,所得到的對應(yīng)于物理地址的序列中的物理地址具有形成的重復(fù)方式不小于N+1的周期并在對應(yīng)的物理地址的序列中平均重復(fù)組號不在大約N地址之內(nèi)的存儲器組號。
24.根據(jù)權(quán)利要求23的存儲器件,其中在多個明確的邏輯地址的訪問序列中的每個邏輯地址在序列中與另一個地址間隔固定的值。
25.根據(jù)權(quán)利要求23的存儲器件,其中多個明確的邏輯地址的訪問序列是在一維或多維表中的線性訪問序列。
26.根據(jù)權(quán)利要求20的存儲器件,其中(a)存儲器件包含一個或多個缺陷存儲器組;(b)對于這種有缺陷的存儲器組的數(shù)量,值N小于在所述存儲器件上的可用存儲器組的最大數(shù)量;并且(c)重新配置所述存儲器件,使N個存儲器組的工作不受影響。
27.根據(jù)權(quán)利要求20的存儲器件,其中(a)存儲器件包含一個或多個保留的存儲器組;(b)對于這種保留的存儲器組的數(shù)量,值N小于在所述存儲器件上的可用存儲器組的最大數(shù)量;并且(c)重新配置所述存儲器件,使N個存儲器組的工作不受影響。
28.根據(jù)權(quán)利要求20的存儲器件,其中(a)存儲器件包含一個或多個被忽略的存儲器組;(b)對于這種被忽略的存儲器組的數(shù)量,值N小于在所述存儲器件上的可用存儲器組的最大數(shù)量;并且(c)重新配置所述存儲器件,使N個存儲器組的工作不受影響。
29.根據(jù)權(quán)利要求20的存儲器件,還包括將組號映射到無缺陷組號的組表。
30.根據(jù)權(quán)利要求20的存儲器件,還包括存儲N的值的N存儲器。
31.一種系統(tǒng),包括多個,N個,存儲器組,每個存儲器組包括多個尋址存儲器單元,每個存儲器單元具有邏輯地址a和對應(yīng)的物理地址,物理地址包括存儲器組號B和局部地址la;多個,M個,處理單元,與所述存儲器單元通信地址翻譯單元,對于每個邏輯地址得到對應(yīng)的物理地址,其中,對于邏輯地址的至少一個明確的訪問序列,在對應(yīng)的物理地址的序列中得到的物理地址具有平均重復(fù)組號不在對應(yīng)的物理地址的序列中的大約N個地址之內(nèi)的存儲器組號,并且其中系統(tǒng)進一步的特征為下面中的一個,從下面組成的組中選取(i)N的值可以重新設(shè)置為在所述系統(tǒng)上小于這種可用單元的最大數(shù)量的存儲器組的任何數(shù)量,并且(ii)M的值可以重新設(shè)置為在所述系統(tǒng)上小于這種可用單元的最大數(shù)量的處理單元的任何數(shù)量。
32.根據(jù)權(quán)利要求31的系統(tǒng),其中對于邏輯地址的多個明確的訪問序列,在對應(yīng)的物理地址的序列中得到的物理地址具有平均重復(fù)組號不在對應(yīng)的物理地址的任何序列中的大約N個地址之內(nèi)的存儲器組號。
33.一種在具有多個,N個,包括多個尋址存儲器單元的存儲器組的存儲器件,每個存儲器單元具有邏輯地址a和對應(yīng)的物理地址,物理地址包括存儲器組號B和局部地址la,一種方法,其中相應(yīng)的組號B和相應(yīng)的局部地址la在模乘法結(jié)果Λ·a’中的位的范圍得到,其中a’含有a的位的范圍,Λ代表整數(shù)乘數(shù),其中(a)對于邏輯地址的至少一個明確的訪問序列,在對應(yīng)的物理地址的序列中得到的物理地址具有平均重復(fù)組號不在對應(yīng)的物理地址的序列中的大約N個地址之內(nèi)的存儲器組號,以及(b)N的值可以重新設(shè)置為在所述存儲器件上小于可用組的最大數(shù)量的組的任何數(shù)量。
34.根據(jù)權(quán)利要求33的方法,其中在給定的邏輯地址的訪問序列中的每個邏輯地址與序列中的另一個地址間隔固定的值。
35.根據(jù)權(quán)利要求33的方法,其中每個明確的邏輯地址的訪問序列是在一維或多維表中的線性訪問序列。
36.根據(jù)權(quán)利要求33的方法,還包括存儲將組號映射到無缺陷組號的組表的步驟。
37.根據(jù)權(quán)利要求33的方法,還包括在N存儲器中儲存N的值的步驟。
38.根據(jù)權(quán)利要求33的方法,其中每組包含子組數(shù)量S,并且對于每個邏輯地址a,對應(yīng)的組號B進一步由S獲得。
39.根據(jù)權(quán)利要求38的方法,還包括在S存儲器中儲存S的值的步驟。
40.根據(jù)權(quán)利要求38的方法,還包括步驟(a)在Λ存儲器中存儲Λ的值;(b)在N存儲器中存儲N的值;(c)在S存儲器中存儲S的值;(d)存儲將組號映射到無缺陷組號的組表;以及(e)如果在一個或多個組中檢測到錯誤,修改Λ存儲器、N存儲器、S存儲器和組表中的一個或多個。
41.根據(jù)權(quán)利要求33的方法,還包括在Λ存儲器中存儲Λ的值的步驟。
42.一種存儲器件,包括多個,N個,存儲器組,每個存儲器組由多個尋址存儲器單元組成,每個存儲器單元具有邏輯地址和對應(yīng)的物理地址,物理地址包括存儲器組號和局部地址;以及一種地址翻譯單元,對于每個邏輯地址得到對應(yīng)的物理地址,其中,對于邏輯地址的至少一個明確的訪問序列,在對應(yīng)的物理地址的序列中得到的物理地址具有形成的重復(fù)方式不小于N+1的周期的存儲器組號,并其中在對應(yīng)的物理地址的序列中組沖突的數(shù)量平均少于訪問的1/e。
43.一種存儲器件,包括多個,N個,存儲器組,每個存儲器組包括多個尋址存儲器單元,每個存儲器單元具有邏輯地址和對應(yīng)的物理地址,物理地址包括存儲器組號和局部地址;一個地址翻譯單元,對于每個邏輯地址得到對應(yīng)的物理地址,其中,對于邏輯地址的至少一個明確的訪問序列,在對應(yīng)的物理地址的序列中得到的物理地址具有形成的重復(fù)方式不小于N+1的周期的存儲器組號,并在對應(yīng)的物理地址的序列中平均重復(fù)組號不在大約N個地址之內(nèi)的存儲器組號;其中N等于2b,并且邏輯地址a包含2K地址空間,并且其中對于每一個邏輯地址a,加擾地址A包含Λa mod 2K,相應(yīng)的組號B由A的第一選擇位得到,并且相應(yīng)的局部地址la由A的第二選擇位得到。
44.一種存儲器件,包括多個,N個,存儲器組,每個存儲器組由多個尋址存儲器單元組成,每個存儲器單元具有邏輯地址和對應(yīng)的物理地址,物理地址包括存儲器組號和局部地址;一個地址翻譯單元,對于每個邏輯地址得到對應(yīng)的物理地址,其中,對于邏輯地址的至少一個明確的訪問序列,在對應(yīng)的物理地址的序列中得到的物理地址具有形成的重復(fù)方式不小于N+1的周期的存儲器組號,并在對應(yīng)的物理地址的序列中平均重復(fù)組號不在大約N個地址之內(nèi)的存儲器組號;其中N(a)對于每一個邏輯地址a(i)加擾地址A包含Λa’,其中Λ是不為1的奇整數(shù)乘數(shù)并且a’含有a的選定位,以及(ii)相應(yīng)的組號B由A的第一選擇位得到,并且(iii)相應(yīng)的局部地址la由A的第二選擇位得到。
45.一種存儲器件,包括多個,N個,存儲器組,每個存儲器組由多個尋址存儲器單元組成,每個存儲器單元具有邏輯地址和對應(yīng)的物理地址,物理地址包括存儲器組號和局部地址;以及一個地址翻譯單元,對于每個邏輯地址得到對應(yīng)的物理地址,其中,每個邏輯地址及其對應(yīng)的物理地址通過準(zhǔn)晶體映射相聯(lián)系。
全文摘要
本發(fā)明提供一種多組存儲器尋址系統(tǒng)以及通常提供間隔為1的訪問方式下無組沖突并在其他所關(guān)心的訪問方式下很少發(fā)生組沖突的方法。在一個實施例中,所提供的存儲器件具有多個包括多個可尋址存儲器單元的存儲器組。每個存儲器單元具有邏輯地址和對應(yīng)的物理地址,物理地址包括組號和存儲器組(2)中的局部地址。存儲器件含有包括地址翻譯單元(1)的地址系統(tǒng),對于每個邏輯地址得到對應(yīng)的物理地址。
文檔編號G06F12/02GK1437728SQ00819216
公開日2003年8月20日 申請日期2000年12月26日 優(yōu)先權(quán)日1999年12月27日
發(fā)明者格里高里·V·朱德諾夫斯基, 戴維V·朱德諾夫斯基 申請人:格里高里·V·朱德諾夫斯基, 戴維V·朱德諾夫斯基