計算機系統知識

1.1 計算機系統基礎知識

    1.1.1 計算機系統硬件基本組成

     計算機基本硬件系統由 運算器、控制器、存儲器、輸入設備 和 輸出設備 5大部件組成。

     運算器、控制器等部件被集成在一起統稱爲中央處理單元(Central Processing Unit,CPU)。

     

CPU及核心功能

     CPU是硬件系統的核心,用於數據的加工處理,能完成各種算術、邏輯運算及控制功能。

     存儲器是計算機系統中的記憶設備,分爲 內部存儲器 和 外部存儲器 

      內部存儲器:速度高、容量小,一般用於臨時存放程序、數據及中間結果。

      外部存儲器:容量大、速度慢,可以長期保存程序和數據。

      輸入設備和輸出設備:合稱爲外部設備(簡稱外設),輸入設備用於輸入原始數據及各種命令,而輸出設備則用於輸出計算機運行的結果。

     1.1.2 中央處理單元

     1.CPU的功能

    (1)程序控制。CPU通過執行指令來控制程序的執行順序,這是CPU的重要職能。

    (2)操作控制。一條指令功能的實現需要若干操作信號來完成,CPU產生每條指令的操作信號並將操作信號送往不同的部件,控制相應的部件指令的功能要求進行操作。

    (3)時間控制。CPU對各種操作進行時間上的控制,這就是時間控制。CPU每條指令的整個執行時間要進行嚴格控制。同時,指令執行過程中操作信號的出現時間、持續時間及出現的時間順序都需要進行嚴格控制。

    (4)數據處理。CPU通過對數據進行算術運算及邏輯運算等方式進行加工處理,數據加工處理的結果被人們所利用。所以,對數據的加工處理是CPU最根本的任務。

   2. CPU的組成

     CPU主要由運算器、控制器、寄存器組合內部總線等部件組成,如圖:

     

