欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

用于動態(tài)控制高速緩存存儲器的尋址模式的方法、設(shè)備和系統(tǒng)的制作方法

文檔序號:9816377閱讀:416來源:國知局
用于動態(tài)控制高速緩存存儲器的尋址模式的方法、設(shè)備和系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本公開關(guān)于計算系統(tǒng),并且特別地(但不排他地)關(guān)于高速緩存存儲器管理。
【附圖說明】
[0002]圖1是包含多核處理器的計算系統(tǒng)的框圖。
[0003]圖2是根據(jù)本發(fā)明的實施例的多核處理器的框圖。
[0004]圖3是根據(jù)實施例的處理器的部分的框圖。
[0005]圖4A是根據(jù)實施例的共享高速緩存存儲器的集合索引的框圖。
[0006]圖4B是根據(jù)本發(fā)明的實施例的使用全局集合索引產(chǎn)生的訪問地址。
[0007]圖5是根據(jù)本發(fā)明的實施例的方法的流程圖。
[0008]圖6是根據(jù)本發(fā)明的實施例的用于動態(tài)控制高速緩存存儲器的方法的流程圖。
[0009]圖7是根據(jù)本發(fā)明的實施例的片上系統(tǒng)(SOC)設(shè)計的實施例的框圖。
【具體實施方式】
[0010]參考圖1,描繪用于包含多核處理器的計算系統(tǒng)的框圖的實施例。處理器100包含任何處理器或處理裝置,諸如微處理器、嵌入式處理器、數(shù)字信號處理器(DSP)、網(wǎng)絡(luò)處理器、手持處理器、應(yīng)用處理器、協(xié)處理器、片上系統(tǒng)(SOC)或用來執(zhí)行代碼的其他裝置。處理器100在一個實施例中包含至少兩個核——核101和102,所述至少兩個核可以包含不對稱的核或?qū)ΨQ的核(圖解的實施例)。然而,處理器100可以包含任何數(shù)量的處理元件,所述處理元件可以是對稱的或不對稱的。
[0011]在一個實施例中,處理元件涉及用來支持軟件線程的邏輯或硬件。硬件處理元件的示例包含:線程單元、線程槽、線程、處理單元、語境、語境單元、邏輯處理器、硬件線程、核和/或任何其他元件,其能夠保持處理器的狀態(tài),諸如執(zhí)行狀態(tài)或架構(gòu)狀態(tài)。換言之,處理元件在一個實施例中涉及能夠獨立與代碼(諸如,軟件線程、操作系統(tǒng)、應(yīng)用或其他代碼)相關(guān)聯(lián)的任何硬件。物理處理器(或處理器插座)典型地涉及集成電路,所述集成電路可能包含任何數(shù)量的其他處理元件,諸如核或硬件線程。
[0012]核經(jīng)常涉及能夠維持獨立架構(gòu)狀態(tài)的集成電路上定位的邏輯,其中每個獨立維持的架構(gòu)狀態(tài)與至少一些專用執(zhí)行資源相關(guān)聯(lián)。與核相反,硬件線程典型地涉及能夠維持獨立架構(gòu)狀態(tài)的集成電路上定位的任何邏輯,其中獨立維持的架構(gòu)狀態(tài)共享對執(zhí)行資源的訪問。如能夠看到的那樣,當(dāng)某些資源被共享并且其他資源專用于架構(gòu)狀態(tài)時,在核和硬件線程的命名之間的界限(line)重疊。然而經(jīng)常地,操作系統(tǒng)把核和硬件線程視作個別的邏輯處理器,其中操作系統(tǒng)能夠個別地調(diào)度在每個邏輯處理器上的操作。
[0013]如在圖1中圖解的物理處理器100包含兩個核——核101和102。此處,核101和102被認(rèn)為是對稱的核,即帶有相同配置、功能單元和/或邏輯的核。在另一個實施例中,核101包含無序處理器核,而核102包含有序處理器核。然而,可以從任何類型的核,諸如原生核(native core)、軟件管理的核、適于執(zhí)行原生指令集合架構(gòu)(ISA)的核、適于執(zhí)行翻譯的指令集合架構(gòu)(I SA)的核、協(xié)同設(shè)計的核或其他已知的核,個別地選擇核101和102。在異構(gòu)核環(huán)境(即,不對稱的核)中,翻譯的某一形式(這樣的二進(jìn)制翻譯)可以用于調(diào)度或執(zhí)行在一個或兩個核上的代碼。尚待進(jìn)一步討論,以下進(jìn)一步詳細(xì)描述在核101中圖解的功能單元,因為在描繪的實施例中,在核102中的單元以類似的方式操作。
[0014]如描繪的那樣,核101包含兩個硬件線程1la和101b,其還可以被稱為硬件線程槽1la和101b。因此,軟件實體(諸如,操作系統(tǒng))在一個實施例中可能把處理器100視作四個分離的處理器,即能夠同時執(zhí)行四個軟件線程的四個邏輯處理器或處理元件。如以上暗指的那樣,第一線程與架構(gòu)狀態(tài)寄存器1la相關(guān)聯(lián),第二線程與架構(gòu)狀態(tài)寄存器1lb相關(guān)聯(lián),第三線程可以與架構(gòu)狀態(tài)寄存器102a相關(guān)聯(lián),并且第四線程可以與架構(gòu)狀態(tài)寄存器102b相關(guān)聯(lián)。此處,如以上描述的那樣,架構(gòu)狀態(tài)寄存器(101a、101b、102a和102b)中的每個可以被稱為處理元件、線程槽或線程單元。如圖解的那樣,架構(gòu)狀態(tài)寄存器1la被復(fù)制在架構(gòu)狀態(tài)寄存器1lb中,因此個別架構(gòu)狀態(tài)/語境能夠針對邏輯處理器1la和邏輯處理器1lb被儲存。在核101中,其他更小的資源,諸如在分配器和重新命名器塊130中的指令指針和重新命名邏輯,也可以被復(fù)制用于線程1la和101b。一些資源,諸如在重新排序/引退單元135中的重新排序緩沖器、ILTB 120、負(fù)載/儲存緩沖器以及隊列,可以通過劃分來共享。其他資源,諸如通用內(nèi)部寄存器、(一個或多個)頁表基寄存器、低等級數(shù)據(jù)高速緩存和數(shù)據(jù)TLB 115、(一個或多個)執(zhí)行單元140以及無序單元135的部分可能被完全共享。
[0015]處理器100經(jīng)常包含其他資源,所述其他資源可以被完全共享、通過劃分共享、或者由處理元件專用/專用于處理元件。在圖1中,圖解帶有處理器的圖解性邏輯單元/資源的純示例性處理器的實施例。注意到處理器可以包含或省略這些功能單元中的任何功能單元,以及包含未描繪的任何其他已知的功能單元、邏輯或固件。如圖解的那樣,核101包含簡化的代表性無序(000)處理器核。但是有序處理器可以被用在不同的實施例中。所述000核包含用來預(yù)測將被執(zhí)行/采用的分支的分支目標(biāo)緩沖器120和用來儲存指令的地址翻譯表項的指令翻譯緩沖器(1-TLB ) 120。
[0016]核101進(jìn)一步包含耦合到提取單元120以解碼提取的元件的解碼模塊125。提取邏輯在一個實施例中包含分別與線程槽101a、101b相關(guān)聯(lián)的個別的定序器。通常核101與第一ISA相關(guān)聯(lián),所述第一 ISA限定/規(guī)定可在處理器100上執(zhí)行的指令。經(jīng)常,是第一 ISA的部分的機(jī)器代碼指令包含指令的部分(稱為操作碼),其參考/規(guī)定將被執(zhí)行的指令或操作。解碼邏輯125包含電路,所述電路從這些指令的操作碼標(biāo)識這些指令并且在管線中傳遞解碼的指令用于如由第一 ISA限定的那樣處理。例如,如以下更詳細(xì)討論的那樣,解碼器125在一個實施例中包含設(shè)計為或適于標(biāo)識特定指令(諸如,事務(wù)指令)的邏輯。作為由解碼器125進(jìn)行的標(biāo)識的結(jié)果,架構(gòu)或核101采用特定的、預(yù)定的動作來執(zhí)行與適當(dāng)?shù)闹噶钕嚓P(guān)聯(lián)的任務(wù)。注意到以下是重要的:響應(yīng)于單個或多個指令可以執(zhí)行在本文中描述的任務(wù)、塊、操作和方法中的任何一個;所述多個指令中的一些可以是新的或舊的指令。注意到解碼器126在一個實施例中標(biāo)識相同的ISA(或其子集)。替選地,在異構(gòu)核環(huán)境中,解碼器126標(biāo)識第二 ISA(第一 ISA的子集或不同的ISA)。
[0017]在一個示例中,分配器和重新命名器塊130包含分配器以保留資源,諸如用來儲存指令處理結(jié)果的寄存器文件。然而,線程1la和1lb可能能夠無序執(zhí)行,其中分配器和重新命名器塊130還保留其他資源,諸如用來跟蹤指令結(jié)果的重新排序緩沖器。單元130還可以包含寄存器重新命名器以把程序/指令參考寄存器重新命名為在處理器100內(nèi)部的其他寄存器。重新排序/引退單元135包含部件,諸如以上提到的重新排序緩沖器、負(fù)載緩沖器和儲存緩沖器,以支持無序執(zhí)行以及對無序執(zhí)行的指令的稍后有序引退。
[0018]調(diào)度器和執(zhí)行單元(一個或多個)塊140在一個實施例中包含調(diào)度器單元以調(diào)度在執(zhí)行單元上的指令/操作。例如,在具有可用浮點執(zhí)行單元的執(zhí)行單元的端口上調(diào)度浮點指令。與執(zhí)行單元相關(guān)聯(lián)的寄存器文件也被包含以儲存信息指令處理結(jié)果。示例性執(zhí)行單元包含浮點執(zhí)行單元、整數(shù)執(zhí)行單元、跳躍執(zhí)行單元、加載執(zhí)行單元、儲存執(zhí)行單元和其他已知的執(zhí)行單元。
[0019]更低等級的數(shù)據(jù)高速緩存和數(shù)據(jù)翻譯緩沖器(D-TLBH50被耦合到(一個或多個)執(zhí)行單元140。數(shù)據(jù)高速緩存將儲存最近在元件上使用/操作的諸如數(shù)據(jù)操作數(shù),其可能被保持在存儲器一致性狀態(tài)中。D-TLB將儲存最近虛擬/線性到物理地址翻譯。作為特定的示例,處理器可以包含頁表結(jié)構(gòu)以把物理存儲器分為多個虛擬頁。
[°02°] 此處,核101和102共享到更高等級或更遠(yuǎn)(further-out)的高速緩存(諸如,與片上接口 110相關(guān)聯(lián)的第二等級高速緩存)的訪問。注意到更高等級或更遠(yuǎn)指代從(一個或多個)執(zhí)彳丁單兀增加或變得更遠(yuǎn)的尚速緩存等級。在一個實施例中,更尚等級尚速緩存是最后等級數(shù)據(jù)高速緩存一一在存儲器100上的存儲器層次中的最后高速緩存——諸如第二或第三等級數(shù)據(jù)高速緩存。然而,更高等級高速緩存不受如此限制,因為它可以與指令高速緩存相關(guān)聯(lián)或包含指令高速緩存。蹤跡高速緩存一一一種類型的指令高速緩存一一反而可以被耦合在解碼器125之后以儲存最近解碼的蹤跡。此處,指令可能指代宏指令(S卩,由解碼器標(biāo)識的普通指令),其可以解碼成許多微指令(微操作)。
[0021]在描繪的配置中,處理器100還包含片上接口模塊110。以往,存儲器控制器(以下被更詳細(xì)地描述)被包含在處理器100外部的計算系統(tǒng)中。在這個情形下,片上接口 11將與在處理器100外部的裝置(諸如,系統(tǒng)存儲器175、芯片組(經(jīng)常包含用來連接到存儲器175的存儲器控制器集線器以及用來連接外圍裝置的I/O控制器集線器)、存儲器控制器集線器、北橋或其他集成電路)通信。并且在這個情形中,總線105可以包含任何已知的互連,諸如多點分支總線(mult1-drop bus)、點到點互連、串行互連、并行總線、一致性(例如,高速緩存一致性)總線、分層協(xié)議架構(gòu)、差動總線以及GTL總線。
[0022]存儲器175可以專用于處理器100或與在系統(tǒng)中的其他裝置共享。存儲器175的類型的共同示例包含DRAM、SRAM、非易失性存儲器(NV存儲器)和其他已知儲存器裝置。注意到裝置180可以包含耦合到存儲器控制器集線器的圖形加速器、處理器或卡、耦合到I/O控制器集線器的數(shù)據(jù)儲
當(dāng)前第1頁1 2 3 4 5 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
兴海县| 灵石县| 兴化市| 时尚| 安化县| 临高县| 湘西| 东丽区| 盖州市| 富川| 宁明县| 苍梧县| 大悟县| 龙泉市| 长垣县| 沿河| 双流县| 榆中县| 大田县| 安陆市| 综艺| 绥中县| 满洲里市| 宁化县| 台北市| 山阳县| 当雄县| 德庆县| 象山县| 建阳市| 长岛县| 化隆| 鹰潭市| 台东市| 天等县| 泊头市| 道真| 武平县| 工布江达县| 唐山市| 曲麻莱县|