本公開總體涉及計(jì)算機(jī)處理器,更具體而言,本公開的實(shí)施例涉及為處理器認(rèn)證擴(kuò)展微代碼修補(bǔ)。
背景技術(shù):
1、處理器或者處理器的集合執(zhí)行來自指令集的指令,例如指令集體系結(jié)構(gòu)(instruction?set?architecture,isa)。指令集是與編程有關(guān)的計(jì)算機(jī)體系結(jié)構(gòu)的一部分,并且一般包括原生數(shù)據(jù)類型、指令、寄存器體系結(jié)構(gòu)、尋址模式、存儲器體系結(jié)構(gòu)、中斷和異常處置、以及外部輸入和輸出(i/o)。應(yīng)當(dāng)注意,本文的術(shù)語“指令”可以指宏指令,例如,提供給處理器以便執(zhí)行的指令。
技術(shù)實(shí)現(xiàn)思路
1、根據(jù)本公開的一個方面,提供了一種方法,包括:將擴(kuò)展服務(wù)微代碼更新(mcu)加載到處理器的存儲器;從所述處理器的一個或多個寄存器讀取處理器標(biāo)識數(shù)據(jù)和處理器擴(kuò)展服務(wù)數(shù)據(jù);基于所述處理器標(biāo)識數(shù)據(jù)在所述mcu中識別mcu擴(kuò)展服務(wù)值;并且基于所述mcu擴(kuò)展服務(wù)值和所述處理器擴(kuò)展服務(wù)數(shù)據(jù)之間的比較,確定是否要在所述處理器上應(yīng)用所述擴(kuò)展服務(wù)mcu。
2、根據(jù)本公開的另一方面,提供了一種處理器,包括:存儲器,用來存儲擴(kuò)展服務(wù)微代碼更新(mcu);一個或多個寄存器,用來存儲處理器標(biāo)識數(shù)據(jù)和處理器擴(kuò)展服務(wù)數(shù)據(jù);執(zhí)行電路,用來執(zhí)行指令,以:從所述mcu讀取mcu擴(kuò)展服務(wù)值,所述mcu擴(kuò)展服務(wù)值是基于所述處理器標(biāo)識數(shù)據(jù)來識別的;并且基于所述mcu擴(kuò)展服務(wù)值和所述處理器擴(kuò)展服務(wù)數(shù)據(jù)之間的比較,確定是否要在所述處理器上應(yīng)用所述擴(kuò)展服務(wù)mcu。
3、根據(jù)本公開的又一方面,提供了一種存儲代碼的機(jī)器可讀介質(zhì),所述代碼當(dāng)被處理器執(zhí)行時(shí)使得所述處理器執(zhí)行一種方法,該方法包括:將擴(kuò)展服務(wù)微代碼更新(mcu)存儲在存儲器中;從所述處理器的一個或多個寄存器讀取處理器標(biāo)識數(shù)據(jù)和處理器擴(kuò)展服務(wù)數(shù)據(jù);基于所述處理器標(biāo)識數(shù)據(jù)識別所述mcu的mcu擴(kuò)展服務(wù)值;并且基于所述mcu擴(kuò)展服務(wù)值和所述處理器擴(kuò)展服務(wù)數(shù)據(jù)之間的比較,確定是否要在所述處理器上應(yīng)用所述擴(kuò)展服務(wù)mcu。
1.一種方法,包括:
2.如權(quán)利要求1所述的方法,其中,所述處理器標(biāo)識數(shù)據(jù)包括處理器簽名數(shù)據(jù)和平臺標(biāo)識數(shù)據(jù)。
3.如權(quán)利要求2所述的方法,其中,識別所述mcu擴(kuò)展服務(wù)值包括:
4.如權(quán)利要求3所述的方法,其中,所述平臺標(biāo)識數(shù)據(jù)包括從處理器寄存器讀取的n比特,其中,識別字段包括使用所述n比特來識別2n個處理器標(biāo)志中的一處理器標(biāo)志,該處理器標(biāo)志與所述字段相關(guān)聯(lián)。
5.如權(quán)利要求2至4中任一項(xiàng)所述的方法,其中,所述處理器簽名數(shù)據(jù)包括指示出以下各項(xiàng)中的一個或多個的數(shù)據(jù):擴(kuò)展系列,擴(kuò)展型號,類型,系列,型號,以及步進(jìn)。
6.如權(quán)利要求1至5中任一項(xiàng)所述的方法,其中,如果所述mcu擴(kuò)展服務(wù)值小于或等于所述處理器擴(kuò)展服務(wù)數(shù)據(jù)的值,則所述擴(kuò)展服務(wù)mcu被應(yīng)用到所述處理器。
7.如權(quán)利要求6所述的方法,其中,所述擴(kuò)展服務(wù)mcu通過寫入到所述處理器的微定序器的微代碼補(bǔ)丁存儲器而被應(yīng)用到所述處理器。
8.如權(quán)利要求1至7中任一項(xiàng)所述的方法,其中,所述處理器擴(kuò)展服務(wù)數(shù)據(jù)的值包括從處理器寄存器讀取的m比特值,并且所述mcu擴(kuò)展服務(wù)值包括從所述mcu的頭部讀取的m比特值。
9.如權(quán)利要求1至8中任一項(xiàng)所述的方法,其中,響應(yīng)于為所述處理器購買擴(kuò)展許可證,所述處理器擴(kuò)展服務(wù)數(shù)據(jù)將被更新以包括更新值,在后續(xù)嘗試將所述mcu應(yīng)用到所述處理器時(shí),所述更新值被與所述mcu擴(kuò)展服務(wù)值進(jìn)行比較。
10.一種處理器,包括:
11.如權(quán)利要求10所述的處理器,其中,所述處理器標(biāo)識數(shù)據(jù)包括處理器簽名數(shù)據(jù)和平臺標(biāo)識數(shù)據(jù)。
12.如權(quán)利要求11所述的處理器,其中,識別所述mcu擴(kuò)展服務(wù)值包括:
13.如權(quán)利要求12所述的處理器,其中,所述平臺標(biāo)識數(shù)據(jù)包括從處理器寄存器讀取的n比特,其中,識別字段包括使用所述n比特來識別2n個處理器標(biāo)志中的一處理器標(biāo)志,該處理器標(biāo)志與所述字段相關(guān)聯(lián)。
14.如權(quán)利要求11至13中任一項(xiàng)所述的處理器,其中,所述處理器簽名數(shù)據(jù)包括指示出以下各項(xiàng)中的一個或多個的數(shù)據(jù):擴(kuò)展系列,擴(kuò)展型號,類型,系列,型號,以及步進(jìn)。
15.如權(quán)利要求10所述的處理器,其中,如果所述mcu擴(kuò)展服務(wù)值小于或等于所述處理器擴(kuò)展服務(wù)數(shù)據(jù)的值,則所述擴(kuò)展服務(wù)mcu被應(yīng)用到所述處理器。
16.如權(quán)利要求15所述的處理器,其中,所述擴(kuò)展服務(wù)mcu通過寫入到所述處理器的微定序器的微代碼補(bǔ)丁存儲器而被應(yīng)用到所述處理器。
17.一種存儲代碼的機(jī)器可讀介質(zhì),所述代碼當(dāng)被處理器執(zhí)行時(shí)使得所述處理器執(zhí)行一種方法,該方法包括:
18.如權(quán)利要求17所述的機(jī)器可讀介質(zhì),其中,所述處理器標(biāo)識數(shù)據(jù)包括處理器簽名數(shù)據(jù)和平臺標(biāo)識數(shù)據(jù)。
19.如權(quán)利要求18所述的機(jī)器可讀介質(zhì),其中,識別所述mcu擴(kuò)展服務(wù)值包括:
20.如權(quán)利要求19所述的機(jī)器可讀介質(zhì),其中,所述平臺標(biāo)識數(shù)據(jù)包括從處理器寄存器讀取的n比特,其中,識別字段包括使用所述n比特來識別2n個處理器標(biāo)志中的一處理器標(biāo)志,該處理器標(biāo)志與所述字段相關(guān)聯(lián)。