第3章流水線技術_第1頁
第3章流水線技術_第2頁
第3章流水線技術_第3頁
第3章流水線技術_第4頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、第3章 流水線技術1. 流水技術有哪些特點?(1)流水過程由多個相聯系的子過程組成,每個過程稱為流水線的“級”或“段”。(2)每個子過程由專用的功能段實現。(3)各個功能段所需時間應盡量相等。(4)流水線需要有“通過時間”,在此之后流水過程才進入穩定工作狀態,每一個時鐘周期(拍)流出一個結果。(5)流水技術適合于大量重復的時序過程,只有在輸入端能連續地提供任務,流水線的效率才能充分發揮。2. 按照流水線所完成的功能來分,流水線可分為哪兩類?(1)單功能流水線:只能完成一種固定功能的流水線。(2)多功能流水線:流水線的各段可以進行不同的連接,從而使流水線在不同的時間,或者在同一時間完成不同的功能

2、。3. 按照同一時間內各段之間的連接方式來分,流水線可分為哪兩類? (1)靜態流水線:在同一時間內,流水線的各段只能按同一種功能的連接方式工作。(2)動態流水線:在同一時間內,當某些段正在實現某種運算時,另一些段卻在實現另一種運算。4. 按照流水的級別來分,流水線可分為哪三類? (1)部件級流水線(運算操作流水線):把處理機的算術邏輯部件分段,以便為各種數據類型進行流水操作。(2)處理機級流水線(指令流水線):把解釋指令的過程按照流水方式處理。(3)處理機間流水線(宏流水線):由兩個以上的處理機串行地對同一數據流進行處理,每個處理機完成一項任務。5. 按照數據表示來分,流水線可分為哪兩類? (

3、1)標量流水處理機:處理機不具有向量數據表示,僅對標量數據進行流水處理。(2)向量流水處理機:處理機具有向量數據表示,并通過向量指令對向量的各元素進行處理。6. 按照流水線中是否有反饋回路來分,流水線可分為哪兩類? (1)線性流水線:流水線的各段串行連接,沒有反饋回路。(2)非線性流水線:流水線中除有串行連接的通路外,還有反饋回路。7. 在5段流水線中,一條指令的執行需要幾個時鐘周期?它們分別是什么?一條指令的執行需要5個時鐘周期。它們分別是:取指令周期(IF)、指令譯碼/讀寄存器周期(ID)、執行/有效地址計算周期(EX)、存儲器/分支完成周期(MEM)、寫回周期(WB)。8.流水線寄存器的

4、作用是什么?把數據和控制信息從一個流水段傳送到下一個流水段。9. 消除流水線的瓶頸段有哪些方法?(1) 細分瓶頸段;(2) 重復設置瓶頸段。10. 評價流水線的性能指標是什么?(1) 吞吐率:指在單位時間內流水線所完成的任務數或輸出結果的數量。(2) 流水線的加速比:指m段流水線的速度與等功能的非流水線的速度之比。(3) 效率:指流水線的設備利用率。11. 什么叫相關?流水線中有哪幾種相關? 相關是指兩條指令之間存在某種依賴關系。確定程序中指令之間存在什么樣的相關,對于充分發揮流水線的效率有重要的意義。相關有3種類型,分別是數據相關(也稱真數據相關)、名相關、控制相關。12. 什么叫名相關?名

5、相關有哪兩種?如果兩條指令使用相同的名,但是它們之間并沒有數據流動,則稱這兩條指令存在名相關。指令j與指令i之間的名相關有以下兩種:(1)反相關。如果指令j寫的名與指令i讀的名相同,則稱指令i和j發生了反相關。反相關指令之間的執行順序是必須嚴格遵守的,以保證i讀的值是正確的。(2)輸出相關。如果指令j和指令i寫相同的名,則稱指令i和j發生了輸出相關。輸出相關指令的執行順序是不能顛倒的,以保證最后的結果是指令j寫進去的。13. 流水線沖突有哪幾種?流水線沖突有以下3種類型:(1)結構沖突:因硬件資源滿足不了指令重疊執行的要求而發生的沖突。(2)數據沖突:當指令在流水線中重疊執行時,因需要用到前面

6、指令的執行結果而發生的沖突。(3)控制沖突:流水線遇到分支指令和其他會改變PC值的指令所引起的沖突。14. 解決流水線結構沖突的方法有哪些?(1)流水化功能單元;(2)資源重復;(3)暫停流水線。15. 為什么流水線設計者有時會允許結構沖突的存在?主要有兩個原因:一是為了減少硬件開銷,二是為了減少功能單元的延遲。16. 定向技術的主要思想是什么?在發生數據沖突時,后面的指令并不是立即就要用到前一條指令的計算結果。如果能夠將計算結果從其產生的地方直接送到需要它的地方,就可以避免暫停。當定向硬件檢測到前面某條指令的結果寄存器就是當前指令的源寄存器時,控制邏輯會將前面那條指令的結果直接從其產生的地方

