用于執(zhí)行點積運算的指令和邏輯的制作方法

            文檔序號:6335423閱讀:477來源:國知局
            專利名稱:用于執(zhí)行點積運算的指令和邏輯的制作方法
            技術(shù)領(lǐng)域
            本發(fā)明涉及執(zhí)行數(shù)學運算的處理裝置及相關(guān)軟件和軟件序列的領(lǐng)域。
            背景技術(shù)
            計算機系統(tǒng)已經(jīng)越來越深入我們的社會。計算機的處理能力已經(jīng)提高了各種職業(yè) 的工人的效率和生產(chǎn)力。由于購買和擁有計算機的費用持續(xù)下降,所以越來越多的消費者 能夠利用更新、更快的機器。此外,許多人由于使用自由而樂于使用筆記本電腦。移動計算 機使用戶可在離開辦公室或旅行時輕松地傳輸他們的數(shù)據(jù)以及利用所述移動計算機進行 工作。這種情況在營銷人員、公司管理人員甚至學生中是常見的。隨著處理器技術(shù)的進步,還產(chǎn)生了更新的軟件代碼來在具有這些處理器的機器上 運行。用戶一般預期并要求來自他們的計算機的更高性能,而不管所使用的軟件類型。從 處理器內(nèi)實際執(zhí)行的指令和操作的種類中可能產(chǎn)生一個這樣的問題。根據(jù)操作的復雜度和 /或所需電路的類型,某些類型的操作需要更多時間來完成。這提供了優(yōu)化在處理器內(nèi)部執(zhí) 行某些復雜操作的方式的機會。十多年來,媒體應用推動了微處理器的發(fā)展。實際上,媒體應用推動了近年來的大 多數(shù)計算升級。這些升級主要在消費者方面發(fā)生,但是,為了娛樂性增強的教育和通信目 的,在企業(yè)方面也看到顯著的進步。然而,未來的媒體應用需要更高的計算要求。因此,將 來的個人計算體驗在視聽效果方面將更為豐富,并且更容易使用,更重要的是,計算將與通 信融合。因此,圖像的顯示以及統(tǒng)稱為內(nèi)容的音頻和視頻數(shù)據(jù)的回放已經(jīng)逐漸成為當前計 算設備的流行應用。濾波和卷積操作是對內(nèi)容數(shù)據(jù)、如圖像音頻和視頻數(shù)據(jù)執(zhí)行的最常見 操作的一部分。這類操作是計算密集的,但是提供可通過采用各種數(shù)據(jù)存儲設備(如單指 令多數(shù)據(jù)(SIMD)寄存器)的有效實現(xiàn)來利用的高級數(shù)據(jù)并行性。多個當前的體系結(jié)構(gòu)還 需要多個操作、指令或子指令(通常稱作“微操作”或“μop”)來對多個操作數(shù)執(zhí)行各種數(shù) 學運算,由此減小吞吐量并增加執(zhí)行數(shù)學運算所需的時鐘周期數(shù)量。例如,可能需要由多個指令組成的指令序列來執(zhí)行產(chǎn)生點積所必需的一個或多個 運算,包括將由處理裝置、系統(tǒng)或計算機程序內(nèi)的各種數(shù)據(jù)類型所表示的兩個或兩個以上 數(shù)值之積相加。但是,這類現(xiàn)有技術(shù)可能需要許多處理周期,并且可能使處理器或系統(tǒng)消耗 不必要的功率以產(chǎn)生點積。此外,一些現(xiàn)有技術(shù)可能在可進行操作的操作數(shù)的數(shù)據(jù)類型方 面受到限制。

            發(fā)明內(nèi)容
            根據(jù)本發(fā)明的一個方面,提供了一種已在其中存儲了指令的機器可讀介質(zhì),所述
            3指令在由機器執(zhí)行時,使所述機器執(zhí)行包括以下步驟的方法確定各具有第一數(shù)據(jù)類型的 多個打包值的至少兩個操作數(shù)的點積結(jié)果;存儲所述點積結(jié)果。根據(jù)本發(fā)明的另一方面,提供了一種裝置,包括第一邏輯,對第一數(shù)據(jù)類型的至 少兩個打包操作數(shù)執(zhí)行單指令多數(shù)據(jù)點積指令。根據(jù)本發(fā)明的又一方面,提供了一種系統(tǒng),包括第一存儲器,存儲單指令多數(shù)據(jù) 點積指令;處理器,耦合到所述第一存儲器以執(zhí)行所述單指令多數(shù)據(jù)點積指令。根據(jù)本發(fā)明的再一方面,提供了一種方法,包括將第一打包操作數(shù)的第一數(shù)據(jù)元 素與第二打包操作數(shù)的第一數(shù)據(jù)元素相乘,以產(chǎn)生第一乘積;將所述第一打包操作數(shù)的第 二數(shù)據(jù)元素與所述第二打包操作數(shù)的第二數(shù)據(jù)元素相乘,以產(chǎn)生第二乘積;將所述第一乘 積與所述第二乘積相加,以產(chǎn)生點積結(jié)果。此外,本發(fā)明還提供了一種處理器,包括源寄存器,存儲包括第一數(shù)據(jù)值和第二 數(shù)據(jù)值的第一打包操作數(shù);目標寄存器,存儲包括第三數(shù)據(jù)值和第四數(shù)據(jù)值的第二打包操 作數(shù);根據(jù)所述點積指令所指示的控制值來執(zhí)行單指令多數(shù)據(jù)點積指令的邏輯,所述邏輯 包括將所述第一數(shù)據(jù)值和第三數(shù)據(jù)值相乘以產(chǎn)生第一乘積的第一乘法器、將所述第二數(shù)據(jù) 值和第四數(shù)據(jù)值相乘以產(chǎn)生第二乘積的第二乘法器,所述邏輯還包括將所述第一乘積和第 二乘積相加以產(chǎn)生至少一個和數(shù)的至少一個加法器。


            通過附圖、作為實例而非限制地來說明本發(fā)明圖IA是根據(jù)本發(fā)明的一個實施例采用處理器組成的計算機系統(tǒng)的框圖,所述處 理器包括執(zhí)行點積操作的指令的執(zhí)行單元;圖IB是根據(jù)本發(fā)明的一個備選實施例的另一個示范性計算機系統(tǒng)的框圖;圖IC是根據(jù)本發(fā)明的另一個備選實施例的再一個示范性計算機系統(tǒng)的框圖;圖2是根據(jù)本發(fā)明的一個實施例的處理器的微體系結(jié)構(gòu)的框圖,所述處理器包括 執(zhí)行點積操作的邏輯電路;圖3A示出根據(jù)本發(fā)明的一個實施例的多媒體寄存器中的各種打包(packed)數(shù)據(jù) 類型表示;圖3B示出根據(jù)一備選實施例的打包數(shù)據(jù)類型;圖3C示出根據(jù)本發(fā)明的一個實施例的多媒體寄存器中的各種有符號和無符號打 包數(shù)據(jù)類型表示;圖3D示出一種操作編碼(操作碼)格式的一個實施例;圖3E示出一種備選操作編碼(操作碼)格式;圖3F示出又一種備選操作編碼格式;圖4是根據(jù)本發(fā)明對打包數(shù)據(jù)操作數(shù)執(zhí)行點積操作的邏輯(logic)的一個實施例 的框圖;圖5A是根據(jù)本發(fā)明的一個實施例對單精度打包數(shù)據(jù)操作數(shù)執(zhí)行點積操作的邏輯 的框圖;圖5B是根據(jù)本發(fā)明的一個實施例對雙精度打包數(shù)據(jù)操作數(shù)執(zhí)行點積操作的邏輯 的框4
            圖6A是根據(jù)本發(fā)明的一個實施例用于執(zhí)行點積操作的電路的框圖;圖6B是根據(jù)本發(fā)明的另一個實施例用于執(zhí)行點積操作的電路的框圖;圖7是根據(jù)一個實施例對數(shù)據(jù)進行打包符號操作的示意圖。圖7A是根據(jù)一個實施例可通過執(zhí)行DPPS指令來執(zhí)行的操作的偽碼表示;圖7B是根據(jù)一個實施例可通過執(zhí)行DPPD指令來執(zhí)行的操作的偽碼表示。
            具體實施例方式以下說明描述了在處理裝置、計算機系統(tǒng)或軟件程序中執(zhí)行點積操作的一種技術(shù) 的實施例。在以下描述中,闡述諸如處理器類型、微體系結(jié)構(gòu)條件、事件、啟用機制等的大量 具體細節(jié),以提供對本發(fā)明的充分理解。然而,本領(lǐng)域的技術(shù)人員會理解,沒有這類具體細 節(jié),也可實施本發(fā)明。另外,沒有詳細說明一些公知的結(jié)構(gòu)、電路等,以免不必要地影響對本 發(fā)明的理解。雖然參照處理器來描述以下實施例,但是,其它實施例適用于其它類型的集成電 路和邏輯設備。本發(fā)明的相同技術(shù)和理論可容易地應用到可獲益于較高流水線吞吐量和改 進的性能的其它類型的電路或半導體器件。本發(fā)明的理論適用于執(zhí)行數(shù)據(jù)操作的任何處理 器或機器。但是,本發(fā)明不限于執(zhí)行256位、128位、64位、32位或16位數(shù)據(jù)操作的處理器 或機器,而是可適用于其中需要操縱打包數(shù)據(jù)的任何處理器和機器。為便于說明,以下描述中闡述了大量具體細節(jié),以便提供對本發(fā)明的充分理解。但 是,本領(lǐng)域的技術(shù)人員會理解,這些具體細節(jié)不是實施本發(fā)明所必需的。在其它情況下,沒 有對公知的電氣結(jié)構(gòu)和電路進行特別詳細的闡述,以免不必要地影響對本發(fā)明的理解。另 外,為了說明的目的,以下描述提供實例,以及附圖示出各種實例。但是,這些實例不應當以 限制的意義來理解,因為它們僅旨在提供本發(fā)明的實例,而不是提供本發(fā)明的所有可能實 現(xiàn)的窮盡列表。雖然以下實例在執(zhí)行單元和邏輯電路的上下文中來描述指令處理和分配,但是, 本發(fā)明的其它實施例可通過軟件來實現(xiàn)。在一個實施例中,本發(fā)明的方法以機器可執(zhí)行指 令來體現(xiàn)。這些指令可用于使采用指令編程的通用或?qū)S锰幚砥鲌?zhí)行本發(fā)明的步驟。本 發(fā)明可作為計算機程序產(chǎn)品或軟件來提供,它可包括其中已存儲指令的機器或計算機可讀 介質(zhì),這些指令可用于對計算機(或其它電子設備)編程以執(zhí)行根據(jù)本發(fā)明的過程。作為 備選的方案,本發(fā)明的步驟可由包含用于執(zhí)行所述步驟的硬連線邏輯的特定硬件部件來執(zhí) 行,或者由已編程計算機部件和定制硬件部件的任何組合來執(zhí)行。這種軟件可存儲在系統(tǒng) 中的存儲器內(nèi)。類似地,代碼可經(jīng)由網(wǎng)絡或者通過其它計算機可讀媒體來分配。因此,機器可讀介質(zhì)可包括用于存儲或傳輸機器(例如計算機)可讀形式的信息 的任何機構(gòu),包括但不限于軟盤、光盤、光盤只讀存儲器(CD-ROM)以及磁光盤、只讀存儲器 (ROM)、隨機存取存儲器(RAM)、可擦除可編程只讀存儲器(EPROM)、電可擦除可編程只讀存 儲器(EEPROM)、磁或光卡、閃存(flash memory)、通過因特網(wǎng)的傳輸、電、光、聲或其它形式 的傳播信號(例如載波、紅外信號、數(shù)字信號等)等。相應地,計算機可讀介質(zhì)包括適于存儲 或傳輸機器(如計算機)可讀形式的電子指令或信息的任何類型的媒體/機器可讀介質(zhì)。 此外,本發(fā)明還可作為計算機程序產(chǎn)品來下載。因此,程序可從遠程計算機(例如服務器) 傳送到請求計算機(例如客戶機)。程序的傳送可通過電、光、聲或者在載波或其它傳播介
            5質(zhì)中包含的其它形式的數(shù)據(jù)信號經(jīng)由通信鏈路(例如調(diào)制解調(diào)器、網(wǎng)絡連接等)來進行。設計可能經(jīng)過從創(chuàng)建到仿真(simulation)直到制造的各種階段。表示設計的數(shù) 據(jù)可通過多種方式來表示設計。首先,如在仿真中有用的那樣,硬件可采用硬件描述語言 或者另一種功能描述語言來表示。另外,采用邏輯和/或晶體管門電路的電路級模型可在 設計過程的某些階段產(chǎn)生。此外,在某個階段,大部分設計達到表示硬件模型中的各種設備 的物理設置的數(shù)據(jù)級。在采用常規(guī)半導體制造技術(shù)的情況下,表示硬件模型的數(shù)據(jù)可以是 指定用于生產(chǎn)集成電路的掩模的不同掩模層上的各種特征是否存在的數(shù)據(jù)。在該設計的任 何表示中,數(shù)據(jù)可存儲在任何形式的機器可讀介質(zhì)中。經(jīng)調(diào)制或者以其它方式產(chǎn)生來傳輸 這種信息的光或電波、存儲器或者磁或光存儲裝置(storage)(如磁盤)可以是機器可讀介 質(zhì)。這些介質(zhì)的任一種可“攜帶”或“指示”設計或軟件信息。在傳輸指示或攜帶代碼或設 計的電載波達到執(zhí)行電信號的復制、緩沖或重傳的程度時,就制作了新的副本。因此,通信 提供商或網(wǎng)絡提供商可能制作體現(xiàn)本發(fā)明的技術(shù)的產(chǎn)品(載波)的復制品。在現(xiàn)代處理器中,多個不同的執(zhí)行單元用來處理和執(zhí)行各種代碼及指令。并非所 有指令都同等地創(chuàng)建,因為一些指令會較快地完成,而其它指令則耗用大量時鐘周期。指令 的吞吐量越大,處理器的整體性能就越好。因此,讓許多指令盡可能快地執(zhí)行是有利的。但 是,存在具有較高復雜度并且在執(zhí)行時間和處理器資源方面要求更多的某些指令。例如存 在浮點指令、加載/存儲操作、數(shù)據(jù)移動等。隨著越來越多的計算機系統(tǒng)用于互聯(lián)網(wǎng)和多媒體應用,隨時間引入了附加處理器 支持。例如,單指令多數(shù)據(jù)(SIMD)整數(shù)/浮點指令和流式(streaming) SIMD擴展(SSE)是 減少執(zhí)行特定程序任務所需的指令的總體數(shù)量的指令,它又可降低功耗。通過并行地對多 個數(shù)據(jù)元素進行操作,這些指令可加速軟件執(zhí)行。因此,可在包括視頻、語音和圖像/照片 處理的大量應用中實現(xiàn)性能增益。微處理器以及相似類型的邏輯電路中的SIMD指令的實 現(xiàn)通常涉及多個問題。此外,SIMD操作的復雜度通常導致需要附加電路,以正確地處理和 操縱數(shù)據(jù)。當前,SIMD點積指令不可用。在不存在SIMD點積指令的情況下,在諸如音頻/視 頻壓縮、處理和操縱之類的應用中可能需要大量指令和數(shù)據(jù)寄存器來實現(xiàn)同樣的結(jié)果。因 此,根據(jù)本發(fā)明的實施例的至少一個點積指令可減少代碼開銷和資源要求。本發(fā)明的實施 例提供一種實現(xiàn)作為使用SIMD相關(guān)硬件的算法的點積操作的方式。當前,對SIMD寄存器 中的數(shù)據(jù)執(zhí)行點積操作有些困難且冗長。一些算法需要比執(zhí)行那些操作的指令的實際數(shù)量 更多的指令來設置用于算術(shù)運算的數(shù)據(jù)。通過實現(xiàn)根據(jù)本發(fā)明的實施例的點積操作,實現(xiàn) 點積處理所需的指令數(shù)量可顯著減少。本發(fā)明的實施例包括用于實現(xiàn)點積操作的指令。點積操作一般包括將至少兩個值 相乘并將該乘積加到至少兩個其它值的乘積上??蓪νㄓ命c積算法進行其它變更,包括將 各個點積操作的結(jié)果相加以產(chǎn)生另一個點積。例如,根據(jù)一個實施例,應用于數(shù)據(jù)元素的點 積操作可一般表示為DESTl — SRC1*SRC2 ;DEST2 — SRC3*SRC4 ;DEST3 — DEST1+DEST2 ;對于打包SIMD數(shù)據(jù)操作數(shù),該流程可應用于各個操作數(shù)的各個數(shù)據(jù)元素。
            在以上流程中,“DEST”和“SRC”是表示相應數(shù)據(jù)或操作的源和目標(destination) 的一般術(shù)語。在一些實施例中,它們可通過具有不同于所述的名稱或功能的寄存器、存儲器 或其它存儲區(qū)來實現(xiàn)。例如,在一個實施例中,DESTl和DEST2可以是第一和第二暫時存儲 區(qū)(例如“TEMPI和“TEMP2”寄存器),SRCl和SRC3可以是第一和第二目標存儲區(qū)(例如 “DEST1”和“DEST2”寄存器)等。在其它實施例中,SRC和DEST存儲區(qū)的兩個或兩個以上可 對應于相同存儲區(qū)(例如SIMD寄存器)中的不同數(shù)據(jù)存儲單元(data storage element) 0 此外,在一個實施例中,點積操作可產(chǎn)生通過上述一般流程所產(chǎn)生的點積之和。圖IA是根據(jù)本發(fā)明的一個實施例采用處理器組成的示范性計算機系統(tǒng)的框圖, 所述處理器包括執(zhí)行點積操作的指令的執(zhí)行單元。根據(jù)本發(fā)明,例如在本文所描述的實施 例中,系統(tǒng)100包括采用包含執(zhí)行用于處理數(shù)據(jù)的算法的邏輯的執(zhí)行單元的部件,例如處 理器 102。系統(tǒng) 100 表示基于可向 Intel Corporation(Snata Clara,California)購買的 PENTIUM III、PENTIUM 4、Xeon 、Itanium 、XScale 和 / 或 StrongARM 微處理器的處 理系統(tǒng),但是也可采用其它系統(tǒng)(包括具有其它微處理器的個人計算機(PC)、工程工作站、 機頂盒等)。在一個實施例中,示例系統(tǒng)100可運行可向Microsoft Corporation (Redmond, Washington)購買的一種版本的WINDOWS 操作系統(tǒng),但也可采用其它操作系統(tǒng)(例如UNIT 和Linux)、嵌入式軟件和/或圖形用戶接口。因此,本發(fā)明的實施例不限于硬件電路和軟件 的任何特定結(jié)合。實施例不限于計算機系統(tǒng)。本發(fā)明的備選實施例可用于其它設備(如手持設備) 和嵌入式應用。手持設備的一些實例包括蜂窩電話、因特網(wǎng)協(xié)議裝置、數(shù)字照相機、個人數(shù) 字助理(PDA)和手持PC。嵌入式應用可包括微控制器、數(shù)字信號處理器(DSP)、片上系統(tǒng)、 網(wǎng)絡計算機(NetPC)、機頂盒、網(wǎng)絡集線器、廣域網(wǎng)(WAN)交換機或者對操作數(shù)執(zhí)行點積操 作的任何其它系統(tǒng)。此外,已經(jīng)實現(xiàn)一些體系結(jié)構(gòu)以使指令能夠同時對若干數(shù)據(jù)進行操作, 從而提高多媒體應用的效率。隨著數(shù)據(jù)的類型和容量增加,必須增強計算機及其處理器以 通過更有效的方法來操縱數(shù)據(jù)。圖IA是根據(jù)本發(fā)明的一個實施例采用處理器102組成的計算機系統(tǒng)100的框圖, 所述處理器包括一個或多個執(zhí)行單元108來執(zhí)行計算一個或多個操作數(shù)中的數(shù)據(jù)元素的 點積的算法。一個實施例可在單處理器臺式或服務器系統(tǒng)的上下文中來描述,但是備選實 施例可包含在多處理器系統(tǒng)中。系統(tǒng)100是中心(hub)體系結(jié)構(gòu)的一實例。計算機系統(tǒng) 100包括處理數(shù)據(jù)信號的處理器102。處理器102可以是復雜指令集計算機(CISC)微處理 器、簡化指令集計算(RISC)微處理器、超長指令字(VLIW)微處理器、實現(xiàn)指令集的組合的 處理器或者例如數(shù)字信號處理器之類的任何其它處理器設備。處理器102耦合到可在處理 器102與系統(tǒng)100中的其它部件之間傳輸數(shù)據(jù)信號的處理器總線110。系統(tǒng)100的元件執(zhí) 行本領(lǐng)域的技術(shù)人員公知的常規(guī)功能。在一個實施例中,處理器102包括第一級(Li)內(nèi)部高速緩沖存儲器104。根據(jù)該 體系結(jié)構(gòu),處理器102可具有單個內(nèi)部高速緩存或多級內(nèi)部高速緩存。作為備選的方案,在 另一個實施例中,高速緩沖存儲器可位于處理器102的外部。根據(jù)具體實現(xiàn)和需要,其它實 施例也可包括內(nèi)部和外部兩種高速緩存的組合。寄存器文件(register file) 106可在包 括整數(shù)寄存器、浮點寄存器、狀態(tài)寄存器和指令指針寄存器的各種寄存器中存儲不同類型 的數(shù)據(jù)。
            包含執(zhí)行整數(shù)和浮點運算的邏輯的執(zhí)行單元108也位于處理器102中。處理器 102還包括存儲某些宏指令的微碼的微碼(μ code)ROM。對于該實施例,執(zhí)行單元108包括 處理打包指令集109的邏輯。在一個實施例中,打包指令集109包括用于計算多個操作數(shù) 的點積的打包點積指令。通過在通用處理器102的指令集中包含打包指令集109,結(jié)合執(zhí) 行指令的相關(guān)電路,許多多媒體應用使用的操作可采用通用處理器102中的打包數(shù)據(jù)來執(zhí) 行。因此,通過采用處理器的數(shù)據(jù)總線的全寬度(full width)對打包數(shù)據(jù)執(zhí)行操作,可加 速并且更有效地執(zhí)行許多多媒體應用。這可消除通過處理器的數(shù)據(jù)總線來傳送較小的數(shù)據(jù) 單元以一次對一個數(shù)據(jù)元素執(zhí)行一個或多個操作的需要。執(zhí)行單元108的備選實施例也可用于微控制器、嵌入式處理器、圖形設備、DSP和 其它類型的邏輯電路。系統(tǒng)100包括存儲器120。存儲器120可以是動態(tài)隨機存取存儲器 (DRAM)設備、靜態(tài)隨機存取存儲器(SRAM)設備、閃存設備或者其它存儲設備。存儲器120 可存儲通過可由處理器102執(zhí)行的數(shù)據(jù)信號所表示的指令和/或數(shù)據(jù)。系統(tǒng)邏輯芯片116耦合到處理器總線110和存儲器120。所述實施例中的系統(tǒng)邏 輯芯片116是存儲器控制器中心(memory controller hub) (MCH)。處理器102可經(jīng)由處理 器總線110與MCH 116通信。MCH 116為指令和數(shù)據(jù)存儲以及為圖形命令、數(shù)據(jù)和文本的 存儲提供到存儲器120的高帶寬存儲器通路118。MCH 116引導處理器102、存儲器120和 系統(tǒng)100中的其它部件之間的數(shù)據(jù)信號,并且作為處理器總線110、存儲器120和系統(tǒng)1/0 122之間的數(shù)據(jù)信號的橋梁。在一些實施例中,系統(tǒng)邏輯芯片116可提供用于耦合到圖形控 制器112的圖形端口。MCH 116通過存儲器接口 118耦合到存儲器120。圖形卡112通過 加速圖形端口(AGP)互連114耦合到MCH 116。系統(tǒng)100采用專有中心(hub)接口總線122將MCH 116耦合到1/0控制器中心 (ICH) 130。ICH 130通過本地1/0總線提供對一些1/0裝置的直接連接。本地1/0總線是 用于將外圍設備連接到存儲器120、芯片組和處理器102的高速1/0總線。一些實例是音 頻控制器、固件中心(閃速BIOS) 128、無線收發(fā)器126、數(shù)據(jù)存儲設備124、包含用戶輸入和 鍵盤接口的傳統(tǒng)1/0控制器、諸如通用串行總線(USB)之類的串行擴展端口和網(wǎng)絡控制器 134。數(shù)據(jù)存儲設備124可包括硬盤驅(qū)動器、軟盤驅(qū)動器、⑶-ROM設備、閃存設備或者其它 海量存儲設備。對于系統(tǒng)的另一個實施例,執(zhí)行具有點積指令的算法的執(zhí)行單元可與片上系統(tǒng)配 合使用。片上系統(tǒng)的一個實施例包括處理器和存儲器。一種這樣的系統(tǒng)的存儲器是閃存。 閃存可與處理器和其它系統(tǒng)部件位于相同的管芯上。另外,諸如存儲控制器或圖形控制器 等其它邏輯塊也可設置在片上系統(tǒng)中。圖IB示出實現(xiàn)本發(fā)明的一個實施例的原理的數(shù)據(jù)處理系統(tǒng)140。本領(lǐng)域的技術(shù)人 員容易理解,本文所述的實施例可與備選處理系統(tǒng)配合使用,而不會背離本發(fā)明的范圍。計算機系統(tǒng)140包括能夠執(zhí)行包括點積操作的SIMD操作的處理核心159。對于一 個實施例,處理核心159表示任何類型的體系結(jié)構(gòu)的處理單元,包括但不限于CISC、RISC或 VLIW類型的體系結(jié)構(gòu)。處理核心159還可適于以一種或多種加工技術(shù)制造,并且通過在機 器可讀媒體上充分詳細地表示,可適合于促進所述制造。處理核心159包括執(zhí)行單元142、寄存器文件集合145和解碼器144。處理核心 159還包括對本發(fā)明的理解不必要的附加電路(圖中未示出)。執(zhí)行單元142用于執(zhí)行處理核心159所接收的指令。除了識別典型的處理器指令之外,執(zhí)行單元142還可識別用于 對打包數(shù)據(jù)格式執(zhí)行操作的打包指令集143中的指令。打包指令集143包括用于支持點積 操作的指令,并且還可包括其它打包指令。執(zhí)行單元142通過內(nèi)部總線耦合到寄存器文件 145。寄存器文件145表示處理核心159上用于存儲包括數(shù)據(jù)在內(nèi)的信息的存儲區(qū)。如前 所述,會理解到,用于存儲打包數(shù)據(jù)的存儲區(qū)不是關(guān)鍵的。執(zhí)行單元142耦合到解碼器144。 解碼器144用于將處理核心159所接收的指令解碼為控制信號和/或微碼入口點(entry point)。響應這些控制信號和/或微碼入口點,執(zhí)行單元142執(zhí)行適當?shù)牟僮鳌L幚砗诵?59與總線141耦合,用于與各種其它系統(tǒng)設備進行通信,它們例如可 包括但不限于同步動態(tài)隨機存取存儲器(SDRAM)控制裝置(control) 146、靜態(tài)隨機存取 存儲器(SDRAM)控制裝置147、突發(fā)(burst)閃存接口 148、個人計算機存儲卡國際聯(lián)盟 (PCMCIA)/壓縮閃存(compact flash) (CF)卡控制裝置149、液晶顯示器(LCD)控制裝置 150、直接存儲器存取(DMA)控制器151以及備選總線主接口 152。在一個實施例中,數(shù)據(jù) 處理系統(tǒng)140還可包括I/O橋接器154,用于經(jīng)由I/O總線153與各種I/O設備進行通信。 這類I/O設備例如可包括但不限于通用異步接收器/發(fā)射器(UART) 155、通用串行總線 (USB) 156、藍牙無線UART 157和I/O擴展接口 158。數(shù)據(jù)處理系統(tǒng)140的一個實施例提供移動、網(wǎng)絡和/或無線通信以及能夠執(zhí)行包 括點積操作在內(nèi)的SIMD操作的處理核心159。處理核心159可采用各種音頻、視頻、成像和 通信算法來編程,所述算法包括諸如沃爾什_哈達瑪變換、快速傅立葉變換(FFT)、離散余 弦變換(DCT)及其各自的逆變換之類的離散變換,諸如色彩空間變換、視頻編碼運動估計 或視頻解碼運動補償之類的壓縮/解壓縮技術(shù),以及諸如脈沖編碼調(diào)制(PCM)之類的調(diào)制 /解調(diào)(MODEM)功能。本發(fā)明的一些實施例還可適用于圖形應用,例如三維(“3D”)建模、 呈現(xiàn)(rendering)、對象沖突檢測、3D對象變換和照明等。圖IC示出能夠執(zhí)行SIMD點積操作的數(shù)據(jù)處理系統(tǒng)的又一備選實施例。根據(jù)一個 備選實施例,數(shù)據(jù)處理系統(tǒng)160可包括主處理器166、SIMD協(xié)處理器161、高速緩沖存儲器 167和輸入/輸出系統(tǒng)168。輸入/輸出系統(tǒng)168可任選地耦合到無線接口 169。SIMD協(xié) 處理器161能夠執(zhí)行包括點積操作在內(nèi)的SIMD操作。處理核心170可適合于以一種或多 種加工技術(shù)制造,并且通過在機器可讀媒體上充分詳細地表示,可適合于促進包括處理核 心170在內(nèi)的數(shù)據(jù)處理系統(tǒng)160的全部或部分的制造。對于一個實施例,SIMD協(xié)處理器161包括執(zhí)行單元162和寄存器文件集合164。主 處理器165的一個實施例包括解碼器165,以識別供執(zhí)行單元162執(zhí)行的包括SIMD點積計 算指令在內(nèi)的指令集163的指令。對于備選實施例,SIMD協(xié)處理器161還包括解碼器165B 的至少一部分,以對指令集163的指令進行解碼。處理核心170還包括對本發(fā)明的實施例 的理解不必要的附加電路(圖中未示出)。在操作中,主處理器166執(zhí)行數(shù)據(jù)處理指令流,所述指令控制包括與高速緩沖存 儲器167和輸入/輸出系統(tǒng)168進行交互在內(nèi)的一般類型的數(shù)據(jù)處理操作。嵌入數(shù)據(jù)處理 指令流中的是SIMD協(xié)處理器指令。主處理器166的解碼器165將這些SIMD協(xié)處理器指令 識別為屬于應當由附屬的SIMD協(xié)處理器161來執(zhí)行的類型。因此,主處理器166在協(xié)處理 器總線166上發(fā)出這些SIMD協(xié)處理器指令(或者表示SIMD協(xié)處理器指令的控制信號), 它們從所述總線上由任何附屬的SIMD協(xié)處理器來接收。在這種情況下,SIMD協(xié)處理器161
            9將接受并執(zhí)行發(fā)送給它的任何所接收的SIMD協(xié)處理器指令。數(shù)據(jù)可經(jīng)由無線接口 169來接收,以供SIMD協(xié)處理器指令進行處理。對于一個實 例,可采取數(shù)字信號的形式來接收語音通信,其可由SIMD協(xié)處理器指令進行處理,以再生 (regenerate)表示語音通信的數(shù)字音頻樣本。對于另一個實例,可采取數(shù)字比特流的形式 來接收壓縮音頻和/或視頻,其可由SIMD協(xié)處理器指令進行處理,以再生數(shù)字音頻樣本和 /或運動視頻幀。對于處理核心170的一個實施例,主處理器166和SIMD協(xié)處理器161集 成到包括執(zhí)行單元162、寄存器文件集合164和解碼器165的單個處理核心170中,以識別 包括SIMD點積指令在內(nèi)的指令集163的指令。圖2是根據(jù)本發(fā)明的一個實施例的處理器200的微體系結(jié)構(gòu)的框圖,所述處理器 包括執(zhí)行點積指令的邏輯電路。對于點積指令的一個實施例,該指令可將第一數(shù)據(jù)元素與 第二數(shù)據(jù)元素相乘,并且將該乘積與第三和第四數(shù)據(jù)元素之積相加。在一些實施例中,點積 指令可實現(xiàn)成對于具有字節(jié)、字、雙字、四字等大小以及諸如單和雙精度整數(shù)及浮點數(shù)據(jù)類 型之類的數(shù)據(jù)類型的數(shù)據(jù)元素進行操作。在一個實施例中,有序前端201是處理器200的 組成部分,它取出待執(zhí)行的宏指令,并對它們進行準備以供之后在處理器流水線中使用。前 端201可包括若干單元。在一個實施例中,指令預取器226從存儲器中取出宏指令,并將 其饋送到指令解碼器228,指令解碼器228轉(zhuǎn)而將這些宏指令解碼為稱作微指令或微操作 (又稱作micro op或μ op)的機器可執(zhí)行的原語。在一個實施例中,追蹤高速緩存(trace cache) 230取出解碼后的μ op,并將其組裝為μ op隊列234中的程序排序序列或路線 (trace)供執(zhí)行。當追蹤高速緩存230遇到復雜宏指令時,微碼ROM 232提供完成該操作所 需的μ op ο許多宏指令被轉(zhuǎn)換為單個微操作,而其它的則需要若干微操作來完成整個操作。 在一個實施例中,若需要四個以上微操作來完成宏指令,則解碼器228訪問微碼ROM 232來 對宏指令進行處理。對于一個實施例,可將打包點積指令解碼為少量微操作以在指令解碼 器228上進行處理。在另一個實施例中,若需要多個微操作來完成該操作,則打包點積算法 的指令可存儲在微碼ROM 232中。追蹤高速緩存230參照入口點可編程邏輯陣列(PLA)來 確定用于讀取微碼ROM 232中的點積算法的微碼序列的正確微指令指針。在微碼ROM 232 完成當前宏指令的定序(sequencing)微操作之后,機器的前端201繼續(xù)從追蹤高速緩存 230中取出微操作。某種SIMD和其它多媒體類型的指令被看作復雜指令。大多數(shù)浮點相關(guān)的指令也 是復雜指令。因此,當指令解碼器228遇到復雜宏指令時,在適當位置上對微碼ROM 232進 行訪問,以檢索那個宏指令的微碼序列。將執(zhí)行那個宏指令所需的各個微操作傳送給無序 執(zhí)行引擎203,以在適當?shù)恼麛?shù)和浮點執(zhí)行單元上執(zhí)行。無序執(zhí)行引擎203是在其中準備微指令供執(zhí)行的單元。無序執(zhí)行邏輯具有多個緩 沖器以在微指令沿流水線前進并被安排執(zhí)行時對所述微指令的流程進行平滑處理及重新 排序來優(yōu)化性能。分配器邏輯分配各μ op執(zhí)行所需的機器緩沖器和資源。寄存器重命名 邏輯將邏輯寄存器重命名到寄存器文件的條目上。在以下指令調(diào)度器之前,分配器還分配 兩個μ op隊列之一中的各μ op的條目,所述兩個隊列中的一個用于存儲器操作,一個用于 非存儲器操作存儲器調(diào)度器,快速調(diào)度器202,慢速/通用浮點調(diào)度器204,以及簡單浮點 調(diào)度器206。μ op調(diào)度器202、204、206根據(jù)它們的相關(guān)輸入寄存器操作數(shù)源的預備狀態(tài)以及μ OP完成其操作所需的執(zhí)行資源的可用性來確定何時μ OP準備好執(zhí)行。該實施例的快 速調(diào)度器202可在主時鐘周期的每一半上進行調(diào)度,而其它調(diào)度器在每個主處理器時鐘周 期只可調(diào)度一次。調(diào)度器對分配端口進行仲裁,以調(diào)度μ OP來執(zhí)行。寄存器文件208、210位于調(diào)度器202、204、206與執(zhí)行塊211中的執(zhí)行單元212、 214、216、218、220、222、224之間。存在分別用于整數(shù)和浮點操作的獨立寄存器文件208、 210。該實施例的各寄存器文件208、210還包括旁路網(wǎng)絡(bypass network),它可向新的相 關(guān)μ op分流(bypass)或轉(zhuǎn)發(fā)還未寫入寄存器文件的剛完成的結(jié)果。整數(shù)寄存器文件208 和浮點寄存器文件210還能互相傳送數(shù)據(jù)。對于一個實施例,整數(shù)寄存器文件208被分為 兩個獨立寄存器文件,一個寄存器文件用于數(shù)據(jù)的低階32位,而第二寄存器文件用于數(shù)據(jù) 的高階32位。一個實施例的浮點寄存器文件210具有128位寬的條目,因為浮點指令通常 具有從64到128位寬的操作數(shù)。執(zhí)行塊211包含執(zhí)行單元212、214、216、218、220、222、224,指令實際上在這些執(zhí) 行單元中執(zhí)行。該部分包括寄存器文件208、210,它們存儲微指令需要執(zhí)行的整數(shù)和浮點 數(shù)據(jù)操作數(shù)值。該實施例的處理器200包括多個執(zhí)行單元地址生成單元(AGU)212,AGU 214,快速ALU 216,快速ALU 218,慢速ALU 220,浮點ALU 222,浮點移動單元224。對于該 實施例,浮點執(zhí)行塊222、224執(zhí)行浮點、MMX、SIMD和SSE操作。該實施例的浮點ALU 222 包括64位除64位浮點除法器,以執(zhí)行除法、平方根及求余(remainder)微操作。對于本發(fā) 明的實施例,涉及浮點值的任何動作采用浮點硬件進行。例如,整數(shù)格式與浮點格式之間的 轉(zhuǎn)換涉及浮點寄存器文件。類似地,浮點除法操作在浮點除法器上進行。另一方面,非浮點 數(shù)值和整數(shù)類型采用整數(shù)硬件資源來處理。非常頻繁的簡單ALU運算轉(zhuǎn)到高速ALU執(zhí)行單 元216、218。該實施例的快速ALU 216、218可采用半個時鐘周期的有效等待時間來執(zhí)行快 速運算。對于一個實施例,大多數(shù)復雜整數(shù)操作轉(zhuǎn)到慢速ALU 220,因為慢速ALU 220包括 用于長等待時間類型的操作的整數(shù)執(zhí)行硬件,所述操作例如乘數(shù)、移位、標志(flag)邏輯 和分支處理。存儲器加載/存儲操作由AGU 212、214執(zhí)行。對于該實施例,在對64位數(shù)據(jù) 操作數(shù)執(zhí)行整數(shù)操作的上下文中描述整數(shù)ALU 216、218、220。在備選實施例中,ALU 216、 218、220可被實現(xiàn)為支持包括16、32、128、256等的各種數(shù)據(jù)位。類似地,浮點單元222、224 可被實現(xiàn)為支持具有各種寬度的位的一系列操作數(shù)。對于一個實施例,結(jié)合SIMD和多媒體 指令,浮點單元222、224可對128位寬的打包數(shù)據(jù)操作數(shù)進行操作。在該實施例中,4 0 調(diào)度器202、204、206在父加載已經(jīng)完成執(zhí)行之前分派 (dispatch)相關(guān)操作。由于μ op在處理器200中推測地調(diào)度和執(zhí)行,所以處理器200還包 括處理存儲器未命中的邏輯。若數(shù)據(jù)加載在數(shù)據(jù)高速緩存中未命中,則在流水線中可能存 在為調(diào)度器留下了暫時不正確數(shù)據(jù)的執(zhí)行中(in flight)相關(guān)操作。重放(Mplay)機構(gòu) 跟蹤并重新執(zhí)行采用不正確數(shù)據(jù)的指令。只有相關(guān)操作才需要被重放,而允許不相關(guān)操作 完成。處理器的一個實施例的調(diào)度器和重放機構(gòu)還設計成捕捉點積操作的指令序列。術(shù)語“寄存器”在本文中用來表示用作標識操作數(shù)的宏指令的一部分的板載 (on-board)處理器存儲單元。換言之,本文提到的寄存器是從處理器外部(從程序員的角 度)可見的。但是,實施例的寄存器的含義不應當限于特定類型的電路。而是,實施例的寄 存器只需要能夠存儲和提供數(shù)據(jù)以及執(zhí)行本文所述的功能。本文所述的寄存器可通過處理 器中的電路采用任何數(shù)量的不同技術(shù)來實現(xiàn),例如專用物理寄存器、采用寄存器重命名的動態(tài)分配物理寄存器、專用和動態(tài)分配物理寄存器的組合等。在一個實施例中,整數(shù)寄存 器存儲32位整數(shù)數(shù)據(jù)。一個實施例的寄存器文件還包含用于打包數(shù)據(jù)的16個XMM和通 用寄存器、8個多媒體(例如“EM64T”加法)多媒體SIMD寄存器。對于以下論述,寄存器 被理解為設計成保存打包數(shù)據(jù)的數(shù)據(jù)寄存器,例如采用Intel Corporation (Santa Clara, California)開發(fā)的MMX技術(shù)實現(xiàn)的微處理器中的64位寬MMX 寄存器(在某些情況下 又稱作“mm”寄存器)??捎糜谡麛?shù)和浮點這兩種形式的這些MMX寄存器可與伴隨SIMD和 SSE指令的打包數(shù)據(jù)元素配合操作。類似地,與SSE2、SSE3、SSE4或者以上(一般性地稱作 “SSEx”)的技術(shù)有關(guān)的128位寬XMM寄存器也可用于保存這類打包數(shù)據(jù)操作數(shù)。在該實施 例中,在存儲打包數(shù)據(jù)和整數(shù)數(shù)據(jù)時,寄存器無需區(qū)分這兩種數(shù)據(jù)類型。在以下附圖的實例中,描述了多個數(shù)據(jù)操作數(shù)。圖3A示出根據(jù)本發(fā)明的一個實施 例的多媒體寄存器中的各種打包數(shù)據(jù)類型表示。圖3A示出128位寬操作數(shù)的打包字節(jié)310、 打包字320和打包雙字(dword)330的數(shù)據(jù)類型。該實例的打包字節(jié)格式310是128位長 的,并包含16個打包字節(jié)數(shù)據(jù)元素。字節(jié)在這里定義為8位的數(shù)據(jù)。各字節(jié)數(shù)據(jù)元素的信 息是這樣存儲的字節(jié)0存儲在0至7位,字節(jié)1存儲在8至15位,字節(jié)2存儲在16至23 位,以及最后,字節(jié)15存儲在120至127位。這樣,寄存器中的所有可用的位都被使用。這 種存儲設置增加了處理器的存儲效率。另外,通過訪問16個數(shù)據(jù)元素,現(xiàn)在可并行地對16 個數(shù)據(jù)元素執(zhí)行一個操作。一般來說,數(shù)據(jù)元素是與相同長度的其它數(shù)據(jù)元素一起存儲在單個寄存器或存儲 單元中的一段單獨的數(shù)據(jù)。在與SSEx技術(shù)相關(guān)的打包數(shù)據(jù)序列中,XMM寄存器中存儲的數(shù) 據(jù)元素的數(shù)量是128位除以單獨的數(shù)據(jù)元素的位的長度。類似地,在與MMX和SSE技術(shù)相 關(guān)的打包數(shù)據(jù)序列中,MMX寄存器中存儲的數(shù)據(jù)元素的數(shù)量是64位除以單獨的數(shù)據(jù)元素的 位的長度。雖然圖3A所示的數(shù)據(jù)類型為128位長,但是,本發(fā)明的實施例還可與64位寬或 者其它大小的操作數(shù)配合操作。該實例的打包字格式320是128位長的,并且包含8個打 包字數(shù)據(jù)元素。各打包字包含16位的信息。圖3A的打包雙字格式330是128位長,并且 包含四個打包雙字數(shù)據(jù)元素。各打包雙字數(shù)據(jù)元素包含32位的信息。打包四字是128位 長的,并包含兩個打包四字數(shù)據(jù)元素。圖3B示出備選的寄存器中數(shù)據(jù)存儲格式。各打包數(shù)據(jù)可包括一個以上獨立數(shù)據(jù) 元素。示出三種打包數(shù)據(jù)格式,即打包半字341、打包單字342和打包雙字343。打包半字 341、打包單字342和打包雙字343的一個實施例包含定點數(shù)據(jù)元素。對于一備選實施例, 打包半字341、打包單字342和打包雙字343這三者中的一個或多個可包含浮點數(shù)據(jù)元素。 打包半字341的一個備選實施例是包含八個16位數(shù)據(jù)元素的128位長的。打包單字342的 一個實施例為128位長,并且包含四個32位數(shù)據(jù)元素。打包雙字343的一個實施例為128 位長,并且包含兩個64位數(shù)據(jù)元素。大家會理解,這類打包數(shù)據(jù)格式還可擴展到其它寄存 器長度,例如擴展到96位、160位、192位、224位、256位或者更大的長度。圖3C示出根據(jù)本發(fā)明的一個實施例的多媒體寄存器中的各種有符號和無符號打 包數(shù)據(jù)類型表示。無符號打包字節(jié)表示344示出在SIMD寄存器中的無符號打包字節(jié)的存 儲。各字節(jié)數(shù)據(jù)元素的信息是這樣存儲的字節(jié)零存儲在零至七位,字節(jié)一存儲在八至十五 位,字節(jié)二存儲在十六至二十三位,以及最后,字節(jié)十五存儲在一百二十至一百二十七位。 這樣,寄存器中的所有可用的位都被使用。這種存儲設置可增加處理器的存儲效率。另外,
            12通過訪問十六個數(shù)據(jù)元素,現(xiàn)在可通過并行方式對十六個數(shù)據(jù)元素執(zhí)行一個操作。有符號 打包字節(jié)表示345示出有符號打包字節(jié)的存儲。注意,每一個字節(jié)數(shù)據(jù)元素的第八位是符 號指示符。無符號打包字表示346示出如何在SIMD寄存器中存儲字七至字零。有符號打 包字表示347與無符號打包字的寄存器內(nèi)(in-register)表示346相似。注意,各字數(shù)據(jù) 元素的第十六位是符號指示符。無符號打包雙字表示348示出如何存儲雙字數(shù)據(jù)元素。有 符號打包雙字表示349與無符號打包雙字的寄存器內(nèi)表示348相似。注意,必要的符號位 是各雙字數(shù)據(jù)元素的第三十二位。圖3D是對操作編碼(操作碼)格式360的一個實施例的描述,其中具有三十二或 者更多位,以及寄存器/存儲器操作數(shù)尋址模式符合在以下文獻中描述的一種類型的操作 碼格式“IA-32 Intel體系結(jié)構(gòu)軟件開發(fā)人員手冊第2卷指令集參考”,可在萬維網(wǎng)(www) StJ intel. com/design/litcentr Intel Corporation (Santa Clara, CA)獲得0 在一f 實施例中,點積操作可通過字段361和362這兩者中的一個或多個來編碼??勺R別每個指 令總共兩個操作數(shù)位置,包括總共兩個源操作數(shù)標識符364和365。對于點積指令的一個 實施例,目標操作數(shù)標識符366與源操作數(shù)標識符364相同,而在其它實施例中,它們是不 同的。對于一備選實施例,目標操作數(shù)標識符366與源操作數(shù)標識符365相同,而在其它實 施例中,它們是不同的。在點積指令的一個實施例中,通過源操作數(shù)標識符364和365標識 的源操作數(shù)之一被點積操作的結(jié)果重寫,而在其它實施例中,標識符364對應于源寄存器 元件,以及標識符365對應于目標寄存器元件。對于點積指令的一個實施例,操作數(shù)標識符 364和365可用來標識32位或64位源和目標操作數(shù)。圖3E是對具有四十或更多位的另一種備選操作編碼(操作碼)格式370的描述。 操作碼格式370與操作碼格式360 —致,并包括任選的前置字節(jié)378。點積操作的類型可通 過字段378、371和372這三者中的一個或多個來編碼??赏ㄟ^源操作數(shù)標識符374和375 以及通過前置字節(jié)378來標識每個指令總共兩個操作數(shù)位置。對于點積指令的一個實施 例,前置字節(jié)378可用來標識32位或64位源和目標操作數(shù)。對于點積指令的一個實施例, 目標操作數(shù)標識符376與源操作數(shù)標識符374相同,而在其它實施例中,它們是不同的。對 于一備選實施例,目標操作數(shù)標識符376與源操作數(shù)標識符375相同,而在其它實施例中, 它們是不同的。在一個實施例中,點積操作將操作數(shù)標識符374和375所標識的操作數(shù)之 一與操作數(shù)標識符374和375所標識的另一個操作數(shù)相乘,該點積操作的結(jié)果會重寫所述 操作數(shù)中的一個,而在其它實施例中,標識符374和375所標識的操作數(shù)的點積被寫入另 一個寄存器中的另一個數(shù)據(jù)元素。操作碼格式360和370允許部分由MOD字段363和373 以及由任選的scale-index-base和偏移字節(jié)(displacement byte)指定的寄存器到寄存 器(register to register)、存儲器到寄存器(memory to register)、寄存器通過存儲器 (register by memory)、寄存器通過寄存器(register by register)、寄存器通過立艮口尋址 (register by immediate)、寄存器至Ij存儲器(register to memory)的尋址。接下來看圖3F,在一些備選實施例中,64位單指令多數(shù)據(jù)(SIMD)算術(shù)運算可通過 協(xié)處理器數(shù)據(jù)處理(CDP)指令來執(zhí)行。操作編碼(操作碼)格式380示出具有CDP操作碼 字段382和389的一種這樣的⑶P指令。對于點積操作的備選實施例,⑶P指令的類型可 通過字段383、384、387和388這四者中的一個或多個來編碼??蓸俗R每個指令總共三個操 作數(shù)位置,包括總共兩個源操作數(shù)標識符385、390和一個目標操作數(shù)標識符386。協(xié)處理器的一個實施例可對8、16、32和64位的值進行操作。對于一個實施例,對整數(shù)數(shù)據(jù)元素執(zhí)行 點積操作。在一些實施例中,可采用選擇字段381來有條件地執(zhí)行點積指令。對于一些點 積指令,源數(shù)據(jù)大小可通過字段383來編碼。在點積指令的一些實施例中,可在SIMD字段 上進行零(Z)、負值(N)、進位(C)和溢出(V)檢測。對于一些指令,飽和的類型可通過字段 384來編碼。圖4是根據(jù)本發(fā)明對打包數(shù)據(jù)操作數(shù)執(zhí)行點積操作的邏輯的一個實施例的框圖。 本發(fā)明的實施例可實現(xiàn)為與諸如以上所述之類的各種類型的操作數(shù)配合工作。對于一種實 現(xiàn),根據(jù)本發(fā)明的點積操作實現(xiàn)為對指定數(shù)據(jù)類型進行操作的指令集。例如,提供點積打包 單精度(DPPS)指令以確定包括整數(shù)和浮點在內(nèi)的32位數(shù)據(jù)類型的點積。類似地,提供點 積打包雙精度(DPPD)指令以確定包括整數(shù)和浮點在內(nèi)的64位數(shù)據(jù)類型的點積。雖然這些 指令具有不同名稱,但它們執(zhí)行的一般點積操作是相似的。為了簡潔起見,以下論述和實例 在處理數(shù)據(jù)元素的點積指令的上下文中進行。在一個實施例中,點積指令識別各種信息,包括第一數(shù)據(jù)操作數(shù)DATA A 410的 標識符和第二數(shù)據(jù)操作數(shù)DATA B 420的標識符,以及點積操作的所得結(jié)果RESULTANT440 的標識符(在一個實施例中,它可能與第一數(shù)據(jù)操作數(shù)標識符之一相同)。對于以下論述, DATA A、DATA B和RESULTANT—般稱作操作數(shù)或數(shù)據(jù)塊,但不限于此,并且還包括寄存器、 寄存器文件和存儲單元。在一個實施例中,將各點積指令(DPPS、DPPD)解碼為一個微操作。 在一備選實施例中,可將各指令解碼為各種數(shù)量的微操作,以對數(shù)據(jù)操作數(shù)執(zhí)行點積操作。 對于該實例,操作數(shù)410、420是在具有字寬數(shù)據(jù)元素的源寄存器/存儲器中存儲的128位 寬的信息段。在一個實施例中,操作數(shù)410、420保存在128位長的SIMD寄存器(如128 位SSEx XMM寄存器)中。對于一個實施例,RESULTANT 440也是XMM數(shù)據(jù)寄存器。此外, RESULTANT 440也可能是與源操作數(shù)之一相同的寄存器或存儲單元。根據(jù)具體實現(xiàn),操作 數(shù)和寄存器可能是諸如32、64和256位等的其它長度,并且具有字節(jié)、雙字或四字大小的數(shù) 據(jù)元素。雖然該實例的數(shù)據(jù)元素為字大小,但是,同樣的概念可擴展到字節(jié)和雙字大小的元 素。在其中的數(shù)據(jù)操作數(shù)為64位寬的一個實施例中,MMX寄存器用來代替XMM寄存器。該實例中的第一操作數(shù)410包括八個數(shù)據(jù)元素的集合A3、A2、Al和AO。各個單 獨的數(shù)據(jù)元素對應于所得結(jié)果440中的數(shù)據(jù)元素位置。第二操作數(shù)420包括八個數(shù)據(jù)段的 另一個集合B3、B2、B1和B0。在這里,數(shù)據(jù)段具有相等長度,并且各包括數(shù)據(jù)的單字(32 位)。但是,數(shù)據(jù)元素和數(shù)據(jù)元素位置可具有與字不同的其它粒度(granularity)。若各數(shù) 據(jù)元素為字節(jié)(8位)、雙字(32位)或四字(64位),則128位操作數(shù)分別具有十六字節(jié)寬、 四個雙字寬或者兩個四字寬的數(shù)據(jù)元素。本發(fā)明的實施例不限于特定長度的數(shù)據(jù)操作數(shù)或 數(shù)據(jù)段,而是可能對于各實現(xiàn)來適當?shù)卮_定大小。操作數(shù)410、420可駐留在寄存器或存儲單元或寄存器文件或者它們的組合中。數(shù) 據(jù)操作數(shù)410、420與點積指令一起被發(fā)送到處理器中的執(zhí)行單元的點積計算邏輯430。在 一個實施例中,當點積指令到達執(zhí)行單元時,先前應當已經(jīng)在處理器流水線中對指令進行 了解碼。因此,點積指令可能采取微操作(μορ)或者某種其它已解碼格式的形式。對于一 個實施例,在點積計算邏輯430上接收兩個數(shù)據(jù)操作數(shù)410、420。點積計算邏輯430產(chǎn)生第 一操作數(shù)410的兩個數(shù)據(jù)元素的第一乘積,以及處于第二操作數(shù)420的對應數(shù)據(jù)元素位置 中的兩個數(shù)據(jù)元素的第二乘積,以及將第一和第二乘積之和存儲在所得結(jié)果440中的適當位置中,所得結(jié)果可能與第一或第二操作數(shù)對應于相同的存儲單元。在一個實施例中,第一 和第二操作數(shù)中的數(shù)據(jù)元素為單精度(例如32位),而在其它實施例中,第一和第二操作數(shù) 中的數(shù)據(jù)元素為雙精度(例如64位)。對于一個實施例,并行處理所有數(shù)據(jù)位置的數(shù)據(jù)元素。在另一個實施例中,一次 可一起處理某個部分的數(shù)據(jù)元素位置。在一個實施例中,根據(jù)是執(zhí)行DPPD還是DPPS,所得 結(jié)果440分別包括兩個或四個可能的點積結(jié)果位置dot-productA31_q、dot_productA63_32、 D0T-PR0DUCTA95_64、D0T-PR0DUCTA127_96 (對于 DPPS 指令的結(jié)果),以及 dot-PRODUCTA63_q、 D0T-PR0DUCTa127_64 (對于 DPPD 指令的結(jié)果)。在一個實施例中,所得結(jié)果440中的點積結(jié)果的位置取決于與點積指令相關(guān)聯(lián)的 選擇字段。例如,對于DPPS指令,所得結(jié)果440中的點積結(jié)果的位置在選擇字段等于第一值 時為DOT-PRODUCTa3K,在選擇字段等于第二值時為DOT-PRODUCTA63_32,在選擇字段等于第三 值時為DOT-PRODUCTA95_64,以及在選擇字段等于第四值時為DOT-PRODUCTa127_64。在DPPD指令 的情況下,所得結(jié)果440中的點積結(jié)果的位置在選擇字段為第一值時是D0T-PR0DUCTA63_q, 在選擇字段為第二值時是DOT-PRODUCTa127_64。圖5A示出根據(jù)本發(fā)明的一個實施例的點積指令的操作。具體來說,圖5A示出根 據(jù)一個實施例的DPPS指令的操作。在一個實施例中,圖5A所示的實例的點積操作實質(zhì)上 可由圖4的點積計算邏輯430來執(zhí)行。在其它實施例中,圖5A的點積操作可由包括硬件、 軟件或者它們的某種結(jié)合在內(nèi)的其它邏輯來執(zhí)行。在其它實施例中,圖4、圖5A和圖5B所示的操作可按照任何組合或順序來執(zhí)行,以 產(chǎn)生點積結(jié)果。在一個實施例中,圖5A示出包括總共存儲各為32位的四個單精度浮點或整 數(shù)值A0-A3的存儲單元的128位源寄存器501a。類似地,圖5A中所示的是包括總共存儲各 為32位的四個單精度浮點或整數(shù)值B0-B3的存儲單元的128位目標寄存器505a。在一個實 施例中,源寄存器中存儲的各值A0-A3與目標寄存器的對應位置中存儲的對應值B0-B3相 乘,以及各所得值A0*B0、A1*B1、A2*B2、A3*B3(本文中稱作“乘積”)存儲在包括總共存儲各 為32位的四個單精度浮點或整數(shù)值的存儲單元的第一 128位臨時寄存器(“TEMPl”)510a 的對應存儲單元中。在一個實施例中,將乘積對相加在一起,以及各個和數(shù)(本文中稱作“中間和數(shù)”) 存儲到第二 128位臨時寄存器(“TEMP2”) 515a和第三128位臨時寄存器(“TEMP3,,) 520a 的存儲單元中。在一個實施例中,乘積存儲到第一和第二臨時寄存器的最低有效32位元素 存儲單元中。在其它實施例中,它們可存儲在第一和第二臨時寄存器的其它元素存儲單元 中。此外,在一些實施例中,乘積可存儲在相同寄存器(如第一或第二臨時寄存器)中。在一個實施例中,中間和數(shù)相加在一起(本文中稱作“最終和數(shù)”),并存儲到第四 128位臨時寄存器(“TEMP4”)525a的存儲單元中。在一個實施例中,最終和數(shù)存儲到TEMP4 的最低有效32位存儲單元中,而在其它實施例中,最終和數(shù)存儲到TEMP4的其它存儲單元 中。最終和數(shù)然后存儲到目標寄存器505a的存儲單元中。最終和數(shù)將要存儲到其中的準 確存儲單元可取決于點積指令中可配置的變量。在一個實施例中,包含多個位存儲單元的 立即字段(“IMMy[x]”)可用來確定最終和數(shù)將要存儲到其中的目標寄存器存儲單元。例 如,在一個實施例中,若IMM8
            字段包含第一值(例如“1”),則最終和數(shù)存儲到目標寄存 器的存儲單元BO中,若IMM8[1]字段包含第一值(例如“1”),則最終和數(shù)存儲到存儲單元
            15Bl中,若IMM8[2]字段包含第一值(例如“1”),則最終和數(shù)存儲到目標寄存器的存儲單元 B2中,以及若IMM8[3]字段包含第一值(例如“1”),則最終和數(shù)存儲到目標寄存器的存儲 單元B3中。在其它實施例中,其它立即字段可用來確定最終和數(shù)將要存儲到其中的目標寄 存器中的存儲單元。在一個實施例中,立即字段可用來控制各乘法和加法運算是否在圖5A所示的操 作中執(zhí)行。例如,IMM8[4]可用來表明(例如通過設置為“0”或“1”)A0是否將與BO相乘 且結(jié)果被存儲到TEMPI中。類似地,IMM8[5]可用來表明(例如通過設置為“0”或“ 1”)Al 是否將與Bl相乘且結(jié)果被存儲到TEMPI中。同樣,IMM8[6]可用來表明(例如通過設置為 “0”或“1”)A2是否將與B2相乘且結(jié)果被存儲到TEMPI中。最后,IMM8[7]可用來表明(例 如通過設置為“0”或“1”)A3是否將與Β3相乘且結(jié)果被存儲到TEMPI中。圖5B示出根據(jù)一個實施例的DPPD指令的操作。DPPS與DPPD指令之間的一個差 別在于,DPPD對雙精度浮點和整數(shù)值(例如64位值)而不是單精度值進行操作。相應地, 在一個實施例中,執(zhí)行DPPD指令與執(zhí)行DPPS指令相比,存在更少要管理的數(shù)據(jù)元素,因此 涉及更少的中間操作和存儲裝置(例如寄存器)。在一個實施例中,圖5B示出包括總共存儲各為64位的兩個雙精度浮點或整數(shù)值 AO-Al的存儲單元的128位源寄存器501b。類似地,圖5B中所示的是包括總共存儲各為64 位的兩個雙精度浮點或整數(shù)值BO-Bl的存儲單元的128位目標寄存器505b。在一個實施 例中,源寄存器中存儲的各個值AO-Al與目標寄存器的對應位置中存儲的對應值BO-Bl相 乘,以及各所得結(jié)果值A0*B0、A1*B1 (本文中稱作“乘積”)存儲在包括總共存儲各為64位 的兩個雙精度浮點或整數(shù)值的存儲單元的第一 128位臨時寄存器(“TEMPl”)510b的對應 存儲單元中。在一個實施例中,乘積對相加在一起,以及各個和數(shù)(本文中稱作“最終和數(shù)”)存 儲到第二 128位臨時寄存器(“TEMP2”)515b的存儲單元中。在一個實施例中,乘積與最終 和數(shù)分別存儲到第一和第二臨時寄存器的最低有效64位元素存儲單元中。在其它實施例 中,它們可存儲在第一和第二臨時寄存器的其它元素存儲單元中。在一個實施例中,最終和數(shù)存儲到目標寄存器505b的存儲單元中。最終和數(shù)將要 存儲到其中的準確存儲單元可取決于點積指令中可配置的變量。在一個實施例中,包含多 個位存儲單元的立即字段(“IMMy[x]”)可用來確定最終和數(shù)將要存儲到其中的目標寄存 器存儲單元。例如,在一個實施例中,若IMM8
            字段包含第一值(例如“1”),則最終和數(shù) 存儲到目標寄存器的存儲單元BO中,若IMM8[1]字段包含第一值(例如“1”),則最終和數(shù) 存儲到存儲單元Bl中。在其它實施例中,其它立即字段可用來確定最終和數(shù)將要存儲到其 中的目標寄存器中的存儲單元。在一個實施例中,立即字段可用來控制各乘法運算是否在圖5B所示的點積操作 中執(zhí)行。例如,IMM8[4]可用來表明(例如通過設置為“0”或“1”)A0是否將與BO相乘且 結(jié)果被存儲到TEMPI中。類似地,IMM8[5]可用來表明(例如通過設置為“0”或“ 1”)Al是 否將與Bl相乘且結(jié)果被存儲到TEMPI中。在其它實施例中,可采用用于確定是否執(zhí)行點積 的乘法運算的其它控制技術(shù)。圖6A是根據(jù)一個實施例對單精度整數(shù)或浮點值執(zhí)行點積操作的電路600a的框 圖。該實施例的電路600a通過乘法器610a-613a將兩個寄存器601a和605a的對應單精度元素相乘,其結(jié)果可采用立即字段IMM8 [7:4]由復用器615a-618a進行選擇。作為備選的方 案,復用器615a-618a可選擇零值而不是各元素的乘法運算的對應乘積。復用器615a-618a 選擇的結(jié)果然后由加法器620a相加在一起,且相加的結(jié)果被存儲在結(jié)果寄存器630a的單 元的任一個中,根據(jù)立即字段IMM8 [3 0]的值,所述結(jié)果寄存器采用復用器625a-628a來選 擇來自加法器620a的對應和數(shù)結(jié)果。在一個實施例中,若和數(shù)結(jié)果沒有被選擇來存儲在結(jié) 果單元中,則復用器625a-628a可選擇零值來填充結(jié)果寄存器630a的單元。在其它實施例 中,更多加法器可用來產(chǎn)生各個乘積之和。此外,在一些實施例中,中間存儲單元可用來存 儲乘積或和數(shù)結(jié)果,直到對它們進行進一步操作為止。圖6B是根據(jù)一個實施例對單精度整數(shù)或浮點值執(zhí)行點積操作的電路600b的框 圖。該實施例的電路600b通過乘法器610b、612b將兩個寄存器601b和605b的對應單精 度元素相乘,其結(jié)果可采用立即字段IMM8[7:4]由復用器615b、617b進行選擇。作為備選 的方案,復用器615b、618b可選擇零值而不是各元素的乘法運算的對應乘積。復用器615b、 618b選擇的結(jié)果然后由加法器620b相加在一起,且相加的結(jié)果被存儲在結(jié)果寄存器630b 的單元的任一個中,根據(jù)立即字段IMM8 [3 0]的值,所述結(jié)果寄存器采用復用器625b、627b 來選擇來自加法器620b的對應和數(shù)結(jié)果。在一個實施例中,若和數(shù)結(jié)果沒有被選擇來存儲 在結(jié)果單元中,則復用器625b-627b可選擇零值來填充結(jié)果寄存器630b的單元。在其它實 施例中,更多加法器可用來產(chǎn)生各個乘積之和。此外,在一些實施例中,中間存儲單元可用 來存儲乘積或和數(shù)結(jié)果,直到對它們進行進一步操作為止。圖7A是根據(jù)一個實施例執(zhí)行DPPS指令的操作的偽碼表示。圖7A所示的偽碼表 明,源寄存器(“SRC”)中在31-0位中存儲的單精度浮點或整數(shù)值將與目標寄存器(“DEST”) 中在31-0位中存儲的單精度浮點或整數(shù)值相乘,且僅當立即字段(“IMM8[4]”)中存儲的 立即值等于“1”時,才將結(jié)果存儲在臨時寄存器(“TEMPI”)的31-0位中。否則,位存儲單 元31-0可包含空值,如全零。圖7A中還示出了偽碼來表明,SRC寄存器中在63_32位中存儲的單精度浮點或整 數(shù)值將與DEST寄存器中在63-32位中存儲的單精度浮點或整數(shù)值相乘,且僅當立即字段 (“IMM8[5]”)中存儲的立即值等于“1”時,才將結(jié)果存儲在TEMPI寄存器的63-32位中。 否則,位存儲單元63-32可包含空值,如全零。類似地,圖7A中還示出了偽碼來表明,SRC寄存器中在95-64位中存儲的單精度 浮點或整數(shù)值將與DEST寄存器中在95-64位中存儲的單精度浮點或整數(shù)值相乘,且僅當立 即字段(“IMM8[6]”)中存儲的立即值等于“1”時,才將結(jié)果存儲在TEMPI寄存器的95-64 位中。否則,位存儲單元95-64可包含空值,如全零。最后,圖7A中還示出了偽碼來表明,SRC寄存器中在127-96位中存儲的單精度浮 點或整數(shù)值將與DEST寄存器中在127-96位中存儲的單精度浮點或整數(shù)值相乘,且僅當立 即字段(“IMM8[7]”)中存儲的立即值等于“1”時,才將結(jié)果存儲在TEMPI寄存器的127-96 位中。否則,位存儲單元127-96可包含空值,如全零。接下來,圖7A示出TEMPI的31_0位被加到TEMPI的63_32位,且結(jié)果被存儲到第 二臨時寄存器(“TEMP2”)的位存儲單元31-0中。類似地,TEMPI的95-64位被加到TEMPI 的127-96位,且結(jié)果被存儲到第三臨時寄存器(“TEMP3”)的位存儲單元31-0中。最后, TEMP2的31-0位被加到TEMP3的31-0位,且結(jié)果被存儲到第四臨時寄存器(“TEMP4”)的位存儲單元31-0中。在一個實施例中,臨時寄存器中存儲的數(shù)據(jù)然后被存儲到DEST寄存器中。要存儲 數(shù)據(jù)的DEST寄存器中的具體位置可取決于DPPS指令中的其它字段,如IMM8 [χ]中的字段。 具體來說,圖7Α說明,在一個實施例中,ΤΕΜΡ4的31-0位在ΙΜΜ8
            等于“ 1 ”時存儲到DEST 位存儲單元31-0中,在ΙΜΜ8[1]等于“1”時存儲到DEST位存儲單元63-32中,在ΙΜΜ8[2] 等于“ 1 ”時存儲到DEST位存儲單元95-64中,或者在ΙΜΜ8 [3]等于“ 1 ”時存儲到DEST位 存儲單元127-96中。否則,對應的DEST位存儲單元將包含空值,如全零。圖7Β是根據(jù)一個實施例執(zhí)行DPPD指令的操作的偽碼表示。圖7Β所示的偽碼表 明,源寄存器(“SRC”)中在63-0位中存儲的單精度浮點或整數(shù)值將與目標寄存器(“DEST”) 中在63-0位中存儲的單精度浮點或整數(shù)值相乘,且僅當立即字段(“ΙΜΜ8[4]”)中存儲的 立即值等于“1”時,才將結(jié)果存儲在臨時寄存器(“TEMPI”)的63-0位中。否則,位存儲單 元63-0可包含空值,如全零。圖7B中還示出了偽碼來表明,SRC寄存器中在127-64位中存儲的單精度浮點或 整數(shù)值將與DEST寄存器中在127-64位中存儲的單精度浮點或整數(shù)值相乘,且僅當立即字 段(“IMM8[5]”)中存儲的立即值等于“1”時,才將結(jié)果存儲在TEMPI寄存器的127-64位 中。否則,位存儲單元127-64可包含空值,如全零。接下來,圖7B示出,TEMPI的63_0位被加到TEMPI的127-64位,且結(jié)果被存儲到 第二臨時寄存器(“TEMP2”)的位存儲單元63-0中。在一個實施例中,臨時寄存器中存儲 的數(shù)據(jù)然后可存儲到DEST寄存器中。要存儲數(shù)據(jù)的DEST寄存器中的具體位置可取決于 DPPS指令中的其它字段,如IMM8[x]中的字段。具體地說,圖7A示出,在一個實施例中,若 IMM8
            等于“ 1 ”,則TEMP2的63-0位存儲到DEST位存儲單元63-0中,或者若IMM8 [1]等 于“ 1 ”,則TEMP2的63-0位存儲在DEST位存儲單元127-64中。否則,對應的DEST位存儲 單元將包含空值,如全零。圖7A和圖7B中公開的操作只是可用于本發(fā)明的一個或多個實施例的操作的一種 表示。具體地說,圖7A和圖7B所示的偽碼對應于按照具有128位寄存器的一個或多個處 理器體系結(jié)構(gòu)所執(zhí)行的操作。其它實施例可在具有任何大小的寄存器或者其它類型的存儲 區(qū)的處理器體系結(jié)構(gòu)中執(zhí)行。此外,其它實施例可能不采用與圖7A和圖7B中所示的寄存 器完全相同的寄存器。例如,在一些實施例中,不同數(shù)量的臨時寄存器或者根本沒有寄存器 可用來存儲操作數(shù)。最后,本發(fā)明的實施例可采用任何數(shù)量的寄存器或數(shù)據(jù)類型在眾多處 理器或處理核心之間來執(zhí)行。這樣,公開了用于執(zhí)行點積操作的技術(shù)。雖然在附圖中描述和示出了某些示范性 實施例,但是要理解,這些實施例只是對寬泛的發(fā)明的說明而不是限制,并且本發(fā)明不限于 所示及所述的具體構(gòu)造和設置,因為本領(lǐng)域的技術(shù)人員在研究本公開之后可能會想到其它 各種修改。在例如成長迅速并且不易預見進一步發(fā)展的這樣的技術(shù)領(lǐng)域中,通過實現(xiàn)技術(shù) 發(fā)展來推動,可在不背離本公開的原理或所附權(quán)利要求的范圍的前提下,容易地對所公開 的實施例在設置和細節(jié)方面進行修改。
            權(quán)利要求
            1.一種執(zhí)行點積操作的處理器,包括 取出器,用于取出點積指令;解碼器,用于對所述取出器取出的點積指令進行解碼; 調(diào)度器,用于對所述點積指令進行調(diào)度;執(zhí)行單元,用于對至少兩個操作數(shù)執(zhí)行所述點積指令,每個操作數(shù)具有第一數(shù)據(jù)類型 的多個打包值,以便生成點積結(jié)果;以及寄存器文件,用于存儲所述至少兩個操作數(shù)和所述點積結(jié)果。
            2.如權(quán)利要求1所述的處理器,其中,所述第一數(shù)據(jù)類型為整數(shù)數(shù)據(jù)類型。
            3.如權(quán)利要求1所述的處理器,其中,所述第一數(shù)據(jù)類型為浮點數(shù)據(jù)類型。
            4.如權(quán)利要求1所述的處理器,其中,所述至少兩個操作數(shù)均具有僅僅兩個打包值。
            5.如權(quán)利要求1所述的處理器,其中,所述至少兩個操作數(shù)均具有僅僅四個打包值。
            6.如權(quán)利要求1所述的處理器,其中,所述多個打包值的每個為單精度值,并且由32位 來表不。
            7.如權(quán)利要求1所述的處理器,其中,所述多個打包值的每個為雙精度值,并且由64位來表不。
            8.如權(quán)利要求1所述的處理器,其中,所述至少兩個操作數(shù)和所述點積結(jié)果將被存儲 在存儲多達128位數(shù)據(jù)的所述寄存器文件中的至少兩個寄存器中。
            9.如權(quán)利要求1所述的處理器,其中,所述點積指令包括源操作數(shù)指示符、目標操作數(shù)指示符以及至少一個立即值指示符。
            10.如權(quán)利要求9所述的處理器,其中,所述源操作數(shù)指示符包括具有存儲多個打包值 的多個元素的所述寄存器文件中的源寄存器的地址。
            11.如權(quán)利要求9所述的處理器,其中,所述目標操作數(shù)指示符包括具有存儲多個打包 值的多個元素的所述寄存器文件中的目標寄存器的地址。
            12.—種數(shù)據(jù)處理系統(tǒng),包括主處理器,用于執(zhí)行數(shù)據(jù)處理指令流;SIMD協(xié)處理器,用于接受并執(zhí)行所述數(shù)據(jù)處理指令流中的SIMD協(xié)處理器指令; 與處理器耦合的高速緩沖存儲器;和 輸入/輸出系統(tǒng);其中所述指令控制包括與高速緩沖存儲器和輸入/輸出系統(tǒng)進行交互的一般類型的 數(shù)據(jù)處理操作。
            全文摘要
            本發(fā)明涉及一種用于執(zhí)行點積運算的指令和邏輯。本發(fā)明提供了用于執(zhí)行點積操作的方法、裝置和程序部件。在一個實施例中,裝置包括執(zhí)行第一指令的執(zhí)行資源。響應第一指令,所述執(zhí)行資源將等于至少兩個操作數(shù)的點積的結(jié)果值存儲到某個存儲單元中。
            文檔編號G06F9/305GK102004628SQ20101053566
            公開日2011年4月6日 申請日期2007年9月20日 優(yōu)先權(quán)日2006年9月20日
            發(fā)明者C·德西爾瓦, M·塞科尼, M·布克斯頓, R·佐哈, R·帕塔薩拉蒂, S·欽努帕蒂 申請人:英特爾公司
            網(wǎng)友詢問留言 已有0條留言
            • 還沒有人留言評論。精彩留言會獲得點贊!
            1
            婷婷六月激情在线综合激情,亚洲国产大片,久久中文字幕综合婷婷,精品久久久久久中文字幕,亚洲一区二区三区高清不卡,99国产精品热久久久久久夜夜嗨 ,欧美日韩亚洲综合在线一区二区,99国产精品电影,伊人精品线视天天综合,精品伊人久久久大香线蕉欧美
            亚洲精品1区 国产成人一级 91精品国产欧美一区二区 亚洲精品乱码久久久久久下载 国产精品久久久久久久伊一 九色国产 国产精品九九视频 伊人久久成人爱综合网 欧美日韩亚洲区久久综合 欧美日本一道免费一区三区 夜夜爽一区二区三区精品 欧美日韩高清一区二区三区 国产成人av在线 国产精品对白交换绿帽视频 国产视频亚洲 国产在线欧美精品 国产精品综合网 国产日韩精品欧美一区色 国产日韩精品欧美一区喷 欧美日韩在线观看区一二 国产区精品 欧美视频日韩视频 中文字幕天天躁日日躁狠狠躁97 视频一二三区 欧美高清在线精品一区二区不卡 国产精品揄拍一区二区久久 99久久综合狠狠综合久久aⅴ 亚洲乱码视频在线观看 日韩在线第二页 亚洲精品无码专区在线播放 成人亚洲网站www在线观看 欧美三级一区二区 99久久精品免费看国产高清 91麻豆国产在线观看 最新日韩欧美不卡一二三区 成人在线观看不卡 日韩国产在线 在线亚洲精品 亚洲午夜久久久久中文字幕 国产精品成人久久久久久久 精品国产一区二区在线观看 欧美精品国产一区二区三区 中文在线播放 亚洲第一页在线视频 国产午夜精品福利久久 九色国产 精品国产九九 国产永久视频 久久精品人人做人人综合试看 国产一区二区三区免费观看 亚洲精品国产电影 9999热视频 国产精品资源在线 麻豆久久婷婷国产综合五月 国产精品免费一级在线观看 亚洲国产一区二区三区青草影视 中文在线播放 国产成人综合在线 国产在线观看色 国产亚洲三级 国产片一区二区三区 久久99精品久久久久久牛牛影视 亚洲欧美日韩国产 四虎永久免费网站 国产一毛片 国产精品视频在 九九热在线精品 99精品福利视频 色婷婷色99国产综合精品 97成人精品视频在线播放 精品久久久久久中文字幕 亚洲欧美一区二区三区孕妇 亚洲欧美成人网 日韩高清在线二区 国产尤物在线观看 在线不卡一区二区 91网站在线看 韩国精品福利一区二区 欧美日韩国产成人精品 99热精品久久 国产精品免费视频一区 高清视频一区 精品九九久久 欧美日韩在线观看免费 91欧美激情一区二区三区成人 99福利视频 亚洲国产精品91 久热国产在线 精品久久久久久中文字幕女 国产精品久久久久久久久99热 成人自拍视频网 国产精品视频久久久久久 久久影院国产 国产玖玖在线观看 99精品在线免费 亚洲欧美一区二区三区导航 久久久久久久综合 国产欧美日韩精品高清二区综合区 国产精品视频自拍 亚洲一级片免费 久久久久久九九 国产欧美自拍视频 视频一区二区在线观看 欧美日韩一区二区三区久久 中文在线亚洲 伊人热人久久中文字幕 日韩欧美亚洲国产一区二区三区 欧美亚洲国产成人高清在线 欧美日韩国产码高清综合人成 国产性大片免费播放网站 亚洲午夜综合网 91精品久久一区二区三区 国产无套在线播放 国产精品视频网站 国产成人亚洲精品老王 91在线网站 国产视频97 欧美黑人欧美精品刺激 国产一区二区三区免费在线视频 久久久国产精品免费看 99re6久精品国产首页 久久精品91 国产成人一级 国产成人精品曰本亚洲 日本福利在线观看 伊人成综合网 久久综合一本 国产综合久久久久久 久久精品成人免费看 久久福利 91精品国产91久久久久久麻豆 亚洲精品成人在线 亚洲伊人久久精品 欧美日本二区 国产永久视频 国产一区二 一区二区福利 国产一毛片 亚洲精品1区 毛片一区二区三区 伊人久久大香线蕉综合影 国产欧美在线观看一区 亚洲国产欧洲综合997久久 国产一区二区免费视频 国产91精品对白露脸全集观看 久久亚洲国产伦理 欧美成人伊人久久综合网 亚洲性久久久影院 久久99国产精一区二区三区! 91精品国产欧美一区二区 欧美日韩亚洲区久久综合 日韩精品一二三区 久久久夜色精品国产噜噜 国产在线精品福利91香蕉 久久久久久久亚洲精品 97se色综合一区二区二区 91国语精品自产拍在线观看性色 91久久国产综合精品女同我 日韩中文字幕a 国产成人亚洲日本精品 久久国产精品-国产精品 久久国产经典视频 久久国产精品伦理 亚洲第一页在线视频 国产精品久久久久三级 日韩毛片网 久久免费高清视频 麻豆国产在线观看一区二区 91麻豆国产福利在线观看 国产成人精品男人的天堂538 一区二区三区中文字幕 免费在线视频一区 欧美日韩国产成人精品 国产综合网站 国产资源免费观看 亚洲精品亚洲人成在线播放 精品久久久久久中文字幕专区 亚洲人成人毛片无遮挡 国产一起色一起爱 国产香蕉精品视频在 九九热免费观看 日韩亚洲欧美一区 九九热精品在线观看 精品久久久久久中文字幕专区 亚洲欧美自拍偷拍 国产精品每日更新 久久久久国产一级毛片高清板 久久天天躁狠狠躁夜夜中文字幕 久久精品片 日韩在线毛片 国产成人精品本亚洲 国产成人精品一区二区三区 九九热在线观看 国产r级在线观看 国产欧美日韩精品高清二区综合区 韩国电影一区二区 国产精品毛片va一区二区三区 五月婷婷伊人网 久久一区二区三区免费 一本色道久久综合狠狠躁篇 亚洲综合色站 国产尤物在线观看 亚洲一区亚洲二区 免费在线视频一区 欧洲精品视频在线观看 日韩中文字幕a 中文字幕日本在线mv视频精品 91精品在线免费视频 精品国产免费人成在线观看 精品a级片 中文字幕日本在线mv视频精品 日韩在线精品视频 婷婷丁香色 91精品国产高清久久久久 国产成人精品日本亚洲直接 五月综合视频 欧美日韩在线亚洲国产人 精液呈暗黄色 亚洲乱码一区 久久精品中文字幕不卡一二区 亚洲天堂精品在线 激情婷婷综合 国产免费久久精品久久久 国产精品亚洲二区在线 久久免费播放视频 五月婷婷丁香综合 在线亚洲欧美日韩 久久免费精品高清麻豆 精品久久久久久中文字幕 亚洲一区网站 国产精品福利社 日韩中文字幕免费 亚洲综合丝袜 91精品在线播放 国产精品18 亚洲日日夜夜 伊人久久大香线蕉综合影 亚洲精品中文字幕乱码影院 亚洲一区二区黄色 亚洲第一页在线视频 一区二区在线观看视频 国产成人福利精品视频 亚洲高清二区 国内成人免费视频 精品亚洲性xxx久久久 国产精品合集一区二区三区 97av免费视频 国产一起色一起爱 国产区久久 国产资源免费观看 99精品视频免费 国产成人一级 国产精品九九免费视频 欧美91精品久久久久网免费 99热国产免费 久久精品色 98精品国产综合久久 久久精品播放 中文字幕视频免费 国产欧美日韩一区二区三区在线 精品久久蜜桃 国产小视频精品 一本色道久久综合狠狠躁篇 91在线免费观看 亚洲精品区 伊人成综合网 伊人热人久久中文字幕 伊人黄色片 99国产精品热久久久久久夜夜嗨 久久免费精品视频 亚洲一区二区三区高清不卡 久久久久国产一级毛片高清板 国产片一区二区三区 久久狠狠干 99久久婷婷国产综合精品电影 国产99区 国产精品成人久久久久 久久狠狠干 青青国产在线观看 亚洲高清国产拍精品影院 国产精品一区二区av 九九热在线免费视频 伊人久久国产 国产精品久久久久久久久久一区 在线观看免费视频一区 国产精品自在在线午夜区app 国产精品综合色区在线观看 国产毛片久久久久久国产毛片 97国产免费全部免费观看 国产精品每日更新 国产尤物视频在线 九九视频这里只有精品99 一本一道久久a久久精品综合 久久综合给会久久狠狠狠 国产成人精品男人的天堂538 欧美一区二区高清 毛片一区二区三区 国产欧美日韩在线观看一区二区三区 在线国产二区 欧美不卡网 91在线精品中文字幕 在线国产福利 国内精品91久久久久 91亚洲福利 日韩欧美国产中文字幕 91久久精品国产性色也91久久 亚洲性久久久影院 欧美精品1区 国产热re99久久6国产精品 九九热免费观看 国产精品欧美日韩 久久久久国产一级毛片高清板 久久国产经典视频 日韩欧美亚洲国产一区二区三区 欧美亚洲综合另类在线观看 国产精品自在在线午夜区app 97中文字幕在线观看 视频一二三区 精品国产一区在线观看 国产欧美日韩在线一区二区不卡 欧美一区二三区 伊人成人在线观看 国内精品91久久久久 97在线亚洲 国产在线不卡一区 久久久全免费全集一级全黄片 国产精品v欧美精品∨日韩 亚洲毛片网站 在线不卡一区二区 99re热在线视频 久久激情网 国产毛片一区二区三区精品 久久亚洲综合色 中文字幕视频免费 国产视频亚洲 婷婷伊人久久 国产一区二区免费播放 久久99国产精品成人欧美 99国产在线视频 国产成人免费视频精品一区二区 国产不卡一区二区三区免费视 国产码欧美日韩高清综合一区 久久精品国产主播一区二区 国产一区电影 久久精品国产夜色 国产精品国产三级国产 日韩一区二区三区在线 久久97久久97精品免视看 久久国产免费一区二区三区 伊人久久大香线蕉综合电影网 99re6久精品国产首页 久久激情网 亚洲成人高清在线 国产精品网址 国产成人精品男人的天堂538 香蕉国产综合久久猫咪 国产专区中文字幕 91麻豆精品国产高清在线 久久国产经典视频 国产精品成人va在线观看 国产精品爱啪在线线免费观看 日本精品久久久久久久久免费 亚洲综合一区二区三区 久久五月网 精品国产网红福利在线观看 久久综合亚洲伊人色 亚洲国产精品久久久久久网站 在线日韩国产 99国产精品热久久久久久夜夜嗨 国产综合精品在线 国产区福利 精品亚洲综合久久中文字幕 国产制服丝袜在线 毛片在线播放网站 在线观看免费视频一区 国产精品久久久精品三级 亚洲国产电影在线观看 最新日韩欧美不卡一二三区 狠狠综合久久综合鬼色 日本精品1在线区 国产日韩一区二区三区在线播放 欧美日韩精品在线播放 亚洲欧美日韩国产一区二区三区精品 久久综合久久网 婷婷六月激情在线综合激情 亚洲乱码一区 国产专区91 97av视频在线观看 精品久久久久久中文字幕 久久五月视频 国产成人福利精品视频 国产精品网址 中文字幕视频在线 精品一区二区三区免费视频 伊人手机在线视频 亚洲精品中文字幕乱码 国产在线视频www色 色噜噜国产精品视频一区二区 精品亚洲成a人在线观看 国产香蕉尹人综合在线 成人免费一区二区三区在线观看 国产不卡一区二区三区免费视 欧美精品久久天天躁 国产专区中文字幕 久久精品国产免费中文 久久精品国产免费一区 久久无码精品一区二区三区 国产欧美另类久久久精品免费 欧美精品久久天天躁 亚洲精品在线视频 国产视频91在线 91精品福利一区二区三区野战 日韩中文字幕免费 国产精品99一区二区三区 欧美成人高清性色生活 国产精品系列在线观看 亚洲国产福利精品一区二区 国产成人在线小视频 国产精品久久久久免费 99re热在线视频 久久久久久久综合 一区二区国产在线播放 成人国产在线视频 亚洲精品乱码久久久久 欧美日韩一区二区综合 精品久久久久免费极品大片 中文字幕视频二区 激情粉嫩精品国产尤物 国产成人精品一区二区视频 久久精品中文字幕首页 亚洲高清在线 国产精品亚洲一区二区三区 伊人久久艹 中文在线亚洲 国产精品一区二区在线播放 国产精品九九免费视频 亚洲二区在线播放 亚洲狠狠婷婷综合久久久久网站 亚洲欧美日韩网站 日韩成人精品 亚洲国产一区二区三区青草影视 91精品国产福利在线观看 国产精品久久久久久久久99热 国产一区二区精品尤物 久碰香蕉精品视频在线观看 亚洲日日夜夜 在线不卡一区二区 国产午夜亚洲精品 九九热在线视频观看这里只有精品 伊人手机在线视频 91免费国产精品 日韩欧美中字 91精品国产91久久久久 国产全黄三级播放 视频一区二区三区免费观看 国产开裆丝袜高跟在线观看 国产成人欧美 激情综合丝袜美女一区二区 国产成人亚洲综合无 欧美精品一区二区三区免费观看 欧美亚洲国产日韩 日韩亚州 国产欧美日韩精品高清二区综合区 亚洲午夜国产片在线观看 精品久久久久久中文字幕 欧美精品1区 久久伊人久久亚洲综合 亚洲欧美日韩精品 国产成人精品久久亚洲高清不卡 久久福利影视 国产精品99精品久久免费 久久久久免费精品视频 国产日产亚洲精品 亚洲国产午夜电影在线入口 精品无码一区在线观看 午夜国产精品视频 亚洲一级片免费 伊人久久大香线蕉综合影 国产精品久久影院 久碰香蕉精品视频在线观看 www.欧美精品 在线小视频国产 亚洲国产天堂久久综合图区 欧美一区二区三区不卡 日韩美女福利视频 九九精品免视频国产成人 不卡国产00高中生在线视频 亚洲第一页在线视频 欧美日韩在线播放成人 99re视频这里只有精品 国产精品91在线 精品乱码一区二区三区在线 国产区久久 91麻豆精品国产自产在线观看一区 日韩精品成人在线 九九热在线观看 国产精品久久不卡日韩美女 欧美一区二区三区综合色视频 欧美精品免费一区欧美久久优播 国产精品网址 国产专区中文字幕 国产精品欧美亚洲韩国日本久久 日韩美香港a一级毛片 久久精品123 欧美一区二区三区免费看 99r在线视频 亚洲精品国产字幕久久vr 国产综合激情在线亚洲第一页 91免费国产精品 日韩免费小视频 亚洲国产精品综合一区在线 国产亚洲第一伦理第一区 在线亚洲精品 国产精品一区二区制服丝袜 国产在线成人精品 九九精品免视频国产成人 亚洲国产网 欧美日韩亚洲一区二区三区在线观看 在线亚洲精品 欧美一区二区三区高清视频 国产成人精品男人的天堂538 欧美日韩在线观看区一二 亚洲欧美一区二区久久 久久精品中文字幕首页 日本高清www午夜视频 久久精品国产免费 久久999精品 亚洲国产精品欧美综合 88国产精品视频一区二区三区 91久久偷偷做嫩草影院免费看 国产精品夜色视频一区二区 欧美日韩导航 国产成人啪精品午夜在线播放 一区二区视频在线免费观看 99久久精品国产自免费 精液呈暗黄色 久久99国产精品 日本精品久久久久久久久免费 精品国产97在线观看 99re视频这里只有精品 国产视频91在线 999av视频 亚洲美女视频一区二区三区 久久97久久97精品免视看 亚洲国产成人久久三区 99久久亚洲国产高清观看 日韩毛片在线视频 综合激情在线 91福利一区二区在线观看 一区二区视频在线免费观看 激情粉嫩精品国产尤物 国产成人精品曰本亚洲78 国产成人精品本亚洲 国产精品成人免费视频 国产成人啪精品视频免费软件 久久精品国产亚洲妲己影院 国产精品成人久久久久久久 久久大香线蕉综合爱 欧美一区二区三区高清视频 99热国产免费 在线观看欧美国产 91精品视频在线播放 国产精品福利社 欧美精品一区二区三区免费观看 国产一区二区免费视频 国产午夜精品一区二区 精品视频在线观看97 91精品福利久久久 国产一区福利 国产综合激情在线亚洲第一页 国产精品久久久久久久久久久不卡 九色国产 在线日韩国产 黄网在线观看 亚洲一区小说区中文字幕 中文字幕丝袜 日本二区在线观看 日本国产一区在线观看 欧美日韩一区二区三区久久 欧美精品亚洲精品日韩专 国产日产亚洲精品 久久综合九色综合欧美播 亚洲国产欧美无圣光一区 欧美视频区 亚洲乱码视频在线观看 久久无码精品一区二区三区 九九热精品免费视频 久久99精品久久久久久牛牛影视 国产精品成久久久久三级 国产一区福利 午夜国产精品视频 日本二区在线观看 99久久网站 国产亚洲天堂 精品国产一区二区三区不卡 亚洲国产日韩在线一区 国产成人综合在线观看网站 久久免费高清视频 欧美在线导航 午夜精品久久久久久99热7777 欧美久久综合网 国产小视频精品 国产尤物在线观看 亚洲国产精品综合一区在线 欧美一区二区三区不卡视频 欧美黑人欧美精品刺激 日本福利在线观看 久久国产偷 国产手机精品一区二区 国产热re99久久6国产精品 国产高清啪啪 欧美亚洲国产成人高清在线 国产在线第三页 亚洲综合一区二区三区 99r在线视频 99精品久久久久久久婷婷 国产精品乱码免费一区二区 国产在线精品福利91香蕉 国产尤物视频在线 五月婷婷亚洲 中文字幕久久综合伊人 亚洲精品一级毛片 99国产精品电影 在线视频第一页 久久99国产精品成人欧美 国产白白视频在线观看2 成人精品一区二区www 亚洲成人网在线观看 麻豆91在线视频 色综合合久久天天综合绕视看 久久精品国产免费高清 国产不卡一区二区三区免费视 欧美国产中文 99精品欧美 九九在线精品 国产中文字幕在线免费观看 国产一区中文字幕在线观看 国产成人一级 国产精品一区二区制服丝袜 国产一起色一起爱 亚洲精品成人在线 亚洲欧美精品在线 国产欧美自拍视频 99精品久久久久久久婷婷 久99视频 国产热re99久久6国产精品 视频一区亚洲 国产精品视频分类 国产精品成在线观看 99re6久精品国产首页 亚洲在成人网在线看 亚洲国产日韩在线一区 久久国产三级 日韩国产欧美 欧美在线一区二区三区 国产精品美女一级在线观看 成人午夜免费福利视频 亚洲天堂精品在线 91精品国产手机 欧美日韩视频在线播放 狠狠综合久久综合鬼色 九一色视频 青青视频国产 亚洲欧美自拍一区 中文字幕天天躁日日躁狠狠躁97 日韩免费大片 996热视频 伊人成综合网 亚洲天堂欧美 日韩精品亚洲人成在线观看 久久综合给会久久狠狠狠 日韩精品亚洲人成在线观看 日韩国产欧美 亚洲成aⅴ人片在线影院八 亚洲精品1区 99久久精品免费 国产精品高清在线观看 国产精品久久久免费视频 在线亚洲欧美日韩 91在线看视频 国产精品96久久久久久久 欧美日韩国产成人精品 91在线亚洲 热久久亚洲 国产精品美女免费视频观看 日韩在线毛片 亚洲永久免费视频 九九免费在线视频 亚洲一区网站 日本高清二区视频久二区 精品国产美女福利在线 伊人久久艹 国产精品久久久久三级 欧美成人精品第一区二区三区 99久久精品国产自免费 在线观看日韩一区 国产中文字幕一区 成人免费午夜视频 欧美日韩另类在线 久久99国产精品成人欧美 色婷婷中文网 久久天天躁夜夜躁狠狠躁2020 欧美成人伊人久久综合网 国产精品福利资源在线 国产伦精品一区二区三区高清 国产精品亚洲综合色区韩国 亚洲一区欧美日韩 色综合视频 国语自产精品视频在线区 国产高清a 成人国内精品久久久久影 国产在线精品香蕉综合网一区 国产不卡在线看 国产成人精品精品欧美 国产欧美日韩综合精品一区二区三区 韩国电影一区二区 国产在线视频www色 91中文字幕在线一区 国产人成午夜免视频网站 亚洲综合一区二区三区 色综合视频一区二区观看 久久五月网 九九热精品在线观看 国产一区二区三区国产精品 99久热re在线精品996热视频 亚洲国产网 在线视频亚洲一区 日韩字幕一中文在线综合 国产高清一级毛片在线不卡 精品国产色在线 国产高清视频一区二区 精品日本久久久久久久久久 亚洲国产午夜精品乱码 成人免费国产gav视频在线 日韩欧美一区二区在线观看 欧美曰批人成在线观看 韩国电影一区二区 99re这里只有精品6 日韩精品一区二区三区视频 99re6久精品国产首页 亚洲欧美一区二区三区导航 欧美色图一区二区三区 午夜精品视频在线观看 欧美激情在线观看一区二区三区 亚洲热在线 成人国产精品一区二区网站 亚洲一级毛片在线播放 亚洲一区小说区中文字幕 亚洲午夜久久久久影院 国产自产v一区二区三区c 国产精品视频免费 久久调教视频 国产成人91激情在线播放 国产精品欧美亚洲韩国日本久久 久久亚洲日本不卡一区二区 91中文字幕网 成人国产在线视频 国产视频91在线 欧美成人精品第一区二区三区 国产精品福利在线 久久综合九色综合精品 欧美一区二区三区精品 久久国产综合尤物免费观看 久久99青青久久99久久 日韩精品免费 久久国产精品999 91亚洲视频在线观看 国产精品igao视频 色综合区 在线亚洲欧国产精品专区 国产一区二区三区在线观看视频 亚洲精品成人在线 一区二区国产在线播放 中文在线亚洲 亚洲精品第一国产综合野 国产一区二区精品久久 一区二区三区四区精品视频 99热精品久久 中文字幕视频二区 国产成人精品男人的天堂538 99精品影视 美女福利视频一区二区 久久午夜夜伦伦鲁鲁片 综合久久久久久久综合网 国产精品国产欧美综合一区 国产99视频在线观看 国产亚洲女在线精品 婷婷影院在线综合免费视频 国产亚洲3p一区二区三区 91成人爽a毛片一区二区 亚洲一区二区高清 国产欧美亚洲精品第二区首页 欧美日韩导航 亚洲高清二区 欧美激情观看一区二区久久 日韩毛片在线播放 亚洲欧美日韩高清中文在线 亚洲日本在线播放 国产精品一区二区制服丝袜 精品国产一区二区三区不卡 国产不卡在线看 国产欧美网站 四虎永久在线观看视频精品 国产黄色片在线观看 夜夜综合 一本色道久久综合狠狠躁篇 欧美亚洲综合另类在线观看 国产91在线看 伊人久久国产 欧美一区二区在线观看免费网站 国产精品久久久久三级 久久福利 日韩中文字幕a 亚洲午夜久久久久影院 91在线高清视频 国产亚洲一区二区三区啪 久久人精品 国产精品亚洲午夜一区二区三区 综合久久久久久 久久伊人一区二区三区四区 国产综合久久久久久 日韩一区精品视频在线看 国产精品日韩欧美制服 日本精品1在线区 99re视频 无码av免费一区二区三区试看 国产视频1区 日韩欧美中文字幕一区 日本高清中文字幕一区二区三区a 亚洲国产欧美无圣光一区 国产在线视频一区二区三区 欧美国产第一页 在线亚洲欧美日韩 日韩中文字幕第一页 在线不卡一区二区 伊人久久青青 国产精品一区二区在线播放 www.五月婷婷 麻豆久久婷婷国产综合五月 亚洲精品区 久久国产欧美另类久久久 99在线视频免费 伊人久久中文字幕久久cm 久久精品成人免费看 久久这里只有精品首页 88国产精品视频一区二区三区 中文字幕日本在线mv视频精品 国产在线精品成人一区二区三区 伊人精品线视天天综合 亚洲一区二区黄色 国产尤物视频在线 亚洲精品99久久久久中文字幕 国产一区二区三区免费观看 伊人久久大香线蕉综合电影网 国产成人精品区在线观看 日本精品一区二区三区视频 日韩高清在线二区 久久免费播放视频 一区二区成人国产精品 国产精品免费精品自在线观看 亚洲精品视频二区 麻豆国产精品有码在线观看 精品日本一区二区 亚洲欧洲久久 久久中文字幕综合婷婷 中文字幕视频在线 国产成人精品综合在线观看 91精品国产91久久久久福利 精液呈暗黄色 香蕉国产综合久久猫咪 国产专区精品 亚洲精品无码不卡 国产永久视频 亚洲成a人片在线播放观看国产 一区二区国产在线播放 亚洲一区二区黄色 欧美日韩在线观看视频 亚洲精品另类 久久国产综合尤物免费观看 国产一区二区三区国产精品 高清视频一区 国产精品igao视频 国产精品资源在线 久久综合精品国产一区二区三区 www.五月婷婷 精品色综合 99热国产免费 麻豆福利影院 亚洲伊人久久大香线蕉苏妲己 久久电影院久久国产 久久精品伊人 在线日韩理论午夜中文电影 亚洲国产欧洲综合997久久 伊人国产精品 久草国产精品 欧美一区精品二区三区 亚洲成人高清在线 91免费国产精品 日韩精品福利在线 国产一线在线观看 国产不卡在线看 久久99青青久久99久久 亚洲精品亚洲人成在线播放 99久久免费看国产精品 国产日本在线观看 青草国产在线视频 麻豆久久婷婷国产综合五月 国产中文字幕一区 91久久精品国产性色也91久久 国产一区a 国产欧美日韩成人 国产亚洲女在线精品 一区二区美女 中文字幕在线2021一区 在线小视频国产 久久这里只有精品首页 国产在线第三页 欧美日韩中文字幕 在线亚洲+欧美+日本专区 精品国产一区二区三区不卡 久久这里精品 欧美在线va在线播放 精液呈暗黄色 91精品国产手机 91在线免费播放 欧美视频亚洲色图 欧美国产日韩精品 日韩高清不卡在线 精品视频免费观看 欧美日韩一区二区三区四区 国产欧美亚洲精品第二区首页 亚洲韩精品欧美一区二区三区 国产精品视频免费 在线精品小视频 久久午夜夜伦伦鲁鲁片 国产无套在线播放 久热这里只精品99re8久 欧美久久久久 久久香蕉国产线看观看精品蕉 国产成人精品男人的天堂538 亚洲人成网站色7799在线观看 日韩在线第二页 一本色道久久综合狠狠躁篇 国产一区二区三区不卡在线观看 亚洲乱码在线 在线观看欧美国产 久久福利青草精品资源站免费 国产玖玖在线观看 在线亚洲精品 亚洲成aⅴ人在线观看 精品91在线 欧美一区二三区 日韩中文字幕视频在线 日本成人一区二区 日韩免费专区 国内精品在线观看视频 久久国产综合尤物免费观看 国产精品系列在线观看 一本一道久久a久久精品综合 亚洲免费播放 久久精品国产免费 久久人精品 亚洲毛片网站 亚洲成a人一区二区三区 韩国福利一区二区三区高清视频 亚洲精品天堂在线 一区二区三区中文字幕 亚洲国产色婷婷精品综合在线观看 亚洲国产成人久久笫一页 999国产视频 国产精品香港三级在线电影 欧美日韩一区二区三区四区 日韩国产欧美 国产精品99一区二区三区 午夜国产精品理论片久久影院 亚洲精品中文字幕麻豆 亚洲国产高清视频 久久免费手机视频 日韩a在线观看 五月婷婷亚洲 亚洲精品中文字幕麻豆 中文字幕丝袜 www国产精品 亚洲天堂精品在线 亚洲乱码一区 国产日韩欧美三级 久久999精品 伊人热人久久中文字幕 久热国产在线视频 国产欧美日韩在线观看一区二区三区 国产一二三区在线 日韩国产欧美 91精品国产91久久久久 亚洲一区小说区中文字幕 精品一区二区免费视频 国产精品视频免费 国产精品亚洲综合色区韩国 亚洲国产精品成人午夜在线观看 欧美国产日韩精品 中文字幕精品一区二区精品