[發明專利]用于微處理器的轉譯地址高速緩存有效
| 申請號: | 201310079112.6 | 申請日: | 2013-03-13 |
| 公開(公告)號: | CN103309644A | 公開(公告)日: | 2013-09-18 |
| 發明(設計)人: | 羅斯·澤格爾肯;亞歷山大·克萊貝爾;納瑟·塔克;戴維·鄧恩 | 申請(專利權)人: | 輝達公司 |
| 主分類號: | G06F9/305 | 分類號: | G06F9/305 |
| 代理公司: | 北京市磐華律師事務所 11336 | 代理人: | 徐丁峰;魏寧 |
| 地址: | 美國加利*** | 國省代碼: | 美國;US |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 微處理器 轉譯 地址 高速緩存 | ||
背景技術
可在指令集架構(ISA)和本地(native)架構之間轉譯用于微處理器的架構級指令。在一些微處理器中,ISA指令的軟件優化可比那些軟件優化所基于的ISA指令相對更有效地執行。一些過去的方法對軟件優化加以鏈接以從一個軟件優化到另一個軟件優化來傳遞控制。然而,因為可能難以確定間接分支的目標,所以這樣的方法可能受到經間接分支的過程的挑戰。
附圖說明
圖1示意性示出了根據本公開的實施例的微處理器。
圖2示意性示出了根據本公開的實施例的轉譯地址高速緩存。
圖3A示出了根據本公開的實施例的、從指令高速緩存獲取指令和確定用于指令的替代版本是否存儲在指令高速緩存中的方法的流程圖的一部分。
圖3B示出了圖3A中所示出的流程圖的另一部分。
圖3C示出了圖3A和圖3B中所示出的流程圖的另一部分。
圖4示意性示出了根據本公開的實施例的對用于指令的線性地址進行散列以生成用于該線性地址的散列(hash)索引和消歧標簽的方法。
圖5示意性示出了根據本公開的實施例的轉譯地址高速緩存條目。
具體實施方式
在現代微處理器中,可在諸如高級RISC機器(ARM)架構或x86架構的源指令集架構(ISA)和取得與該源相同可覺察功能性的替代ISA之間轉譯架構級指令。例如,源ISA的一個或多個指令的集合可轉譯為實施與該源ISA相同功能的本地架構的一個或多個微操作。在一些設定中,本地微操作可提供相對于源ISA指令的增強的或優化的性能。
一些過去的方法試圖對源指令的軟件優化進行鏈接使得控制經由直接本地分支從一個軟件優化傳遞到另一個軟件優化。然而,這樣的方法可能受到經分支的過程的挑戰。因為在程序執行期間分支源可以是動態的,因此軟件優化之間的鏈向交遞可能不可行。例如,如果間接分支發生,那么分支的不確定目標可能使得難以查明在創建優化的時候應該檢索哪個軟件優化。因此,當從潛在的數千候選優化來確定分支和用于該分支的軟件優化時微處理器可能停滯。
因此,本文所公開的各種實施例與獲取源信息和源信息的替代版本相關,所述源信息的替代版本在可接受公差內(例如,在架構上可覺察效應的可接受公差內)達到源信息的相同可覺察功能性(本文以相同功能性(the?same?functionality)來指代)。應該理解,幾乎可采用任何合適的源信息和其任何替代版本,而不脫離本公開的范圍。在一些實施例中,源可包括諸如用于ISA架構的指令的指令。補充或者取代指令,源信息可包括源數據,并且替代版本可包括源數據的可替換的形式或版本。同樣地,應該理解,將源轉換為其替代版本(例如,軟件方法和/或硬件方法)的任何合適的方式均可視為是在本公開的范圍內。出于示例性目的,盡管這樣的實施例不是限制性的,但是本文所呈現的描述和圖形分別將源指令和源指令的轉譯指代為源信息和源信息的替代版本。
一個示范性方法包括,一旦被引導以檢索指令時,就對用于該指令的地址進行散列使得可確定是否存在用于該指令的替代版本。實施散列以確定是否存在達到相同功能性的指令的替代版本,諸如本地轉譯(例如,在源指令集架構和本地微操作集架構之間的、用于可由微處理器所獲取以用于執行的各種指令的轉譯)。該示范性方法進一步包括,如果散列導致確定這樣的替代版本存在,則中止(abort)檢索指令并且檢索和執行替代版本。
本文的論述將頻繁提到“檢索(retrieving)”指令以及如果存在某些條件,那么隨后中止該檢索。在一些實施例中,“檢索”指令可包括對指令進行獲取。進一步地,當這樣的中止發生時,則檢索過程終止。終止典型性地在檢索過程完成之前發生。例如,在一個場景中,中止檢索可在當正在檢索用于指令的物理地址時發生。在另一個場景中,中止檢索可在檢索用于指令的物理地址之后但在從存儲器檢索該指令之前發生。在檢索過程完成之前中止檢索可節省花費在訪問和從存儲器檢索源的時間。應該理解,如本文所使用的,檢索不限于獲取場景,其中獲取典型性地在解碼之前完成。例如,可在解碼期間、在解碼之前或在任何合適的點檢索但中止指令。
對于在源信息和該信息的經轉譯版本之間進行映射和轉譯而言存在各種不同的可能性。通過確定替代版本是否存在并且中止檢索指令,例如,ISA指令,如果替代版本的確存在,那么微處理器通過避免解碼操作可相對于解碼源ISA指令的微處理器提供增強的性能。附加的性能增強可在設定中實現,在該設定中替代版本通過對操作的改變來提供經優化的性能,其允許替代版本比源ISA指令更快地進行執行。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于輝達公司,未經輝達公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310079112.6/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:顯示控制設備和顯示控制方法
- 下一篇:打印系統及其方法





