德國(guó)皮爾茲PILZ控制器種類分類:
組合邏輯控制器由時(shí)序電路、指令譯碼電路和組合邏輯電路三部分組成。通過(guò)指令譯碼器確定當(dāng)前執(zhí)行的指令,結(jié)合時(shí)序電路產(chǎn)生的節(jié)拍,共同作為組合邏輯電路的輸人結(jié)果輸出相應(yīng)的控制信號(hào)。組合邏輯控制器是由復(fù)雜組合邏輯門(mén)電路和觸發(fā)器構(gòu)成,執(zhí)行速度快,因此在計(jì)算機(jī)結(jié)構(gòu)比如RISC中得到廣泛應(yīng)用。 [1] 設(shè)計(jì)步驟:
1、設(shè)計(jì)機(jī)器的指令系統(tǒng):規(guī)定指令的種類、指令的條數(shù)以及每一條指令的格式和功能;
2、初步的總體設(shè)計(jì):如寄存器設(shè)置、總線安排、運(yùn)算器設(shè)計(jì)、部件間的連接關(guān)系等;
3、繪制指令流程圖:標(biāo)出每一條指令在什么時(shí)間、什么部件進(jìn)行何種操作;
4、編排操作時(shí)間表:即根據(jù)指令流程圖分解各操作為微操作,按時(shí)間段列出機(jī)器應(yīng)進(jìn)行的微操作;
5、列出微操作信號(hào)表達(dá)式,化簡(jiǎn),電路實(shí)現(xiàn)。
基本組成:
1、指令寄存器用來(lái)存放正在執(zhí)行的指令。指令分成兩部分:操作碼和地址碼。操作碼用來(lái)指示指令的操作性質(zhì),如加法、減法等;地址碼給出本條指令的操作數(shù)地址或形成操作數(shù)地址的有關(guān)信息(這時(shí)通過(guò)地址形成電路來(lái)形成操作數(shù)地址)。有一種指令稱為轉(zhuǎn)移指令,它用來(lái)改變指令的正常執(zhí)行順序,這種指令的地址碼部分給出的是要轉(zhuǎn)去執(zhí)行的指令的地址。
2、操作碼譯碼器:用來(lái)對(duì)指令的操作碼進(jìn)行譯碼,產(chǎn)生相應(yīng)的控制電平,完成分析指令的功能。
3、時(shí)序電路:用來(lái)產(chǎn)生時(shí)間標(biāo)志信號(hào)。在微型計(jì)算機(jī)中,時(shí)間標(biāo)志信號(hào)一般為三級(jí):指令周期、總線周期和時(shí)鐘周期。微操作命令產(chǎn)生電路產(chǎn)生完成指令規(guī)定操作的各種微操作命令。這些命令產(chǎn)生的主要依據(jù)是時(shí)間標(biāo)志和指令的操作性質(zhì)。該電路實(shí)際是各微操作控制信號(hào)表達(dá)式(如上面的A→L表達(dá)式)的電路實(shí)現(xiàn),它是組合邏輯控制器中最為復(fù)雜的部分。
4、指令計(jì)數(shù)器:用來(lái)形成下一條要執(zhí)行的指令的地址。通常,指令是順序執(zhí)行的,而指令在存儲(chǔ)器中是順序存放的。所以,一般情況下下一條要執(zhí)行的指令的地址可通過(guò)將現(xiàn)行地址加1形成,微操作命令“1"就用于這個(gè)目的。如果執(zhí)行的是轉(zhuǎn)移指令,則下一條要執(zhí)行的指令的地址是要轉(zhuǎn)移到的地址。該地址就在本轉(zhuǎn)移指令的地址碼字段,將其直接送往指令計(jì)數(shù)器。
微程序控制器的提出是因?yàn)榻M合邏輯設(shè)計(jì)存在不便于設(shè)計(jì)、不靈活、不易修改和擴(kuò)充等缺點(diǎn)。
微程序
微程序控制(簡(jiǎn)稱微碼控制)的基本思路是:用微指令產(chǎn)生微操作命令,一條指令的功能通過(guò)執(zhí)行一系列基本操作來(lái)完成,這些基本操作稱為微操作,每個(gè)微操作在相應(yīng)控制信號(hào)的控制下執(zhí)行,這些控制信號(hào)在微程序設(shè)計(jì)中稱為微命令。微程序是一個(gè)微指令序列,對(duì)應(yīng)于一條機(jī)器指令的功能,每條微指令是一個(gè)0/1序列,其中包含若干個(gè)微命令,它完成一個(gè)基本運(yùn)算或傳送功能,有時(shí)也將微指令字,稱作控制字(controlword)
微程序控制器的組成:
1、控制存儲(chǔ)器(Control Memory)用來(lái)存放各機(jī)器指令對(duì)應(yīng)的微程序。譯碼器用來(lái)形成機(jī)器指令對(duì)應(yīng)的微程序的入口地址。當(dāng)將一條機(jī)器指令對(duì)應(yīng)的微程序的各條微指令逐條取出,并送到微指令寄存器時(shí),其微操作命令也就按事先的設(shè)計(jì)發(fā)出,因而也就完成了一條機(jī)器指令的功能。對(duì)每一條機(jī)器指令都是如此。
2、微指令的寬度直接決定了微程序控制器的寬度。為了簡(jiǎn)化控制存儲(chǔ)器,可采取一些措施來(lái)縮短微指令的寬度。如采用字段譯碼法一級(jí)分段譯碼。顯然,微指令的控制字段將大大縮短。,一些要同時(shí)產(chǎn)生的微操作命令不能安排在同一個(gè)字段中。為了進(jìn)一步縮短控制字段,還可以將字段譯碼設(shè)計(jì)成兩級(jí)或多級(jí)。
如您對(duì)此文章感興趣請(qǐng)見(jiàn):德國(guó)皮爾茲PILZ控制器