控制器的基本功能
1、控制各條指令執(zhí)行的順序
2、生成實現(xiàn)指令要求的各種操作控制命令,控制有關(guān)部件完成指令規(guī)定的功能
3、處理運行程序過程中的異常情況,如運算結(jié)果溢出、數(shù)據(jù)校驗出錯以及輸入輸出中斷請求等隨機操作
4、向全機提供統(tǒng)一的時序控制信號,協(xié)調(diào)各部件操作。[1]
數(shù)據(jù)緩沖
由于i/o設(shè)備的速率較低而cpu和內(nèi)存的速率卻很高,故在控制器中必須設(shè)置緩沖器。在輸出時,用此緩沖器暫存由主機高速傳來的數(shù)據(jù),然后才以i/o設(shè)備所具有的速率將緩沖器中的數(shù)據(jù)傳送給i/o設(shè)備;在輸入時,緩沖器則用于暫存從i/o設(shè)備送來的數(shù)據(jù),待接收到一批數(shù)據(jù)后,再將緩沖器中的數(shù)據(jù)高速地傳送給主機。
差錯控制
設(shè)備控制器還兼管對由i/o設(shè)備傳送來的數(shù)據(jù)進行差錯檢測。若發(fā)現(xiàn)傳送中出現(xiàn)了錯誤,通常是將差錯檢測碼置位,并向 cpu報告,于是cpu將本次傳送來的數(shù)據(jù)作廢,并重新進行一次傳送。這樣便可保證數(shù)據(jù)輸入的正確性。
數(shù)據(jù)交換
這是指實現(xiàn)cpu與控制器之間、控制器與設(shè)備之間的數(shù)據(jù)交換。對于前者,是通過數(shù)據(jù)總線,由cpu并行地把數(shù)據(jù)寫入控制器,或從控制器中并行地讀出數(shù)據(jù);對于后者,是設(shè)備將數(shù)據(jù)輸入到控制器,或者從控制器傳送給設(shè)備。為此,在控制器中需要設(shè)置數(shù)據(jù)寄存器。
狀態(tài)說明
標(biāo)識和報告設(shè)備的狀態(tài)控制器應(yīng)記下設(shè)備的狀態(tài)供cpu了解。例如,僅當(dāng)該設(shè)備處于發(fā)送就緒狀態(tài)時,cpu才能啟動控制器從設(shè)備中讀出數(shù)據(jù)。為此,在控制器中應(yīng)設(shè)置一狀態(tài)寄存器,用其中的每一位來反映設(shè)備的某一種狀態(tài)。當(dāng)cpu將該寄存器的內(nèi)容讀入后,便可了解該設(shè)備的狀態(tài)。
接收和識別命令
cpu可以向控制器發(fā)送多種不同的命令,設(shè)備控制器應(yīng)能接收并識別這些命令。為此,在控制器中應(yīng)具有相應(yīng)的控制寄存器,用來存放接收的命令和參數(shù),并對所接收的命令進行譯碼。例如,磁盤控制器可以接收cpu發(fā)來的read、write、format等15條不同的命令,而且有些命令還帶有參數(shù);相應(yīng)地,在磁盤控制器中有多個寄存器和命令譯碼器等。
地址識別
就像內(nèi)存中的每一個單元都有一個地址一樣,系統(tǒng)中的每一個設(shè)備也都有一個地址,而設(shè)備控制器又必須能夠識別它所控制的每個設(shè)備的地址。此外,為使cpu能向(或從)寄存器中寫入(或讀出)數(shù)據(jù),這些寄存器都應(yīng)具有一的地址。
上海銳放自控技術(shù)有限公司專注于控制器,磁柵尺,光柵尺等, 歡迎致電 18561737921