指令周期機器周期與時鍾周期關系


時鍾周期

時鍾周期也稱為振盪周期,定義為時鍾脈沖的倒數(可以這樣來理解,時鍾周期就是單片機外接晶振的倒數,例如12M的晶振,它的時間周期就是1/12 us),是計算機中最基本的、最小的時間單位。

在一個時鍾周期內,CPU僅完成一個最基本的動作。對於某種單片機,若采用了1MHZ的時鍾頻率,則時鍾周期為1us;若采用4MHZ的時鍾頻率,則時鍾 周期為250us。由於時鍾脈沖是計算機的基本工作脈沖,它控制着計算機的工作節奏(使計算機的每一步都統一到它的步調上來)。顯然,對同一種機型的計算 機,時鍾頻率越高,計算機的工作速度就越快。但是,由於不同的計算機硬件電路和器件的不完全相同,所以其所需要的時鍾周頻率范圍也不一定相同。我們學習的 8051單片機的時鍾范圍是1.2MHz-12MHz。

在8051單片機中把一個時鍾周期定義為一個節拍(用P表示),二個節拍定義為一個狀態周期(用S表示)。

機器周期

在計算機中,為了便於管理,常把一條指令的執行過程划分為若干個階段,每一階段完成一項工作。例如,取指令、存儲器讀、存儲器寫等,這每一項工作稱為一個 基本操作。完成一個基本操作所需要的時間稱為機器周期。一般情況下,一個機器周期由若干個S周期(狀態周期)組成。8051系列單片機的一個機器周期同6 個S周期(狀態周期)組成。前面已說過一個時鍾周期定義為一個節拍(用P表示),二個節拍定義為一個狀態周期(用S表示),8051單片機的機器周期由6 個狀態周期組成,也就是說一個機器周期=6個狀態周期=12個時鍾周期。

指令周期

指令周期是執行一條指令所需要的時間,一般由若干個機器周期組成。指令不同,所需的機器周期數也不同。對於一些簡單的的單字節指令,在取指令周期中,指令 取出到指令寄存器后,立即譯碼執行,不再需要其它的機器周期。對於一些比較復雜的指令,例如轉移指令、乘法指令,則需要兩個或者兩個以上的機器周期。
通常含一個機器周期的指令稱為單周期指令,包含兩個機器周期的指令稱為雙周期指令。

總線周期

1.微處理器是在時鍾信號CLK控制下按節拍工作的。8086/8088系統的時鍾頻率為4.77MHz,每個時鍾周期約為200ns。
2.由於存貯器和I/O端口是掛接在總線上的,CPU對存貯器和I/O接口的訪問,是通過總線實現的。通常把CPU通過總線對微處理器外部(存貯器或 I/O接口)進行一次訪問所需時間稱為一個總線周期。一個總線周期一般包含4個時鍾周期,這4個時鍾周期分別稱4個狀態即T1狀態、T2狀態、T3狀態和 T4狀態。


總結一下,它們之間的關系就是,指令周期由若干個機器周期組成,總線周期一般由4個時鍾周期組成。

機器周期和總線周期……機器周期指的是完成一個基本操作的時間,這個基本操作有時可能包含總線讀寫,因而包含總線周期,但是有時可能與總線讀寫無關,所以,並無明確的相互包含的關系
指令周期: 是CPU的關鍵指標,指取出並執行一條指令的時間。一般以機器周期為單位,分單指令執行周期、雙指令執行周期等。現在的處理器的大部分指令(ARM、DSP)均采用單指令執行周期。

機器周期: 完成一個基本操作的時間單元,如取指周期、取數周期。

時鍾周期: CPU的晶振的工作頻率的倒數。

例子:22.1184MHZ的晶振,它的晶振周期、時鍾周期和機器周期分別是多少?
以51為例,晶振22.1184M,時鍾周期(晶振周期)就是(1/22.1184)μs,一個機器周期包含12個時鍾周期,一個機器周期就是 0.5425μs。一個機器周期一般是一條指令花費的時間,也有些是2個機器周期的指令,DJNZ,是雙周期指令.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM