日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > windows >内容正文

windows

计算机指令要素,【计算机系统】CPU指令执行流程与指令流水线原理

發(fā)布時(shí)間:2025/3/15 windows 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 计算机指令要素,【计算机系统】CPU指令执行流程与指令流水线原理 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

【計(jì)算機(jī)系統(tǒng)】CPU指令執(zhí)行流程與指令流水線原理

一、指令執(zhí)行流程

馮諾依曼架構(gòu)CPU指令執(zhí)行的五個(gè)階段:

階段

涉及的功能部件

IF

指令寄存器IR、程序計(jì)數(shù)器PC

ID

指令譯碼器ID

EXE

CPU內(nèi)各個(gè)單元:ALU、Cache、Registers .etc

MEM

WB

狀態(tài)寄存器FR、Registers. etc

表1

在上述各階段CPU與內(nèi)存的交互時(shí),還涉及系統(tǒng)總線如AB、CB、DB等

1、取指階段(IF, Instruction Fetch)

在上一個(gè)指令周期時(shí),程序計(jì)數(shù)器PC中記錄的是下一條指令的內(nèi)存地址。因此IF階段CPU指令寄存器按照PC的地址從主存中取得一條指令,當(dāng)前指令被取出后,PC更新到下一條指令的地址。

2、指令譯碼階段(ID, Instruction Decode)

在ID階段,指令譯碼器按照預(yù)定的指令格式,對(duì)取回的指令進(jìn)行拆分和解釋,識(shí)別區(qū)分出不同的指令類別以及各種獲取操作數(shù)的方法。

3、執(zhí)行指令階段(EXE, Execute)

通過對(duì)指令的譯碼,CPU已經(jīng)知曉這條指令要如何執(zhí)行,因此EXE階段就是通過操作控制器OC,按確定的時(shí)序向相應(yīng)的部件發(fā)出微操作控制信號(hào)以對(duì)指令要求的特定操作進(jìn)行具體實(shí)現(xiàn)。EXE階段CPU的不同部分(如ALU、寄存器組等)被聯(lián)合起來,以實(shí)現(xiàn)指令所需的操作。

4、訪存取數(shù)階段(MEM, Memory)

根據(jù)指令需要可能要訪問內(nèi)存,讀取操作數(shù)。MEM階段根據(jù)指令地址碼(如果有要求的話)得到操作數(shù)在主存中的地址,并從主存中讀取該操作數(shù)用于運(yùn)算。

5、寫回階段(WB, Write Back)

WB階段把執(zhí)行指令階段的運(yùn)行結(jié)果數(shù)據(jù)“寫回”到某種存儲(chǔ)形式:

①寫入CPU的內(nèi)部寄存器中,以便被后續(xù)的指令快速地存取

②寫入內(nèi)存

③改變FR中標(biāo)志位狀態(tài)(如果需要改變的話),用來影響接下來程序的動(dòng)作

WB階段結(jié)束后,若無意外事件(如結(jié)果溢出等)或異常中斷發(fā)生,計(jì)算機(jī)就接著從程序計(jì)數(shù)器PC中取得下一條指令地址,開始新一輪的循環(huán)。上述五個(gè)階段在具體實(shí)現(xiàn)過程中會(huì)引入指令流水線來提高效率。

二、指令流水線(Instruction Pipeline)

指令流水線概念的提出是為了提高CPU處理指令的效率。

假設(shè)將CPU執(zhí)行一條指令按照流程分為四個(gè)步驟如圖1(ii)

圖1

考慮一個(gè)完全不采用流水線的系統(tǒng)如圖3(i),對(duì)于一組指令序列,CPU總是等某條指令的全部過程都執(zhí)行完之后再開始下一條指令。與之對(duì)比的是圖1(ii)的指令流水線,在第一條指令完成IF后,第二條指令就可以開始IF,依次類推。直觀地,指令流水可以大幅提高CPU處理指令的效率。

1、指令流水線基本概念

①指令流水周期:將一條指令劃分為不同的步驟涉及到的一個(gè)重要問題就是——不一致的劃分現(xiàn)象,即每個(gè)步驟完成的時(shí)間不均勻,例如在經(jīng)典劃分中,IF,WB的速度比較快而EXE速度較慢,如圖2所示陰影部分為指令步驟所需的時(shí)間。因此必須把流水周期設(shè)置為單級(jí)操作的最大時(shí)延。指令階段間的指令轉(zhuǎn)移(例如IF→ID)是由時(shí)鐘信號(hào)控制的,驅(qū)動(dòng)這條指令流水工作的時(shí)鐘周期應(yīng)該要等于這個(gè)最大時(shí)延。

圖2

②CPI(Cycles Per Instruction):即每條指令經(jīng)過整個(gè)流水線所需周期數(shù),它與各指令有關(guān),不同的指令,CPI也不相同。因此,一般使用平均CPI表示

③ILP(Instruction Level Parallelism):即指令級(jí)并行度,是指當(dāng)指令流水線被充分利用時(shí),一個(gè)基本周期內(nèi)并行執(zhí)行的指令數(shù)

④指令發(fā)射速率:指在每個(gè)周期內(nèi)發(fā)射的指令數(shù),在數(shù)值上等于超標(biāo)量處理機(jī)的級(jí)數(shù)。

2、影響流水線性能的因素

①數(shù)據(jù)相關(guān):如第一條指令的輸出為第二條指令的輸入,則第二條指令必須等待第一條指令執(zhí)行完畢而不能直接進(jìn)入流水,造成流水線效率下降

②控制相關(guān):如遇到分支判斷指令,那么該指令可能順序執(zhí)行,也可能分支跳轉(zhuǎn)到其他位置,造成流水線斷流。

引入流水線會(huì)提高CPU指令處理效率,但過深的流水等級(jí)會(huì)使數(shù)據(jù)相關(guān)和控制相關(guān)的副作用增大,反而又降低了CPU工作性能。

3、流水線的改進(jìn)技術(shù)——超標(biāo)量技術(shù)

圖3

采用資源重復(fù)的并行性思想,設(shè)置多條指令流水線和多個(gè)功能部件。每個(gè)周期發(fā)送多條指令(即指令發(fā)射速率大于1),同時(shí)并行地對(duì)多條指令進(jìn)行流水處理

總結(jié)

以上是生活随笔為你收集整理的计算机指令要素,【计算机系统】CPU指令执行流程与指令流水线原理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。