①设计机器的指令系统:规定指令的种类、指令的条数以及每一条指令的格式和功能。
②初步的总体设计:如寄存器设置、总线安排、运算器设计、部件间的连接关系等。
③绘制指令流程图:标出每一条指令在什么时间、什么部件进行何种操作。
④编排操作时间表:即根据指令流程图分解各操作为微操作,按时间段列出机器应进行的微操作。
⑤列出微操作信号表达式,化简,电路实现。
(1)指令寄存器用来存放正在执行的指令。指令分成两部分:操作码和地址码。操作码用来指示指令的操作性质,如加法、减法等;地址码给出本条指令的操作数地址或形成操作数地址的有关信息(这时通过地址形成电路来形成操作数地址)。有一种指令称为转移指令,它用来改变指令的正常执行顺序,这种指令的地址码部分给出的是要转去执行的指令的地址。
(2)操作码译码器:用来对指令的操作码进行译码,产生相应的控制电平,完成分析指令的功能。
(3)时序电路:用来产生时间标志信号。在微型计算机中,时间标志信号一般为三级:指令周期、总线周期和时钟周期。微操作命令产生电路产生完成指令规定操作的各种微操作命令。这些命令产生的主要依据是时间标志和指
令的操作性质。该电路实际是各微操作控制信号表达式(如上面的A→L表达式)的电路实现,它是组合逻辑控制器中最为复杂的部分。(4)指令计数器:用来形成下一条要执行的指令的地址。通常,指令是顺序执行的,而指令在存储器中是顺序存放的。所以,一般情况下下一条要执行的指令的地址可通过将现行地址加1形成,微操作命令“ 1”就用于这个目的。如果执行的是转移指令,则下一条要执行的指令的地址是要转移到的地址。该地址就在本转移指令的地址码字段,因此将其直接送往指令计数器。
微程序控制器的提出是因为组合逻辑设计存在不便于设计、不灵活、不易修改和扩充等缺点。