專利名稱:具有雙重高速緩沖映射存儲(chǔ)器的高速緩沖存儲(chǔ)器系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明有關(guān)于一種電腦高速緩沖存儲(chǔ)器系統(tǒng),尤指一種包含有二高速緩沖映射存儲(chǔ)器的電腦高速緩沖存儲(chǔ)器系統(tǒng)。
請(qǐng)參閱
圖1,圖1為已知用于一電腦10的高速緩沖存儲(chǔ)器系統(tǒng)12的功能方框圖。電腦10包含有一中央處理器14,一第一地址總線16,電連接于處理器14,用來(lái)傳遞可讀取(access)一主存儲(chǔ)器18內(nèi)各儲(chǔ)存地址20的數(shù)據(jù)地址(data address)22,以及一第一數(shù)據(jù)總線24,電連接于處理器14及主存儲(chǔ)器18之間,用來(lái)傳遞數(shù)據(jù)。數(shù)據(jù)地址22包含有一低位階的高速緩存線地址(cache line address)以及一高位階的區(qū)間地址(block address)。
高速緩沖存儲(chǔ)器系統(tǒng)12包含有一高速緩沖數(shù)據(jù)存儲(chǔ)器(cache datamemory)26,一高速緩沖映射存儲(chǔ)器34,以及一高速緩存控制器36用來(lái)控制高速緩沖存儲(chǔ)器系統(tǒng)12的操作。高速緩沖數(shù)據(jù)存儲(chǔ)器26是電連接于一第二地址總線28及一第二數(shù)據(jù)總線30,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址32用來(lái)暫時(shí)存放主存儲(chǔ)器18中的數(shù)據(jù)以供處理器14使用。高速緩沖數(shù)據(jù)存儲(chǔ)器26的各儲(chǔ)存地址32內(nèi)的數(shù)據(jù)可由第二地址總線28的高速緩存線地址來(lái)讀取。
高速緩沖映射存儲(chǔ)器(cache tag memory)34是電連接于第二地址總線28,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址38,高速緩沖映射存儲(chǔ)器34的復(fù)數(shù)個(gè)儲(chǔ)存地址38是與高速緩沖數(shù)據(jù)存儲(chǔ)器26的復(fù)數(shù)個(gè)儲(chǔ)存地址32相對(duì)應(yīng),用來(lái)暫時(shí)存放高速緩沖數(shù)據(jù)存儲(chǔ)器26內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址32內(nèi)所存的數(shù)據(jù)的區(qū)間地址。
當(dāng)處理器14欲將一數(shù)據(jù)讀出或?qū)懭敫咚倬彌_存儲(chǔ)器系統(tǒng)12時(shí),處理器14會(huì)將該數(shù)據(jù)于主存儲(chǔ)器18內(nèi)的數(shù)據(jù)地址22經(jīng)由第二地址總線28傳至高速緩沖存儲(chǔ)器系統(tǒng)12,數(shù)據(jù)地址22中的高速緩存線地址會(huì)使高速緩沖映射存儲(chǔ)器34內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址38內(nèi)所存的區(qū)間地址輸出至高速緩存控制器36,而高速緩存控制器36則會(huì)將數(shù)據(jù)地址22中的區(qū)間地址與儲(chǔ)存地址38內(nèi)的區(qū)間地址做比較。若數(shù)據(jù)地址22中的區(qū)間地址與儲(chǔ)存地址38內(nèi)的區(qū)間地址相符時(shí),高速緩存控制器36會(huì)將處理器14傳來(lái)的數(shù)據(jù)經(jīng)由第二數(shù)據(jù)總線30寫入高速緩沖數(shù)據(jù)存儲(chǔ)器26中與數(shù)據(jù)地址22的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址32中,或是將儲(chǔ)存地址32內(nèi)所存的數(shù)據(jù)經(jīng)由第二數(shù)據(jù)總線30傳至處理器14。若數(shù)據(jù)地址22中的區(qū)間地址與儲(chǔ)存地址38內(nèi)的區(qū)間地址不符時(shí),高速緩存控制器36會(huì)啟動(dòng)一交換(swap)程序?qū)⒏咚倬彌_數(shù)據(jù)存儲(chǔ)器26中與數(shù)據(jù)地址22中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址32內(nèi)所存的數(shù)據(jù)更新為主存儲(chǔ)器18中于數(shù)據(jù)地址22所存放的數(shù)據(jù),并且更新高速緩沖映射存儲(chǔ)器34內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址38內(nèi)所存的區(qū)間地址。
每當(dāng)數(shù)據(jù)地址22中的區(qū)間地址與儲(chǔ)存地址38內(nèi)的區(qū)間地址不符時(shí),高速緩存控制器36會(huì)更新高速緩沖數(shù)據(jù)存儲(chǔ)器26中的儲(chǔ)存地址32內(nèi)所存的數(shù)據(jù),并會(huì)更新高速緩沖映射存儲(chǔ)器34內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址38內(nèi)所存的區(qū)間地址。倘若處理器14欲讀取某一很少用到的數(shù)據(jù),高速緩存控制器36仍會(huì)大費(fèi)周章地啟動(dòng)該交換程序來(lái)更新儲(chǔ)存地址32、38內(nèi)的數(shù)據(jù),如此很浪費(fèi)電腦10運(yùn)算的時(shí)間。
因此,本發(fā)明主要目的在于提供一種包含有二高速緩沖映射存儲(chǔ)器的電腦高速緩沖存儲(chǔ)器系統(tǒng)來(lái)解決上述問(wèn)題。
本發(fā)明提供的一種用于一電腦的高速緩沖存儲(chǔ)器(cache memory)系統(tǒng),該電腦包含有一中央處理器,一地址總線(address bus),電連接于該處理器,用來(lái)傳遞可讀取(access)一主存儲(chǔ)器內(nèi)各儲(chǔ)存地址的數(shù)據(jù)地址(data address),以及一數(shù)據(jù)總線(data bus),電連接于該處理器,用來(lái)傳遞數(shù)據(jù),該數(shù)據(jù)地址包含有一低位階的高速緩存線地址(cache line address)以及一高位階的區(qū)間地址(block address),該高速緩沖存儲(chǔ)器系統(tǒng)包含有一高速緩沖數(shù)據(jù)存儲(chǔ)器(cache data memory),電連接于該地址總線及數(shù)據(jù)總線,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址用來(lái)暫時(shí)存放該主存儲(chǔ)器中的數(shù)據(jù)以供該處理器使用,其中該高速緩沖數(shù)據(jù)存儲(chǔ)器的各儲(chǔ)存地址內(nèi)的數(shù)據(jù)可由該地址總線的高速緩存線地址來(lái)讀?。灰坏谝桓咚倬彌_映射存儲(chǔ)器(first cache tag memory),電連接于該地址總線,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址,該第一高速緩沖映射存儲(chǔ)器的復(fù)數(shù)個(gè)儲(chǔ)存地址是與該高速緩沖數(shù)據(jù)存儲(chǔ)器的復(fù)數(shù)個(gè)儲(chǔ)存地址相對(duì)應(yīng),用來(lái)暫時(shí)存放該高速緩中數(shù)據(jù)存儲(chǔ)器內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)所存的數(shù)據(jù)的區(qū)間地址;一第二高速緩沖映射存儲(chǔ)器(second cache tag memory),電連接于該地址總線,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址,該第二高速緩沖映射存儲(chǔ)器的復(fù)數(shù)個(gè)儲(chǔ)存地址是與該高速緩沖數(shù)據(jù)存儲(chǔ)器的復(fù)數(shù)個(gè)儲(chǔ)存地址相對(duì)應(yīng),用來(lái)暫時(shí)存放該地址總線傳來(lái)的該高速緩沖數(shù)據(jù)存儲(chǔ)器的各個(gè)儲(chǔ)存地址的最新區(qū)間地址;以及一高速緩存控制器(cache controller),用來(lái)控制該高速緩沖存儲(chǔ)器系統(tǒng)的操作;其中當(dāng)該處理器欲將一數(shù)據(jù)讀出或?qū)懭朐摳咚倬彌_存儲(chǔ)器系統(tǒng)時(shí),該處理器會(huì)將該數(shù)據(jù)于該主存儲(chǔ)器內(nèi)的數(shù)據(jù)地址經(jīng)由該地址總線傳至該高速緩沖存儲(chǔ)器系統(tǒng),該數(shù)據(jù)地址中的高速緩存線地址會(huì)使該第一及第二高速緩沖映射存儲(chǔ)器內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)所存的一第一區(qū)間地址以及一第二區(qū)間地址輸出至該高速緩存控制器,而該高速緩存控制器則會(huì)將該數(shù)據(jù)地址中的區(qū)間地址分別與該第一及第二區(qū)間地址做比較,若該數(shù)據(jù)地址中的區(qū)間地址與該第一區(qū)間地址相符時(shí),該高速緩存控制器會(huì)將該處理器所傳來(lái)的數(shù)據(jù)經(jīng)由該數(shù)據(jù)總線寫入該高速緩沖數(shù)據(jù)存儲(chǔ)器中與該數(shù)據(jù)地址中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址中,或是將該儲(chǔ)存地址內(nèi)所存的數(shù)據(jù)經(jīng)由該數(shù)據(jù)總線傳至該處理器,若該數(shù)據(jù)地址中的區(qū)間地址與該第一區(qū)間地址不符而與該第二區(qū)間地址相符時(shí),該高速緩存控制器會(huì)啟動(dòng)一交換(swap)程序?qū)⒃摳咚倬彌_數(shù)據(jù)存儲(chǔ)器中與該數(shù)據(jù)地址中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)所存的數(shù)據(jù)更新為該主存儲(chǔ)器中于該數(shù)據(jù)地址所存放的數(shù)據(jù),若該數(shù)據(jù)地址中的區(qū)間地址與該第一及第二區(qū)間地址均不符時(shí),該高速緩存控制器會(huì)使該處理器直接將數(shù)據(jù)存入該主存儲(chǔ)器或是由該主存儲(chǔ)器中取出,并且不會(huì)啟動(dòng)該交換(swap)程序來(lái)更新該高速緩沖數(shù)據(jù)存儲(chǔ)器中所存的數(shù)據(jù),最后該高速緩存控制器會(huì)將該數(shù)據(jù)地址中的區(qū)間地址存入該第二高速緩沖映射存儲(chǔ)器中與該數(shù)據(jù)地址中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)。
本發(fā)明的目的、特征、優(yōu)點(diǎn)將結(jié)合實(shí)施例參考附圖詳細(xì)描述。
附圖簡(jiǎn)要說(shuō)明圖1為已知用于一電腦的高速緩沖存儲(chǔ)器系統(tǒng)的功能方框圖;圖2為本發(fā)明用于一電腦的高速緩沖存儲(chǔ)器系統(tǒng)的功能方框圖;圖3為圖2處理器欲讀取或?qū)懭霐?shù)據(jù)的區(qū)間地址與一交換程序之間的關(guān)系圖。
請(qǐng)參閱圖2,圖2為本發(fā)明用于一電腦40的高速緩沖存儲(chǔ)器系統(tǒng)42的功能方框圖。電腦40包含有一中央處理器44,一第一地址總線46,電連接于處理器44,用來(lái)傳遞可讀取(access)一主存儲(chǔ)器48內(nèi)各儲(chǔ)存地址50的數(shù)據(jù)地址52,以及一第一數(shù)據(jù)總線54,電連接于處理器44及主存儲(chǔ)器48之間,用來(lái)傳遞數(shù)據(jù)。數(shù)據(jù)地址52包含有一低位階的高速緩存線地址(cache lineaddress)以及一高位階的區(qū)間地址(block address)。
高速緩沖存儲(chǔ)器系統(tǒng)42包含有一高速緩沖數(shù)據(jù)存儲(chǔ)器(cache datamemory)56,一第一高速緩沖映射存儲(chǔ)器58,一第二高速緩沖映射存儲(chǔ)器60以及一高速緩存控制器62用來(lái)控制高速緩沖存儲(chǔ)器系統(tǒng)42的操作。高速緩沖數(shù)據(jù)存儲(chǔ)器56是電連接于一第二地址總線64及一第二數(shù)據(jù)總線66,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址68用來(lái)暫時(shí)存放主存儲(chǔ)器48中的數(shù)據(jù)以供處理器44使用。高速緩沖數(shù)據(jù)存儲(chǔ)器56的各儲(chǔ)存地址68內(nèi)的數(shù)據(jù)可由第二地址總線64的高速緩存線地址來(lái)讀取。
第一高速緩沖映射存儲(chǔ)器58是電連接于第二地址總線64,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址70,第一高速緩沖映射存儲(chǔ)器58的復(fù)數(shù)個(gè)儲(chǔ)存地址70是與高速緩沖數(shù)據(jù)存儲(chǔ)器56的復(fù)數(shù)個(gè)儲(chǔ)存地址68相對(duì)應(yīng),用來(lái)暫時(shí)存放高速緩沖數(shù)據(jù)存儲(chǔ)器56內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址68內(nèi)所存的數(shù)據(jù)的區(qū)間地址。
第二高速緩沖映射存儲(chǔ)器60是電連接于第二地址總線64,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址72,第二高速緩沖映射存儲(chǔ)器60的復(fù)數(shù)個(gè)儲(chǔ)存地址72是與高速緩沖數(shù)據(jù)存儲(chǔ)器56的復(fù)數(shù)個(gè)儲(chǔ)存地址68相對(duì)應(yīng),用來(lái)暫時(shí)存放第二地址總線64傳來(lái)的高速緩沖數(shù)據(jù)存儲(chǔ)器56的各個(gè)儲(chǔ)存地址68的最新區(qū)間地址。
高速緩存控制器62包含有一第一比較電路74,一第二比較電路76,以及一控制電路78電連接于第一及第二比較電路74、76的輸出端,用來(lái)控制高速緩存控制器62的操作。第一比較電路74的輸入端是電連接于第一高速緩沖映射存儲(chǔ)器58的輸出端以及第二地址總線64,用來(lái)比較由第二地址總線64傳來(lái)的數(shù)據(jù)地址52的區(qū)間地址與第一高速緩沖映射存儲(chǔ)器58輸出的第一區(qū)間地址是否相符。第二比較電路76的輸入端是電連接于第二高速緩沖映射存儲(chǔ)器60的輸出端以及地址總線64,用來(lái)比較由地址總線64傳來(lái)的數(shù)據(jù)地址52中的區(qū)間地址與第二高速緩沖映射存儲(chǔ)器60輸出的第二區(qū)間地址是否相符。
當(dāng)處理器44欲將一數(shù)據(jù)讀出或?qū)懭敫咚倬彌_存儲(chǔ)器系統(tǒng)42時(shí),處理器44會(huì)將該數(shù)據(jù)于主存儲(chǔ)器48內(nèi)的數(shù)據(jù)地址52經(jīng)由第二地址總線64傳至高速緩沖存儲(chǔ)器系統(tǒng)42,數(shù)據(jù)地址52中的高速緩存線地址會(huì)使第一及第二高速緩沖映射存儲(chǔ)器58、60內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址70、72內(nèi)所存的第一區(qū)間地址以及第二區(qū)間地址輸出至高速緩存控制器62,而高速緩存控制器62則會(huì)將數(shù)據(jù)地址52中的區(qū)間地址分別與第一及第二區(qū)間地址做比較。
若第一比較電路74顯示數(shù)據(jù)地址52中的區(qū)間地址與第一區(qū)間地址相符時(shí),控制電路78會(huì)將處理器44經(jīng)由第二數(shù)據(jù)總線66所傳來(lái)的數(shù)據(jù)寫入高速緩沖數(shù)據(jù)存儲(chǔ)器56中與數(shù)據(jù)地址52中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址68中,或是將儲(chǔ)存地址68內(nèi)所存的數(shù)據(jù)經(jīng)由第二數(shù)據(jù)總線66傳至處理器44。若第一比較電路74顯示數(shù)據(jù)地址52中的區(qū)間地址與第一區(qū)間地址不符而第二比較電路76顯示數(shù)據(jù)地址52中的區(qū)間地址與第二區(qū)間地址相符時(shí),控制電路78會(huì)啟動(dòng)一交換(swap)程序?qū)⒏咚倬彌_數(shù)據(jù)存儲(chǔ)器56中與數(shù)據(jù)地址52中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址68內(nèi)所存的數(shù)據(jù)更新為主存儲(chǔ)器48中于數(shù)據(jù)地址52所存放的數(shù)據(jù)。若第一及第二比較電路74、76顯示數(shù)據(jù)地址52中的區(qū)間地址與第一及第二區(qū)間地址均不符時(shí),控制電路78會(huì)使處理器44直接將數(shù)據(jù)存入主存儲(chǔ)器48或是由主存儲(chǔ)器48中取出,并且不會(huì)啟動(dòng)該交換(swap)程序來(lái)更新高速緩沖數(shù)據(jù)存儲(chǔ)器56中所存的數(shù)據(jù),最后控制電路78會(huì)將數(shù)據(jù)地址52中的區(qū)間地址存入第二高速緩沖映射存儲(chǔ)器60中與數(shù)據(jù)地址52中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址72內(nèi)。
請(qǐng)參閱圖3,圖3為處理器44欲讀取或?qū)懭霐?shù)據(jù)的區(qū)間地址與該交換程序之間的關(guān)系圖。如圖3所示,當(dāng)處理器44欲讀出或?qū)懭敫咚倬彌_存儲(chǔ)器系統(tǒng)42的數(shù)據(jù)的區(qū)間地址改變時(shí),第二高速緩沖映射存儲(chǔ)器60中相對(duì)應(yīng)的儲(chǔ)存地址72內(nèi)的第二區(qū)間地址會(huì)被取代。當(dāng)處理器44欲讀出或?qū)懭敫咚倬彌_存儲(chǔ)器系統(tǒng)42的數(shù)據(jù)連續(xù)出現(xiàn)二次相同的區(qū)間地址時(shí),第一高速緩沖映射存儲(chǔ)器58中相對(duì)應(yīng)的儲(chǔ)存地址70內(nèi)的第一區(qū)間地址才會(huì)被取代,并且此時(shí)控制電路78才會(huì)啟動(dòng)該交換程序來(lái)更新高速緩沖數(shù)據(jù)存儲(chǔ)器56中所存的數(shù)據(jù)。
相較于已知高速緩沖存儲(chǔ)器系統(tǒng)12,本發(fā)明高速緩沖存儲(chǔ)器系統(tǒng)42包含有二高速緩沖映射存儲(chǔ)器58、60,當(dāng)處理器44欲讀出或?qū)懭敫咚倬彌_存儲(chǔ)器系統(tǒng)42的數(shù)據(jù)連續(xù)出現(xiàn)二次相同的區(qū)間地址時(shí),控制電路78才會(huì)啟動(dòng)該交換程序來(lái)更新高速緩沖數(shù)據(jù)存儲(chǔ)器56中所存的數(shù)據(jù)。因此倘若處理器44讀取某一很少用到的數(shù)據(jù)時(shí),控制電路78不會(huì)立即啟動(dòng)該交換程序來(lái)更新高速緩沖數(shù)據(jù)存儲(chǔ)器56中所存的數(shù)據(jù),除非該數(shù)據(jù)被連續(xù)讀取二次。這樣的設(shè)計(jì)會(huì)大大的提升高速緩沖存儲(chǔ)器系統(tǒng)42的擊中率(hit rate),并且減少處罰率(penalty),進(jìn)而節(jié)省電腦40運(yùn)算的時(shí)間。
以上所述僅為本發(fā)明的較佳實(shí)施例,凡依本發(fā)明權(quán)利要求范圍所做的均等變化與修飾,皆應(yīng)屬本發(fā)明專利的涵蓋范圍。
權(quán)利要求
1.一種用于一電腦的高速緩沖存儲(chǔ)器(cache memory)系統(tǒng),該電腦包含有一中央處理器,一地址總線(address bus),電連接于該處理器,用來(lái)傳遞可讀取(access)一主存儲(chǔ)器內(nèi)各儲(chǔ)存地址的數(shù)據(jù)地址(data address),以及一數(shù)據(jù)總線(data bus),電連接于該處理器,用來(lái)傳遞數(shù)據(jù),該數(shù)據(jù)地址包含有一低位階的高速緩存線地址(cache line address)以及一高位階的區(qū)間地址(blockaddress),其特征是該高速緩沖存儲(chǔ)器系統(tǒng)包含有一高速緩沖數(shù)據(jù)存儲(chǔ)器(cache data memory),電連接于該地址總線及數(shù)據(jù)總線,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址用來(lái)暫時(shí)存放該主存儲(chǔ)器中的數(shù)據(jù)以供該處理器使用,其中該高速緩沖數(shù)據(jù)存儲(chǔ)器的各儲(chǔ)存地址內(nèi)的數(shù)據(jù)可由該地址總線的高速緩存線地址來(lái)讀?。灰坏谝桓咚倬彌_映射存儲(chǔ)器(first cache tag memory),電連接于該地址總線,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址,該第一高速緩沖映射存儲(chǔ)器的復(fù)數(shù)個(gè)儲(chǔ)存地址是與該高速緩沖數(shù)據(jù)存儲(chǔ)器的復(fù)數(shù)個(gè)儲(chǔ)存地址相對(duì)應(yīng),用來(lái)暫時(shí)存放該高速緩沖數(shù)據(jù)存儲(chǔ)器內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)所存的數(shù)據(jù)的區(qū)間地址;一第二高速緩沖映射存儲(chǔ)器(second cache tag memory),電連接于該地址總線,其包含有復(fù)數(shù)個(gè)儲(chǔ)存地址,該第二高速緩沖映射存儲(chǔ)器的復(fù)數(shù)個(gè)儲(chǔ)存地址是與該高速緩沖數(shù)據(jù)存儲(chǔ)器的復(fù)數(shù)個(gè)儲(chǔ)存地址相對(duì)應(yīng),用來(lái)暫時(shí)存放該地址總線傳來(lái)的該高速緩沖數(shù)據(jù)存儲(chǔ)器的各個(gè)儲(chǔ)存地址的最新區(qū)間地址;以及一高速緩存控制器(cache controller),用來(lái)控制該高速緩沖存儲(chǔ)器系統(tǒng)的操作;其中當(dāng)該處理器欲將一數(shù)據(jù)讀出或?qū)懭朐摳咚倬彌_存儲(chǔ)器系統(tǒng)時(shí),該處理器會(huì)將該數(shù)據(jù)于該主存儲(chǔ)器內(nèi)的數(shù)據(jù)地址經(jīng)由該地址總線傳至該高速緩沖存儲(chǔ)器系統(tǒng),該數(shù)據(jù)地址中的高速緩存線地址會(huì)使該第一及第二高速緩沖映射存儲(chǔ)器內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)所存的一第一區(qū)間地址以及一第二區(qū)間地址輸出至該高速緩存控制器,而該高速緩存控制器則會(huì)將該數(shù)據(jù)地址中的區(qū)間地址分別與該第一及第二區(qū)間地址做比較,若該數(shù)據(jù)地址中的區(qū)間地址與該第一區(qū)間地址相符時(shí),該高速緩存控制器會(huì)將該處理器所傳來(lái)的數(shù)據(jù)經(jīng)由該數(shù)據(jù)總線寫入該高速緩沖數(shù)據(jù)存儲(chǔ)器中與該數(shù)據(jù)地址中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址中,或是將該儲(chǔ)存地址內(nèi)所存的數(shù)據(jù)經(jīng)由該數(shù)據(jù)總線傳至該處理器,若該數(shù)據(jù)地址中的區(qū)間地址與該第一區(qū)間地址不符而與該第二區(qū)間地址相符時(shí),該高速緩存控制器會(huì)啟動(dòng)一交換(swap)程序?qū)⒃摳咚倬彌_數(shù)據(jù)存儲(chǔ)器中與該數(shù)據(jù)地址中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)所存的數(shù)據(jù)更新為該主存儲(chǔ)器中于該數(shù)據(jù)地址所存放的數(shù)據(jù),若該數(shù)據(jù)地址中的區(qū)間地址與該第一及第二區(qū)間地址均不符時(shí),該高速緩存控制器會(huì)使該處理器直接將數(shù)據(jù)存入該主存儲(chǔ)器或是由該主存儲(chǔ)器中取出,并且不會(huì)啟動(dòng)該交換(swap)程序來(lái)更新該高速緩沖數(shù)據(jù)存儲(chǔ)器中所存的數(shù)據(jù),最后該高速緩存控制器會(huì)將該數(shù)據(jù)地址中的區(qū)間地址存入該第二高速緩沖映射存儲(chǔ)器中與該數(shù)據(jù)地址中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)。
2.如權(quán)利要求1所述的高速緩沖存儲(chǔ)器系統(tǒng),其特征是該高速緩存控制器包含有一第一比較電路,其輸入端是電連接于該第一高速緩沖映射存儲(chǔ)器的輸出端以及該地址總線,用來(lái)比較由該地址總線傳來(lái)的該數(shù)據(jù)地址中的區(qū)間地址與該第一高速緩沖映射存儲(chǔ)器輸出的第一區(qū)間地址是否相符;一第二比較電路,其輸入端是電連接于該第二高速緩沖映射存儲(chǔ)器的輸出端以及該地址總線,用來(lái)比較由該地址總線傳來(lái)的該數(shù)據(jù)地址中的區(qū)間地址與該第二高速緩沖映射存儲(chǔ)器輸出的第二區(qū)間地址是否相符;以及一控制電路,電連接于該第一及第二比較電路的輸出端,用來(lái)控制該高速緩存控制器的操作;其中若該第一比較電路顯示該數(shù)據(jù)地址中的區(qū)間地址與該第一區(qū)間地址相符時(shí),該控制電路會(huì)將該處理器經(jīng)由該數(shù)據(jù)總線所傳來(lái)的數(shù)據(jù)寫入該高速緩沖數(shù)據(jù)存儲(chǔ)器中與該數(shù)據(jù)地址中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址中,或是將該儲(chǔ)存地址內(nèi)所存的數(shù)據(jù)經(jīng)由該數(shù)據(jù)總線傳至該處理器,若該第一比較電路顯示該數(shù)據(jù)地址中的區(qū)間地址與該第一區(qū)間地址不符而該第二比較電路顯示該數(shù)據(jù)地址中的區(qū)間地址與該第二區(qū)間地址相符時(shí),該控制電路會(huì)啟動(dòng)該交換(swap)程序?qū)⒃摳咚倬彌_數(shù)據(jù)存儲(chǔ)器中與該數(shù)據(jù)地址中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)所存的數(shù)據(jù)更新為該主存儲(chǔ)器中于該數(shù)據(jù)地址所存放的數(shù)據(jù),若該第一及第二比較電路顯示該數(shù)據(jù)地址中的區(qū)間地址與該第一及第二區(qū)間地址均不符時(shí),該控制電路會(huì)使該處理器直接將數(shù)據(jù)存入該主存儲(chǔ)器或是由該主存儲(chǔ)器中取出,并且不會(huì)啟動(dòng)該交換(swap)程序來(lái)更新該高速緩沖數(shù)據(jù)存儲(chǔ)器中所存的數(shù)據(jù),最后該控制電路會(huì)將該數(shù)據(jù)地址中的區(qū)間地址存入該第二高速緩沖映射存儲(chǔ)器中與該數(shù)據(jù)地址中的高速緩存線地址相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)。
3.如權(quán)利要求1所述的高速緩沖存儲(chǔ)器系統(tǒng),其特征是該處理器與該高速緩沖存儲(chǔ)器系統(tǒng)間的數(shù)據(jù)總線及地址總線為第二數(shù)據(jù)總線以及第二地址總線,而該處理器與該主存儲(chǔ)器之間另設(shè)有一第一數(shù)據(jù)總線以及一第一地址總線,用來(lái)傳遞數(shù)據(jù)及數(shù)據(jù)地址。
全文摘要
一電腦的高速緩沖存儲(chǔ)器系統(tǒng),其數(shù)據(jù)地址包含一低位階的高速緩存線地址和一高位階的區(qū)間地址,該系統(tǒng)包含一高速緩沖數(shù)據(jù)存儲(chǔ)器,二高速緩沖映射存儲(chǔ)器及一高速緩存控制器,當(dāng)欲將一數(shù)據(jù)讀或?qū)懭朐撓到y(tǒng)時(shí),該處理器將該數(shù)據(jù)于主存儲(chǔ)器內(nèi)的數(shù)據(jù)地址經(jīng)由該地址總線傳至該系統(tǒng),該數(shù)據(jù)地址中的高速緩存線地址使該第一及第二高速緩沖映射存儲(chǔ)器內(nèi)相對(duì)應(yīng)的儲(chǔ)存地址內(nèi)所存的第一區(qū)間地址以及第二區(qū)間地址輸出至該高速緩存控制器,而將該數(shù)據(jù)地址中的區(qū)間地址與該第一及第二區(qū)間地址做比較。
文檔編號(hào)G06F12/06GK1302017SQ9912705
公開(kāi)日2001年7月4日 申請(qǐng)日期1999年12月24日 優(yōu)先權(quán)日1999年12月24日
發(fā)明者龔紹祖 申請(qǐng)人:仁寶電腦工業(yè)股份有限公司