浅谈计算机微程序控制设计
2016-06-03吴奇霏
吴奇霏
摘 要 硬连线路控制器速度快,简单或规整的指令系统比较适于它,例如mips指令集。对于复杂指令系统来说,对应的英语连线路控制器结构庞杂,实现困难,维护不易,扩充和修改指令相当困难,如果指令系统太复杂的话甚至无法用有限状态机描述,所以对于复杂指令系统或其中的复杂的指令,大多采用微程序方式来设计控制器。用微程序方式实现的控制器称为微程序控制器,它是仿照程序设计方法将每条指令的执行过程用一个微程序来表示。若干条微指令组成每个微程序,每条微指令相当于有限状态机中的某一个状态。所有指令对应的微程序都存放在一个ROM中,这个ROM中称为控制存储器,简称为控存(cs)。在微程序控制器控制下执行指令时,每条指令对应的微程序从控存中取出,在时钟的控制下,按照一定的顺序执行微程序中的每条微指令,通常一个时钟周期执行一条微指令。
关键词 微程序控制器 控制结构 微指令
中图分类号:TP31 文献标识码:A
1微程序控制器
1951年,m.v.wilkes最先提出这个概念。微程序设计的思想给计算机控制部件的设计和实现技术带来了巨大的影响,语音连接路设计相比,它大大降低了控制器设计的复杂性,提高了设计的标准化程度,由于机器指令的执行过程用微程序控制,因而提供了很大的灵活性,使得设计的变更修改以及指令系统的扩充都成为不太困难的事情。它与传统的软件有许多的类似之处。不过,由于微程序相对固定且通常不放在主存内。故有可能利用工作速度较高的ROM存放微程序,从而缩短为程序的运行时间。它是一种固化了的微程序,称为固件。但其又有一个主要的缺点,比相同或相近指令系统的硬布线控制器慢,所以,r i s c机大都采用硬连线路控制器。
2微程序控制的主要结构
2.1基本术语
一条指令的功能通过执行一系列基本操作来完成,这些基本操作称为微操作,每个微操作在相应控制信号的控制下执行,这些控制信号在微程序设计中称为微命令。微程序是一个微指令序列,对应于一条机器指令的功能,每条微指令是一个0/1序列,其中包含若干个微命令,它完成一个基本运算或传送功能,有时也将微指令字,称作控制字(control word)。
2.2微程序控制的基本结构
机器指令的执行过程常常与条件码有关,因此微程序中也引起了条件转移概念,微指令中的转移控制部分,被送到转移地址发生器根据条件及相应微命令产生新的微指令地址送入。CPU执行程序的过程就是不断地去面临,执行命令的过程,取命令过程是每条指令的公共操作,可以专门用一个取指命令为程序来实现,因此微程序控制器的工作流程,就是不断的执行去执行取指令微程序和执行相应指令功能微程序的过程。CPU执行程序的过程就是不断的去面临,执行命令的过程,取命令过程是每条指令的公共操作,可以专门用一个取指命令为程序来实现。为了加快指令及执行速度,通常采用定长为指令字格式,每条微指令由两部分组成,微操作码部分和位地址码部分。
3微命令编码
3.1直接控制法
一位对应一个微命令,不进行微命令的编码,所以,微操作码的长度与所有为命定的个数相当,无需译码因此也成为不译法,对于二值微命令,本来就只占一位,没有增加位数对于多值数命令,因为没有进行编码所以相对来说增加了位数。显然直接控制法的并行控制能力强,不必译码控制电路简单,速度快。也由于一台机器的微命令个数太多通常达到几百个,因此微命令字可能多达几百位,实现起来非常困难。
3.2字段直接编码法
数据通路中的微操作之间存在两种关系,相容和互斥。相容微操作是指在数据通路中,能同时进行的微操作,对应的微命令称为相容为命令。互斥操作是指不能同时进行的微操作,对应的微命令称为互斥为命令。字段直接编码法的基本思想是将微指令分为若干字段,每个字段包含若干微命令,把相斥微操作组合在同一字段,相容为操作组合在不同阶段,编码时对每一个字段内进行微操作,因此通常一条微指令中,最多可同时发出的微操作数就是为命令字段的个数。
3.3字段间接编码法
在字段间接编码法基础上可通过字段间接编码的方式进一步压缩微指令长度。这种方式可缩短指令长度,节省容量,意义却不大,线路较复杂,时间需要较多,极少用这种方式。
4总结
信息技术的快速发展推动着现代化建设的快速进行和社会经济的飞速发展,而要促进信息技术的进一步发展,必须要加大计算机软件工程技术的研发力度,同时要注重产品的创新和发展,重视产品知识产权保护,加速管理技术的更新升级。在信息技术快速发展的背景下,计算机软件工程与网络技术不断融合,相关企业要抓住这次机会大力研发新的产品、鼓励产品创新,从而推动社会经济快速发展。
参考文献
[1] 林雪玲.基于计算机软件工程的现代化技术[J].电子测试,2014(17):132-133+146.
[2] 钟淑.计算机软件工程的现代化技术研究[J].信息与电脑(理论版),2016(02):50-52.
[3] 袁婷.关于计算机软件工程的现代化技术研究[J].科技传播,2016(03):96+99.
[4] 迟浩.基于计算机软件工程的现代化技术[J].计算机光盘软件与应用,2015(01):69-70.
[5] 王东雪.基于计算机软件工程的现代化技术研究[J].电子技术与软件工程,2015(23):84.