至少一個處理流水線中的操作數生成的制作方法

            文檔序號:6549159閱讀:238來源:國知局
            至少一個處理流水線中的操作數生成的制作方法
            【專利摘要】本發明公開了一種至少一個處理流水線中的操作數生成。一種數據處理設備2具有至少一個處理流水線4,所述至少一個處理流水線4具有第一流水線級6、8,第二流水線級10以及第三流水線級12。所述第一流水線級6、8檢測要被處理的指令流是否包括預定指令序列,所述預定指令序列包括用于執行第一和第二操作數生成操作的第一指令和第二指令30、32,其中所述第二操作數生成操作依賴于所述第一操作數生成操作的結果。響應于檢測到這個指令序列,所述第一流水線級6、8生成經修改的指令流,其中至少所述第二指令32被用第三指令70代替以用于執行具有與所述第一和第二操作數生成操作相同的效果的組合操作數生成操作。因為所述第三指令70能夠獨立于所述第一指令30被調度,所以能夠改進所述流水線4的處理性能。
            【專利說明】至少一個處理流水線中的操作數生成

            【技術領域】
            [0001]本發明涉及數據處理領域。更特別地,本發明涉及在處理器的至少一個處理流水線中的操作數(operand)的生成。

            【背景技術】
            [0002]處理器可以有具有用于處理指令的若干流水線級的處理流水線。用于執行特定操作的指令可能需要特定流水線級來處理該操作。如果需要的操作數不可及時用于使用該操作數的流水線級,則指令可能需要被延遲并且在后一處理周期中發出,這降低了處理性能。本技術尋求解決這個問題,并且通過處理流水線來提高指令的吞吐量。


            【發明內容】

            [0003]從一個方面來看,本發明提供了一種處理器,其包括:
            [0004]被配置為處理指令流的至少一個處理流水線,所述至少一個處理流水線包括第一流水線級、第二流水線級和第三流水線級;其中:
            [0005]第一流水線級被配置為檢測指令流是否包括預定指令序列,所述預定指令序列包括用于在第三流水線級執行第一操作數生成操作的第一指令和用于在第二流水線級執行第二操作數生成操作的第二指令,其中第二操作數生成操作依賴于第一操作數生成操作的結果;以及
            [0006]響應于檢測到指令流包括所述預定指令序列,第一流水線級被配置為生成經修改的指令流以供由至少一個處理流水線處理,其中至少第二指令被用于執行組合操作數生成操作的第三指令代替以便生成一操作數,其相當于如果第二操作數生成操作在第一操作數生成操作之后被執行則將會被生成的操作數。
            [0007]處理流水線可以處理預定指令系列,其中第一指令執行第一操作數生成操作并且第二指令執行依賴于第一操作數生成操作的結果的第二操作數生成操作。這種依賴性限制這些指令能夠被處理時的時序,因為第二指令在其能夠繼續進行第二操作數生成操作之前必須等待第一指令的結果。可能不得不延遲第二指令持續一個或多個周期,從而放慢這些指令的總體處理。
            [0008]為了解決這個問題,流水線的第一流水線級檢測要被處理的指令流是否包括預定指令序列。如果預定指令序列被檢測到,則經修改的指令流被生成以供由流水線處理,其中至少第二指令被用第三指令代替以用于執行組合操作數生成操作。組合操作數生成操作具有與如果第二操作數生成操作在第一操作數生成操作之后被執行則將發生的效果相同的效果。因為兩個操作數生成操作的組合現能夠使用一條指令來執行,所以這消除了依賴性問題并且釋放流水線以獨立于第一指令對第三指令進行調度。在許多情況下,這允許第三指令比如果第一和第二指令被流水線以它們原始的形式處理早至少一個周期來被處理。
            [0009]如果第一、第二和第三流水線級為使得即在第一流水線級處的指令需要一定數量的處理周期到達第二流水線級并且需要至少該數目的周期到達第三流水線級,則這種技術是特別有用的。因為用于執行第一操作數生成操作的第三流水線級與用于執行第二操作數生成操作的第二流水線級相比是在相同的級處或進一步在流水線下方,所以這使得第一和第二指令難以在背對背處理周期內被調度,因為在第三流水線級中的第一操作數生成操作的結果能夠被及時轉發回到第二流水線級以用于第二操作數生成操作是不太可能的。因此,可能的是,以它們原始的形式處理第一和第二指令將在流水線中引起氣泡(在沒有指令正被流水線級處理時的處理周期),因此通過用經修改的第三指令代替至少第二指令以用于執行組合操作數生成操作來打破依賴性對于避免氣泡并且加速處理是有用的。
            [0010]由組合操作數生成操作所生成的或者由第一和第二操作數生成操作所生成的操作數可以是由被流水線處理的指令所使用的任何值。例如,操作數可以是地址。
            [0011 ] 在一個示例中,第一操作數生成操作可以用于生成操作數的第一部分并且第二操作數生成操作可以用于生成包括第一部分和第二部分兩者的全操作數。組合操作數生成操作還可以生成包括第一和第二部分兩者的全操作數。當要被生成的操作數大于可用于在單指令的編碼中表示操作數的位的數目時,操作數的這種兩級生成是特別有用的。第三指令能夠在一條指令中生成較大的操作數,因為它是由第一級所生成的內部生成指令,而不是已被程序設計員或編譯器編碼的存儲在存儲器中的指令,因此第三指令不需要遵循針對正被使用的指令集的正常編碼規則。能夠使用控制至少一個流水線執行組合操作數生成操作所必需的任何信息在經修改的指令流中表示第三指令。
            [0012]第一操作數生成操作可以包括通過將偏移值加到存儲在諸如寄存器的存儲位置中的基值的至少一部分來生成操作數的第一部分。例如,基值可以是指示要被處理的指令(例如,當前處理的指令或要被處理的下一條指令)的地址的程序計數器,在這種情況下第一操作數生成操作將生成相對于程序計數器已被偏移的地址。
            [0013]當表示第二指令應該被用第三指令代替所針對的預定指令序列時第一流水線級不需要檢測第一和第二指令的所有發生。有時,即使存在如上面所提到的第一和第二指令也可能不期望用第三指令代替第二指令。例如,在操作數基于程序計數器的一部分被生成的情況下,如果第一和第二指令對于用于操作數生成的程序計數器的部分具有相同的值則第一流水線級可以檢測預定指令序列。否則,第三指令(其將典型地具有同第二指令相同的地址)能夠將不同的結果給予給第一和第二指令的組合,因為用于第三指令的程序計數器的部分可以不同于第一指令的部分。通過只是在第一和第二指令對于程序計數器的有關部分共享相同的值的時候執行用第三指令代替第二指令,能夠保證正確的結果。
            [0014]第一操作數生成操作可以將偏移值加到基值的最高有效部分。在執行這個加法之前可能需要轉移偏移值以便將它與基值的最高有效部分對齊。在程序計數器的情況下,最高有效部分可以表示地址的頁面部分,指示包括正被處理的指令的存儲器的頁面。通過將偏移加到程序計數器的頁面部分,第一操作數生成操作能夠確定地址空間的不同頁面的地址,例如包括要被訪問的文字值的頁面。第一操作數生成操作可以掩蔽基值的最低有效部分,以便在存儲器的頁面內的頁面偏移不由這個操作來確定。第二操作數生成操作然后可以將立即值加到第一操作數生成操作的結果的最低有效部分,以便提供要被訪問的數據值的全存儲器地址。在一些架構中,存儲器地址可以具有比可用于對操作數進行編碼的指令中的編碼空間更大數目的位(例如,32位地址可以用僅具有可用于對操作數進行編碼的21個位的指令來生成)。在這種情況下,使用序列中的第一和第二指令的兩部分地址生成可能是有用的,并且為了提高性能,能夠用使用單指令來生成全存儲器地址的第三指令代替至少第二指令。
            [0015]預定序列的第二指令可以使用由第二操作數生成操作所生成的操作數來執行進一步的處理操作。類似地,代替第二指令的第三指令可以執行相同的處理操作。這種處理操作可以包括用于從存儲器加載具有由所生成的操作數所標識的地址的數據值的加載操作、用于將具有由所生成的操作數所標識的地址的數據值存儲到存儲器的存儲操作、諸如使用所生成的操作數的加、減或乘操作的算術操作、以及諸如使用所生成的操作數的與、或、與非或異或操作的邏輯操作中的至少一個。
            [0016]替換地,第二指令及其代替第三指令可以簡單地將所生成的操作數存儲到它能夠被另一指令訪問所在的存儲位置(例如寄存器)。因此,第二和第三指令沒有必要執行其它操作以及操作數生成。能夠在流水線的特定實施方式中視需要而定在第二流水線級或第三流水線級中處理在經修改的序列中代替第二指令的第三指令。
            [0017]因為第三指令具有與第一和第二指令的第一和第二操作數生成操作的組合相同的效果,所以可以省略來自經修改的流的第一指令以及第二指令,以便第三指令代替預定指令序列的第一和第二指令兩者。
            [0018]然而,第二指令可能不是使用第一指令的結果的唯一指令。例如,相同的第一指令可以被其中每個都使用相同部分操作數生成的若干后續指令共享。例如,第一指令可以像上面所討論的那樣生成存儲器中的特定頁面的地址,并且然后與第二指令類似的若干指令可以訪問相同頁面內的不同地址。在這種情況下,即使不需要這個用于執行第三指令,也可能仍然需要完成第一指令。因此,經修改的指令流可以包括第一指令和第三指令兩者,以便在經修改的流中僅第二指令被第三指令代替。流水線可以獨立于第一指令的處理對第三指令的處理進行調度。能夠在相同的周期內或者在連續處理周期內發出第一和第三指令,并且第一指令的結果是否將及時為第三指令做好準備是無關緊要的。
            [0019]經修改的指令流為什么可以仍然包括第一指令的另一原因是在一些情況下第一指令可能已經被發出以供在遇到第二指令的時候執行。即使其結果對于代替第二指令的第三指令不是需要的,讓第一指令完成執行也可能是更高效的。
            [0020]為了確定第一指令是否應被保持在經修改的流內,第一流水線級可以確定指令流是否包括依賴于第一指令的第一操作數生成操作的結果的第四指令。如果存在使用第一指令的結果的第四指令,則能夠保持第一指令,否則能夠省略第一指令。
            [0021]然而,第一流水線級無法訪問整個指令流,或者也許不能肯定地確定是否存在使用第一指令的結果的后續指令。總是將第一指令包括在經修改的指令流中而不管是否存在將使用這個結果的后續指令可能是較簡單的。這在硬件方面可能是更高效的。
            [0022]替換地,雖然第一流水線級無法總是能夠確定是否將存在使用第一指令的結果的后續指令,但是可能存在其中保證了不可能存在使用第一操作數生成操作的結果的后續指令的特定情形。例如,在指令流中緊跟第二指令之后的指令能夠重寫第一指令向其寫入第一操作數生成操作的結果的寄存器。在這種情況下,不可能存在取決于第一操作數生成操作的結果的任何另外的指令將是已知的,并且在這種情況下第一指令能夠被用第三指令代替。因此,第一流水線級可以確定后續指令是否可能依賴于第一操作數生成操作的結果,并且如果知道了不可能存在后續依賴指令,則第一指令和第二指令可以被用第三指令代替,然而如果后續指令可能是依賴的,則僅第二指令被代替。
            [0023]第一和第二指令在原始的指令流中不需要與彼此相鄰。第一流水線級可以檢測在第一和第二指令之間包括一個或多個中間指令的指令序列作為預定指令序列。為了降低第一流水線級中用于檢測這樣的序列的硬件的復雜度,定義可以在第一和第二指令之間出現的中間指令的最大數目N以便這樣的序列被檢測到是有用的。在實踐中,一旦已發生若干中間指令,則在第一和第二指令之間的依賴性(cbpendency)就變得不太可能,因為更可能的是,第一指令將在第二指令到達第二流水線級之前已完成。通過減少針對第一指令和第二指令的存在而被檢查的序列中的連續指令的數目,能夠降低這種檢測的硬件開銷。
            [0024]一些流水線級可以將最大數目N設置為零,以便僅具有彼此相鄰的第一和第二指令的預定指令序列被檢測到。其它系統可以定義非零數目的中間指令。例如,如果N= 2,則第一流水線級可以檢查每一組四條連續指令以檢測它們是否包含如上面所討論的一對第一和第二指令。
            [0025]執行預定指令序列的檢測的第一流水線級可以是流水線的任何級。例如,第一流水線級可以是對指令進行解碼的解碼級并且經修改的指令流可以是解碼的指令流,以便當第二指令被解碼時,檢查了它是否跟隨最近的第一指令,并且如果是這樣的話,則第二指令被用解碼的第三指令代替。替換地,第一流水線級可以是發出級,該發出級控制指令被發出以由流水線處理的時序。第一流水線級可是與第二流水線級和第三流水線級中的一個相同的級。
            [0026]分別執行第二和第一操作數生成操作的第二和第三流水線級可以位于相同的處理流水線內或不同的流水線內。并且第二和第三流水線級事實上可以是在特定流水線內的相同流水線級。
            [0027]雖然能夠在亂序處理器中使用本技術,但是它在有序處理器中是特別有用的。即使發生數據依賴性危害,亂序處理器也能夠通過改變指令按照其被發出以供執行的順序來確保轉發進度。然而,這在有序處理器中是不可能的,在所述有序處理器中指令被按照它們原始的程序順序發出。在有序處理流水線中,如果第一和第二指令被流水線以它們原始的形式處理并且在連續周期內發出,以及第一指令的結果將不可及時用于供在第二流水線級處的第二指令使用,則第二指令將不得不被延遲一個處理周期。由于處理器的有序性質,同時處理另一指令將不是可能的。因此,在流水線中將存在氣泡,這降低處理性能。相比之下,采用本技術,數據依賴性通過用第三指令代替第二指令而被避免,因此對第三指令能夠在其中被發出的周期沒有約束。即使第一指令留在經修改的流中,第三指令也不依賴于第一指令,因此能夠在相同的處理周期內或者在連續周期內發出這些指令。
            [0028]從另一方面來看,本發明提供了一種處理器,其包括:
            [0029]用于處理指令流的至少一個處理流水線裝置,所述至少一個處理流水線裝置包括用于處理指令的第一、第二和第三流水線級裝置;其中:
            [0030]第一流水線級裝置被配置為檢測指令流是否包括預定指令序列,所述預定指令序列包括用于在第三流水線級裝置處執行第一操作數生成操作的第一指令和用于在第二流水線級裝置處執行第二操作數生成操作的第二指令,其中第二操作數生成操作依賴于第一操作數生成操作的結果;以及
            [0031]響應于檢測到指令流包括所述預定指令序列,第一流水線級裝置被配置為生成經修改的指令流以供由至少一個處理流水線裝置處理,其中至少第二指令被用用于執行組合操作數生成操作的第三指令代替以便生成一操作數,其相當于如果第二操作數生成操作在第一操作數生成操作之后被執行則將被生成的操作數。
            [0032]從另一個方面來看,本發明提供了一種用于包括被配置為處理指令流的至少一個處理流水線的處理器的數據處理方法,所述至少一個處理流水線包括第一流水線級、第二流水線級以及第三流水線級;所述方法包括:
            [0033]在第一流水線級處檢測指令流是否包括預定指令序列,所述預定指令序列包括用于在第三流水線級處執行第一操作數生成操作的第一指令和用于在第二流水線級處執行第二操作數生成操作的第二指令,其中第二操作數生成操作依賴于第一操作數生成操作的結果;以及
            [0034]響應于檢測到指令流包括所述預定指令序列,第一流水線級生成經修改的指令流以供由至少一個處理流水線處理,其中至少第二指令被用用于執行組合操作數生成操作的第三指令代替以便生成一操作數,其相當于如果第二操作數生成操作在第一操作數生成操作之后被執行則將被生成的操作數。
            [0035]從另一方面來看,本發明提供了存儲至少一個計算機程序的計算機可讀存儲媒體,所述至少一個計算機程序當在計算機上被執行時,控制計算機提供與上面所描述的處理器相對應的虛擬機環境。
            [0036]從另一方面來看,本發明提供了存儲至少一個計算機程序的計算機可讀存儲媒體,所述至少一個計算機程序當在計算機上被執行時,控制計算機提供用于執行上面所描述的方法的虛擬機環境。
            [0037]這些計算機可讀存儲媒體可以是非暫時性的。虛擬機可以由至少一個計算機程序來實現,所述至少一個計算機程序當在計算機上被執行時,控制計算機表現得好像它是具有如上面所討論的一個或多個流水線的處理器,以便即使計算機不具有與處理器相同的硬件和/或架構,在計算機上執行的指令也被執行好像它們在處理器上被執行。虛擬機環境允許本機系統通過運行與非本機代碼被設計所針對的非本機系統相對應的虛擬機來執行非本機代碼。因此,在虛擬機環境中虛擬機程序可以用如上面所討論的第三指令代替至少第二指令。

            【專利附圖】

            【附圖說明】
            [0038]本發明的上述和其它目的、特征以及優點從將被連同附圖一起閱讀的說明性實施例的以下【具體實施方式】將是顯而易見的,在附圖中:
            [0039]圖1示出了處理流水線的示例;
            [0040]圖2A和2B分別示出了原始的指令流和經修改的指令流;
            [0041]圖3示出了第一地址生成操作;
            [0042]圖4示出了第二地址生成操作;
            [0043]圖5示出了具有與第一和第二地址生成操作的組合相同的結果的組合地址生成操作;
            [0044]圖6是示出了圖2A的指令能夠被執行的時序的時序圖;
            [0045]圖7是示出了圖2B的指令在準許指令的雙重發出的系統中被執行的時序的時序圖;
            [0046]圖8是示出了圖2B的指令在每周期只能發出單個指令的系統中的被執行的時序的時序圖;
            [0047]圖9示出了在流水線中處理指令的方法;
            [0048]圖10示出了其中存在兩個處理流水線的示例;以及
            [0049]圖11示出了本技術的虛擬機實現方式。

            【具體實施方式】
            [0050]圖1示出了具有處理流水線4的數據處理設備2的一部分的示例。流水線4具有:解碼級6,其用于對從存儲器取出的指令進行解碼;發出級8,其用于發出指令以供由后續級處理;以及第一執行級10、第二執行級12和第三執行級14,其用于響應于執行的指令來執行各種操作。在這個示例中,在解碼級6處的指令需要一個處理周期到達發出級8,并且分別需要兩個、三個以及四個處理周期到達第一、第二以及第三執行級10、12、14。將了解的是,處理器2和流水線4可以包括未在圖1中示出的其它級和元件。
            [0051]在這個示例中第一執行級10具有用于從寄存器讀取操作數值的寄存器讀取電路16和用于生成地址的地址生成單元(AGU) 18。第二執行級12包括用于執行算術操作(諸如加、減、乘以及除操作)和邏輯操作(諸如按位與、或、或異或操作)的算術邏輯單元(ALU) 20。第二執行級12同樣包括用于訪問緩存和用于執行加載/存儲操作的數據緩存存取電路22。AGU18是特殊的地址生成單元,其被提供來在流水線4的相對早期的流水線級處執行若干常見地址生成操作以便后續級能夠使用該地址。例如,第二執行級12中的數據緩存存取電路22能夠加載或者存儲具有由第一執行級10中的AGU18所生成的地址的數據值。在流水線的早期級提供AGU18幫助降低存儲器訪問等待時間。其它電路可以位于第一和第二執行級10、12中以及位于第三執行級14和未在圖1示出的后續流水線級中。
            [0052]圖2A示出了包括第一指令30和第二指令32的指令序列的示例。第一指令30是用于生成地址的第一部分的ADRP指令。圖3示出了響應于ADRP指令30由第二執行級12中的ALU20執行的第一地址生成操作。ADRP指令30指定目的地寄存器x0和立即值(immediatevalue) #immhi0 ADRP指令30同樣使用存儲在數據處理設備2的程序計數器寄存器中的程序計數器pc。程序計數器pc指示要被處理的指令(例如,當前指令或下一條指令)的地址。程序計數器在ADRP指令30的編碼中未被顯式地標識。如圖3所示,響應于ADRP指令30,ALU20使用與操作將程序計數器值40與掩碼42相組合以生成具有與程序計數器寄存器的對應部分相同的上部46和具有比特位值O的下部48的掩蔽的程序計數器值44。掩碼42被預先確定,從而使得:程序計數器的上部46對應于存儲器頁面的頁面地址,而下部48對應于該頁面內的偏移,該存儲器頁面包括要被處理的指令的地址。ALU20然后將經掩蔽的程序計數器值44加到立即值其通過執行移位操作而與程序計數器的上部46對齊。經掩蔽的程序計數器值44和經移位的立即值50的和被存儲到寄存器xO,并且表示存儲器地址空間的另一頁面的頁面地址52。視需要第一操作數生成操作在另一實施例中能夠由AGU18代替ALU20來執行。
            [0053]圖2A的第二指令32是用于將當前存儲在寄存器中的數據值存儲到存儲器內的位置的存儲指令STR。存儲指令32指定存儲要被存儲到存儲器的數據值的源寄存器《1、存儲操作數的第二寄存器xO以及要被加到存儲在寄存器xO中的操作數的立即值以獲得數據值的全地址。寄存器xO與ADRP指令30的目的地寄存器xO相同,因此存儲指令32依賴于ADRP指令30。圖4示出了由AGU18響應于存儲指令32所執行的第二地址生成操作。緊跟ADRP30指令的執行之后,源寄存器xO包含由第一地址生成操作所生成的頁面地址52。響應于存儲指令32,AGU18將立即值#immlo54加到頁面地址52以產生包括頁面地址52和由立即值所表示的頁面偏移54兩者的全地址56。全地址56被數據緩存存取電路22用于后續存儲操作。
            [0054]因為存儲指令32的第二地址生成操作需要ADRP指令30的結果,所以處理這些指令對它們能夠被調度時的時序構成約束。圖3的第一地址生成操作在ALU20處被執行,因此這個結果直到ADRP指令到達第二執行級12為止才可用。雖然在圖1的流水線中存在可用的潛在轉發路徑60,但是這些能夠將第一地址生成的結果返回給AGU18直到下一個周期為止是不可能的,因此存儲指令32直到緊跟在ALU20中完成第一地址生成之后的周期為止才能夠被AGU18處理。如圖6所示,這意味著將需要在ADRP指令30之后兩個周期發出存儲指令32以給予足夠時間以便ADRP指令的結果被轉發到第一執行級10以供在處理該存儲指令時使用。因此,氣泡65可能在流水線中發生(在處理周期2中沒有正被第一執行級處理的指令)。在有序處理器中,這種氣泡不能夠通過在存儲指令32之前發出另一指令來填充。因此,在給定時段內能夠處理較少的指令,因此降低了性能。
            [0055]為了解決這個問題,解碼級6可以檢查所接收到的指令流以檢測圖2A中所示出的類型的序列,其中用于執行第二操作數生成操作的第二指令32取決于用于執行第一操作數生成操作的第一指令30。第一和第二指令30、32不需要是連續的,并且在第一指令30與第二指令32之間可以存在多一個中間指令。當檢測到這種類型的序列時,解碼級6用圖2B中所示出的經修改的指令序列代替它,其中至少第二指令被用執行組合地址生成操作的經修改的存儲指令STR*70 ( “第三指令”)代替。組合地址生成操作由AGU18來執行以便存儲操作能夠被數據緩存存取電路22在下一個周期內執行。
            [0056]如圖5所示,響應于第三指令而執行的組合地址生成操作將程序計數器40與掩碼42相組合并且然后將經掩蔽的程序計數器值44加到其中上部立即值和下部立即值被串級的組合立即值72。經掩蔽的程序計數器值44和組合立即值72的和產生包括頁面地址52和頁面偏移54兩者的全地址56,其與圖4中所示出的第二地址生成的結果相同。因此,組合地址生成操作具有與如果第一和第二地址生成操作已被依次執行則將會發生相同的結果。用于執行組合地址生成的經修改的存儲指令70不再取決于ADRP指令30,因此能夠被調度成在相同的周期內或在連續周期內被執行。如圖7所示,在其中可以每周期發出多條指令的系統中,能夠在相同的周期內發出ADRP指令30和經修改的存儲指令70以提高處理性能。
            [0057]替換地,如果流水線每周期僅能夠發出一條指令,則能夠像圖8中所示出的那樣在連續周期內發出ADRP和經修改的存儲指令30、70,這將仍然允許存儲指令70比在圖6中早一個周期被處理。
            [0058]雖然ADRP指令30對于針對經修改的存儲指令70生成正確結果來說不再是必要的,但是可以存在需要由ADRP指令30放入寄存器xO的值的后續指令,因此可能仍然有必要執行ADRP指令30。如果知道了不可能存在使用xO中的值的任何另外的指令,例如如果后續指令重寫xO中的值,則ADRP指令30還能夠被用經修改的存儲指令70代替。
            [0059]使用地址生成指令30的結果的指令32不必是存儲指令,并且還可能是加載指令或由ALU20使用由第一指令30所生成的值所執行的算術或邏輯指令。由這些指令所生成的操作數可以是任何操作數而不只是地址。可以在流水線的任何級中執行組合操作,所以像上面所討論的那樣使用第一執行級10中的AGU18來執行這個操作不是必要的。并且,在一些實施方式中第一執行級10可以與發出級8組合在單個流水線級中,以便能夠在相同的處理周期內執行在AGU18中的指令發出、寄存器讀取以及地址生成。
            [0060]在上面所討論的示例中,解碼級6檢測預定指令序列并且用經修改的指令流代替它,但其還能夠在發出級8處執行。例如,解碼級6或發出級8可以具有帶特定數目N個條目的FIFO(先進先出)緩沖器,并且由該級6、8所接收到的每條指令都可以被寫入FIFO緩沖器,其中來自緩沖器的最舊指令被驅逐以為新的指令讓路。在每個處理周期內,如果FIFO緩沖器包括第一指令30和第二指令32兩者則解碼級6或發出級8可以檢測預定序列,所述第二指令依賴于第一指令30并且對其來說如果這些指令被以它們原始的形式處理則預期第一指令30不會及時為第二指令32產出其結果。FIFO緩沖器中條目的數目J確定能夠在作為預定序列檢測到的第一和第二指令之間發生的中間指令的最大數目(N = J-2)。
            [0061]圖9示出了在流水線中處理指令的方法。在步驟100處,第一流水線級(例如,解碼級6或發出級8)檢測要被處理的指令流是否包括預定指令序列,所述預定指令序列包括用于執行第一操作數生成的第一指令和用于執行依賴于第一操作數生成的第二操作數生成的第二指令。如果操作數生成使用程序計數器的一部分,則步驟100還可以檢查第一和第二指令是否對于程序計數器的有關部分具有相同的值,不然的話可以不檢測預定指令序列。如果預定指令序列未被檢測到,則不進行指令代替并且原始的指令被流水線處理。方法然后返回到步驟100以進行后續處理周期。
            [0062]如果預定指令序列被檢測到,則在步驟102處確定了第一指令是已經被發出,還是存在,或者可能存在除使用第一指令的結果的第二指令以外的后續指令。如果第一指令已經被發出,則允許指令完成將更加有效,即使其結果不是任何其它指令所需要的。因此,在步驟104處,僅第二指令被提供了相當于依次執行第一和第二操作數生成操作的組合操作數生成操作的經修改的第三指令代替。并且,如果存在或者可能存在除依賴于第一指令的結果的第二指令以外的后續指令,則第一指令應該留在經修改的流中,因此再一次在步驟104處僅第二指令被用第三指令代替。另一方面,如果第一指令仍然尚未被發出,并且不可能存在使用第一操作數生成的結果的后續指令,則在步驟106處,第一和第二指令兩者都被用組合指令代替。在可以代替第一和第二指令兩者的情況下,則這是有用的,因為消除第一指令釋放能夠被用于處理另一指令的流水線中的插槽。然而,在實踐中,用于檢測這種可能性的硬件是復雜的并且總是選取步驟104以便僅第二指令被第三指令代替以及第一指令留在經修改的指令流中是更有效的。方法然后返回到步驟100以進行以下的處理周期。
            [0063]雖然圖1示出了具有通過它的多個處理路徑的單個處理流水線,但是如圖10所示提供多個執行流水線120、130也是可能的。提供了被流水線120、130兩者所共享的公共解碼級6和公共發出級8。發出級8取決于在每個流水線中可用的功能性、指令的類型和/或每個流水線120、130的當前處理工作負荷來確定要將指令發出到哪一個流水線120、130。如圖10所示,包括ALU20和AGU18的流水線級可以是在不同的流水線120、130內,但在由這些級所處理的指令之間仍然可能發生數據依賴性問題。因此,在這個實施例中用第三指令70代替第二指令32同樣提供性能改進。
            [0064]圖11示出了可以被使用的虛擬機實施方式。雖然較早地描述的實施例在用于操作支持所涉及技術的特定處理硬件的設備和方法方面實現本發明,但是同樣可以提供硬件裝置的所謂的虛擬機實施方式。這些虛擬機實施方式在典型地運行支持虛擬機程序204的主機操作系統202的主機處理器200上運行。典型地,需要強大的處理器來提供以合理的速度執行的虛擬機實施方式,但這樣的方法在特定情況下可能是正當的,諸如當由于兼容性或重用原因期望運行另一處理器本地的代碼時。虛擬機程序204能夠執行應用程序(或操作系統)206以給出與將由程序通過真實硬件裝置的執行所給出的相同結果。因此,可以使用虛擬機程序204從應用程序206內執行上面所描述的程序指令以復制(一個或多個)真實流水線4或120、130的處理。
            [0065]雖然已經參考附圖在本文中詳細地描述了本發明的說明性實施例,但是應當理解的是,本發明不限于那些精確的實施例,并且在不背離如由所附權利要求所限定的本發明的范圍和精神的情況下,本領域的技術人員能夠在其中實現各種改變和修改。
            【權利要求】
            1.一種處理器,包括: 被配置為對指令流進行處理的至少一個處理流水線,所述至少一個處理流水線包括第一流水線級、第二流水線級以及第三流水線級;其中: 所述第一流水線級被配置為檢測所述指令流是否包括預定指令序列,所述預定指令序列包括用于在所述第三流水線級處執行第一操作數生成操作的第一指令和用于在所述第二流水線級處執行第二操作數生成操作的第二指令,其中所述第二操作數生成操作依賴于所述第一操作數生成操作的結果;并且 響應于檢測到所述指令流包括所述預定指令序列,所述第一流水線級被配置為生成經修改的指令流以供由所述至少一個處理流水線處理,在經修改的指令流中,至少所述第二指令被用于執行組合操作數生成操作的第三指令代替以便生成某一操作數,該操作數等于如果所述第二操作數生成操作在所述第一操作數生成操作之后被執行則將被生成的操作數。
            2.根據權利要求1所述的處理器,其中所述第一流水線級處的指令需要X個處理周期來到達所述第二流水線級并且需要Y個處理周期來到達所述第三流水線級,其中Y和X是整數并且Y彡X。
            3.根據權利要求1和2中任一項所述的處理器,其中所述組合操作數生成操作獨立于所述第一操作數生成操作的結果。
            4.根據權利要求1至3中任一項所述的處理器,其中所述操作數包括地址。
            5.根據任一前述權利要求所述的處理器,其中所述第一操作數生成操作用于生成所述操作數的第一部分,所述第二操作數生成操作用于生成包括所述第一部分和第二部分的操作數,并且所述組合操作數生成操作用于生成包括所述第一部分和所述第二部分的操作數。
            6.根據權利要求5所述的處理器,其中所述操作數包括比在所述指令流的單個指令的指令編碼中能夠被編碼的比特位更多數目的比特位。
            7.根據權利要求5和6中任一項所述的處理器,其中所述第一操作數生成操作包括:通過將偏移值添加到存儲在存儲位置中的基值的至少一部分來生成所述操作數的第一部分。
            8.根據權利要求7所述的處理器,其中所述操作數包括地址,并且所述基值包括指示要被處理的指令的地址的程序計數器。
            9.根據權利要求8所述的處理器,其中所述第一流水線級被配置為:將其中所述第一指令和所述第二指令對于所述程序計數器的所述至少一部分具有相同值的指令序列檢測為所述預定指令序列。
            10.根據權利要求8和9中任一項所述的處理器,其中所述基值的至少一部分包括所述基值的最聞有效部分。
            11.根據權利要求10所述的處理器,其中所述第一操作數生成操作包括掩蔽所述基值的最低有效部分。
            12.根據權利要求10和11中任一項所述的處理器,其中所述第二操作數生成操作包括將立即值加到所述第一操作數生成操作的結果的最低有效部分。
            13.根據任一前述權利要求所述的處理器,其中所述第二指令用于使用由所述第二操作數生成操作所生成的操作數來執行處理操作,以及 所述第三指令用于使用由所述組合操作數生成操作所生成的操作數來執行所述處理操作。
            14.根據權利要求13所述的處理器,其中所述處理操作包括以下各項中的至少一項: 加載操作; 存儲操作; 算術操作;以及 邏輯操作。
            15.根據任一前述權利要求所述的處理器,其中所述經修改的指令流包括所述第一指令和所述第三指令。
            16.根據權利要求15所述的處理器,其中所述至少一個處理流水線被配置為獨立于所述第一指令的處理對所述第三指令的處理進行調度。
            17.根據權利要求1至14中任一項所述的處理器,其中所述經修改的指令流包括所述第三指令并且不包括所述第一指令。
            18.根據任一前述權利要求所述的處理器,其中所述第一流水線級被配置為確定所述指令流是否包括依賴于所述第一指令的第一操作數生成操作的結果的第四指令; 如果所述指令流包括所述第四指令,則所述第一處理級被配置為用所述第三指令代替所述第二指令以生成包括所述第一指令、所述第三指令以及所述第四指令的經修改的指令流;以及 如果所述指令流不包括所述第四指令,則所述第一處理級被配置為用所述第三指令代替所述第一指令和所述第二指令以生成包括所述第三指令而不包括所述第一指令的經修改的指令流。
            19.根據權利要求1至17中任一項所述的處理器,其中所述第一流水線級被配置為確定所述指令流的后續指令是否可能依賴于所述第一指令的第一操作數生成操作的結果; 如果后續指令可能依賴于所述第一操作數生成操作的結果,則所述第一處理級被配置為用所述第三指令代替所述第二指令以生成包括所述第一指令和所述第三指令的經修改的指令流;以及 如果沒有后續指令可能依賴于所述第一操作數生成操作的結果,則所述第一處理級被配置為用所述第三指令代替所述第一指令和所述第二指令以生成包括所述第三指令而不包括所述第一指令的經修改的指令流。
            20.根據任一前述權利要求所述的處理器,其中所述第一流水線級被配置為檢測在所述第一指令與所述第二指令之間包括最大N個中間指令的指令序列作為所述預定指令序列,其中N是整數并且N彡O。
            21.根據權利要求20所述的處理器,其中N> O。
            22.根據任一前述權利要求所述的處理器,其中所述第一流水線級包括被配置為對要被所述至少一個處理流水線處理的指令進行解碼的解碼級,并且所述經修改的指令流包括經解碼的指令流。
            23.根據權利要求1至21中任一項所述的處理器,其中所述第一流水線級包括被配置為發出指令以供由所述至少一個處理流水線處理的發出級。
            24.根據任一前述權利要求所述的處理器,其中所述第二流水線級和所述第三流水線級是同一處理流水線的相應級。
            25.根據任一前述權利要求所述的處理器,其中所述第二流水線級和所述第三流水線級是相同的流水線級。
            26.根據權利要求1至23中任一項所述的處理器,其中所述第二流水線級和所述第三流水線級是不同處理流水線的級。
            27.根據任一前述權利要求所述的處理器,其中所述處理器是有序處理器。
            28.根據權利要求27所述的處理器,其中所述指令流具有預定的程序次序;并且 所述至少一個處理流水線包括被配置為發出以與所述預定的程序次序相同的次序進行處理的指令的發出級。
            29.—種處理器,其包括: 用于處理指令流的至少一個處理流水線裝置,所述至少一個處理流水線裝置包括用于處理指令的第一流水線級裝置、第二流水線級裝置以及第三流水線級裝置;其中: 所述第一流水線級裝置被配置為檢測所述指令流是否包括預定指令序列,所述預定指令序列包括用于在所述第三流水線級裝置處執行第一操作數生成操作的第一指令和用于在所述第二流水線級裝置處執行第二操作數生成操作的第二指令,其中所述第二操作數生成操作依賴于所述第一操作數生成操作的結果;并且 響應于檢測到所述指令流包括所述預定指令序列,所述第一流水線級裝置被配置為生成經修改的指令流以供由所述至少一個處理流水線裝置處理,在經修改的指令流中,至少所述第二指令被用于執行組合操作數生成操作的第三指令代替以便生成某一操作數,該操作數等于如果所述第二操作數生成操作在所述第一操作數生成操作之后被執行時將被生成的操作數。
            30.一種用于處理器的數據處理方法,該處理器包括被配置為對指令流進行處理的至少一個處理流水線,所述至少一個處理流水線包括第一流水線級、第二流水線級、和第三流水線級;所述方法包括: 在所述第一流水線級處,檢測所述指令流是否包括預定指令序列,所述預定指令序列包括用于在所述第三流水線級處執行第一操作數生成操作的第一指令和用于在所述第二流水線級處執行第二操作數生成操作的第二指令,其中所述第二操作數生成操作依賴于所述第一操作數生成操作的結果;以及 響應于檢測到所述指令流包括所述預定指令序列,所述第一流水線級生成經修改的指令流以供由所述至少一個處理流水線處理,其中至少所述第二指令被用于執行組合操作數生成操作的第三指令代替以便生成某操作數,該某操作數等于如果所述第二操作數生成操作在所述第一操作數生成操作之后被執行則將被生成的所述操作數。
            31.一種存儲至少一個計算機程序的計算機可讀存儲介質,所述至少一個計算機程序當在計算機上被執行時,控制所述計算機提供與與權利要求1至29中任一項所述的處理器相對應的虛擬機環境。
            32.—種存儲至少一個計算機程序的計算機可讀存儲介質,所述至少一個計算機程序當在計算機上被執行時,控制所述計算機提供用于執行權利要求30所述的方法的虛擬機環境。
            33.一種在本文中基本參考附圖所描述的處理器。
            34.一種在本文中基本參考附圖所描述的數據處理方法。
            35.一種在本文中基本參考附圖所描述的計算機可讀存儲介質。
            【文檔編號】G06F9/38GK104239001SQ201410256267
            【公開日】2014年12月24日 申請日期:2014年6月10日 優先權日:2013年6月10日
            【發明者】伊恩·米歇爾·考爾菲爾德, 皮特·理查德·格林哈爾格, 馬克斯·巴特利 申請人:Arm 有限公司
            網友詢問留言 已有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久久久久 亚洲一区小说区中文字幕 精品一区二区免费视频 国产精品视频免费 国产精品亚洲综合色区韩国 亚洲国产精品成人午夜在线观看 欧美国产日韩精品 中文字幕精品一区二区精品