中央處理器(CPU)
目錄
1. 中央處理器(CPU)
1.1什麼是CPU ?
當用計算機解決某個問題時,我們首先必須為它編寫程式。程式是一個指令序列,這個序列明確告訴計算機應該執行什麼操作,在什麼地方找到用來操作的資料。一旦把程式裝入記憶體儲器,就可以由計算機來自動完成取出指令和執行指令的任務。專門用來完成此項工作的計算機部件稱為中央處理器,通常簡稱CPU。CPU是計算機系統的核心組成部件。
1.2CPU的功能主要有哪些?
指令控制:產生下一條指令在記憶體中的地址。
操作控制:產生各種操作訊號送往相應部件,以控制完成指令所要求的動作。
時序控制:對各操作訊號實施時間上的控制,以保證計算機有條不紊地連續自動工作。
(CPU的基本功能就是對指令流和資料流在時間與空間上實施正確的控制)
1.3CPU的組成部分包括哪些?
控制部件
運算部件
暫存器組
CPU內部資料通路
在現代計算機中還要包括cache
1.4什麼是控制器?
控制器是全機的指揮中樞。它根據工作程式的指令序列、外部請求、控制檯操作去指揮和協調全機的工作
1.5什麼是作業系統?
現代計算機的功能日益強大、結構日益複雜。不能想象由人來直接管理這樣複雜的機器,必須由軟體系統來代替人管理機器 自動的工作。這個軟體就是作業系統
【現代計算機的作業系統也是十分龐大複雜的。這樣龐大的軟體系統不可能全部駐留在記憶體中,只能儲存在輔存(磁碟、磁帶)上。在開機後按需要裝入主儲存器執行。作業系統的一小部分核心程式(BIOS)必須固化在ROM中,安裝在主機板上,保證機器一上電就可以立即執行。 機器一加電,立即開始執行BIOS程式。自動到系統磁碟的0道裝入載入程式Boot,該程式裝入主存執行後把作業系統的常駐記憶體部分裝入記憶體,建立相應的環境,管理計算機的資源,等待使用者的命令。】
1.6BIOS設定和CMOS設定的區別與聯絡
1.BIOS(Basic Input/Output System)是軟體、程式; CMOS(Complementary Metal Oxide Semiconductor——互補金氧半導體(本意是指互補金氧半導體儲存囂,是一種大規模應用於積體電路晶片製造的原料))是晶片、硬體; 通過BIOS程式,可以設定CMOS裡的引數;
2.CMOS是主機板上的一塊可讀寫的RAM 晶片,裡面裝的是關於系統配置的具體引數,其內容可通過設定程式進行讀寫。CMOS RAM 晶片靠後備電池供電,即使系統掉電後資訊也不會丟失。BIOS與CMOS既相關又不同:BIOS中的系統設定程式是完成CMOS引數設定的手段;CMOS RAM既是BIOS設定系統引數的存放場所,又是 BIOS設定系統引數的結果。因此,完整的說法應該是"通過BIOS設定程式對CMOS引數進行設定"。由於 BIOS和CMOS都跟系統設定密初相關,所以在實際使用過程中造成了BIOS設定和CMOS設定的說法,其實指的都是同一回事,但BIOS與CMOS卻是兩個完全不同的概念,千萬不可搞混淆。
2.控制器的功能
①取指令 Fetch the Instruction from Memory
發出指令地址及訪存控制訊號。將指令從主存取入CPU。
②分析指令 Decode the Instruction
對指令譯碼,分析它要求的操作。形成運算元有效地址。
③執行指令 Execute the Instruction
按照運算元有效地址取出運算元,並按操作性質形成相應的操作控制訊號序列,完成指令的各種操作(包括對運算結果的處理)。形成下一條指令的地址。
④控制主機與I/O裝置交換資訊(控制輸入輸出)
⑤對異常情況和某些請求的處理
能響應來自外部和內部的請求,處理一些異常情況和事件。
(控制器的基本功能是周而復始的按一定順序逐條取指令,分析指令,執行指令,再取下一條指令,……直至停機。)
2.1取指令操作
首先把程式計數器PC的內容送到地址匯流排,接著發出儲存器讀命令,等待一段時間後,從資料匯流排將取出的指令讀入並送到CPU的指令暫存器IR。
2.2訪問儲存器取運算元
首先把主存地址暫存器AR的內容送到地址匯流排,接著發出儲存器讀命令,等待一段時間後,從資料匯流排將讀出的資料讀入並送到CPU的資料暫存器DR。
2.3資料寫到儲存器
首先把主存地址暫存器AR的內容送到地址匯流排,資料暫存器DR的內容送到資料匯流排,接著發出儲存器寫命令,等待一段時間後儲存器寫週期結束。
2.4前面三個操作的圖
3.控制器的組成
程式計數器PC
程式計數器是用來存放要取的下一條指令在儲存器的地址的,有自動加1功能。
程式計數器的位數取決於CPU能夠訪問的程式儲存空間的大小。
當程式是順序執行時,每取一個指令字,程式計數器PC自動加1,形成下一條指令的地址。
當程式發生轉移時,用轉移目標地址取代PC原來的值作為下一條指令的地址。
指令暫存器IR
指令暫存器IR是用來存放(從儲存器取來)當前正在執行的指令的,指令暫存器的位數取決於指令字長。
指令譯碼器ID
指令譯碼器的功能是對指令暫存器中的指令的操作碼進行分析(譯碼),決定應該執行的基本操作。
脈衝源及啟停線路
產生一定頻率的脈衝訊號作為機器的時鐘脈衝。產生Reset訊號。
時序訊號形成部件
為了保證指令及各個微操作的執行按正確順序完成,需要相應的控制指令週期、機器週期的節拍電位、節拍脈衝等。
微操作控制訊號形成部件
根據指令分析的結果和時序訊號,產生相應的微操作控制訊號。
4.一條指令的執行過程
指令週期的基本概念:
計算機所以能自動地工作,是因為CPU能從存放程式的記憶體裡取出一條指令並執行這條指令;緊接著又是取指令,執行指令……,如此周而復始,構成了一個封閉的迴圈。除非遇到停機指令,否則這個迴圈將一直繼續下去。
指令格式為:
rs,rd為源/目的運算元地址,rs1為另一源運算元地址,imm/disp為立即數或位移量。rs,rd和rs1均為通用暫存器的地址。
•指令週期 CPU從記憶體取出一條指令並執行這條指令的時間總和。
•CPU週期 又稱機器週期,CPU訪問一次記憶體所花的時間較長,因此用從記憶體讀取一條指令字的最短時間來定義。
•時鐘週期 通常稱為節拍脈衝或T週期。一個CPU週期包含若干個時鐘週期。
下圖示出了採用定長CPU週期的指令週期示意圖。
4.1加法指令的執行過程
加法指令的功能:將暫存器rs中的一個數與儲存器中的一個數(地址為(rs1)+disp)相加,結果放在暫存器rd中。
操作表示式:(rs)+((rs1)+disp)→rd
以上操作需4個機器週期。其中:
取指令和取數週期通過匯流排訪存。
計算地址和運送結果週期是在CPU內部操作,不使用匯流排。
4.2條件轉移指令的執行過程
條件轉移指令的功能:根據狀態標誌暫存器中相關標誌的狀態決定是否轉移。如果轉移條件成立,則轉移到指令指定的目標地址,否則順序執行下一條指令。