1. 轉(zhuǎn)移指令對(duì)流水線的影響 如下圖所示,T1周期取指add指令,T2周期取指sub指令,T3周期取指beq指令。 對(duì)于人類(lèi)來(lái)說(shuō),我們能看到su...
1. 什么是數(shù)據(jù)冒險(xiǎn) 當(dāng)前指令需要使用之前指令的運(yùn)算結(jié)果,但是結(jié)果還沒(méi)有寫(xiě)回。 2. 數(shù)據(jù)冒險(xiǎn)舉例 比如下圖中,第2條add指令需要使用第1條s...
流水線本質(zhì)是提高了時(shí)間并行性,這樣可能會(huì)帶來(lái)一些錯(cuò)誤。 1. 什么是冒險(xiǎn)hazard 阻止下一條指令在下一個(gè)時(shí)鐘周期開(kāi)始執(zhí)行的情況。 2. 冒險(xiǎn)...
1. 超標(biāo)量流水線的定義 超標(biāo)量結(jié)構(gòu):通常,具有兩條或兩條以上并行工作的流水線結(jié)構(gòu)就稱(chēng)為超標(biāo)量結(jié)構(gòu)。 上一篇筆記說(shuō)到,優(yōu)化流水線的方向可以加深流...
1. 廚房做菜的例子 采用流水線做菜方式,單獨(dú)一道菜需要4+分鐘,因?yàn)槊總€(gè)流程之間交接需要一些時(shí)間,對(duì)應(yīng)處理器的流水線寄存器帶來(lái)的延遲。 做4道...
1. 舉個(gè)例子 一個(gè)大廚做菜的例子,如下圖所示, 用4個(gè)小廚師進(jìn)行流水線的操作,如下圖所示, 每個(gè)小廚師負(fù)責(zé)一個(gè)環(huán)節(jié),還有一個(gè)小廚師“吹號(hào)”,這...
1. 隱藏?cái)?shù)據(jù)通路的實(shí)現(xiàn)細(xì)節(jié) 我們首先把數(shù)據(jù)通路的實(shí)現(xiàn)細(xì)節(jié)隱藏起來(lái),只看下面這8個(gè)控制信號(hào), 分析指令位域,我們從指令編碼中還可以得到opcod...
我們研究beq指令,beq rs,rt,imm16 1. 條件分支指令的示例 if(i == j) f = g+h; else f = g-h;...
我在這次學(xué)習(xí)中,使用的是MIPS指令集的子集,可參考之前的幾篇筆記,其中訪存指令lw和sw都是I型指令, lw rt,imm16(rs) sw ...