X86架構(The X86 architecture)是微處理器執行的計算機語言指令集,指一個intel通用計算機系列的標準編號縮寫,也標識一套通用的計算機指令集合。
x86是一個intel通用計算機系列的標準編號縮寫,也標識一套通用的計算機指令集合,X與處理器沒有任何關系,它是一個對所有*86系統的簡單的通配符定義,例如:i386, 586,奔騰(pentium)。由于早期intel的CPU編號都是如8086,80286來編號,由于這整個系列的CPU都是指令兼容的,所以都用X86來標識所使用的指令集合如今的奔騰,P2,P4,賽揚系列都是支持X86指令系統的,所以都屬于X86家族 。
X86指令集是美國Intel公司為其第一塊16位CPU(i8086)專門開發的,美國IBM公司1981年推出的世界第一臺PC機中的CPU--i8088(i8086簡化版)使用的也是X86指令,同時電腦中為提高浮點數據處理能力而增加的X87芯片系列數學協處理器則另外使用X87指令,以后就將X86指令集和X87指令集統稱為X86指令集。雖然隨著CPU技術的不斷發展,Intel陸續研制出更新型的i80386、i80486直到今天的Pentium 4(以下簡為P4)系列,但為了保證電腦能繼續運行以往開發的各類應用程序以保護和繼承豐富的軟件資源,所以Intel公司所生產的所有CPU仍然繼續使用X86指令集,所以它的CPU仍屬于X86系列。
另外除Intel公司之外,AMD和Cyrix等廠家也相繼生產出能使用X86指令集的CPU,由于這些CPU能運行所有的為Intel CPU所開發的各種軟件,所以電腦業內人士就將這些CPU列為Intel的CPU兼容產品。由于Intel X86系列及其兼容CPU都使用X86指令集,所以就形成了今天龐大的X86系列及兼容CPU陣容。當然在臺式(便攜式)電腦中并不都是使用X86系列CPU,部分服務器和蘋果(Macintosh)機中還使用美國DIGITAL(數字)公司的Alpha 61164和PowerPC 604e系列CPU。
Intel從8086開始,286、386、486、586、P1、P2、P3、P4都用的同一種CPU架構,統稱X86。
X86架構CPU的邏輯原理
一、馮洛伊曼體系的運作過程:
1、CPU的歷史就不扯了,有興趣的朋友可以網上搜一下。
2、X86CPU是基于馮洛伊曼架構體系,所以大致上無非就這幾點:
①、指令集和數據都用二進制來表示,且混在一個存儲器。
②、計算機由運算器、控制器、存儲器(cache)、輸入設備、輸出設備所組成。PS:cache不同于寄存器,寄存器是分布在控制器和運算器里面的。
③、指令是一條接著一條順序的執行。
如下圖所示:
二、下面分別討論幾個主要組件:
寄存器:處于CPU存儲金字塔的最頂層,容量最小,速度最快(1-10個指令周期)。主要作用是用來存儲數據供運算器運算的。各自都有不同的功能。
控制器:數據寄存器,指令寄存器,程序計數器,指令譯碼器,時序產生器,操作控制器所組成。
運算器:運算器由算術邏輯單元(ALU)、累加寄存器、數據緩沖寄存器和狀態條件寄存器組成。
三、執行過程:
當執行一條指令時,程序計數器先記錄當前的地址,把他放到地址記錄器,程序計數器再加一(指向下一條指令的地址),
然后就從內存讀取指令放到指令寄存器(IR)。然后在傳到指令譯碼器,具體功能如下:
指令譯碼器:
(1)譯碼分析。確定指令應完成的操作,產生相應操作的控制電位。去參與形成該指令功能所需要的全部控制命令(微操作控制信號)。
(2)根據尋址方式(8086是采用段地址+偏移地址合成一個20bit的尋址范圍,從32bit開始淘汰)的分析和指令功能要求,形成操作數的有效地址,并按此地址取出操作數(運算型指令)或形成轉移地址(轉移類指令),以實現程序轉移。
指令寄存器中操作碼字段的輸出就是指令譯碼器的輸入。操作碼一經譯碼后,即可向操作控制器發出具體操作的特定信號。
時序發生器: 時序信號發生器是產生指令周期控制時序信號的部件,當CPU開始取指令并執行指令時,操作控制器利用時序信號發生器產生的定時脈沖的順序和不同的脈沖間隔,提供計算機各部分工作時所需的各種微操作定時控制信號,有條理、有節奏地指揮機器各個部件按規定時間動作。(區分數據和指令的一種方法。詳細可看我CPU架構的區別一文)
然后把指令傳到運算器。寄存器得到譯碼后的結果,通過數據總線,去數據cache獲取數據。然后根據需求進行邏輯運算(與或非)算術運算,然后在通過數據緩沖寄存器通往IO端口傳輸到外界。
操作控制器:常用的控制方式有同步控制、異步控制、聯合控制。
1.同步控制方式:任何指令的運行或指令中各個微操作的執行,均由確定的,具有統一基準時標的時序信號所控制。即所有的操作均由統一的時鐘控制,在標準時間內完成。(在同步控制下,每個時序信號的結束就意味著安排完成的工作已經完成,隨即開始執行后續的微操作或自動轉向下條指令的運行。)
2.異步控制方式:沒有統一的同步信號,采用問答方式進行時序協調,將前一操作的回答作為下一操作的啟動信號。
3.聯合控制方式:將同步控制和異步控制相結合。其通常設計思想為:在功能部件內部采用同步方式或以同步方式為主的控制方式;在功能部件間采用異步方式。
而運算器又大致上分為邏輯運算(與或非)和數值運算(用加法的形式轉變成加減乘除)。
如下圖所示:
-
cpu
+關注
關注
68文章
10879瀏覽量
212188 -
微處理器
+關注
關注
11文章
2271瀏覽量
82549 -
X86架構
+關注
關注
8文章
45瀏覽量
23679
發布評論請先 登錄
相關推薦
評論