線性流水線與非線性流水線_第1頁
線性流水線與非線性流水線_第2頁
線性流水線與非線性流水線_第3頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、線性流水線與非線性流水線按照流水線的各個流水段之間是否有反饋信號,可以把流水線分為線性流水線和非線性流水線兩類。線性流水線(linear pipelining)是將流水線的各段逐個串接起來。輸入數(shù)據(jù)從流水線的一端進(jìn)入,從另一端輸出。數(shù)據(jù)在流水線中的各個流水段流過時,每一個流水段都流過一次,而且僅僅流過一次。一條線性流水線通常只完成一種固定的功能。在現(xiàn)代計算機(jī)系統(tǒng)中,線性流水線已經(jīng)被非常廣泛地應(yīng)用于指令執(zhí)行過程、各種算術(shù)運算操作、存儲器訪問操作等。在上一節(jié)中介紹的流水線中,如圖5.13所示的指令流水線,圖5.14所示的浮點加法器流水線等都屬于線性流水線。非線性流水線(nonlinear pipe

2、lining)在流水線的各個流水段之間除了有串行的連接之外,還可以有前饋和反饋連接。圖5.17是一種簡單的非線性流水線。流水線的流水段s2的輸出可能直接傳送給流水段s3,也可能反饋到本流水段的輸入。圖5.17 一種簡單的非線性流水線在圖5.17中,雖然總共只有三個流水段,但是,輸入任務(wù)經(jīng)過流水線到達(dá)輸出,往往不只是經(jīng)過三個時鐘周期;其中,流水段s2可能要被多次調(diào)用,這也是非線性流水線與線性流水線的一個主要區(qū)別。因此,在非線性流水線中,只用圖5.17這樣一種連接圖并不能表示出一個任務(wù)在流水線中實際流動的過程。表示非線性流水線的工作情況除了需要流水線的連接圖之外,通常還需要一張“預(yù)約表”,用兩者共

3、同來表示流水線的工作情況。在預(yù)約表中可以很清楚地表示出反饋回路的使用次數(shù)。例如,圖5.18表示圖5.17中反饋回路僅使用一次的預(yù)約表,圖中用“”表示這一個流水段在相應(yīng)的這一段時間內(nèi)有效,即任務(wù)經(jīng)過了這一個流水段。圖5.18 非線性流水線的預(yù)約表一條非線性流水線可以對應(yīng)有很多張預(yù)約表,同樣,一張預(yù)約表實際上僅表示了一條非線性流水線的一種工作方式。線性流水線實際上也有預(yù)約表,只不過它的預(yù)約表是確定的。首先,預(yù)約表的水平方向與垂直方向的格數(shù)一定是相等,即組成一個正方形。其次,預(yù)約表中從左上角到右下角所有格子是全部有效的,即是打“”的;而預(yù)約表的其余部分一定都是空白的。因此,在描述線性流水線時,一般不

4、給出預(yù)約表。單功能與多功能流水線一條流水線只能完成一種固定的功能,這種流水線稱為單功能流水線(unifunction pipelining)。例如,浮點加法器流水線專門完成浮點加法運算,浮點乘法器流水線專門完成浮點乘法運算。當(dāng)要實現(xiàn)多種不同功能時,可以采用多條單功能流水線。如cray-1計算機(jī)種有12條單功能流水線,我國研制的yh-1計算機(jī)有18條單功能流水線。pentium處理機(jī)有一條5段的整數(shù)運算流水線和一條8段的浮點運算流水線。采用超流水線體系結(jié)構(gòu)的alpha 21064處理機(jī)有三條流水線,其中,整數(shù)操作和訪問存儲器操作為7段流水線,浮點運算操作為10段流水線。多功能流水線(multif

5、unction pipelining)是指流水線的各段可以進(jìn)行不同的連接。在不同時間內(nèi),或在同一時間內(nèi),通過不同的連接方式實現(xiàn)不同的功能。多功能流水線的典型代表是texas儀器公司的高級科學(xué)計算機(jī)asc中采用的8段流水線。在一臺asc處理機(jī)內(nèi)有4條相同的流水線,每條流水線通過不同的連接方式可以完成整數(shù)加減法運算、整數(shù)乘法運算、浮點加法運算、浮點乘法運算,還可以實現(xiàn)邏輯運算、移位操作和數(shù)據(jù)轉(zhuǎn)換功能等。它除了支持標(biāo)量運算之外,還支持向量運算,如兩個向量的浮點點積運算等。在處理機(jī)中采用多功能流水線的優(yōu)點是流水線中各個功能部件的利用率比較高。由于在實際的標(biāo)量運算程序中,各種運算操作一般是混合在一起的,

6、這一點與向量運算操作有很大的不同,因此,在標(biāo)量計算機(jī)的指令執(zhí)行部件中采用多功能流水線是一種比較合理的選擇。與采用多功能流水線不同的另一種方案是設(shè)置多條專門的單功能流水線,在許多向量流水線處理機(jī)中就是這樣做的。靜態(tài)流水線與動態(tài)流水線在多功能流水線中,按照在同一時間內(nèi)是否能夠連接成多種方式,同時執(zhí)行多種功能,可以把多功能流水線分為靜態(tài)流水線和動態(tài)流水線兩種。所謂靜態(tài)流水線(static pipelining)是指在同一段時間內(nèi),多功能流水線中的各個流水段只能按照一種固定的方式連接,實現(xiàn)一種固定的功能。只有當(dāng)按照這種連接方式工作的所有任務(wù)都流出流水線之后,多功能流水線才能重新進(jìn)行連接,以實現(xiàn)其它功能

7、。動態(tài)流水線(dynamic pipelining)是指在同一段時間內(nèi),多功能流水線中的各段可以按照不同的方式連接,同時執(zhí)行多種功能。當(dāng)然,同時實現(xiàn)多種連接發(fā)生是有條件的,即流水線中的各個功能部件之間不能發(fā)生沖突。在靜態(tài)流水線中,只有程序中連續(xù)出現(xiàn)同一種運算時,流水線的效率才能得到充分的發(fā)揮。如果輸入到流水線中的是一串不同運算相互間隔的操作,則這條靜態(tài)流水線的效率就與順序執(zhí)行方式完全一樣。而動態(tài)流水線則不同,它允許兩種運算在同一條流水線中同時執(zhí)行。因此,在一般情況下,動態(tài)流水線的效率和功能部件的利用率要比靜態(tài)流水線高,但是,動態(tài)流水線的控制比靜態(tài)流水線要復(fù)雜得多。目前,在大多數(shù)處理機(jī)中均采用靜態(tài)流水線。除了以上幾種流水線的分類方法之外,還可以從其它多種不同角度來劃分流水線。例如,按照不同的數(shù)據(jù)表示方式,可以把流水線分為標(biāo)量流水線和向量流水線兩種。標(biāo)量流水線一般用于標(biāo)量處理機(jī)中,而向量流

溫馨提示

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

最新文檔

評論

0/150

提交評論