堅(jiān)信自我 成就未來(lái)
一、線性流水線與非線性流水線
按照流水線的各個(gè)流水段之間是否有反饋信號(hào),可以把智能流水線分為線性流水線和非線性流水線兩類。
線性流水線(Linear Pipelining)是將流水線的各段逐個(gè)串接起來(lái)。輸入數(shù)據(jù)從流水線的一端進(jìn)入,從另一端輸出。數(shù)據(jù)在流水線中的各個(gè)流水段流過(guò)時(shí),每一個(gè)流水段都流過(guò)一次,而且僅僅流過(guò)一次。
一條線性流水線通常只完成一種固定的功能。在現(xiàn)代計(jì)算機(jī)系統(tǒng)中,線性流水線已經(jīng)被非常廣泛地應(yīng)用于指令執(zhí)行過(guò)程、各種算術(shù)運(yùn)算操作、存儲(chǔ)器訪問(wèn)操作等。
非線性流水線(Nonlinear Pipelining)在流水線的各個(gè)流水段之間除了有串行的連接之外,還可以有前饋和反饋連接。
二、單功能與多功能智能流水線
一條流水線只能完成一種固定的功能,這種流水線稱為單功能流水線(Unifunction Pipelining)。例如,浮點(diǎn)加法器流水線專門完成浮點(diǎn)加法運(yùn)算,浮點(diǎn)乘法器流水線專門完成浮點(diǎn)乘法運(yùn)算。當(dāng)要實(shí)現(xiàn)多種不同功能時(shí),可以采用多條單功能流水線。
如Cray-1計(jì)算機(jī)種有12條單功能流水線,我國(guó)研制的YH-1計(jì)算機(jī)有18條單功能流水線。Pentium處理機(jī)有一條5段的整數(shù)運(yùn)算流水線和一條8段的浮點(diǎn)運(yùn)算流水線。采用超流水線體系結(jié)構(gòu)的Alpha 21064處理機(jī)有三條流水線,其中,整數(shù)操作和訪問(wèn)存儲(chǔ)器操作為7段流水線,浮點(diǎn)運(yùn)算操作為10段流水線。
多功能流水線(Multifunction Pipelining)是指流水線的各段可以進(jìn)行不同的連接。在不同時(shí)間內(nèi),或在同一時(shí)間內(nèi),通過(guò)不同的連接方式實(shí)現(xiàn)不同的功能。
多功能流水線的典型代表是Texas儀器公司的高級(jí)科學(xué)計(jì)算機(jī)ASC中采用的8段流水線。在一臺(tái)ASC處理機(jī)內(nèi)有4條相同的流水線,每條流水線通過(guò)不同的連接方式可以完成整數(shù)加減法運(yùn)算、整數(shù)乘法運(yùn)算、浮點(diǎn)加法運(yùn)算、浮點(diǎn)乘法運(yùn)算,還可以實(shí)現(xiàn)邏輯運(yùn)算、移位操作和數(shù)據(jù)轉(zhuǎn)換功能等。它除了支持標(biāo)量運(yùn)算之外,還支持向量運(yùn)算,如兩個(gè)向量的浮點(diǎn)點(diǎn)積運(yùn)算等。
在處理機(jī)中采用多功能流水線的優(yōu)點(diǎn)是流水線中各個(gè)功能部件的利用率比較高。由于在實(shí)際的標(biāo)量運(yùn)算程序中,各種運(yùn)算操作一般是混合在一起的,這一點(diǎn)與向量運(yùn)算操作有很大的不同,因此,在標(biāo)量計(jì)算機(jī)的指令執(zhí)行部件中采用多功能流水線是一種比較合理的選擇。與采用多功能流水線不同的另一種方案是設(shè)置多條專門的單功能流水線,在許多向量流水線處理機(jī)中就是這樣做的。
三、靜態(tài)流水線與動(dòng)態(tài)流水線
在多功能智能流水線中,按照在同一時(shí)間內(nèi)是否能夠連接成多種方式,同時(shí)執(zhí)行多種功能,可以把多功能流水線分為靜態(tài)流水線和動(dòng)態(tài)流水線兩種。
所謂靜態(tài)流水線(Static Pipelining)是指在同一段時(shí)間內(nèi),多功能流水線中的各個(gè)流水段只能按照一種固定的方式連接,實(shí)現(xiàn)一種固定的功能。只有當(dāng)按照這種連接方式工作的所有任務(wù)都流出流水線之后,多功能流水線才能重新進(jìn)行連接,以實(shí)現(xiàn)其它功能。
動(dòng)態(tài)流水線(Dynamic Pipelining)是指在同一段時(shí)間內(nèi),多功能流水線中的各段可以按照不同的方式連接,同時(shí)執(zhí)行多種功能。當(dāng)然,同時(shí)實(shí)現(xiàn)多種連接發(fā)生是有條件的,即流水線中的各個(gè)功能部件之間不能發(fā)生沖突。
在靜態(tài)流水線中,只有程序中連續(xù)出現(xiàn)同一種運(yùn)算時(shí),流水線的效率才能得到充分的發(fā)揮。如果輸入到流水線中的是一串不同運(yùn)算相互間隔的操作,則這條靜態(tài)流水線的效率就與順序執(zhí)行方式完全一樣。而動(dòng)態(tài)流水線則不同,它允許兩種運(yùn)算在同一條流水線中同時(shí)執(zhí)行。因此,在一般情況下,動(dòng)態(tài)流水線的效率和功能部件的利用率要比靜態(tài)流水線高,但是,動(dòng)態(tài)流水線的控制比靜態(tài)流水線要復(fù)雜得多。目前,在大多數(shù)處理機(jī)中均采用靜態(tài)流水線。
除了以上幾種流水線的分類方法之外,還可以從其它多種不同角度來(lái)劃分智能流水線。例如,按照不同的數(shù)據(jù)表示方式,可以把流水線分為標(biāo)量流水線和向量流水線兩種。標(biāo)量流水線一般用于標(biāo)量處理機(jī)中,而向量流水線主要用于向量計(jì)算機(jī)中。在本章中介紹的都是標(biāo)量流水線。
按照流水線輸出端流出的任務(wù)與流水線輸入端流入的任務(wù)的順序是否相同,可以把流水線分為順序流水線與亂序流水線兩種。亂序流水線在有的資料上又稱為無(wú)序流水線、錯(cuò)序流水線或異步流水線等。
電話
135 3717 6848
0769-22360500
0769-86184768
0769-86112831
0769-22360501
0769-22360502
公眾號(hào)
微信公眾號(hào)