7、定向到當前指令所需的位置。17.流水線中所有數據沖突都可以通過定向技術消除,而不需要暫停嗎?試舉例說明。流水線中有需要暫停的數據沖突。例如,在下列指令序列中,需要在LW指令之后插入一個暫停周期,然后再用定向技術消除相關。LDR1,0(R2)DADDR4,R1,R5ANDR6,R1,R7XORR8,R1,R918根據指令對寄存器的讀寫順序,可將數據沖突分為哪三種類型?(1)寫后讀沖突(2)寫后寫沖突(3)讀后寫沖突19解決流水線數據沖突的方法有哪些?(1)定向技術:在某條指令產生一個結果之前,其他指令并不真正需要該計算結果,如果將該計結果從其產生的地方直接送到其他指令需要它的地方,就可以避免暫停

8、。(2)暫停技術:設置一個“流水線互鎖”的功能部件,一旦流水線互鎖檢測到數據相關,流水線暫停執行發生數據相關指令后續的所有指令,直到該數據相關解決為止。(3)采用編譯器調度。 (4)重新組織代碼順序。20. 減少流水線處理分支指令時的暫停時鐘周期數有哪兩種途徑?(1) 在流水線中盡早判斷出分支轉移是否成功。(2) 盡早計算出分支轉移成功時的PC值(即分支的目標地址)。21. 在MIPS基本流水線中可采用哪些靜態方法降低分支損失?(1) 修改硬件:在ID段增加一個加法器,將計算分支目標地址的操作移到ID段完成。(2) 預測分支失敗的方法。(3) 延遲分支方法。22從編譯技術的角度,降低流水線分支

9、損失的方法有哪些? (1) 預測分支失敗的方法。 (2) 預測分支成功的方法。(3) 延遲分支方法。23. 預測分支失敗方法的主要思想是什么?當流水線譯碼到一條分支指令時,流水線繼續取指令,并允許該分支指令后的指令繼續在流水線中流動。當流水線確定分支轉移成功與否以及分支的目標地址之后,如果分支轉移成功,流水線必須將在分支指令之后取出的所有指令轉化為空操作,并在分支的目標地址處重新取出有效的指令;如果分支轉移失敗,那么可以將分支指令看作是一條普通指令,流水線正常流動,無需將在分支指令之后取出的所有指令轉化為空操作。24. “延遲分支”方法的主要思想是什么?其主要思想是從邏輯上“延長”分支指令的執

10、行時間。設延遲長度為n的分支指令后面有n個分支延遲槽,選擇n條有效和有用的指令放入分支延遲槽中,無論分支成功與否,流水線都會執行這些指令。處于分支延遲槽中的指令“掩蓋”了流水線原來所必須插入的暫停周期。25為了在分支延遲槽中填入有效指令,一般采用哪三種方法?從前調度、從目標處調度、從失敗處調度26. 調度分支延遲指令的三種常用方法的特點和局限性是什么?調度策略對調度的要求對流水線性能改善的影響從前調度分支必須不依賴于被調度的指令總是可以有效提高流水線性能從目標處調度如果分支轉移失敗,必須保證被調度的指令對程序的執行沒有影響,可能需要復制被調度指令分支轉移成功時,可以提高流水線性能。但由于復制指

11、令,可能加大程序空間從失敗處調度如果分支轉移成功,必須保證被調度的指令對程序的執行沒有影響分支轉移失敗時,可以提高流水線性能27有哪幾種向量處理方式?它們對向量處理機的結構要求有何不同?(1) 水平處理方式:不適合對向量進行流水處理。 (2) 垂直處理方式:適合對向量進行流水處理,向量運算指令的源/目向量都放在存儲器內,使得流水線運算部件的輸入、輸出端直接與存儲器相聯,構成MM型的運算流水線。 (3) 分組處理方式:適合流水處理。可設長度為n的向量寄存器,使每組向量運算的源/目向量都在向量寄存器中,流水線的運算部件輸入、輸出端與向量寄存器相聯,構成RR型運算流水線。28什么是向量鏈接技術?當兩條向量指令出現“寫后讀”相關時,若它們不存在功能部件沖突和向量寄存器(源或目的)沖突,就有可能把它們所用的功能部件頭尾相接

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論