超常指令字(VLIW:VeryLongInstructionWord)是由美國Yale大學(xué)教授Fisher提出的。它有點類似于超級標量,是一條指令來實現(xiàn)多個操作的并行執(zhí)行,之所以放到一條指令是為了減少內(nèi)存訪問。通常一條指令多達上百位,有若干操作數(shù),每條指令可以做不同的幾種運算。那些指令可以并行執(zhí)行是由編譯器來選擇的。通常VLIW機只有一個控制器,每個周期啟動一條長指令,長指令被分為幾個字段,每個字段控制相應(yīng)的部件。由于編譯器需要考慮數(shù)據(jù)相關(guān)性,避免沖突,并且盡可能利用并行,完成指令調(diào)度,所以硬件結(jié)構(gòu)較簡單。 VLIW機器較少,可能不太容易實現(xiàn),業(yè)界比較有名的VLIW公司之一是Transmeta,在加州硅谷SantaClara(硅谷圣地之一,還有SanJose,PaloAlto)。它做的機器采用X86指令集,VLIW實現(xiàn),具體資料可以去訪問公司的網(wǎng)站。
向量機
平時接觸的計算機都是標量機,向量機都是大型計算機,一般用于軍事工業(yè),氣象預(yù)報,以及其他大型科學(xué)計算領(lǐng)域,這也說明了向量機都很貴。國產(chǎn)的銀河計算機就是向量機普通的計算機所做的計算,例如加減乘除,只能對一組數(shù)據(jù)進行操作,被稱為標量運算。向量運算一般是若干同類型標量運算的循環(huán)。向量運算通常是對多組數(shù)據(jù)成批進行同樣運算,所得結(jié)果也是一組數(shù)據(jù)。很多做科學(xué)計算的大(巨)型機都是向量機。