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