機器周期檢視原始碼討論檢視歷史
機器周期也稱為CPU周期。在計算機中,為了便於管理,常把一條指令的執行過程劃分為若干個階段(如取指、譯碼、執行等),每一階段完成一個基本操作。完成一個基本操作所需要的時間稱為機器周期。一般情況下,一個機器周期由若干個時鐘周期組成。[1]
- 中文名:機器周期
- 外文名:Machine Cycle
- 含 義:計算機通過內部或外部總線完成一個基本操作所需要的時間
- 組 成:一個機器周期由若干個S周期(狀態周期)組成
- 作 用:便於對計算機指令執行工作進行管理
- 常見換算關係:單片機的機器周期=12秒/晶振頻率
簡介
時序是用定時單位來說明的。MCS-51的時序定時單位共有4個,從小到大依次是:節拍、狀態、機器周期和指令周期。下面分別加以說明 [2] 。
節拍與狀態:把振盪脈衝的周期定義為節拍(用p表示)。振盪脈衝經過二分頻後定義為狀態。一個狀態就包含兩個節拍 。
機器周期:MCS-51採用定時控制方式,有固定的機器周期,規定一個機器周期的寬度為6個狀態,並依次表示為S1-S6。由於一個狀態包括兩個節拍,因此一個機器周期總共有12個節拍,分別記作S1P1、S1P2、……、S6P2。因此一個
機器周期就由12個振盪脈衝周期組成。
顯然,當振盪脈衝頻率為12MHz時,一個機器周期為1μs,當振盪脈衝頻率為6MHz時,一個機器周期為2μs 。 指令周期:指令周期是最大的時序定時單位,執行一條指令所需要的時間稱為指令周期。MCS-51的指令周期根據指令的不同,可分別包含有一、二、四個機器周期[3] 。
指令周期
CPU每取出一條指令並執行這條指令,都要完成一系列的操作,這一系列操作所需要的時間通常叫做一個指令周期。換言之指令周期是取出一條指令並執行這條指令的時間。由於各條指令的操作功能不同,因此各種指令的指令周期是不盡相同的。例如一條加法指令的指令周期同一條乘法指令的指令周期是不相同的 。
指令周期常常用若干個CPU周期數來表示,CPU周期也稱為機器周期。由於CPU內部的操作速度快,而CPU訪問一次內存所花的時間較長,通常用內存中讀取一個指令字的最短時間來規定CPU周期。這就是說,一條指令的取出階段(通常稱為取指)需要一個CPU周期時間。而一個CPU周期時間又包含有若干個時鐘周期(通常稱為節拍脈衝或T周期,它是處理操作的最基本單位)。這些時鐘周期的總和,決定了一個CPU周期的時間寬度。由此可知,取出和執行任何一條指令所需的最短時間為兩個CPU周期。對於複雜一些的指令,則需要更多的CPU周期 [4] 。
總線周期
1、微處理器是在時鐘信號CLK控制下按節拍工作的。8086/8088系統的時鐘頻率為4.77MHz,每個時鐘周期約為200ns。
2、由於存貯器和I/O端口是掛接在總線上的,CPU對存貯器和I/O接口的訪問,是通過總線實現的。我們通常把CPU通過總線對微處理器外部(存儲器或I/O接口)進行一次訪問所需時間,稱為一個總線周期[5] 。
時鐘周期
時鐘周期T又稱為振盪周期,由單片機片內振盪電路OSC產生,常定義為時鐘脈衝頻率的倒數,是時序中最小的時間單位。例如,若某單片機時鐘頻率為1MHz,則它的時鐘周期T應為1μs。由於時鐘脈衝是計算機的基本工作脈衝,它控制着計算機的工作節奏,使計算機的每一步工作都統一到它的步調上來。顯然,對同一種機型的計算機,時鐘頻率越高,計算機的工作速度就越快。但是,由於不同的計算機硬件電路和器件的不完全相同,所以它們需要的時鐘周期頻率範圍也不一定相同 [6] 。
相互關係
1、指令周期由若干個機器周期組成,而機器周期又包含若干個時鐘周期,基本總線周期由4個時鐘周期組成 。
2、機器周期和總線周期的關係:機器周期指的是完成一個基本操作的時間,基本操作有時可能包含總線讀/寫,因而包含總線周期,但是有時可能與總線讀/寫無關,所以,並無明確的相互包含關係 [7] 。
視頻
單片機中的時鐘周期、機器周期、指令周期介紹
參考文獻
- ↑ 陳客松,汪玲,龐曉鳳編著,微計算機原理與接口 基於STM32處理器,電子科技大學出版社,2017.07,第265頁
- ↑ 楊宏麗,單片機應用技術 第4版,西安電子科技大學出版社,2018.08,第22頁
- ↑ 張慰兮主編,微型計算機 MCS-51系列 原理、接口及應用,南京大學出版社,1995.08,第63頁
- ↑ 占永平主編,計算機原理,科學普及出版社,2007.08,第86頁-第87頁
- ↑ 周佩鋒,李琰主編,微型計算機原理與接口技術及實訓,山東科學技術出版社,2015.01,第23頁
- ↑ 關麗榮,普通高等教育十三五規劃教材 單片機原理及接口技術,西安交通大學出版社,2018.08,第74頁-第75頁
- ↑ 萬曉冬,陳則王,孔德明,崔江,計算機硬件技術基礎,國防工業出版社,2017.02,第39頁