[發明專利]基于指令編碼確定預提取指令在審
| 申請號: | 201680044314.9 | 申請日: | 2016-07-12 |
| 公開(公告)號: | CN107851023A | 公開(公告)日: | 2018-03-27 |
| 發明(設計)人: | 盧克·顏;邁克爾·威廉·莫羅;托馬斯·菲利普·施派爾;詹姆斯·諾里斯·迪芬德爾費爾 | 申請(專利權)人: | 高通股份有限公司 |
| 主分類號: | G06F9/30 | 分類號: | G06F9/30;G06F9/38 |
| 代理公司: | 北京律盟知識產權代理有限責任公司11287 | 代理人: | 楊林勳 |
| 地址: | 美國加利*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 指令 編碼 確定 提取 | ||
技術領域
所公開的方面涉及處理系統中的預提取操作。更具體地說,示范性方面涉及基于由加載指令的編碼的至少一或多個字段形成的識別符,識別用于預提取的候選加載指令。
背景技術
為了滿足不斷增長的處理速度需求,現代處理系統設計包含各種技術以減少指令處理瓶頸。可實施預提取機構,以提前提取指令和數據。因此,可例如在產生對加載數據的需求之前將加載數據(例如,用于加載指令)提取并放置在數據高速緩沖存儲器中。以此方式,當在執行加載指令后接入數據高速緩沖存儲器時,加載數據將已在數據高速緩沖存儲器中,且因此可避免數據高速緩存未中。因此,高效的預提取機構可減少檢修高速緩存未中的成本(例如,就循環時間和電力來說),并通過減少由高速緩存未中產生的瓶頸而改進處理速度。可類似地實施預提取機構,以用于在其需求之前將數據或指令從備份存儲器結構預提取到任何其它存儲器結構(例如,寄存器文件),或任何高速緩沖存儲器(例如,指令高速緩沖存儲器)或高速緩存級中。
常規的預提取機構可使用各種預提取算法來識別可執行預提取操作的候選者(例如,加載指令)。舉例來說,在數據預提取操作的情況下,預提取算法可識別提取數據值的地址當中的模式,或處理器生成數據提取請求的地址當中的模式。舉例來說,預提取算法可在重復執行的過程中識別出,特定加載指令可生成對由規律間隔分離的地址處的數據值的數據提取請求。待提取數據值的兩個鄰近地址之間的此規律間隔被稱為跨距。待針對特定加載信息提取數據值的任何兩個地址可為跨距的整數倍,且可被稱為距離。
更詳細來說,在加載指令執行的第一時刻中,可由處理器生成對第一地址處的數據值的數據提取請求。在加載指令執行的第二時刻中,可生成對第二地址處的數據值的數據提取請求,其中鑒于第一地址,可基于跨距和距離計算出第二地址。因此,預提取機構可在例如預提取表的存儲媒體中存儲預提取信息,例如第一地址(或任何基地址)、跨距、距離等,如所屬領域中已知。在程序執行期間,如果識別出加載指令(例如,在特定時刻處),那么預提取機構可接入預提取表,以計算在加載指令的未來時刻可需要預取數據值(加載數據)的地址(例如,基于存儲其中的預提取信息)。預提取機構接著可預提取用于加載指令的未來時刻的加載數據,并將其放置在數據高速緩沖存儲器(或其它存儲器結構)中。因此,當在程序執行期間識別出加載指令的未來時刻時,對應的加載數據將已在數據高速緩沖存儲器中可用,且因此可避免高速緩存未中。
通常基于加載指令的地址或PC值來識別特定加載指令是否為用于預提取的候選者(例如,識別對應的預提取信息是否存儲在預提取表中)。因此,用于具有特定PC值的加載指令的預提取信息可存儲在預提取表的對應項中,其中可使用加載指令的PC值來編索引并接入所述項。
然而,加載指令的地址或PC值可能并不易于由預提取機構獲得或由預提取機構便利地使用。這是因為在常規的處理系統設計中,預提取機構可物理地接近于用于提取數據的加載/存儲單元而定位,以便允許預提取機構使用加載/存儲單元來預提取用于候選加載指令的數據。具體地說,預提取表(由PC值編索引并接入)可接近于加載/存儲單元而定位。指令(包含加載指令)的PC值可從提取指令的指令提取單元獲得。指令提取單元可物理地更接近于指令高速緩沖存儲器而定位。指令提取單元和加載/存儲單元或預提取表在上面集成有處理系統的半導體裸片或芯片上的位置可分離較大距離。因此,依賴于PC值來識別可執行預提取操作的候選加載指令的預提取機構可能不能容易地接入指令的PC值。為了使預提取機構能夠接入PC值,可需要專門提供長接線或長線網,以將PC值從處理系統的前端(例如,包括指令提取單元)攜載到處理系統的后端(例如,包括加載/存儲單元、預提取機構等)。長接線會帶來延遲并消耗電力。將長接線從前端布線到后端也會帶來設計挑戰以及伴隨的成本和復雜度。
因此,期望避免常規預提取機構中所見的前述限制。
發明內容
本發明的示范性方面涉及用于至少基于加載指令的指令編碼來識別用于預提取操作的候選加載指令的系統和方法。在處理器中提供散列編碼塊,以基于加載指令的至少一或多個字段的函數來形成識別符,其中一或多個字段排除了加載指令的全地址或程序計數器(PC)值。包含以識別符編索引的預提取表的預提取機構被配置成基于識別符來確定加載指令是否為用于預提取加載數據的候選加載指令。所述函數為一或多個字段的一或多個位的散列、串連或其組合。所述字段包括基址寄存器、目標寄存器、立即偏移、偏移寄存器,或加載指令的指令編碼的其它位中的一個或多個。在一些方面中,識別符可進一步是基于加載指令的PC值的位的子集的函數。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于高通股份有限公司,未經高通股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.17sss.com.cn/pat/books/201680044314.9/2.html,轉載請聲明來源鉆瓜專利網。





