国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的改良裝置與方法

      文檔序號(hào):6546092閱讀:242來(lái)源:國(guó)知局

      專利名稱::轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的改良裝置與方法
      技術(shù)領(lǐng)域
      :本發(fā)明涉及微處理器中轉(zhuǎn)換旁視緩沖器(Translationlookasidebuffer,TLB)的
      技術(shù)領(lǐng)域
      ,特別涉及其中避免重復(fù)匹配輸入的技術(shù)。
      背景技術(shù)
      :現(xiàn)今的微處理器大都支持虛擬內(nèi)存(VirtualMemory)的概念,在虛擬內(nèi)存系統(tǒng)中,在微處理器上執(zhí)行的程序指令對(duì)應(yīng)至運(yùn)用微處理器的虛擬地址空間中虛擬地址(VirtualAddress)的數(shù)據(jù);此外,指令本身直接映射為虛地址空間中虛擬地址的使用。虛擬地址空間可遠(yuǎn)大于系統(tǒng)中具體內(nèi)存,特別是虛擬內(nèi)存的數(shù)目通常遠(yuǎn)大于系統(tǒng)實(shí)際具體內(nèi)存的數(shù)目;而為存取系統(tǒng)內(nèi)存或其他如I/O裝置的裝置,微處理器產(chǎn)生的虛擬地址會(huì)轉(zhuǎn)換為微處理器中連接至系統(tǒng)總線的具體地址。通常微處理器支持的虛擬內(nèi)存架構(gòu)為頁(yè)面內(nèi)存系統(tǒng),其運(yùn)用分頁(yè)機(jī)構(gòu)將虛擬地址轉(zhuǎn)換(Translating)或映像(Mapping)為具體地址。具體地址空間是切割成多個(gè)固定尺寸的具體頁(yè)面,一般的頁(yè)面尺寸為4KB。虛擬地址是包括虛擬頁(yè)面地址部份與頁(yè)面偏移(Pageoffset)部份,其中的虛擬頁(yè)面地址用以在虛擬地址空間中標(biāo)示出虛擬頁(yè)面,可通過(guò)分頁(yè)機(jī)構(gòu)將虛擬頁(yè)面地址轉(zhuǎn)換為具體頁(yè)面地址;而頁(yè)面偏移則在具體頁(yè)面中標(biāo)示出具體偏移,即,自其中的具體頁(yè)面地址標(biāo)示出相對(duì)應(yīng)的具體偏移。內(nèi)存分頁(yè)的優(yōu)點(diǎn)為本領(lǐng)域技術(shù)人員所熟知。其中的一個(gè)優(yōu)點(diǎn)是使程序可在具有比實(shí)際具體內(nèi)存空間大的虛擬內(nèi)存空間下執(zhí)行;另一優(yōu)點(diǎn)是內(nèi)存分頁(yè)可在不同的或多個(gè)的程序執(zhí)行時(shí),便于相對(duì)應(yīng)的程序在不同具體內(nèi)存位置中的重新定位;再一優(yōu)點(diǎn)是內(nèi)存分頁(yè)可容許多個(gè)程序同時(shí)在處理器上執(zhí)行,而其中每一程序可在不經(jīng)由盤片交換、以及不必將全部具體地址投入給單一程序的狀態(tài)下,分配到專屬的存取具體內(nèi)存頁(yè)面;又一優(yōu)點(diǎn)則是內(nèi)存分頁(yè)可在頁(yè)面基礎(chǔ)上分別保護(hù)不同程序間的內(nèi)存運(yùn)用。頁(yè)面轉(zhuǎn)換(即將虛擬頁(yè)面地址轉(zhuǎn)換為具體頁(yè)面地址)是通過(guò)一般稱為頁(yè)面參考表漫游(Pagetablewalk)的方式實(shí)現(xiàn)。一般而言,操作系統(tǒng)保留包含用以將虛擬頁(yè)面地址轉(zhuǎn)換為具體頁(yè)面地址的頁(yè)面參考表,此頁(yè)面參考表通常存在于系統(tǒng)內(nèi)存中,而因轉(zhuǎn)換程序需執(zhí)行多重內(nèi)存存取操作,所以,頁(yè)面參考表漫游的操作相對(duì)地較為費(fèi)力耗時(shí)。為降低頁(yè)面參考表漫游的次數(shù),很多微處理器提供用以高速緩存頁(yè)面參考表信息的機(jī)構(gòu),此信息包括由經(jīng)常使用的虛擬頁(yè)面地址轉(zhuǎn)換來(lái)的相對(duì)應(yīng)的具體頁(yè)面地址;頁(yè)面參考表信息高速緩存一般稱為轉(zhuǎn)換旁視緩沖器(TLB),當(dāng)虛擬頁(yè)面地址提供至此TLB時(shí),TLB即執(zhí)行此虛擬頁(yè)面地址的查閱,假使查閱的虛擬頁(yè)面地址落在TLB中時(shí),則TLB提供相對(duì)應(yīng)的轉(zhuǎn)換后具體虛擬位置,藉此可省略將虛擬頁(yè)面地址轉(zhuǎn)換為具體虛擬地址的耗時(shí)頁(yè)面參考表漫游操作。一些運(yùn)用TLB的微處理器會(huì)視需要自動(dòng)在TLB中加填數(shù)據(jù),但是,大部份的微處理器仍需依賴操作系統(tǒng)規(guī)劃TLB的內(nèi)容,在此類微處理器的某些特異狀況下,當(dāng)兩個(gè)不同輸入各具有一虛擬頁(yè)面地址符合請(qǐng)求TLB轉(zhuǎn)換或查閱的虛擬頁(yè)面地址時(shí),操作系統(tǒng)便極可能會(huì)發(fā)生以兩個(gè)不同輸入加載TLB中的現(xiàn)象。明顯地,前述現(xiàn)象是不希望的狀況,其后果首先是TLB究竟會(huì)輸出哪一個(gè)轉(zhuǎn)換后具體頁(yè)面地址的狀況不明,假使TLB輸出錯(cuò)誤的具體頁(yè)面地址,且處理器在未經(jīng)任何補(bǔ)救的情形下仍可繼續(xù)其操作,則相關(guān)的數(shù)據(jù)處理就潛在有受損的危險(xiǎn)。其次,在依賴TLB電路的操作下,試著去輸出一個(gè)以上具體頁(yè)面地址的企圖很可能會(huì)導(dǎo)致微處理器中集成電路的損壞。因此,用以避免在TLB中重復(fù)匹配輸入的裝置與方法是本領(lǐng)域技術(shù)人員所需要的。
      發(fā)明內(nèi)容在一實(shí)施方式中,本發(fā)明提供一種在每一輸入中包括一個(gè)指示記號(hào)的TLB,當(dāng)此TLB在確認(rèn)一個(gè)虛擬地址是否與TLB中任一輸入匹配時(shí),此指示記號(hào)指明此輸入是否應(yīng)包括或排除在此比較操作中;當(dāng)TLB中的一個(gè)輸入成功被寫入時(shí),此指示記號(hào)就在所寫入的輸入上被設(shè)定;當(dāng)軟件試圖在TLB中寫入一個(gè)輸入、且要被寫入的虛擬地址與一個(gè)已存在的TLB輸入的虛擬地址匹配時(shí),就清除匹配輸入的指示記號(hào),藉此使匹配輸入排除于匹配確認(rèn)操作中,直到成功地寫入輸入時(shí)止,之后,放棄寫入至TLB中的操作,并產(chǎn)生一個(gè)例外(exception),以通知操作系統(tǒng)有重復(fù)匹配輸入的企圖,并藉此容許操作系統(tǒng)補(bǔ)救該狀況。然而,放棄寫入與產(chǎn)生例外的操作,僅限于當(dāng)匹配輸入是所希望寫入的輸入之外的輸入、此匹配輸入有效、且此預(yù)備寫入的輸入值有效時(shí);否則,TLB即寫入該指明的輸入。通過(guò)前述的程序,可有效地減少產(chǎn)生例外的次數(shù)。為對(duì)本發(fā)明有更進(jìn)一步的了解與認(rèn)同,結(jié)合附圖作出如下詳細(xì)說(shuō)明。圖1是根據(jù)本發(fā)明的微處理器核心的方塊圖;圖2是根據(jù)本發(fā)明的圖1中TLB的方塊圖;圖3是根據(jù)本發(fā)明的圖2中數(shù)據(jù)數(shù)組的方塊圖;圖4是根據(jù)本發(fā)明的圖2中標(biāo)記數(shù)組區(qū)塊的方塊圖;圖5是顯示本發(fā)明圖2中例外產(chǎn)生邏輯的方塊圖;圖6是顯示本發(fā)明圖1中、在寫入TLB的操作中、微處理器操作的流程;圖7是顯示本發(fā)明圖1中、在TLB的查閱操作中、微處理器操作的流程圖;以及圖8是顯示本發(fā)明處理系統(tǒng)運(yùn)用圖1中微處理器與TLB的方塊圖。具體實(shí)施例方式為更能完全體現(xiàn)本發(fā)明的優(yōu)點(diǎn),在以下的說(shuō)明中,首先討論如操作系統(tǒng)的軟件中,試圖寫入重復(fù)匹配輸入至TLB中的可能狀況。第一可能狀況是牽涉到將自固件(或稱韌體,如電路板上與具有TLB的微處理器配合的ROM監(jiān)視器)至操作系統(tǒng)的控制轉(zhuǎn)移。當(dāng)重設(shè)計(jì)算機(jī)系統(tǒng)時(shí),固件會(huì)通過(guò)寫入每一輸入而將TLB初始設(shè)定至一個(gè)已知狀態(tài),例如將一已轉(zhuǎn)換的具體頁(yè)面地址設(shè)定為與虛擬頁(yè)面地址相同;TLB中的每一固件寫入操作必須在處理器中的虛擬地址空間內(nèi)指明一已寫入輸入中的虛擬頁(yè)面地址。當(dāng)控制轉(zhuǎn)移到操作系統(tǒng)時(shí),操作系統(tǒng)即開始將輸入寫入至TLB中(此操作系統(tǒng)可能可自動(dòng)將TLB初始設(shè)定至一已知狀態(tài)),此操作系統(tǒng)并不知固件究竟是將哪一些虛擬頁(yè)面地址寫入至TLB中,因此,操作系統(tǒng)可能試圖將一匹配輸入重復(fù)輸入至TLB中,此匹配輸入與由固件寫入的其他TLB輸入具有相同的虛擬頁(yè)面地址。第二可能狀況是牽涉到清泄(Flush)TLB各輸入的操作系統(tǒng),此時(shí)機(jī)的一個(gè)例子是操作系統(tǒng)響應(yīng)于任務(wù)轉(zhuǎn)換而須清泄TLB時(shí);操作系統(tǒng)通過(guò)使TLB的每一輸入失效的方式進(jìn)行此清泄TLB的步驟,即,操作系統(tǒng)將一有效位值寫入每一輸入中,此有效位值代表此輸入并不包含有效的自虛擬到具體的頁(yè)面地址轉(zhuǎn)換,因?yàn)槊恳粺o(wú)效寫入必須指明處理器中虛擬地址空間內(nèi)的一個(gè)虛擬頁(yè)面地址,所以存在操作系統(tǒng)因虛擬頁(yè)面地址相同而試圖將一個(gè)重復(fù)匹配輸入寫入TLB中的可能性。理論上,操作系統(tǒng)可采取必要步驟來(lái)檢驗(yàn)TLB中的現(xiàn)存內(nèi)容,以確保將重復(fù)匹配輸入寫入至TLB中;然而,實(shí)際上,操作系統(tǒng)通常僅希望盡快通過(guò)使輸入失效來(lái)清泄TLB,而不管已儲(chǔ)存于TLB中的現(xiàn)行虛擬頁(yè)面地址;因此,清泄程序一般僅以相同的虛擬頁(yè)面地址寫入TLB的每一輸入中,此相同的虛擬頁(yè)面地址在有效位中具有一個(gè)無(wú)效值。當(dāng)然,TLB清泄程序可更深入一點(diǎn)以避免寫入重復(fù)的輸入,但是,若是TLB的清泄基于TLB現(xiàn)存的內(nèi)容,則將使整體清泄操作較費(fèi)時(shí)費(fèi)力。第三可能狀況是牽涉到在清泄TLB后,操作系統(tǒng)將新輸入寫入至TLB時(shí)。因操作系統(tǒng)的TLB清泄程序必須選取一些虛擬頁(yè)面地址、寫入至TLB的輸入中以使其失效,故由操作系統(tǒng)分配到一新任務(wù)的虛擬頁(yè)面便可能具有與由TLB清泄程序所選取的虛擬頁(yè)面地址相同的虛擬頁(yè)面地址。因此,當(dāng)操作系統(tǒng)的TLB重填程序?qū)⑿碌挠行л斎雽懭胫罷LB中時(shí),便極可能會(huì)產(chǎn)生重復(fù)匹配寫入的問(wèn)題。第四可能狀況是牽涉到操作系統(tǒng)解除分配一虛擬頁(yè)面(例如,為響應(yīng)一任務(wù)的終止)、以及后續(xù)重新分配虛擬頁(yè)面(例如,至一新任務(wù))時(shí)。當(dāng)操作系統(tǒng)解除分配一虛擬頁(yè)面時(shí),頁(yè)面表上相對(duì)虛擬頁(yè)面的輸入即標(biāo)示一無(wú)效標(biāo)記,并相對(duì)地使高速緩存實(shí)時(shí)無(wú)效頁(yè)面表輸入的TLB中的輸入失效。當(dāng)操作系統(tǒng)后續(xù)重新分配虛擬頁(yè)面時(shí),操作系統(tǒng)可能不必需要或輕易能將虛擬頁(yè)面新的映射寫入至與舊映射相同的TLB輸入中;因此,當(dāng)操作系統(tǒng)試圖將新映射寫入至TLB中時(shí),重復(fù)匹配輸入的問(wèn)題便極可能會(huì)發(fā)生。第五可能狀況即操作系統(tǒng)可能有一程序錯(cuò)誤、或者是發(fā)生其他的毀滅性錯(cuò)誤,此時(shí),TLB中存在一有效輸入,而操作系統(tǒng)也極可能將重復(fù)匹配輸入寫入至TLB中。為避免在TLB中產(chǎn)生一重復(fù)匹配輸入,一種解決方案是基于讓微處理器產(chǎn)生一例外消息,以使操作系統(tǒng)能注意到該特異狀況。然而,如前所述,在第一至第四可能狀況中,因?yàn)檫m于可預(yù)期的狀況,故操作系統(tǒng)可不必被告知。再者,因操作系統(tǒng)不是在執(zhí)行用戶程序,就是在執(zhí)行例外處理,因而,若是有較多的例外需操作系統(tǒng)處理,明顯地會(huì)降低操作系統(tǒng)的表現(xiàn);更甚者,除合理的例外狀況外,操作系統(tǒng)的例外處理程序也須增加代碼,以處理可預(yù)見的狀況。為解決前述的問(wèn)題,本發(fā)明在TLB的每一輸入中提供一標(biāo)示為Include(Inc)位的指示記號(hào),用以指明相對(duì)應(yīng)的輸入是否應(yīng)包括或排除在虛擬頁(yè)面地址匹配的比對(duì)中;假使TLB的寫入會(huì)造重復(fù)匹配輸入,則此匹配輸入的Inc位就被清除;假使發(fā)生非預(yù)期的狀況(例如在TLB中存在一有效匹配輸入,且其要寫入的值也是有效的),則放棄寫入操作、且產(chǎn)生一個(gè)例外;相反地,若是所發(fā)生的狀況是為可預(yù)期的狀況,則并不會(huì)產(chǎn)生例外,且被除的Inc位會(huì)驅(qū)使匹配輸入的排除,藉此,避免在后續(xù)的TLB查閱操作中發(fā)生重復(fù)匹配輸入的情形。為幫助了解本發(fā)明及其優(yōu)點(diǎn),前述的各可能發(fā)生狀況僅是用以解釋軟件會(huì)試圖在TLB中寫入重復(fù)匹配輸入的例子;然而,所列的各狀況并非用以窮舉軟件會(huì)試圖在TLB中寫入重復(fù)匹配輸入的所有例子,也不是用以列舉本發(fā)明可解決的各問(wèn)題,應(yīng)當(dāng)理解的是其他會(huì)試圖使軟件在TLB中寫入重復(fù)匹配輸入的狀況也可能存在,且本發(fā)明也可用以解決未列于此處的類似問(wèn)題。參閱圖1,是根據(jù)本發(fā)明的微處理器核心100(Microprocessor)的方塊圖;如圖所示,此微處理器核心100與MIPSTechnologies,Inc所生產(chǎn)的處理器核心類同,然而,本發(fā)明的微處理器核心100并不局限于MIPS的產(chǎn)品,其也可是其他具有用戶可編程TLB的微處理器。此微處理器100包括用以存取程序指令的存取單元106(Fetchunit),此程序指令供微處理器100的執(zhí)行操作;存取單元106是連接至指令高速緩存104(Instructioncache),用以高速緩存新近存入微處理器100的指令。在一實(shí)施例中,指令高速緩存104包括4通64KB高速緩存;存取單元106又連接至總線接口單元116(Businterfaceunit),用以通過(guò)處理器總線將微處理器100接口到計(jì)算機(jī)的其他部分(例如系統(tǒng)內(nèi)存),存取單元106確定下一個(gè)要存取的指令是否存在于指令高速緩存104中,若是,則存取單元106自指令高速緩存104中取得指令,否則,存取單元106請(qǐng)求總線接口單元116自系統(tǒng)內(nèi)存或另一內(nèi)存架構(gòu)中指令高速緩存104與系統(tǒng)內(nèi)存間的高速緩存上存取指令;在一實(shí)施例中,存取單元106包指令高速緩存104用的控制邏輯(Controllogic)、指令譯碼器(Instructiondecoder)、及分支指令預(yù)測(cè)器(Branchinstructionpredictor)。微處理器100也包括連接至存取單元106的執(zhí)行單元102,執(zhí)行單元102執(zhí)行由存取單元106所抓取的程序指令;在一實(shí)施例中,執(zhí)行單元102包括地址產(chǎn)生單元(Addressgenerationunit)、分支解析單元(Branchresolutionunit)、用以執(zhí)行邏輯運(yùn)算的ALU、移位器(Shifter)與對(duì)準(zhǔn)器(Aligner)、整數(shù)乘/除單元(Integermultiply/divideunit)、及浮點(diǎn)單元(Floatingpointunit),而存取單元106用以發(fā)出指令至執(zhí)行單元102。微處理器100也包括連接至總線接口單元116與執(zhí)行單元102的饋入/儲(chǔ)存單元112(Load/storeunit),此饋入/儲(chǔ)存單元112通過(guò)總線接口單元116、在執(zhí)行單元102中、執(zhí)行自系統(tǒng)內(nèi)存至微處理器100寄存器(Register)的數(shù)據(jù)饋入,并執(zhí)行自寄存器至系統(tǒng)內(nèi)存的數(shù)據(jù)儲(chǔ)存,饋入/儲(chǔ)存單元112也連接至用以高速緩存新近被微處理器100所使用過(guò)數(shù)據(jù)的數(shù)據(jù)高速緩存114(Datacache);在一實(shí)施例中,數(shù)據(jù)高速緩存114包括4通64KB高速緩存,假使饋入或儲(chǔ)存的數(shù)據(jù)是可高速緩存的,則饋入/儲(chǔ)存單元112確認(rèn)在數(shù)據(jù)高速緩存114中是否存在有饋入或儲(chǔ)存數(shù)據(jù)所代表的高速緩存線路,若是,則饋入/儲(chǔ)存單元112即將數(shù)據(jù)由數(shù)據(jù)高速緩存114中饋入數(shù)據(jù)、或是將數(shù)據(jù)儲(chǔ)存至數(shù)據(jù)高速緩存114中,否則,饋入/儲(chǔ)存單元112會(huì)請(qǐng)求總線接口單元116去系統(tǒng)內(nèi)存中讀取數(shù)據(jù)、或是將數(shù)據(jù)儲(chǔ)存至系統(tǒng)內(nèi)存中;在一實(shí)施例中,饋入/儲(chǔ)存單元112也可執(zhí)行在數(shù)據(jù)高速緩存114中錯(cuò)失的儲(chǔ)存數(shù)據(jù)的寫入分配。微處理器100也包括連接至存取單元106與饋入/儲(chǔ)存單元112的TLB108,此TLB108包括用以將虛擬內(nèi)存地址轉(zhuǎn)換成具體內(nèi)存地址的頁(yè)面轉(zhuǎn)換輸入高速緩存,TLB108所轉(zhuǎn)換的虛擬內(nèi)存地址是由存取單元106與饋入/儲(chǔ)存單元112所產(chǎn)生,特別是,TLB108將虛擬地址轉(zhuǎn)換成具體地址,以確認(rèn)指令請(qǐng)求在指令高速緩存104中是否可執(zhí)行、或是數(shù)據(jù)請(qǐng)求是否可在數(shù)據(jù)高速緩存114中執(zhí)行。在一實(shí)施例中,TLB108是由操作系統(tǒng)或在微處理器100上運(yùn)作的類似系統(tǒng)軟件所編程。在一實(shí)施例中,TLB108包括用以伺服指令高速緩存104的micro-TLB指令、及支撐兩個(gè)micro-TLB的結(jié)合TLB,此micro-TLB包含結(jié)合TLB的子集;在一實(shí)施例中,此結(jié)合TLB中包括可架構(gòu)的16/32/64雙輸入全關(guān)聯(lián)型結(jié)合TLB(Configurable16/32/64dual-entryfullyassociativejointTLB),指令micro-TLB包括4輸入全關(guān)聯(lián)型TLB,而數(shù)據(jù)micro-TLB包括8輸入全關(guān)聯(lián)型TLB;在一實(shí)施例中,當(dāng)軟件編程TLB108時(shí),寫入在TLB108中的信息會(huì)被寫入至結(jié)合TLB中,且此時(shí)的micro-TLB不是軟件可視的;當(dāng)執(zhí)行TLB查閱、以將一虛擬地址轉(zhuǎn)換成一具體地址時(shí),micro-TLB集首先被存取,假使在micro-TLB中沒(méi)有匹配輸入,則結(jié)合TLB即被使用來(lái)將虛擬地址轉(zhuǎn)換成具體地址,并重填micro-TLB;假使在結(jié)合TLB中沒(méi)有匹配輸入時(shí),即產(chǎn)生一個(gè)TLB例外。在以下的說(shuō)明與圖形中,會(huì)詳細(xì)介紹此TLB108。請(qǐng)參閱圖2,是圖1中本發(fā)明TLB108的方塊圖;TLB108接收請(qǐng)求或請(qǐng)求以執(zhí)行一查閱操作,藉以確認(rèn)一虛擬地址標(biāo)記(Tag)是否與TLB108中的一現(xiàn)存輸入的標(biāo)記匹配;在一實(shí)施例中,此查閱虛擬地址標(biāo)記被一VPN_in輸入228與一ASID_in輸入226所指明。此指明一內(nèi)存頁(yè)面虛擬頁(yè)面地址的VPN_in輸入228也被稱為虛擬頁(yè)面號(hào)碼(Virtualpagenumber,VPN);假使標(biāo)記比對(duì)匹配,TLB108就輸出經(jīng)轉(zhuǎn)換過(guò)的具體頁(yè)面地址、以及在PgAttr_out輸出254上輸出此頁(yè)面的頁(yè)面屬性(Pageattributes),其中經(jīng)轉(zhuǎn)換過(guò)的具體頁(yè)面地址以具體架構(gòu)號(hào)碼(Physicalframenumber,PFN)代表,而此具體頁(yè)面地址是轉(zhuǎn)換自PEN_out輸出252上的虛擬頁(yè)面地址228;在一實(shí)施例中,VPN_in輸入228包括20位。上述的ASID_in輸入226指明用以標(biāo)明一地址空間的地址空間標(biāo)示器(Addressspaceidentifier,ASID);在一實(shí)施例中,在微處理器100上執(zhí)行的操作系統(tǒng)將地址空間分配至微處理器100上運(yùn)行的每一作用中程序或任務(wù),并指定此地址空間一個(gè)ASID;因此,VPN_in228是由ASID_in226所延伸、以產(chǎn)生一個(gè)獨(dú)有虛擬地址標(biāo)記供TLB108查閱;在一實(shí)施例中,ASID_in226包括8位、用以標(biāo)明256獨(dú)有地址空間。如圖4所示的公式,依據(jù)儲(chǔ)存于每一TLB108輸入中的一個(gè)G位436數(shù)值,ASID_in226選擇性地與VPN_in228包括在標(biāo)記匹配確認(rèn)程序(Tagmatchdetermination)中,詳細(xì)說(shuō)明如后。假使查閱操作未產(chǎn)生標(biāo)記匹配結(jié)果,TLB108就產(chǎn)生TLB_refill_exception216,以使操作系統(tǒng)能重填(即寫入)TLB108,而此重填是為標(biāo)明查閱虛擬地址標(biāo)記(未見于TLB108中)轉(zhuǎn)換的輸入。TLB108查閱操作的詳細(xì)說(shuō)明如后(特別是圖7)。另外,TLB108接收請(qǐng)求,以將一輸入寫入TLB108中(如圖標(biāo)222至236的輸入數(shù)值),TLB108也接收一標(biāo)明TLB108中哪一個(gè)輸入要被寫入的write_idx輸入238,TLB108接收一標(biāo)明此請(qǐng)求是否要將輸入寫入至TLB108中的TLB_write輸入242,TLB108寫入請(qǐng)求輸入包括標(biāo)記部分、有效位、及數(shù)據(jù)部分,標(biāo)記數(shù)值儲(chǔ)存在一標(biāo)記數(shù)組區(qū)塊202(Tagarrayblock)中,而數(shù)據(jù)數(shù)值則儲(chǔ)存在一數(shù)據(jù)數(shù)組204(Dataarray)中。TLB108寫入請(qǐng)求數(shù)據(jù)包括一PEN_in輸入222及一PgAttr_in輸入224,其中的PEN_in輸入222指明要寫入數(shù)據(jù)數(shù)組204的具體架構(gòu)號(hào)碼(Physicalframenumber,PFN)、或具體頁(yè)面地址,而PgAttr_in輸入224則也指明要寫入數(shù)據(jù)數(shù)組204、且標(biāo)示為PEN_in輸入222的內(nèi)存頁(yè)面的屬性;在一實(shí)施例中,由PgAttr_in輸入224標(biāo)示的頁(yè)面屬性包括有效位、寫入驅(qū)動(dòng)位(Write-enablebit)、用以指明頁(yè)面是否已被寫入的骯臟位(Dirtybit)、及高速緩存相關(guān)屬性(Cachecoherencyattributes)。TLB108寫入請(qǐng)求標(biāo)記包括提供在VPN_in輸入228上的虛擬頁(yè)面地址、及提供在ASID_in輸入226上的ASID。TLB108寫入請(qǐng)求標(biāo)記也包括一PgMask_in輸入232;在一實(shí)施例中,微處理器100支持多種頁(yè)面尺寸,此PgMask_in輸入232指明一頁(yè)面掩碼值、用以確定由虛擬地址228所代表的頁(yè)面尺寸;當(dāng)接收到一TLB108寫入請(qǐng)求時(shí),PgMask_in輸入232即被使用為用以評(píng)估是否發(fā)生標(biāo)記匹配的指針(如圖4所列的公式所示)。TLB108寫入請(qǐng)求標(biāo)記也包括一個(gè)總體(Global,G)位輸入G_in236,用以指明ASID_in226是否應(yīng)被包括在確認(rèn)標(biāo)記匹配的程序中。在一實(shí)施例中,假使設(shè)定好G_in236,則ASID_in226就會(huì)排除于標(biāo)記匹配對(duì)比的程序外(如圖4所示的公式)。在一實(shí)施例中,G_in236能使操作系統(tǒng)運(yùn)用由各程序分享的虛擬地址空間的一部分。TLB108寫入請(qǐng)求也包括一有效位輸入234(Validbitinput,Valid_in),用以指明寫入TLB108中的輸入是否有效,Valid_in234能使TLB108中的輸入可以有效虛擬到具體地址轉(zhuǎn)換程序所編程、或是使其失效,特別是,Valid_in234能驅(qū)使操作系統(tǒng)將一TLB108中的輸入無(wú)效化。TLB108也包括一數(shù)據(jù)數(shù)組204;如圖3所示,數(shù)據(jù)數(shù)組204又包括一儲(chǔ)存組件的數(shù)組,每一儲(chǔ)存組件用以儲(chǔ)存TLB108輸入的一部分。請(qǐng)參閱圖3,是本發(fā)明圖2中數(shù)據(jù)數(shù)組204的方塊圖;如圖3所示的實(shí)施例,數(shù)據(jù)數(shù)組204包括有64個(gè)輸入,然而,本發(fā)明并不限定TLB應(yīng)具有多少輸入,但本發(fā)明容許TLB中具有多種的輸入尺寸。如圖所示,數(shù)據(jù)數(shù)組204中的每一輸入包括具體架構(gòu)號(hào)碼(PFN)302(也可為一具體頁(yè)面地址302)、及由相對(duì)應(yīng)PFN302所指明的內(nèi)存頁(yè)面屬性PgAttr304數(shù)據(jù)數(shù)組204接收PFN_in輸入222及PgAttr_in輸入224,也接收選擇(select)輸入258及寫入數(shù)據(jù)(data_write)輸入244。假使data_write輸入244指示要寫入數(shù)據(jù)數(shù)組204,則以PFN_in輸入222上的數(shù)值寫入由select輸入258所標(biāo)示輸入的PFN302,且以PgAttr_in輸入224上的數(shù)值寫入PgAttr_in304。相反地,假如要讀取數(shù)據(jù)數(shù)組204,數(shù)據(jù)數(shù)組204即輸出由select輸入258所指明在PFN302上的PFN_out252及在PgAttr30上的PgAttr_out254。請(qǐng)參閱圖4,是本發(fā)明圖2中標(biāo)記數(shù)組區(qū)塊202的方塊圖;標(biāo)記數(shù)組區(qū)塊202是包括一儲(chǔ)存組件的標(biāo)記數(shù)組412,每一儲(chǔ)存組件用以儲(chǔ)存TLB108輸入的一部分。圖4顯示標(biāo)記數(shù)組412中單個(gè)代表性的輸入內(nèi)容(以i代表)、以及其他與每一標(biāo)記數(shù)組區(qū)塊202輸入相關(guān)的組件。雖然圖4僅顯示儲(chǔ)存組件與一個(gè)單個(gè)標(biāo)記數(shù)組輸入用的邏輯,但須注意的是本發(fā)明標(biāo)記數(shù)組412仍是包括復(fù)數(shù)個(gè)輸入的。在一實(shí)施例中,標(biāo)記數(shù)組412包括64個(gè)輸入,對(duì)應(yīng)于圖3實(shí)施例中數(shù)據(jù)數(shù)組204上的64個(gè)輸入。雖然此處的TLB108是以一特定輸入數(shù)目來(lái)敘述的,但應(yīng)當(dāng)直到本發(fā)明的實(shí)施是不限定其TLB輸入的數(shù)目的。標(biāo)記數(shù)組412包括虛擬頁(yè)面號(hào)碼(VPN)428(或稱虛擬頁(yè)面地址428),VPN428是儲(chǔ)存一個(gè)內(nèi)存頁(yè)面的虛擬地址,而此內(nèi)存頁(yè)面的轉(zhuǎn)換后具體頁(yè)面地址302是儲(chǔ)存于圖3中數(shù)據(jù)數(shù)組204的一相對(duì)應(yīng)輸入上。在一實(shí)施例中,VPN428包括28位,如圖4所示的公式,VPN428的數(shù)值是用以確認(rèn)是否發(fā)生標(biāo)記匹配的狀況;在寫入TLB108的情形下,即將VPN_in輸入228的數(shù)值寫入至VPN428中。標(biāo)記數(shù)組412也包括由標(biāo)記數(shù)組412輸入的地址空間指針?biāo)鶚?biāo)示的ASID字段426,如圖4所示的公式,ASID字段426是選擇性地用以確認(rèn)是否有標(biāo)記匹配的情形發(fā)生,而此確認(rèn)是基于G位436數(shù)值(若為一TLB108查閱程序)、以及G位436與G_in輸入236的數(shù)值(若為一TLB108寫入程序)。在一實(shí)施例中,ASID426包括8位、用以標(biāo)示256個(gè)特有地址空間,而在TLB108寫入程序中,是將ASID_in輸入226的數(shù)值寫入至ASID字段426中。標(biāo)記數(shù)組412輸入也包括頁(yè)面掩碼(PgMask)字段432、用以儲(chǔ)存掩碼值,此掩碼值是用以確認(rèn)由TLB108輸入所標(biāo)示的頁(yè)面尺寸,如圖4上的公式所示,此PgMask字段432是作為用以確認(rèn)是否發(fā)生標(biāo)記匹配狀況的評(píng)估指針。在寫入TLB108的程序中,是將PgMask_in入232的數(shù)值寫入至PgMask字段432中。標(biāo)記數(shù)組412輸入也包括總體(G)位436,用以指明ASID426是否應(yīng)被包括或排除在標(biāo)記匹配比對(duì)的程序外,如圖4上的公式所示,在一實(shí)施例中,假使設(shè)定好G位436,則ASID426被排除在標(biāo)記匹配比對(duì)的程序外;而在另一實(shí)施例中,G位436能使操作系統(tǒng)運(yùn)用由各程序分享的虛擬地址空間的一部分。在寫入TLB108的程序中,是將G_in輸入236的數(shù)值寫入至G位436中。標(biāo)記數(shù)組412輸入也包括有效位434、用以指明TLB108輸入是否有效,即,Valid位434指明儲(chǔ)存于數(shù)據(jù)數(shù)組204中相對(duì)應(yīng)輸入的具體頁(yè)面地址302與頁(yè)面屬性304是否為虛擬地址標(biāo)記的有效轉(zhuǎn)換,此虛擬位指標(biāo)記在相對(duì)應(yīng)TLB108輸入中是由ASID426、VPN428、PgMask432、及G字段436所標(biāo)示。標(biāo)記數(shù)組412輸入也包括Include(Inc)位438,Inc位438指明標(biāo)記數(shù)組412輸入應(yīng)否被包括在標(biāo)記匹配比對(duì)程序內(nèi)。在一實(shí)施例中,假使設(shè)定好Inc位438,則TLB108輸入應(yīng)被包括在標(biāo)記匹配比對(duì)程序中;相反地,假使Inc位438是被清除的,則TLB108輸入應(yīng)被排除在標(biāo)記匹配比對(duì)程序外。雖然Inc位438在此當(dāng)被描述為一設(shè)定值,則代表TLB108輸入應(yīng)被包括在標(biāo)記匹配比對(duì)程序中,而當(dāng)其為一清除值時(shí),則代表TLB108輸入應(yīng)被排除在標(biāo)記匹配比對(duì)程序外,但是應(yīng)當(dāng)直到本發(fā)明也可運(yùn)用與上述條件相反的判斷,因此,本發(fā)明并不限定其實(shí)施究竟是以什么條件確認(rèn)的。再者,本發(fā)明中,Inc位438也可結(jié)合或編碼在TLB108的其他控制字段中,且并不限定為單一或分離的位。響應(yīng)TLB108的重設(shè),Inc位438被清除。Inc位438也可由clearIncMatch信號(hào)442上的真值來(lái)清除(如下所述)。在一實(shí)施例中,Inc位438不是用戶可見的,相反地,Inc位438是隱藏于用戶外、且由標(biāo)記數(shù)組區(qū)塊202所設(shè)定或清除(如下所述)。優(yōu)點(diǎn)是Inc位438利于避免TLB108中重復(fù)匹配輸入的作業(yè),且其避免作業(yè)是以可降低微處理器100例外產(chǎn)生數(shù)目的方式進(jìn)行的。標(biāo)記數(shù)組區(qū)塊202也包括針對(duì)標(biāo)記數(shù)組412每一輸入且連接至標(biāo)記數(shù)組412輸入的邏輯402,此邏輯402接收ASID_in226、VPN_in228、PgMask_in232、Valid_in234、G_in236、及TLB_write242輸入等,邏輯402也將標(biāo)記數(shù)組412儲(chǔ)存組件字段426、428、432、434、436、及438(在圖4中是為相對(duì)應(yīng)的ASID456、VPN458、PgMask462、Valid464、G466、及Inc468)的輸出當(dāng)作輸入接收。為響應(yīng)這些輸入,邏輯402會(huì)產(chǎn)生lookupMatch輸出444、writeDataMatch輸出446、及clearIncMatch輸出442(參照?qǐng)D4所示的公式)。標(biāo)記數(shù)組區(qū)塊202也為每一標(biāo)記數(shù)組412的輸入包括一連接至邏輯402的多任務(wù)器404,此多任務(wù)器404在其數(shù)據(jù)輸入上接收自邏輯402來(lái)的lookupMatch輸出444,也在其他數(shù)據(jù)輸入上接收自邏輯402來(lái)的writeDataMatch輸出446,多任務(wù)器404也接收TLB_write輸入242作為他的select輸入。假使TLB_write輸入242為真,則多任務(wù)器404將writeDataMatch輸入446的值提供至其輸出端上(以match246代表);否則,多任務(wù)器404將lookupMatch輸入444的值提供至match246上,其中,writeDataMatch446是用以確認(rèn)是否需要產(chǎn)生如下所述的機(jī)器檢查例外(Machinecheckexception),特別是相對(duì)于圖5與圖6所示的。在一TLB108查閱操作中,lookupMatch444最終會(huì)成為select258、且被用以選擇合適的數(shù)據(jù)數(shù)組204輸入至PFN_out252與PgAttr_out254上輸出。在一實(shí)施例中,多任務(wù)器404會(huì)通過(guò)使用TLB_write242而緊縮至邏輯402中,藉此,在一TLB108查閱操作中,迫使PgMask_in232至1值,而G_in236至0值,也通過(guò)Valid434與Valid_in234作為TLB108寫入操作產(chǎn)match246的評(píng)估指針。請(qǐng)參閱圖2,TLB108也包括連接至標(biāo)記數(shù)組區(qū)塊202的多任務(wù)器262。多任務(wù)器262在其數(shù)據(jù)輸入端上接收標(biāo)記數(shù)組區(qū)塊202的match輸出246,在另一數(shù)據(jù)輸入端上接收write_idx238,而在其select輸入端上接收TLB_write輸入242。假使TLB_write輸入242為真,則多任務(wù)器262將write_idx238數(shù)值提供至其以select258代表的輸出端;否則,多任務(wù)器262將match246數(shù)值提供至select258。TLB108也包括一個(gè)二輸入端的AND門208及連接至數(shù)據(jù)數(shù)組204的反相器212。反相器212在輸入端上接收machine_check_exception輸出214、并將其輸出輸出至AND門208的一輸入端上,而AND門208在其另一輸入端上接收TLB_write信號(hào)242,AND門208產(chǎn)生data_write244輸出,用以作為數(shù)據(jù)數(shù)組204的輸入;因此,當(dāng)TLB_write242指示有一TLB寫入需求,且此寫入需求并不會(huì)導(dǎo)致機(jī)器檢查例外時(shí),將由select258所指示的數(shù)據(jù)數(shù)組204的輸入數(shù)據(jù)寫入。TLB108也包括連接至標(biāo)記數(shù)組區(qū)塊202的例外產(chǎn)生邏輯206。此例外產(chǎn)生邏輯206接收TLB_write242、write_idx238、match246、及PgAttr_out254。響應(yīng)如圖5與圖6所示的輸入,例外產(chǎn)生邏輯206產(chǎn)生machine_check_exception214;響應(yīng)如圖5與圖7所示的輸入,例外產(chǎn)生邏輯206產(chǎn)生TLB_refill_excepetion216;而響應(yīng)如圖7所示的輸入,例外產(chǎn)生邏輯206產(chǎn)生otherexception218輸出。在一實(shí)施例中,TLB108運(yùn)用雙頁(yè)面的輸入,即,數(shù)據(jù)數(shù)組204為每一標(biāo)記數(shù)組412輸入包括二個(gè)輸入,其中,每一標(biāo)記數(shù)組412輸入儲(chǔ)存一虛擬地址標(biāo)記,此虛擬地址標(biāo)記指明二個(gè)可通過(guò)操作系統(tǒng)映射到具體非相鄰內(nèi)存頁(yè)面的虛擬相鄰內(nèi)存頁(yè)面。請(qǐng)參閱圖5,是顯示本發(fā)明圖2中例外產(chǎn)生邏輯206的方塊圖,其中所示的例外產(chǎn)生邏輯206實(shí)施例是用與一個(gè)具64個(gè)輸入的TLB108配合。例外產(chǎn)生邏輯206包括一反相器502及一個(gè)與每一TLB108輸入配合的二輸入AND門504。每一反相器212,為相對(duì)應(yīng)的TLB108輸入,接收?qǐng)D2中的write_ide238,并將其輸出輸出至相對(duì)應(yīng)AND門504的一個(gè)輸入端上,而AND門504在其另一輸入端上,為相對(duì)應(yīng)的TLB108輸入,接收?qǐng)D2中的match246。反相器502與AND門504是用以將由TLB108寫入請(qǐng)求所指明的輸入排除,此TLB108寫入請(qǐng)求是來(lái)自例外產(chǎn)生邏輯206的machine_check_exception214輸出。例外產(chǎn)生邏輯206是包括一個(gè)64輸入的OR門508,用以接收每一64AND門的輸出,例外產(chǎn)生邏輯206又包括一個(gè)兩輸入AND門506。AND門506在其一個(gè)輸入端上接收OR門508的輸出,其另一輸入端則接收TLB_write242;而AND門506在其輸出端上產(chǎn)生machine_check_exception214輸出。例外產(chǎn)生邏輯206也包括個(gè)65輸入的OR門512,用以接收所有64個(gè)match信號(hào)246及TLB_write242;例外產(chǎn)生邏輯206也包括一反相器514,用以接收OR門512的輸出,并用以產(chǎn)生TLB_refill_exception216作為其輸出。請(qǐng)參閱圖6,是顯示本發(fā)明圖1中在一寫入TLB108的操作中,微處理器100操作的流程圖。其中,流程開始自方塊602。在方塊602中,TLB108接受一個(gè)寫入操作請(qǐng)求。此寫入操作請(qǐng)求指明要被寫入的TLB108輸入的系數(shù);在圖6中,要被寫入的系數(shù)是以“j”表示。寫入請(qǐng)求也指明要被寫入至TLB中系數(shù)j位置輸入的數(shù)值,此要被寫入的數(shù)值是在圖2中輸入信號(hào)222到236上的TLB108。在一實(shí)施例中,為響應(yīng)TLBWI或是TLBWR指令的執(zhí)行,微處理器100產(chǎn)生寫入請(qǐng)求至TLB108中,其中的TLBWI或是TLBWR指令教導(dǎo)微處理器100如何將具有由微處理器100軟件可見寄存器所指示數(shù)值的TLB108輸入寫入,其中,要被寫入的TLB108輸入的系數(shù)是由TLBWI指令明顯指示,至于另一TLBWR指令,則是將要被寫入的TLB108輸入的系數(shù)由一微處理器100的隨機(jī)寄存器指定。在一實(shí)施例中,隨機(jī)寄存器實(shí)質(zhì)地遞減微處理器100的每一計(jì)時(shí)周期,一旦其周期值達(dá)到聯(lián)機(jī)寄存器上的一數(shù)值時(shí),即為其遞減的最大值。在一實(shí)施例中,微處理器100并不提供關(guān)于哪一個(gè)TLB108輸入是最需被更新的信息(例如,哪一個(gè)輸入是近來(lái)最少被使用的),因此,當(dāng)查閱標(biāo)記在TLB108中消失時(shí),TLBWR指令提供一更新TLB108輸入的方法,在write_idx238上譯碼與提供要被寫入TLB108輸入的系數(shù)。接著執(zhí)行方塊604。在方塊604中,圖4中的邏輯402依據(jù)圖4中的writeTagMatch公式,比較寫入請(qǐng)求標(biāo)記與在標(biāo)記數(shù)組412中的每一標(biāo)記。接著執(zhí)行方塊606。在方塊606中,邏輯402依據(jù)每一TLB108輸入的clearIncMatch及圖4中的writeDataMatch公式,將具有一個(gè)清除Inc位438的TLB108輸入排除。接著執(zhí)行確定方塊608。在確定方塊608中,TLB108通過(guò)檢驗(yàn)clearIncMatch442是否具有真值的方式,確認(rèn)是否有發(fā)生標(biāo)記匹配的狀況;如果有,則執(zhí)行方塊612;否則,執(zhí)行確定方塊614。在方塊612中,將在clearIncMatch442上具有真值的每一TLB10輸入的Inc位438清除。接著執(zhí)行確定方塊614。在確定方塊614中,TLB108依據(jù)圖4中的writeDataMatch公式,確認(rèn)Valid_in234是否為真;若非為真,則執(zhí)行方塊616;否則,執(zhí)行確定方塊618。在方塊616中,TLB108于TLB108系數(shù)j寫入由輸入222至236所標(biāo)示的數(shù)值,并于輸入j中設(shè)定Inc位438。接著流程停止在方塊616上。在確定方塊618中,TLB108依據(jù)圖4中的writeDataMatch公式以及圖5中machine_check_exception214輸出的產(chǎn)生邏輯502-58確認(rèn)、除輸入j外、TLB108中具有設(shè)定Inc位438的匹配標(biāo)記的各輸入中哪一個(gè)的Valid434是為真;若非為真,則執(zhí)行方塊616;否則,執(zhí)行方塊622。在方塊622中,TLB108放棄寫入操作、關(guān)閉TLB108、并產(chǎn)生一machine_check_exception214輸出;此處,machine_check_exception214輸出的產(chǎn)生是依據(jù)圖5中的產(chǎn)生邏輯502-508,而放棄寫入操作是由產(chǎn)生data_write244的邏輯208與212輸出一非值至data_write244上的方式執(zhí)行。接著執(zhí)行方塊622。請(qǐng)參閱圖7,是顯示本發(fā)明圖1中、在TLB一查閱操作中、微處理器操作的流程圖;其中步驟是開始于方塊702。在方塊702中,TLB108接收一查閱操作的請(qǐng)求。在典型的例子中,圖1中的存取單元106或饋入/儲(chǔ)存單元112發(fā)出一查閱請(qǐng)求至TLB108上,以獲取一要讀出/寫入指令高速緩存104、數(shù)據(jù)高速緩存114、或經(jīng)由總線接口單元116至系統(tǒng)內(nèi)存的指令或數(shù)據(jù)的具體頁(yè)面地址;此查閱操作請(qǐng)求是通過(guò)VPN_in228與及ASID_in226指明查閱標(biāo)記的VPN與ASID。查閱操作請(qǐng)求要求TLB108確認(rèn)所指明的查閱標(biāo)記是否與任一個(gè)TLB108輸入標(biāo)記匹配;若是匹配,則輸出匹配輸入的PFN302與PgAttr304,即,查閱操作請(qǐng)求要求TLB108轉(zhuǎn)換由VPN_in228與及ASID_in226所標(biāo)定的虛擬地址。接著執(zhí)行方塊704。在方塊704中,圖4中的邏輯402依據(jù)其中的lookupTagMatch公式比較查閱請(qǐng)求的標(biāo)記、與標(biāo)記數(shù)組412中的每一標(biāo)記。接著執(zhí)行方塊706。在方塊706中,邏輯402依據(jù)圖4中的lookupMatch444公式排除具有一清除Inc位438的TLB108輸入。接著執(zhí)行確定方塊708。在確定方塊708中,TLB108通過(guò)檢驗(yàn)lookupMatch444是否具有一真值來(lái)確認(rèn)是否發(fā)生標(biāo)記匹配的情形;若非為真,則執(zhí)行方塊712;否則,執(zhí)行方塊714。在方塊712中,只要lookupMatch444經(jīng)由match246向例外產(chǎn)生邏輯206指明所查閱的標(biāo)記并未與任一TLB輸入匹配,則例外產(chǎn)生邏輯206產(chǎn)生一TLB_refill_exception216。在一實(shí)施例中,如果微處理器100已執(zhí)行過(guò)一個(gè)例外,則例外產(chǎn)生邏輯206在輸出218上產(chǎn)生一TLBInvalidException,而不是產(chǎn)生一TLB_refill_exception216輸出。接著執(zhí)行方塊712。在方塊714中,提供select258至數(shù)據(jù)數(shù)組204,以讀取數(shù)據(jù)數(shù)組204中的匹配輸入。接著執(zhí)行確定方塊716。在確定方塊716中,TLB108確認(rèn)是否還有其他例外狀況發(fā)生。在一實(shí)施例中,例外產(chǎn)生邏輯206檢驗(yàn)在PgAttr_in224上的頁(yè)面屬性,以確認(rèn)是否尚有其他例外狀況發(fā)生。在一實(shí)施例中,如果一TLB108輸入標(biāo)記與查閱標(biāo)記匹配、但匹配輸入?yún)s為無(wú)效時(shí),則例外產(chǎn)生邏輯206可確認(rèn)發(fā)生有一TLBInvalidException狀況。在一實(shí)施例中,如果一TLB108輸入標(biāo)記與查閱標(biāo)記匹配、且輸入是為有效而非骯臟(Validbutnotdirty)時(shí),則例外產(chǎn)生邏輯206即可確認(rèn)發(fā)生有一TLBModifedException狀況。在此方塊中,若是尚發(fā)生有其他例外,則接著執(zhí)行方塊718;否則,執(zhí)行方塊722。在方塊718中,例外產(chǎn)生邏輯206于output218上產(chǎn)生一真值。接著流程停止在方塊718上。在方塊722中,數(shù)據(jù)數(shù)組204輸出由PFN_out252與PgAttr_out254上的select258所選定數(shù)據(jù)數(shù)組204輸入的相對(duì)應(yīng)PFN302與PgAttr304。接著流程停止在方塊722上。在一實(shí)施例中,微處理器100也可包括一TLBP指令,用以教導(dǎo)微處理器100去檢測(cè)TLB108中與所查閱標(biāo)記匹配的輸入;但是,與正常查閱操作相反地,此TLBP指令僅返回TLB108中包含匹配標(biāo)記的輸入的系數(shù)。所述TLBP指令的操作是類同于圖7所示的查閱操作,所不同的是,經(jīng)轉(zhuǎn)換的具體地址并非在方塊722中輸出,而是將匹配輸入的系數(shù)儲(chǔ)存至一軟件可見的寄存器中;另外,若是在方塊708中并未發(fā)生匹配的情形,則不會(huì)產(chǎn)生TLB_refill_exception216,但會(huì)在一軟件可見現(xiàn)狀寄存器設(shè)定一現(xiàn)狀位,以表示并未有匹配的狀況。在一實(shí)施例中,微處理器100也可包括一TLBR指令,用以教導(dǎo)微處理器100去讀取TLB108中一由TLBR指令所標(biāo)示系數(shù)值的相對(duì)應(yīng)輸入;因此,與正常查閱操作相反的是在TLBR指令并未指明一輸入標(biāo)記,但卻提供TLB108中要被讀取輸入的系數(shù)。由上所述,本發(fā)明所提供的裝置與方法可避免TLB中重復(fù)匹配輸入的情形,且可有效地降低為響應(yīng)TLB中試圖重復(fù)匹配輸入而產(chǎn)生的例外數(shù)目。而降低例外產(chǎn)生數(shù)目的特征至少可獲得二個(gè)可能的優(yōu)勢(shì)首先,因如前所述的各可預(yù)期狀況不再發(fā)生,故例外句柄代碼(Handlercode)可被簡(jiǎn)化;其次,因在執(zhí)行一TLB寫入作業(yè)時(shí),操作系統(tǒng)必須處理的例外情況減少,故在具TLB的處理器上執(zhí)行的軟件可有顯著提升的表現(xiàn)。請(qǐng)參閱圖8,是顯示本發(fā)明一用以處理已儲(chǔ)存程序的系統(tǒng)800的方塊圖;此系統(tǒng)800包括圖1所示的微處理器100,其是連接至一內(nèi)存802與至少一個(gè)輸入/輸出裝置804,微處理器100又包括圖1中的TLB108。此系統(tǒng)800可包括一計(jì)算機(jī)系統(tǒng),但并不局限于是個(gè)人計(jì)算機(jī)、任務(wù)站計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、筆記型計(jì)算機(jī)、個(gè)人數(shù)字助理、檔案服務(wù)器、打印服務(wù)器、企業(yè)服務(wù)器、或是其他類似的計(jì)算機(jī)。此系統(tǒng)800也可包括一嵌入式系統(tǒng)(Embeddedsystem),但并不局限于是頂上盒、智能型外圍裝置、汽車嵌入系統(tǒng)、電器嵌入系統(tǒng)、大量?jī)?chǔ)存控制器、或是其他類似的裝置。內(nèi)存802包括一用以儲(chǔ)存供微處理器100運(yùn)用的程序指令與數(shù)據(jù)的內(nèi)存,其也可包括其他適合儲(chǔ)存程序指令與數(shù)據(jù)的內(nèi)存,但并不局限于是DRAM、SRAM、SDRAM、DDR-SDRAM、RDRAM、ROM、PROM、EPROM、EEPROM、閃存、或是其他類似內(nèi)存與任何內(nèi)存的組合方式。輸入/輸出裝置804包括裝置,用以接收供微處理器100運(yùn)用的數(shù)據(jù),但并不局限于究竟是否為用戶所輸入;輸入/輸出裝置804又可包括用以接收與輸出自微處理器100來(lái)的處理結(jié)果,但并不局限于是用戶的輸出。輸入/輸出裝置804可包括、但卻非局限是直接內(nèi)存存取控制器、定時(shí)器、時(shí)鐘、截?cái)嗫刂破?、串行端口控制器、并列端口控制器、USB端口控制器、IEEE1394控制器、SCSI控制器、ATA控制器、光纖信道控制器、軟盤控制器、硬盤控制器、繪圖控制器、顯示裝置、鍵盤、鼠標(biāo)、掃描儀、繪圖器、打印機(jī)、軟盤驅(qū)動(dòng)器、硬盤驅(qū)動(dòng)器、光儲(chǔ)存裝置、磁帶驅(qū)動(dòng)器、數(shù)字照相機(jī)、及其他類似的裝置或是各裝置的組合等。雖本發(fā)明及其目的、特征、與優(yōu)點(diǎn)都已詳細(xì)公開,但本發(fā)明的范圍還包括其他尚未提及的實(shí)施例,例如,雖然Include位是以一固定值(代表一輸入是可被包括在匹配結(jié)果中的)與一清除值(代表并不包括此輸入)描述,但本發(fā)明亦可修正為相反的運(yùn)用。同樣地,雖然Include位被以一個(gè)單一的位描述,所需要的僅是一確定輸入是否應(yīng)包括在匹配結(jié)果中的指示標(biāo)志,因此,此指示標(biāo)志也可具有一個(gè)以上的位數(shù),且可以其他指示領(lǐng)域來(lái)解讀。再者,雖然本發(fā)明是以一在微處理器上運(yùn)作的操作系統(tǒng)為例,但其也可運(yùn)用至其他在微處理器上執(zhí)行的軟件,如嵌入型系統(tǒng)軟件或固件。雖本發(fā)明及其目的、特征、與優(yōu)點(diǎn)都已詳細(xì)公開,但本發(fā)明的范圍亦包括其他尚未提及的實(shí)施例;本發(fā)明除以硬件實(shí)施外,其亦可嵌入至計(jì)算機(jī)可用(如可讀)介質(zhì)的軟件中(如計(jì)算機(jī)可讀代碼、程序代碼、指令與/或數(shù)據(jù)),這些軟件可使在此描述的裝置與方法作用、制造、模塊、仿真、描述且/或測(cè)試,例如,以上的功能可通過(guò)一般程序語(yǔ)言(如C、C++、JAVA等)、GDSII數(shù)據(jù)庫(kù)、包括VorilogHDL、VHDL與其他的硬件描述語(yǔ)言(HDL)、或是其他可用程序、數(shù)據(jù)庫(kù)、與/或電路(即架構(gòu)的)獲取工具實(shí)現(xiàn)。前述的軟件可位于任何計(jì)算機(jī)可用(如可讀)介質(zhì)中,這些介質(zhì)可包括半導(dǎo)體內(nèi)存、磁盤、光盤(如CD-ROM、DVD-ROM等)等,且可以計(jì)算機(jī)數(shù)據(jù)信號(hào)嵌入在計(jì)算機(jī)可用(可讀)傳輸介質(zhì)(如載波或其他包括數(shù)字、光學(xué)、或模擬等介質(zhì))中。如此,軟件可通過(guò)包括外部網(wǎng)絡(luò)與內(nèi)部網(wǎng)絡(luò)等通訊網(wǎng)路傳輸。應(yīng)該知道,本發(fā)明可以軟件實(shí)施、且可轉(zhuǎn)化為集成電路制造中的硬件結(jié)構(gòu),前述的軟件可為HDL軟件,當(dāng)作半導(dǎo)體智能財(cái)產(chǎn)核心(如微處理器核心)的一部分,或是一系統(tǒng)層級(jí)(如SOC)的設(shè)計(jì)。當(dāng)然,本發(fā)明可以軟件與硬件組合的方式實(shí)施。以上所述是利用較佳實(shí)施例詳細(xì)說(shuō)明本發(fā)明,而非限制本發(fā)明的范圍,而且本領(lǐng)域技術(shù)人員都能明了,適當(dāng)作出一些改變及調(diào)整,將不脫離本發(fā)明的要義,也不脫離本發(fā)明的精神和范圍。綜上所述,本發(fā)明實(shí)施的具體性,已符合專利法中所規(guī)定的發(fā)明專利要件,請(qǐng)審查員予以審查,并希望準(zhǔn)予專利。權(quán)利要求1.一種轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,包括接收將輸入寫入該轉(zhuǎn)換旁視緩沖器的寫入請(qǐng)求,該寫入請(qǐng)求包括標(biāo)記;確認(rèn)該轉(zhuǎn)換旁視緩沖器中的其它輸入是否有與該寫入請(qǐng)求標(biāo)記相匹配的標(biāo)記;以及若有該其它輸入的相對(duì)應(yīng)該標(biāo)記與該寫入請(qǐng)求的該標(biāo)記匹配者,清除該轉(zhuǎn)換旁視緩沖器中每個(gè)匹配該標(biāo)記的該其它輸入之一相對(duì)應(yīng)指示記號(hào)。2.如權(quán)利要求1所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,還包括確認(rèn)該寫入請(qǐng)求是否有效;確認(rèn)該轉(zhuǎn)換旁視緩沖器中該其它匹配輸入是否有效;排除該轉(zhuǎn)換旁視緩沖器中每個(gè)該指示記號(hào)被清除的該輸入;以及若是該寫入請(qǐng)求有效,而且除該寫入請(qǐng)求所標(biāo)示的該輸入外,至少有一未被排除的該匹配輸入存在有效時(shí),產(chǎn)生例外。3.如權(quán)利要求2所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該例外代表該寫入請(qǐng)求試圖要將重復(fù)匹配輸入寫入至該轉(zhuǎn)換旁視緩沖器中。4.如權(quán)利要求2所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該“產(chǎn)生例外”的執(zhí)行時(shí)機(jī)僅限于該寫入請(qǐng)求有效,而且除該寫入請(qǐng)求所標(biāo)示的該輸入外,至少有一個(gè)未被排除的該匹配輸入存在有效時(shí)。5.如權(quán)利要求2所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中當(dāng)該寫入請(qǐng)求無(wú)效時(shí),即不執(zhí)行該“產(chǎn)生例外”。6.如權(quán)利要求2所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中當(dāng)除該寫入請(qǐng)求所標(biāo)示的該輸入外每一該未被排除的匹配輸入無(wú)效時(shí),即不執(zhí)行該“產(chǎn)生例外”。7.如權(quán)利要求2所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該“確認(rèn)該寫入請(qǐng)求是否有效”包括“確認(rèn)該寫入請(qǐng)求中是否包括有效位”的真?zhèn)巍?.如權(quán)利要求7所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該有效位是用戶可編程的。9.如權(quán)利要求2所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述之該“確認(rèn)該轉(zhuǎn)換旁視緩沖器中該其它匹配輸入是否有效”包括“確認(rèn)該轉(zhuǎn)換旁視緩沖器中該其它匹配輸入中是否包括有效位之真?zhèn)巍薄?0.如權(quán)利要求9所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該有效位是用戶可編程的。11.如權(quán)利要求2所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該例外包括機(jī)器核對(duì)例外。12.如權(quán)利要求2所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,又包括假使該寫入請(qǐng)求為有效、且至少有一該未被排除的該匹配輸入存在有效時(shí),放棄該寫入操作。13.如權(quán)利要求2所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,又包括假使該寫入請(qǐng)求系為有效、且至少有一該未被排除的該匹配輸入存在有效時(shí),使該轉(zhuǎn)換旁視緩沖器的操作失效。14.如權(quán)利要求1所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,又包括假使該寫入操作為無(wú)效時(shí),將該寫入請(qǐng)求所指明的該轉(zhuǎn)換旁視緩沖器輸入寫入。15.如權(quán)利要求1所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,又包括假使該寫入操作為無(wú)效時(shí),在該寫入請(qǐng)求所指明的該轉(zhuǎn)換旁視緩沖器輸入中設(shè)定該指示記號(hào)。16.如權(quán)利要求1所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,又包括假使、除該寫入請(qǐng)求所指明的該輸入外、每個(gè)該未遭排除的匹配轉(zhuǎn)換旁視緩沖器輸入為無(wú)效時(shí),將該寫入請(qǐng)求所指明的該輸入寫入。17.如權(quán)利要求1所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,又包括假使、除該寫入請(qǐng)求所指明的該輸入外、每個(gè)該未遭排除的匹配轉(zhuǎn)換旁視緩沖器輸入為無(wú)效時(shí),在該寫入請(qǐng)求所指明之該輸入中設(shè)定該指示記號(hào)。18.如權(quán)利要求1所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,又包括在該“清除該轉(zhuǎn)換旁視緩沖器中每個(gè)匹配該標(biāo)記的該其它輸入之一相對(duì)應(yīng)指示記號(hào)”后,接收查閱請(qǐng)求,以在該轉(zhuǎn)換旁視緩沖器中查閱具有與該查閱請(qǐng)求所指明的標(biāo)記相匹配的輸入;以及依照該查閱,在該轉(zhuǎn)換旁視緩沖器中,將該指示記號(hào)被清除的每個(gè)輸入排除。19.如權(quán)利要求18所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,又包括在該查閱中,包括該轉(zhuǎn)換旁視緩沖器中具有設(shè)定該指示記號(hào)的每個(gè)輸入。20.如權(quán)利要求1所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該標(biāo)記包括虛擬頁(yè)面地址。21.如權(quán)利要求20所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該標(biāo)記包括地址空間確認(rèn)記號(hào)。22.如權(quán)利要求21所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該標(biāo)記包括控制值,以在該“確認(rèn)該轉(zhuǎn)換旁視緩沖器中的其它輸入是否有與該寫入請(qǐng)求該標(biāo)記相匹配的標(biāo)記”時(shí),用以選擇性地指明該地址空間確認(rèn)記號(hào)是否須排除。23.如權(quán)利要求20所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該標(biāo)記包括掩碼字段,以在該“確認(rèn)該轉(zhuǎn)換旁視緩沖器中的其它輸入是否有與該寫入請(qǐng)求該標(biāo)記相匹配的標(biāo)記”時(shí),用以指明該虛擬頁(yè)面地址中需被排除的一部分。24.如權(quán)利要求1所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,又包括接收請(qǐng)求,以重設(shè)該轉(zhuǎn)換旁視緩沖器;以及依照所接收的該重設(shè)請(qǐng)求,清除該轉(zhuǎn)換旁視緩沖器中每個(gè)該輸入的該指示記號(hào)。25.如權(quán)利要求1所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該寫入該轉(zhuǎn)換旁視緩沖器的該請(qǐng)求包括由包括該轉(zhuǎn)換旁視緩沖器的微處理器所執(zhí)行的指令。26.如權(quán)利要求25所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該指令教導(dǎo)該微處理器去選擇由該寫入請(qǐng)求隨意指明的該轉(zhuǎn)換旁視緩沖器輸入。27.一種轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,包括接收查閱請(qǐng)求,以在該轉(zhuǎn)換旁視緩沖器中查閱標(biāo)記;以及自該查閱中,排除該轉(zhuǎn)換旁視緩沖器中每個(gè)指示記號(hào)具有清除值的輸入。28.如權(quán)利要求27所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,當(dāng)具有標(biāo)記與該轉(zhuǎn)換旁視緩沖器輸入標(biāo)記匹配的該轉(zhuǎn)換旁視緩沖器接收寫入請(qǐng)求時(shí),其中所述每個(gè)該轉(zhuǎn)換旁視緩沖器輸入中的該指示記號(hào)被清除。29.如權(quán)利要求28所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,假使該轉(zhuǎn)換旁視緩沖器輸入實(shí)際上依該寫入請(qǐng)求而被寫入時(shí),其中所述每個(gè)該轉(zhuǎn)換旁視緩沖器輸入中的該指示記號(hào)被設(shè)定。30.如權(quán)利要求29所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,假使該寫入請(qǐng)求為有效、且該轉(zhuǎn)換旁視緩沖器中除該寫入請(qǐng)求所指明的該轉(zhuǎn)換旁視緩沖器輸入外至少具有設(shè)定的指示記號(hào)并有與該寫入請(qǐng)求標(biāo)記匹配的標(biāo)記的輸入有效時(shí),其中所述的該轉(zhuǎn)換旁視緩沖器放棄該寫入請(qǐng)求。31.如權(quán)利要求29所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,假使該寫入請(qǐng)求為有效、且該轉(zhuǎn)換旁視緩沖器中除該寫入請(qǐng)求所指明的該轉(zhuǎn)換旁視緩沖器輸入外至少具有設(shè)定之指示記號(hào)并有與該寫入請(qǐng)求標(biāo)記匹配的標(biāo)記的輸入有效時(shí),其中所述的該轉(zhuǎn)換旁視緩沖器產(chǎn)生例外。32.如權(quán)利要求27所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的方法,其中所述的該指示記號(hào)非為用戶可存取的。33.一種轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,包括復(fù)數(shù)個(gè)指示記號(hào),與相對(duì)應(yīng)復(fù)數(shù)個(gè)該轉(zhuǎn)換旁視緩沖器的輸入連結(jié),每一該指示記號(hào)用以指明是否將該相對(duì)應(yīng)輸入包括在一標(biāo)記比較操作中;以及與該復(fù)數(shù)個(gè)指示記號(hào)結(jié)合的邏輯,以在當(dāng)該相對(duì)應(yīng)輸入具有與寫入該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入中之一的請(qǐng)求所指明的標(biāo)記相匹配的標(biāo)記時(shí),用以將該相對(duì)應(yīng)指示記號(hào)清除為第一預(yù)定值。34.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,其中所述的該第一預(yù)定值指明該相對(duì)應(yīng)指示記號(hào)并不包括在該標(biāo)記比較操作中。35.如權(quán)利要求34所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,假使該轉(zhuǎn)換旁視緩沖器實(shí)際上依該寫入請(qǐng)求寫入該相對(duì)應(yīng)轉(zhuǎn)換旁視緩沖器輸入時(shí),其中所述的該邏輯又架構(gòu)為用以將該相對(duì)應(yīng)指示記號(hào)設(shè)定為第二預(yù)定值。36.如權(quán)利要求35所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,其中所述的該第二預(yù)定值指明該相對(duì)應(yīng)轉(zhuǎn)換旁視緩沖器輸入包括在該標(biāo)記比較操作中。37.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,其中所述的該相對(duì)應(yīng)轉(zhuǎn)換旁視緩沖器輸入標(biāo)記包括虛擬頁(yè)面地址。38.如權(quán)利要求37所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,其中所述的該標(biāo)記比較操作包括比較該相對(duì)應(yīng)轉(zhuǎn)換旁視緩沖器輸入中的該虛擬頁(yè)面地址、與該寫入請(qǐng)求標(biāo)記中的虛擬頁(yè)面地址,以確認(rèn)上述的該虛擬地址是否匹配。39.如權(quán)利要求37所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,其中所述的該標(biāo)記比較操作系包括比較該相對(duì)應(yīng)轉(zhuǎn)換旁視緩沖器輸入中的該虛擬頁(yè)面地址、與查閱請(qǐng)求標(biāo)記中的虛擬頁(yè)面地址,以確認(rèn)上述的該虛擬地址是否匹配。40.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,又包括例外輸出,與該復(fù)數(shù)個(gè)指示記號(hào)連結(jié),用以指明是否該寫入請(qǐng)求有試圖將一重復(fù)匹配標(biāo)記寫入該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入中的狀況。41.如權(quán)利要求40所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,假使該寫入請(qǐng)求有效、且至少該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入除該寫入請(qǐng)求所指明的該輸入外為有效、具有與該寫入請(qǐng)求的該標(biāo)記匹配的標(biāo)記、以及并未將其指示記號(hào)設(shè)定為該第一預(yù)定值時(shí),其中所述的該裝置在該例外輸出上產(chǎn)生真值。42.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,假使該寫入請(qǐng)求無(wú)效時(shí),其中所述的該轉(zhuǎn)換旁視緩沖器實(shí)際上會(huì)將該寫入請(qǐng)求寫入至該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入中為該寫入輸入所指明的該輸入中。43.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,假使、除該寫入輸入所指明的該輸入外、該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入中無(wú)一有效時(shí),其中所述的該轉(zhuǎn)換旁視緩沖器實(shí)際上會(huì)將該寫入請(qǐng)求寫入至該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入中為該寫入輸入所指明的該輸入中。44.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,假使、除該寫入輸入所指明的該輸入外、該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入中無(wú)一具有與該寫入輸入的該標(biāo)記匹配的標(biāo)記時(shí),其中所述的該轉(zhuǎn)換旁視緩沖器實(shí)際上會(huì)將該寫入請(qǐng)求寫入至該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入中為該寫入輸入所指明的該輸入中。45.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,假使、除該寫入輸入所指明的該輸入外、該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入中無(wú)一將其指示記號(hào)設(shè)定為該第一預(yù)定值時(shí),其中所述的該轉(zhuǎn)換旁視緩沖器實(shí)際上會(huì)將該寫入請(qǐng)求寫入至該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入中為該寫入輸入所指明的該輸入中。46.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,其中所述的每個(gè)該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入包括由該標(biāo)記映射來(lái)的具體頁(yè)面地址。47.如權(quán)利要求46所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,其中所述的每個(gè)該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入的該標(biāo)記系包括虛擬頁(yè)面地址,其中該具體頁(yè)面地址是由該虛擬頁(yè)面地址映射來(lái)的。48.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,其中所述的該復(fù)數(shù)個(gè)指示記號(hào)是非軟件可見的。49.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,由包括具有計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可用介質(zhì)的計(jì)算機(jī)程序產(chǎn)品所組成,而該計(jì)算機(jī)程序產(chǎn)品在計(jì)算機(jī)裝置上使用。50.如權(quán)利要求33所述的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,系由歸并于包括計(jì)算機(jī)可讀程序代碼的傳輸介質(zhì)中的計(jì)算機(jī)數(shù)據(jù)信號(hào)所提供。51.一種與計(jì)算機(jī)裝置配合使用的計(jì)算機(jī)程序產(chǎn)品,包括計(jì)算機(jī)可用介質(zhì),具有歸并于該介質(zhì)中的計(jì)算機(jī)可讀程序代碼,用以組成一轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,該計(jì)算機(jī)可讀程序代碼又包括第一程序代碼,用以提供與復(fù)數(shù)個(gè)該轉(zhuǎn)換旁視緩沖器輸入相對(duì)應(yīng)連接的復(fù)數(shù)個(gè)指示記號(hào),每一該指示記號(hào)用以指明是否將該相對(duì)應(yīng)輸入包括在一標(biāo)記比較操作中;以及用以提供邏輯的第二程序代碼,與該復(fù)數(shù)個(gè)指示記號(hào)連接,在當(dāng)該相對(duì)應(yīng)輸入具有與寫入該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入之一的請(qǐng)求所指明的標(biāo)記相匹配時(shí),用以將該相對(duì)應(yīng)指示記號(hào)清除為該第一預(yù)定值。52.一種歸并于傳輸介質(zhì)中的計(jì)算機(jī)數(shù)據(jù)信號(hào),包括計(jì)算機(jī)可讀程序代碼,用以提供至轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,該程序代碼又包括第一程序代碼,用以提供與復(fù)數(shù)個(gè)該轉(zhuǎn)換旁視緩沖器輸入相對(duì)應(yīng)連接的復(fù)數(shù)個(gè)指示記號(hào),每一該指示記號(hào)用以指明是否將該相對(duì)應(yīng)輸入包括在標(biāo)記比較操作中;以及用以提供邏輯的第二程序代碼,與該復(fù)數(shù)個(gè)指示記號(hào)連接,在當(dāng)該相對(duì)應(yīng)輸入具有與寫入該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入之一的請(qǐng)求所指明的標(biāo)記相匹配時(shí),用以將該相對(duì)應(yīng)指示記號(hào)清除為該第一預(yù)定值。53.一種處理系統(tǒng),包括內(nèi)存,用以儲(chǔ)存程序指令;以及微處理器,與該內(nèi)存連接,用以執(zhí)行該程序指令,該微處理器又包括該微處理器的轉(zhuǎn)換旁視緩沖器中避免重復(fù)匹配輸入的裝置,該裝置又包括復(fù)數(shù)個(gè)指示記號(hào),與相對(duì)應(yīng)復(fù)數(shù)個(gè)該轉(zhuǎn)換旁視緩沖器的輸入連接,每個(gè)該指示記號(hào)用以指明是否將該相對(duì)應(yīng)輸入包括在標(biāo)記比較操作中;及與該復(fù)數(shù)個(gè)指示記號(hào)結(jié)合的邏輯,以在當(dāng)該相對(duì)應(yīng)輸入具有與寫入該復(fù)數(shù)個(gè)轉(zhuǎn)換旁視緩沖器輸入中之一的請(qǐng)求所指明的標(biāo)記相匹配的標(biāo)記時(shí),用以將該相對(duì)應(yīng)指示記號(hào)清除為第一預(yù)定值。54.如權(quán)利要求53所述的處理系統(tǒng),其中所述的該第一預(yù)定值指明該相對(duì)應(yīng)轉(zhuǎn)換旁視緩沖器輸入并不包括在該標(biāo)記比較操作中。55.如權(quán)利要求53所述的處理系統(tǒng),又包括至少一個(gè)輸入輸出裝置,與該微處理器連接,架構(gòu)以接收提供至該微處理器的輸入數(shù)據(jù)、以及以輸出該微處理器送出的處理結(jié)果。全文摘要一種轉(zhuǎn)換旁視緩沖器(TLB)中避免重復(fù)匹配輸入的改良裝置與方法,TLB中每個(gè)輸入具有指明確認(rèn)此輸入應(yīng)包括或排除在標(biāo)記匹配比較中的Include位;當(dāng)試圖TLB寫入時(shí),如果寫入標(biāo)記與已存在于TLB中輸入標(biāo)記相匹配,則清除此輸入的Include位,以使此輸入排除在后續(xù)的標(biāo)記匹配比較中;再者,如果匹配輸入為除要被寫入的輸入外的輸入、匹配輸入有效、且要寫入輸入的值亦為有效時(shí),即產(chǎn)生例外且放棄寫入操作;當(dāng)輸入成功寫入TLB中時(shí),其Include位即被設(shè)定,以使此輸入包括在后續(xù)的標(biāo)記匹配比較中;其中,Include位亦可用以評(píng)比標(biāo)記查閱匹配確認(rèn)程序中。文檔編號(hào)G06F12/10GK1848096SQ200510064999公開日2006年10月18日申請(qǐng)日期2005年4月11日優(yōu)先權(quán)日2005年4月11日發(fā)明者萊恩·C·肯特,G·麥可·亞勒申請(qǐng)人:美普思科技有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1