并不是所有的指令都需要上述每一個(gè)步驟,但是,多數(shù)指令需要其中的多個(gè)步驟。這些步驟往往使用不同的硬件功能,例如,ALU可能只在第4步中用到。因此,如果一條指令不是在前一條指令結(jié)束之前就開始,那么在每一步驟內(nèi)處理器只有少部分的硬件在使用。
對(duì)3級(jí)流水線的ARM處理器來(lái)說(shuō),做相對(duì)較小的改動(dòng)就可以實(shí)現(xiàn)Thumb指令集(5級(jí)流水線的實(shí)現(xiàn)要復(fù)雜些)。為實(shí)現(xiàn)Thumb指令集,在指令流水線中增加了Thumb指令解碼邏輯,該解碼邏輯將預(yù)取的Thumb指令轉(zhuǎn)換成等價(jià)的ARM指令。圖11.66顯示了Thumb指令的擴(kuò)展邏輯組織。