概述
每個操作都會占用一定的cpu時間,我們稱之為工作周期(注意工作周期與指令周期的區別),又稱之為機器周期或基本周期。
cpu在把各指令分成微操作時,各微操作的執行是有順序的(即一個微操作必須要等待另一個微操作執行完才可以執行)。但是控制器只會發出微操作指令,叫各個部件去完成,它要怎么知道這個操作什麼時候完成 。
控制方式
控制方式 即控制不同操作序列時序信號的方法。常用的有同步控制、異步控制、聯合控制三種方式,其實質反映了時序信號的定時方式。
同步控制方式
在任何情況下,已定的指令在執行時所需的機器周期數和時鐘周期數都固定不變。根據不同情況,同步控制方式可選取如下方案:
(1)採用完全統一的機器周期執行各種不同的指令。
(2)採用不定長機器周期。
(3)中央控制與局部控制結合。
異步控制方式
其特點是:每條指令、每個操作控制信號需要多少時間就占用多少時間。這意味著每條指令的指令周期可由多少不等的機器周期數組成;也可以是當控制器發出某一操作控制信號後,等待執行部件完成操作後發“回答”信號,再開始新的操作。顯然,用這種方式形成的操作控制序列沒有固定的CPU周期數(節拍電位)或嚴格的時鐘周期(節拍脈衝)與之同步。
聯合控制方式
此為同步控制和異步控制相結合的方式。
情況(1) 大部分操作序列安排在固定的機器周 期中,對某些時間難以確定的操作則以執行部件的“回答”信號作為本次操作的結束;
情況(2) 機器周期的節拍脈衝數固定,但是各條指令周期的機器周期數不固定。
作用
CPU中也有一個類似"作息時間表"的東西,它稱為時序信號。計算機所以能夠準確、迅速、有條不紊地工作,正是因為在CPU中有一個時序信號產生器。計算機一旦被啟動,在時鐘脈衝的作用下,CPU開始取指令並執行指令,操作控制器就利用定時脈衝的順序和不同的脈衝間隔,有條理、有節奏地指揮機器各個部件按規定時間動作,規定在這個脈衝到來時做什麼,在那個脈衝到來時又做什麼,給計算機各部分提供工作所需的時間標誌。為此,需要採用多級時序體制。
指令系統分為取指指令和執行指令,從時間上來說,取指令事件發生在指令周期的第一個CPU周期中,即發生在取指階段,而取指令所需運算元發生在指令周期的後面幾個CPU周期中,即發生在執行指令階段。從空間上來說,如果取出的代碼是指令,那么一定送往指令暫存器,如果取出的代碼是數據,那么一定送往運算器。
時間控制對計算機來說是極為重要,不僅如此,在一個CPU周期中,又把時間分為若干個小段,以便規定在這一小段時間內CPU乾什麼,在那一小段時間內CPU又乾什麼,時間進度既不能來得太早,也不能來得太晚,如果各部件在時間操作上不同步,否則就可能造成丟失信息或導致錯誤的結果,這種時間約束對CPU是非常重要的。
計算機的協調動作需要時間標誌,而時間標誌則是用時序信號來體現的。一般來說,操作控制器發出的各種控制信號都是時間因素(時序信號)和空間因素(部件位置)的函式。如果忽略了時間因素,那么我們學習計算機硬體時往往就會感到難以理解 。
體制
組成計算機硬體的器件特性決定了時序信號最基本的體制是電位-脈衝制。用這種體制實現暫存器之間的數據傳送時,數據加在觸發器的電位輸入端,而將打入數據的控制信號加在觸發器的時鐘輸入端。電位的高低,表示數據是1還是0。為保證打入到暫存器中的數據可靠,必須先建立信號,並且要求電位信號在加入的數據控制信號到來之前必須已經穩定。計算機中有些部件,例如算術邏輯運算單元ALU只用電位信號工作就可以了。
儘管如此,運算結果還是要送入累加暫存器,所以最終還是需要脈衝信號來配合。 組合邏輯控制器或硬布線控制器中,時序信號往往採用主狀態周期-節拍電位-節拍脈衝三級體制。主狀態周期包含若干個節拍電位,是最大的時間單位,主狀態周期可以用一個觸發器的狀態持續時間來表示;在一個節拍電位中又包含若干個節拍脈衝,以表示較小的時間單位;一個節拍電位包含若干個節拍脈衝,節拍脈衝表示最小的時間單位。
在微程式控制器中,時序信號比較簡單,一般採用節拍電位-節拍脈衝二級體制。就是說,在一個節拍電位中包含若干個節拍脈衝,即時鐘周期。節拍電位表示一個CPU周期的時間,而節拍脈衝把一個CPU周期劃分成幾個較小的時間間隔。根據需要,這些時間間隔可以相等,也可以不相等 。