CPU的組成

 

  1)運算器

       運算器由算術邏輯單元(Arithmetic算術、算法 and Logic Unit,ALU)、累加寄存器數據緩衝寄存器狀態條件寄存器組成,它是數據加工處理部件,完成計算機的各種算術和邏輯運算。相對控制器而言,運算器接受控制器的命令而進行動作,即運算器所進行的全部操作都是由控制器發出的信號來指揮的,所以它是執行部件。運算器有如下兩個主要功能。

      (1)執行所有算術運算,如加、減、乘、除等基本運算附加運算。

      (2)執行所有的邏輯運算並進行邏輯測試,如與、或、非、零值測試或兩個值的比較等。

        下面簡要介紹運算器的各種組成部件的組成和功能。

      (1)算術邏輯單元。

               ALU是運算器的總要組成部件,負責處理數據,實際對數據的算術運算和邏輯運算。

      (2)累加寄存器(AC)。英文(accumulator register)

        AC通常稱爲累加器,它是一個通用寄存器。其功能是當運算器的算術邏輯單元執行算術或邏輯運算時,爲 ALU 提供一個工作區。

         例如,在執行一個減法運算前,先將被減數暫取出放在AC中,再從內存儲器中取出減數,然後同AC的內容相減,所得的結果送回AC中。運算的結果是放在累加器中的,運算器中至少要有一個累加寄存器。

       (3)數據緩衝寄存器(DR)。英文(Data Register,DR)

        在對內存儲器進行讀寫操作時,用DR暫時存放由內存儲器讀寫的一條指令或一個數據字,將不同時間段內讀寫的數據隔離開來。

       DR 的主要作用爲:

             作爲 CPU 和內存、外部設備之間數據傳送的中轉站;

             作爲 CPU 和內存、外圍設備之間在操作速度上的緩衝;

             在單累加器結構的運算器中,數據緩衝寄存器還可以兼作爲操作數寄存器。

      (4)狀態條件寄存器(PSW)。 英文(PSW,Program Status Word)

        PSW 保存由算術指令和邏輯指令運行和測試的結果建立的各種條件碼內容,主要分爲狀態標誌和控制標誌,如運算結果進位標誌(C)、運算結果溢出標誌(V)、運算結果爲 0 標誌(Z)、運算結果爲負標誌(N)、中斷標誌(I)、方向標誌(D)和單步標誌燈。

        這些標誌通常分別由 1 位觸發器保存,保存了當前指令執行完之後的狀態。

       通常,一個算術操作產生一個運算結果,而一個邏輯操作則產生一個判斷。

      2)控制器

      運算器只能完成運算,而控制器用於控制整個CPU的工作,它決定了計算機運行過程的自動化。它不僅需要保證程序的正確執行,而且要能夠處理異常事件。

       控制器一般包括指令控制邏輯時序控制邏輯總線控制邏輯中斷控制邏輯等幾個部分。

       指令控制邏輯要完成取指令、分析指令和執行指令的操作,其過程分爲取指令指令譯碼按指令操作碼執行形成下一條指令地址等步驟。

      (1)指令寄存器 (IR)。英文(IR,Instruction Register)

         當CPU執行一條指令時,先把它從內存儲器取到緩衝寄存器中,在送入 IR 暫存,指令譯碼器根據 IR 的內容產生各種微操作指令,控制其他的組成部件工作,完成所需的功能。

       (2)程序計數器(PC)。英文 (PC Program Counter Register)

          PC具有寄存信息和計數兩種功能又稱爲指令計數器。

          程序的執行分兩種情況,一是順序執行,而是轉移執行。

        在程序的起始地址送入PC,該地址在程序加載到內存時確定,因此 PC 的內容即是程序第一條指令的地址。執行指令時,CPU將自動修改PC的內容,以便使其保持的總是將要執行的下一條指令的地址。由於大多數指令都是按順序來執行的,所以修改的過程通常只是簡單地對 PC 加 1。當遇到轉移指令時,後繼指令的地址根據當前指令的地址加上一個向前或向後轉移的位移量得到,或者根據轉移指令給出的直接轉移的地址得到。

       (3)地址寄存器(AR)。英文(AD  Address Register)

        AR 保存當前 CPU 所訪問的內存單元的地址。

        由於內存和 CPU 存在操作速度上的差異,所以需要使用 AR 保持地址信息,知道內存讀/寫操作完成爲止。

        (4)指令譯碼器(ID)。 英文(ID Instruction Decoder)

         指令分爲 操作碼 和 地址碼 兩部分,爲了能執行任何給定的指令,必須對操作碼進行分析,以便識別所完成的操作。

         指令譯碼器就是對指令中的操作碼字段進行分析解釋,識別該指令規定的操作,想操作控制器發出具體的控制信號,控制各部件工作,完成所需的功能。

         時序控制邏輯要爲每條指令按時間順序提供應有的控制信號。

         總線邏輯是爲多個功能部件服務的信息通路的控制電路。中斷控制邏輯用於控制各種中斷請求,並根據優先級的高低對中斷請求進行排隊,逐個交給CPU處理。

     3)寄存器組

     寄存器組可分爲專用寄存器和通用寄存器。

     運算器和控制器中的寄存器是專用寄存器,其作用是固定的。

     運算器和控制器中的寄存器是專用寄存器,其作用是固定的。通用寄存器用途廣泛並可由程序員規定其用途,其數目因處理器不同有所差異。   

  3. 多核 CPU

      核心(Die)又稱爲內核,是CPU最重要的組成部分。CPU中心那塊隆起的芯片就是核心,是由單晶硅以一定的生產工藝製造出來的,CPU所有的計算、接收/存儲命令、處理數據都由核心執行。

      各種 CPU 核心都具有固定的邏輯結構,一級緩存、執行單元、指令級單元和總線接口等邏輯單元都會有科學的佈局。

      多核即在一個單芯片上面集成兩個甚至更多個處理器內核,其中每個內核都有自己的邏輯單元、控制單元、中斷處理器、運算單元,一級Cache、二級Cache共享或獨有,某部件的完整性和單核處理器內核相比完全一致。

      CPU的主要廠商AMD和Intel 的雙核技術在物理結構上有很大不同。

      AMD 將兩個內核做在一個 Die(晶元)上,通過直連架構連接起來,集成度更高。

      Intel 則是將放在不同的Die 上的兩個內核封裝在一起,因此有人將 Intel 的方案稱爲「 雙芯 」,將 AMD 的方案稱爲雙核。從用戶端的角度來看,AMD 的方案能夠使雙核 CPU的管腳、工號等指標跟單核 CPU保持一致,從單核升級到雙核,不需要更換電源、芯片組、散熱系統 和主板,只需要刷新BIOS軟件即可。