指令計(jì)數(shù)器:用來形成下一條要執(zhí)行的指令的地址。通常,指令是順序執(zhí)行的,而指令在存儲(chǔ)器中是順序存放的。所以,一般情況下下一條要執(zhí)行的指令的地址可通過將現(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)。
微程序
微程序控制(簡稱微碼控制)的基本思路是:用微指令產(chǎn)生微作命令,用若干條微指令組成一段微程序?qū)崿F(xiàn)一條機(jī)器指令的功能(為了加以區(qū)別,將前面所講的指令稱為機(jī)器指令)。設(shè)機(jī)器指令M執(zhí)行時(shí)需要三個(gè)階段,每個(gè)階段需要發(fā)出如下命令:階段一發(fā)送K1、K8命令,階段二發(fā)送K0、K2、K3、K4命令,階段三發(fā)送K9命令。當(dāng)將條微指令送到微指令寄存器時(shí),微指令寄存器的K1和K8為1,即發(fā)出K1和K8命令,該微指令指出下一條微指令地址為00101,從中取出條微指令,送到微指令寄存器時(shí)將發(fā)出K0、K2、K3、K4命令,接下來是取第三條微指令,發(fā)K9命令。
微程序控制器的組成:RP300E03BRP300E03BRP300E03B
1、控制存儲(chǔ)器(contmlMemory)用來存放各機(jī)器指令對應(yīng)的微程序。譯碼器用來形成機(jī)器指令對應(yīng)的微程序的入口地址。當(dāng)將一條機(jī)器指令對應(yīng)的微程序的各條微指令逐條取出,并送到微指令寄存器時(shí),其微作命令也就按事先的設(shè)計(jì)發(fā)出,因而也就完成了一條機(jī)器指令的功能。對每一條機(jī)器指令都是如此。
2、微指令的寬度直接決定了微程序控制器的寬度。為了簡化控制存儲(chǔ)器,可采取一些措施來縮短微指令的寬度。如采用字段譯碼法一級分段譯碼。顯然,微指令的控制字段將大大縮短。,一些要同時(shí)產(chǎn)生的微作命令不能安排在同一個(gè)字段中。為了進(jìn)一步縮短控制字段,還可以將字段譯碼設(shè)計(jì)成兩級或多級。
通常來說,在速度很重要而精確作并不重要的情況下會(huì)使用開環(huán)控制,例如在機(jī)加工步驟完成之后將工具收縮回來的作,或者在接觸加工部件之前將工具預(yù)先定位的作。執(zhí)行機(jī)構(gòu)可以根據(jù)負(fù)載的變化來變換速度,或者是液壓系統(tǒng)的情況下根據(jù)油壓和油溫的變化來變換速度。
開環(huán)控制并不是完全“沒有反饋”的。開環(huán)控制會(huì)使用獨(dú)立的限位開關(guān)、光電檢測器或壓力開關(guān)來決定運(yùn)動(dòng)應(yīng)該在什么時(shí)候停止或什么時(shí)候達(dá)到一個(gè)壓力限值。一些特殊的運(yùn)動(dòng)控制器一般不需要運(yùn)行啟/停的運(yùn)動(dòng)控制,例如一臺(tái)可編程邏輯控制器(PLC)的通用計(jì)算機(jī)就足夠了。如果使用必須要在位置安裝的物理限位裝置可能會(huì)帶來問題,因?yàn)槿绻麢C(jī)器是被用來加工不同尺寸的材料,在產(chǎn)品切換的過程中限位裝置的物理位置需要移動(dòng)。