【廣告】
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 自誕生以來一直在飛速發(fā)展。
為了改善性能,CPU已經(jīng)不是單條取指-->解了碼-->執(zhí)行的路線,而是分別為這3個(gè)過程分別提供獨(dú)立的取值單元,解了碼單元以及執(zhí)行單元。這樣就形成了流水線模式。
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è)過程中,需要注意嚴(yán)格控制程序時(shí)間。
更優(yōu)化的CPU架構(gòu)是superscalar架構(gòu)(超標(biāo)量架構(gòu))。這種架構(gòu)將取指、解了碼、執(zhí)行單元分開,有大量的執(zhí)行單元,然后每個(gè)取指 解了碼的部分都以并行的方式運(yùn)行。比如有2個(gè)取指 解了碼的并行工作線路,每個(gè)工作線路都將解了碼后的指令放入一個(gè)緩存緩沖區(qū)等待執(zhí)行單元去取出執(zhí)行。
關(guān)于CPU的基本組成
1、CPU是用來運(yùn)算的(加法運(yùn)算 、乘法運(yùn)算*、邏輯運(yùn)算and not or等),例如c=a b。
2、運(yùn)算操作涉及到數(shù)據(jù)輸入(input)、處理、數(shù)據(jù)輸出(output),a和b是輸入數(shù)據(jù),加法運(yùn)算是處理,c是輸出數(shù)據(jù)。
3、CPU需要使用一個(gè)叫做存儲(chǔ)器(也就是各種寄存器)的東西保存輸入和輸出數(shù)據(jù)。
4、CPU還要將一些常用的基本運(yùn)算工具(如加法器)放進(jìn)CPU,這部分負(fù)責(zé)運(yùn)算,稱為算術(shù)邏輯單元(ALU)。
5、CPU中還有一個(gè)控制器(CU),負(fù)責(zé)將存儲(chǔ)器中的數(shù)據(jù)送到ALU中去做運(yùn)算,并將運(yùn)算后的結(jié)果存回到存儲(chǔ)器中??刂破鬟€包含了一些控制信號(hào)。
關(guān)于CPU的多核和多線程
1、CPU的物理個(gè)數(shù)由主板上的插槽數(shù)量決定,每個(gè)CPU可以有多核心,每核心可能會(huì)有多線程。
2、多核CPU的每核(每核都是一個(gè)小芯片),在OS看來都是一個(gè)獨(dú)立的CPU。
3、對(duì)于超線程CPU來說,每核CPU可以有多個(gè)線程(數(shù)量是兩個(gè),比如1核雙線程,2核4線程,4核8線程),每個(gè)線程都是一個(gè)虛擬的邏輯CPU(比如windows下是以邏輯處理器的名稱稱呼的),而每個(gè)線程在OS看來也是獨(dú)立的CPU。