CPU依靠指令來計算和控制系統(tǒng),每款CPU在設(shè)計時就規(guī)定了一系列與其硬件電路相配合的指令系統(tǒng)。指令的強弱也是CPU的重要指標(biāo),指令集是提高微處理器效率的最有效工具之一。
從現(xiàn)階段的主流體系結(jié)構(gòu)講,指令集可分為復(fù)雜指令集和精簡指令集兩部分,而從具體運用看,如Intel的MMX(Multi Media Extended)、SSE、 SSE2(Streaming-Single instruction multiple data-Extensions 2)和AMD的3DNow!等都是CPU的擴展指令集,分別增強了CPU的多媒體、圖形圖象和Internet等的處理能力。我們通常會把CPU的擴展指令集稱為"CPU的指令集"。
1、精簡指令集的運用
在最初發(fā)明計算機的數(shù)十年里,隨著計算機功能日趨增大,性能日趨變強,內(nèi)部元器件也越來越多,指令集日趨復(fù)雜,過于冗雜的指令嚴(yán)重的影響了計算機的工作效率。后來經(jīng)過研究發(fā)現(xiàn),在計算機中,80%程序只用到了20%的指令集,基于這一發(fā)現(xiàn),RISC精簡指令集被提了出來,這是計算機系統(tǒng)架構(gòu)的一次深刻革命。RISC體系結(jié)構(gòu)的基本思路是:抓住CISC指令系統(tǒng)指令種類太多、指令格式不規(guī)范、尋址方式太多的缺點,通過減少指令種類、規(guī)范指令格式和簡化尋址方式,方便處理器內(nèi)部的并行處理,提高VLSI器件的使用效率,從而大幅度地提高處理器的性能。
RISC指令集有許多特征,其中最重要的有:
指令種類少,指令格式規(guī)范:RISC指令集通常只使用一種或少數(shù)幾種格式。指令長度單一(一般4個字節(jié)),并且在字邊界上對齊,字段位置、特別是操作碼的位置是固定的。
尋址方式簡化:幾乎所有指令都使用寄存器尋址方式,尋址方式總數(shù)一般不超過5個。其他更為復(fù)雜的尋址方式,如間接尋址等則由軟件利用簡單的尋址方式來合成。
大量利用寄存器間操作:RISC指令集中大多數(shù)操作都是寄存器到寄存器操作,只以簡單的Load和Store操作訪問內(nèi)存。因此,每條指令中訪問的內(nèi)存地址不會超過1個,訪問內(nèi)存的操作不會與算術(shù)操作混在一起。
簡化處理器結(jié)構(gòu):使用RISC指令集,可以大大簡化處理器的控制器和其他功能單元的設(shè)計,不必使用大量專用寄存器,特別是允許以硬件線路來實現(xiàn)指令操作,而不必像CISC處理器那樣使用微程序來實現(xiàn)指令操作。因此RISC處理器不必像CISC處理器那樣設(shè)置微程序控制存儲器,就能夠快速地直接執(zhí)行指令。
便于使用VLSI技術(shù):隨著LSI和VLSI技術(shù)的發(fā)展,整個處理器(甚至多個處理器)都可以放在一個芯片上。RISC體系結(jié)構(gòu)可以給設(shè)計單芯片處理器帶來很多好處,有利于提高性能,簡化VLSI芯片的設(shè)計和實現(xiàn)。基于VLSI技術(shù),制造RISC處理器要比CISC處理器工作量小得多,成本也低得多。
加強了處理器并行能力:RISC指令集能夠非常有效地適合于采用流水線、超流水線和超標(biāo)量技術(shù),從而實現(xiàn)指令級并行操作,提高處理器的性能。目前常用的處理器內(nèi)部并行操作技術(shù)基本上是基于RISC體系結(jié)構(gòu)發(fā)展和走向成熟的。
正由于RISC體系所具有的優(yōu)勢,它在高端系統(tǒng)得到了廣泛的應(yīng)用,而CISC體系則在桌面系統(tǒng)中占據(jù)統(tǒng)治地位。而在如今,在桌面領(lǐng)域,RISC也不斷滲透,預(yù)計未來,RISC將要一統(tǒng)江湖。
2、CPU的擴展指令集
對于CPU來說,在基本功能方面,它們的差別并不太大,基本的指令集也都差不多,但是許多廠家為了提升某一方面性能,又開發(fā)了擴展指令集,擴展指令集定義了新的數(shù)據(jù)和指令,能夠大大提高某方面數(shù)據(jù)處理能力,但必需要有軟件支持。
MMX 指令集
MMX(Multi Media eXtension,多媒體擴展指令集)指令集是Intel公司于1996年推出的一項多媒體指令增強技術(shù)。MMX指令集中包括有57條多媒體指令,通過這些指令可以一次處理多個數(shù)據(jù),在處理結(jié)果超過實際處理能力的時候也能進(jìn)行正常處理,這樣在軟件的配合下,就可以得到更高的性能。MMX的益處在于,當(dāng)時存在的操作系統(tǒng)不必為此而做出任何修改便可以輕松地執(zhí)行MMX程序。但是,問題也比較明顯,那就是MMX指令集與x87浮點運算指令不能夠同時執(zhí)行,必須做密集式的交錯切換才可以正常執(zhí)行,這種情況就勢必造成整個系統(tǒng)運行質(zhì)量的下降。
![]() | ![]() .. 定價:¥225 優(yōu)惠價:¥213 更多書籍 |
![]() | ![]() .. 定價:¥133 優(yōu)惠價:¥133.0 更多書籍 |