專利名稱:高速緩存及尋址方法
技術(shù)領(lǐng)域:
本發(fā)明是有關(guān)于用于安全控制器中的高速緩存。
高速緩存通常系相當小,但是為快速的緩沖存儲器,其系用來降低處理器到慢速外部內(nèi)存之存取的延遲,高速緩存系有效地涵蓋外部內(nèi)存之選擇的地址區(qū)域,并且包含相關(guān)之暫存的修改資料及信息,如用來定位資料的信息。1982年9月,在計算概論(ComputingSurveys),第14期,第3冊之第473-530頁中,Alan Jay Smith發(fā)表的「高速緩存」(Cache Memories)論文,系提供高速緩存的概觀。高速緩存所實施的硬件,其特征通常具有N向(way)組合相關(guān)的(set-associative)內(nèi)存數(shù)組。極端的情況為N=1,系表示直接映像內(nèi)存,而N=M,系表示完全相關(guān)的高速緩存,其中M為內(nèi)存中之輸入項(entry)的全部數(shù)目。
一般而言,資料系儲存于每個內(nèi)存輸入項之2b字節(jié)的區(qū)塊內(nèi)。在具有N=2n向之組合相關(guān)的高速緩存之一般的情況中,數(shù)據(jù)項的p位寬度地址通常會分割或n位給索引、b位給偏移,而其余的p-n-b位會給卷標,這繪示于附圖
中。
當存取高速緩存中的數(shù)據(jù)項時,如在讀取或?qū)懭氲倪^程,索引字段系用來直接尋址組合。為了在組合中獨一無二地識別,卷標字段會以各自的區(qū)塊來儲存。在區(qū)塊的相關(guān)搜尋中,為了定位有關(guān)的區(qū)塊,地址的卷標字段會與所選擇的組合之卷標字段做比較。為了尋址區(qū)塊中的數(shù)據(jù)項,會使用偏移輸入項。
在DE 199 57 810A1中,系敘述用于高速緩存裝置之分散映像的方法。在此方法中,加到卷標地址的有效位會藉由卷標映像表,而用來分配卷標地址到內(nèi)存的不同區(qū)域。藉由這種方法,可選擇不同的內(nèi)存區(qū)域,其內(nèi)容可轉(zhuǎn)移到高速緩存,而不需要延長本身的卷標地址。
這種高速緩存系表示可簡單地識別出安全控制器中的一般結(jié)構(gòu)。除了總線線及緩存器之外,這些高速緩存會因為未授權(quán)的監(jiān)視或安全相關(guān)數(shù)據(jù)的竄改,例如藉由磁針(needle)攻擊等,而會成為較佳的實際攻擊目標。在外部內(nèi)存中,緊要的安全資料通常會藉由難破解的密碼來保護,例如可以硬件來實施。甚至對于所實施的硬件解決方案,這種使用相關(guān)算法之困難的編碼及譯碼過程,會使內(nèi)存運作產(chǎn)生高延遲,其會增加內(nèi)存本身的延遲,而且也會成為主要的因素。這種編碼不適合高速緩存,其通常假定允許一個或最多極少時脈周期內(nèi)的存取,因此,在這種形式之安全控制器的安全設(shè)計中,高速緩存會產(chǎn)生弱點,除非提供另外的保護。
發(fā)明概要本發(fā)明的目的就是定義出用于安全控制器中的高速緩存之有效及實用的保護裝置。
此目的系以具有申請專利范圍第1項的特征之高速緩存,以及以具有申請專利范圍第3項的特征之尋址高速緩存的方法來達成。具體實施例可由各自的附屬申請專利范圍產(chǎn)生。
在根據(jù)本發(fā)明的高速緩存中,此裝置系用來在各自卷標部分的地址與編碼卷標地址之間執(zhí)行轉(zhuǎn)換,其為明確的雙向。較佳而言,這些裝置系存在于硬件中。根據(jù)本發(fā)明的尋址方法,系在卷標部分的快取地址與編碼卷標地址之間執(zhí)行轉(zhuǎn)換,其為明確的雙向,并且較佳而言,其執(zhí)行系使用專用的硬件。
較佳具體實施例詳細說明根據(jù)本發(fā)明的解決方案,系指定裝置及方法的程序,其能用來提升高速緩存中之數(shù)據(jù)項及其地址的安全程度,而不會增加存取時閻,或者是最多只會少量增加存取時間。在組合相關(guān)的高速緩存中,如引言中所述,資料的儲存與取得系使用索引字段及卷標字段。根據(jù)本發(fā)明,明確的雙向映像(一對一映像),系用來將地址的卷標字段映像到編碼的卷標字段,而且反之亦然。然后,具有編碼卷標字段的區(qū)塊會儲存于高速緩存中。藉由這些方法,可提供資料區(qū)塊地址信息之有效保護。在此,可逆的明確映像會藉由專門的硬件單元來執(zhí)行。在較佳的具體實施例中,這種設(shè)計會使轉(zhuǎn)換可在一個時脈周期內(nèi)達成,亦即在很短的時間,其意謂高速緩存的存取時間不會增加。
在本發(fā)明的另外實施例中,高速緩存地址之索引字段的編碼也可使用另一種映像程序,系將索引字段映像到編碼索引字段,并且為明確的雙向,同樣地,一樣可以使用適當設(shè)計的硬件單元。這種會執(zhí)行所謂的組合混碼(scrambling),其中在高速緩存中所處理的區(qū)塊會儲存于組合中,其不會由平常的裝置來發(fā)現(xiàn)。較佳而言,如果處理器架構(gòu)不是設(shè)計用于未校準的資料存取,則可實施這種額外的編碼形式,其中資料會延伸過區(qū)塊邊界。
根據(jù)本發(fā)明之高速緩存的具體實施例系特別適用于安全控制器的高速緩存中。
權(quán)利要求
1.一種高速緩存,其地址系分割為卷標、索引、以及偏移,其特征為該裝置系用來在各自卷標部分的地址與一編碼卷標地址之間執(zhí)行一為明確雙向之轉(zhuǎn)換。
2.如申請專利范圍第1項之高速緩存,其中該裝置也用來在各自索引部分的地址與一編碼索引地址之間執(zhí)行一為明確雙向之轉(zhuǎn)換。
3.一種尋址一高速緩存的方法,其中在一卷標部分的一快取地址與一編碼卷標地址之間執(zhí)行一為明確雙向之轉(zhuǎn)換。
4.如申請專利范圍第3項之方法,其中在一索引部分的一快取地址與一編碼素引地址之間執(zhí)行一為明確雙向之轉(zhuǎn)換。
全文摘要
本發(fā)明揭示一種高速緩存,在該高速緩存中,其地址系分割為卷標、索引、以及偏移,所提供的硬件裝置系用來在各自卷標部分的地址與編碼卷標地址之間執(zhí)行轉(zhuǎn)換,其為明確的雙向,除此之外,高速緩存之地址的索引字段,可藉由另一種映像程序來編碼,該程序系將索引字段映像到編碼索引字段,并且為明確的雙向,為了此目的,也可使用適當設(shè)計的硬件單元。
文檔編號G06F12/14GK1486463SQ01822021
公開日2004年3月31日 申請日期2001年12月20日 優(yōu)先權(quán)日2001年1月15日
發(fā)明者B·加梅爾, T·庫內(nèi)蒙德, B 加梅爾, 諉傻 申請人:因芬尼昂技術(shù)股份公司