【廣告】
CPU主要包括兩個(gè)部分,即控制器、運(yùn)算器,其中還包括高速緩沖存儲(chǔ)器及實(shí)現(xiàn)它們之間聯(lián)系的數(shù)據(jù)、控制的總線。電子計(jì)算機(jī)三大核心部件就是CPU、內(nèi)部存儲(chǔ)器、輸入/輸出設(shè)備。CPU的功效主要為處理指令、執(zhí)行操作、控制時(shí)間、處理數(shù)據(jù)。
注:指令集的軟硬件層次之分:硬件指令集是硬件層次上由CPU自身提供的可執(zhí)行的指令集合。軟件指令集是指語(yǔ)言程序庫(kù)所提供的指令,只要安裝了該語(yǔ)言的程序庫(kù),指令就可以執(zhí)行。
CPU出現(xiàn)于大規(guī)模集成電路時(shí)代,處理器架構(gòu)設(shè)計(jì)的迭代更新以及集成電路工藝的不斷提升促使其不斷發(fā)展完善。從初專用于數(shù)學(xué)計(jì)算到廣泛應(yīng)用于通用計(jì)算,從4位到8位、16位、32位處理器,后到64位處理器,從各廠商互不兼容到不同指令集架構(gòu)規(guī)范的出現(xiàn),CPU 自誕生以來(lái)一直在飛速發(fā)展。
為了改善性能,CPU已經(jīng)不是單條取指-->解了碼-->執(zhí)行的路線,而是分別為這3個(gè)過(guò)程分別提供獨(dú)立的取值單元,解了碼單元以及執(zhí)行單元。這樣就形成了流水線模式。
因?yàn)镃PU有大量的緩存和復(fù)雜的邏輯控制單元,因此它非常擅長(zhǎng)邏輯控制、串行的運(yùn)算。相比較而言,GPU因?yàn)橛写罅康乃阈g(shù)運(yùn)算單元,因此可以同時(shí)執(zhí)行大量的計(jì)算工作,它所擅長(zhǎng)的是大規(guī)模的并發(fā)計(jì)算, 計(jì)算量大但是沒(méi)有什么技術(shù)含量,而且要重復(fù)很多次。這樣一說(shuō),我們利用GPU來(lái)提高程序運(yùn)算速度的方法就顯而易見(jiàn)了。使用CPU來(lái)做復(fù)雜的邏輯控制,用GPU來(lái)做簡(jiǎn)單但是量大的算術(shù)運(yùn)算,就能夠大大地提高程序的運(yùn)行速度。
CPU控制技術(shù)的主要形式,時(shí)間控制。將時(shí)間定時(shí)應(yīng)用于各種操作中,就是所謂的時(shí)間控制。在執(zhí)行某一指令時(shí),應(yīng)當(dāng)在規(guī)定的時(shí)間內(nèi)完成,CPU的指令是從高速緩沖存儲(chǔ)器或存儲(chǔ)器中取出,之后再進(jìn)行指令譯碼操作,主要是在指令寄存器中實(shí)施,在這個(gè)過(guò)程中,需要注意嚴(yán)格控制程序時(shí)間。
更優(yōu)化的CPU架構(gòu)是superscalar架構(gòu)(超標(biāo)量架構(gòu))。這種架構(gòu)將取指、解了碼、執(zhí)行單元分開(kāi),有大量的執(zhí)行單元,然后每個(gè)取指 解了碼的部分都以并行的方式運(yùn)行。比如有2個(gè)取指 解了碼的并行工作線路,每個(gè)工作線路都將解了碼后的指令放入一個(gè)緩存緩沖區(qū)等待執(zhí)行單元去取出執(zhí)行。