• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>
    當前位置: 首頁 > 專利查詢>英特爾公司專利>正文

    用于執行向量打包壓縮和重復的系統、裝置以及方法制造方法及圖紙

    技術編號:10366832 閱讀:114 留言:0更新日期:2014-08-28 10:48
    描述了用于響應于包括第一和第二源向量寄存器操作數、目的地向量寄存器操作數以及操作碼的單個向量打包壓縮和重復指令在計算機處理器中執行向量打包壓縮和重復的系統、裝置以及方法的各實施例。

    【技術實現步驟摘要】
    【國外來華專利技術】專利
    本專利技術的領域一般涉及計算機處理器架構,更具體而言,涉及當執行時導致特定結果的指令。
    技術介紹
    指令集,或指令集架構(ISA)是涉及編程的計算機架構的一部分,并可以包括原生數據類型、指令、寄存器架構、尋址模式、存儲器架構,中斷和異常處理、以及外部輸入和輸出(I/o)。在本文中術語指令一般指宏指令一即被提供給處理器(或指令轉換器,該指令轉換器(例如使用靜態二進制翻譯、包括動態編譯的動態二進制翻譯)翻譯、變形、仿真,或以其他方式將指令轉換成要由處理器處理的一個或多個指令)的指令)以用于執行的指令一而不是微指令或微操作(miCTo-op)—它們是處理器的解碼器解碼宏指令的結果。ISA與微架構不同,微架構是實現指令集的處理器的內部設計。帶有不同的微架構的處理器可以共享共同的指令集。例如,INTEL?奔騰四(Pentium4)處理器、Intel⑩酷睿(Core?)處理器、以及來自加利福尼亞州桑尼威爾(Sunnyvale)的超微半導體有限公司(Advanced Micro Devices, Inc.)的諸多處理器執行幾乎相同版本的x86指令集(在更新的版本中加入了一些擴展),但具有不同的內部設計。例如,ISA的相同寄存器架構在不同的微架構中可使用已知的技術以不同方法來實現,包括專用物理寄存器、使用寄存器重命名機制(諸如,使用寄存器別名表RAT、重排序緩沖器R0B、以及引退寄存器組;使用多映射和寄存器池)的一個或多個動態分配物理寄存器等。除非另作說明,短語寄存器架構、寄存器組,以及寄存器在本文中被用來指代對軟件/編程器以及指令指定寄存器的方式可見。在需要特殊性的情況下,形容詞邏輯、架構,或軟件可見的將用于表示寄存器架構中的寄存器/組,而不同的形容詞將用于指定給定微型架構中的寄存器(例如,物理寄存器、重新排序緩沖器、引退寄存器、寄存器池)。指令集包括一個或多個指令格式。給定指令格式定義各個字段(位的數量、位的位置)以指定要執行的操作(操作碼)以及要對其執行該操作的操作碼等。通過指令模板(或子格式)的定義來進一步分解一些指令格式。例如,給定指令格式的指令模板可被定義為具有指令格式的字段(所包括的字段通常按照相同順序,但是至少一些字段具有不同的位位置,因為包括更少的字段)的不同子集,和/或被定義為具有不同解釋的給定字段。由此,ISA的每一指令使用給定指令格式(并且如果定義,則在該指令格式的指令模板的給定一個中)來表達,并且包括用于指定操作和操作數的字段。例如,示例性ADD指令具有專用操作碼以及包括用于指定該操作碼的操作碼字段和用于選擇操作數的操作數字段(源I/目的地以及源2)的指令格式,并且該ADD指令在指令流中的出現將具有選擇專用操作數的操作數字段中的專用內容??茖W、金融、自動向量化的通用,RMS(識別、挖掘以及合成),以及可視和多媒體應用程序(例如,2D/3D圖形、圖像處理、視頻壓縮/解壓縮、語音識別算法和音頻操縱)常常需要對大量的數據項執行相同操作(被稱為“數據并行性”)。單指令多數據(SIMD)是指使處理器對多個數據項執行操作的一種指令。SMD技術特別適于能夠在邏輯上將寄存器中的位分為若干個固定尺寸的數據元素的處理器,每一個元素都表示單獨的值。例如,256位寄存器中的位可以被指定為四個單獨的64位打包數據元素(四字(Q)尺寸的數據元素),八個單獨的32位打包數據元素(雙字(D)尺寸的數據元素),十六單獨16位打包的數據元素(字(W)尺寸的數據元素),或三十二個單獨的8位數據元素(字節(B)尺寸的數據元素)來被操作的源操作數。這種類型的數據被稱為打包數據類型或向量數據類型,這種數據類型的操作數被稱為打包數據操作數或向量操作數。換句話說,打包數據項或向量指的是打包數據元素的序列,并且打包數據操作數或向量操作數是SMD指令(也稱為打包數據指令或向量指令)的源操作數或目的地操作數。作為示例,一種類型的SIMD指令指定要以垂直方式對兩個源向量操作數執行的單個向量操作,以利用相同數量的數據元素,以相同數據元素順序,生成相同尺寸的目的地向量操作數(也稱為結果向量操作數)。源向量操作數中的數據元素被稱為源數據元素,而目的地向量操作數中的數據元素被稱為目的地或結果數據元素。這些源向量操作數是相同尺寸的,并包含相同寬度的數據元素,如此,它們包含相同數量的數據元素。兩個源向量操作數中的相同位位置中的源數據元素形成數據元素對(也稱為相對應的數據元素;即,每個源操作數的數據元素位置O中的數據元素相對應,每個源操作數的數據元素位置I中的數據元素相對應,等等)。由該SIMD指令所指定的操作分別對這些源數據元素對中的每一對執行,以生成匹配數量的結果數據元素,如此,每一對源數據元素都具有對應的結果數據元素。由于操作是垂直的并且由于結果向量操作數尺寸相同,具有相同數量的數據元素,并且結果數據元素與源向量操作數以相同數據元素順序來存儲,因此,結果數據元素與源向量操作數中它們的對應源數據元素對處于結果向量操作數的相同位位置。除此示例性類型的SMD指令之外,還有各種其他類型的SMD指令(例如,只有一個或具有兩個以上的源向量操作數的;以水平方式操作的;生成不同尺寸的結果向量操作數的,具有不同尺寸的數據元素的,和/或具有不同的數據元素順序的)。應該理解,術語目的地向量操作數(或目的地操作數)被定義為執行由指令所指定的操作的直接結果,包括將該目的地操作數存儲在某一位置(寄存器或在由該指令所指定的存儲器地址),以便它可以作為源操作數由另一指令訪問(由另一指令指定該同一個位置)。諸如由具有包括x86、MMX?、流式 SMD 擴展(SSE)、SSE2、SSE3、SSE4.1 以及 SSE4.2指令的指令集的lnk:h Core?處理器使用的技術之類的SMD技術,在應用程序性能方面實現了大大的改善。已經發布和/或公布了涉及高級向量擴展(AVX) (AVX1和AVX2)且使用向量擴展(VEX)編碼方案的附加SMD擴展集(例如,參見2011年10月的Inid? 64和IA-32架構軟件開發手冊,并且參見2011年6月的Intel?高級向量擴展編程參考)。附圖簡沭本專利技術是通過示例說明的,而不僅局限于各個附圖的圖示,在附圖中,類似的參考標號表示類似的元件,其中:圖1示出用于VPC0MPRESSN的示例性指令的操作的示例性示圖。圖2示出在處理器中使用VPC0MPRESSN指令的實施例。圖3示出處理VPC0MPRESSN指令的方法的實施例。圖4示出用于處理這一指令的示例性偽代碼。圖5示出根據本專利技術的一個實施例的一個有效位向量寫掩碼元素的數量同向量尺寸和數據元素尺寸之間的相關性。圖6A例示了示例性AVX指令格式。圖6B示出來自圖6A的哪些字段構成完整操作碼字段和基礎操作字段。圖6C示出來自圖6A的哪些字段構成寄存器索引字段。圖7A-7B是示出根據本專利技術的實施例的通用向量友好指令格式及其指令模板的框圖。圖8A-D是示出根據本專利技術的實施例的示例性專用向量友好指令格式的框圖。圖9是根據本專利技術的一個實施例的寄存器架構的框圖。圖1OA是示出根據本專利技術的實施例的示例性有序流水線和示例性寄存器重命名、無序發布/執行流水線二者的框圖。圖1OB是示出根據本專利技術的實施例的要包括本文檔來自技高網...

    【技術保護點】
    一種響應于包括第一和第二源向量寄存器操作數、目的地向量寄存器操作數以及操作碼的單個向量打包壓縮和重復指令在計算機處理器中執行向量打包壓縮和重復的方法,所述方法包括以下步驟:執行所述向量打包壓縮和重復指令,以基于第二源向量寄存器的相應打包數據元素位置的值,對于第一源向量寄存器的每個打包數據元素位置確定該打包數據元素位置的打包數據元素要被存儲在目的地向量寄存器中多少次;基于第二源向量寄存器相應數據元素的值的確定,將第一源向量寄存器的打包數據元素位置處的每個打包數據元素以值的次數存儲到目的地向量寄存器中。

    【技術特征摘要】
    【國外來華專利技術】1.一種響應于包括第一和第二源向量寄存器操作數、目的地向量寄存器操作數以及操作碼的單個向量打包壓縮和重復指令在計算機處理器中執行向量打包壓縮和重復的方法,所述方法包括以下步驟: 執行所述向量打包壓縮和重復指令,以基于第二源向量寄存器的相應打包數據元素位置的值,對于第一源向量寄存器的每個打包數據元素位置確定該打包數據元素位置的打包數據元素要被存儲在目的地向量寄存器中多少次; 基于第二源向量寄存器相應數據元素的值的確定,將第一源向量寄存器的打包數據元素位置處的每個打包數據元素以值的次數存儲到目的地向量寄存器中。2.如權利要求1所述的方法,其特征在于,所述存儲在目的地向量寄存器的最低有效打包數據元素位置處開始,且所述打包數據元素被存儲在目的地向量寄存器的連續打包數據元素位置中。3.如權利要求1所述的方法,其特征在于,所述執行和儲存步驟還包括: 確定第二源向量寄存器的最低有效打包數據元素位置的值; 確定該值是否大于O ; 如果該值大于O, 則以值的次數存儲第一源向量寄存器的打包數據元素的相應打包數據元素位置,其中這些打包數據元素在目的地向量寄存器的最低有效打包數據元素位置處開始被連續存儲;以及 如果該值是O,則確定第二源向量寄存器的接下來的最低有效打包數據元素位置的值; 如果接下來的最低有效數據元素位置的值大于O,則以值的次數存儲第一源向量寄存器的打包數據元素的相應打包數據元素位置,其中這些打包數據元素在目的地向量寄存器的先前未被寫入的最低有效打包數據元素位置處開始被連續存儲。4.如權利要求3所述的方法,其特征在于,還包括: 重復所述確定和存儲步驟直到第二源向量寄存器的所有打包數據元素位置的值已經被確定且是適當的。5.如權利要求4所述的方法,其特征在于,還包括: 在第一源向量寄存器的所有打包數據元素位置已經被寫入目的地向量寄存器之后,將預設值寫入目的地寄存器的所有未使用的打包數據元素位置。6.如權利要求5所述的方法,其特征在于,所述預設值是全為I的值。7.如權利要求1所述的方法,其特征在于,當目的地向量寄存器的所有打包數據元素位置已經被寫入,但仍存在來自第一源向量寄存器的要寫入目的地向量寄存器的打包數據元素時,提供編程器可見的異常。8.如權利要求1所述的方法,其特征在于,所述向量寄存器的尺寸均是128位、256位或512位的相同尺寸。9.一種制品,包括: 具有存儲于其上的指令的出現的有形機器可讀存儲介質,其中所述指令的格式指定第一和第二向量寄存器作為其源操作數并且指定單個向量寄存器作為其目的地,并且其中所述指令格式包括操作碼,該操作碼指令機器響應于單個指令的單次出現導致:基于第二源向量寄存器的相應打包數據元素位置的值,對于第一源向量寄存器的每個打包數據元素位置確定該打包數據元素位置處的打包數據元素要被存儲在目的地向量寄存器中多少次,基于第二源向量寄存器相應數據元素的值的確定,將第...

    【專利技術屬性】
    技術研發人員:E·烏爾德阿邁德瓦爾,T·威爾豪姆
    申請(專利權)人:英特爾公司
    類型:發明
    國別省市:美國;US

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 蜜色欲多人AV久久无码| 亚洲av无码成h人动漫无遮挡| 韩日美无码精品无码| 成人无码A区在线观看视频| 久久久久久久无码高潮| 国产AV无码专区亚洲AV蜜芽 | 亚洲中文无码永久免费| 亚洲AV无码成H人在线观看| 免费无码VA一区二区三区| 亚洲成?v人片天堂网无码| 免费无遮挡无码永久视频| 国产网红主播无码精品| 亚洲aⅴ天堂av天堂无码麻豆| 亚洲成a人片在线观看无码 | 亚洲中文字幕无码专区| 久久人妻无码中文字幕| 天堂Aⅴ无码一区二区三区| 精品久久久久久无码中文字幕漫画| 人妻av无码一区二区三区| 国内精品无码一区二区三区| 成人麻豆日韩在无码视频| 亚洲精品久久久久无码AV片软件| 亚洲av永久无码精品国产精品| 亚洲国产精品无码久久九九| 亚洲精品无码av天堂| 日韩精品无码Av一区二区| 精品少妇人妻AV无码专区不卡 | 无码少妇一区二区三区芒果| 免费A级毛片无码专区| 无码国产精品一区二区免费16| 中文字幕无码乱人伦| 日日摸夜夜爽无码毛片精选| 国产精品无码国模私拍视频 | 亚洲午夜无码毛片av久久京东热| 亚洲国产综合无码一区| 久久午夜无码免费| 久久无码人妻一区二区三区午夜| 亚洲AV中文无码字幕色三 | 人妻丰满熟AV无码区HD| 无码视频免费一区二三区| 国产一区二区三区无码免费|