欢迎来到天天文库
浏览记录
ID:9314894
大小:1.33 MB
页数:20页
时间:2018-04-27
《关于编制微程序控制简单模型机的组成原理课程设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、目录一、摘要二、微程序控制器原理三、总体设计(系统构成)四、详细设计五、测试六、结论七、参考文献一、摘要利用CPU与简单模型机设计实验中所学到的实验原理以及编程思想,硬件设备,自拟编写指令的应用程序,用微程序控制器实现了一系列的指令功能。完成了各指令的格式以及编码的设计,实现了各机器指令微代码,形成具有一定功能的完整的应用程序。在本设计中完成了基本的数据输入输出(IN,OUT),带左移的加法运算(ADDRi,Rj,N;Riß(Ri)+(Rj)<2、键词:微程序控制器原理微指令编码机器指令微代码设计流程图二、微程序控制器原理1.设计要求:用微程序控制器实现以下指令功能,设计各指令格式以及编码,并实现各机器指令微代码,根据定义的机器指令,自拟编写包含以下指令的应用程序。参考实验5.3、6.1,在此基础上增加如下指令调用:CALLaddr;指令功能与80X86相同,addr是8位二进制地址返回:RET;存储器到存储器传送:MOVmemi,memj;memiß(memj),i<>j,memi内存单元地址带左移的加法运算:ADDRi,Rj,N;Riß(Ri)+(Rj)<3、及设计思想:本设计的核心是一个简单的cpu,CPU由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如下图所示。CPU在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU必须和主存挂接后,才有实际的意义,所以还需要在该CPU的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。这此次设计中用到了程序计数器,系统的程序计数器(PC)和地址寄存器(AR)集成在一片CPLD芯片中。CLR连接至CON单元的总清端CLR,按下CLR4、按钮,将使PC清零,LDPC和T3相与后作为计数器的计数时钟,当LOAD为低时,计数时钟到来后将CPU内总线上的数据打入PC。本模型机共有七条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、,HLT(停机),call(调用)相当于JMP(无条件转移)、ret(返回)、shl(左移)其指令格式如下(高4位为操作码):其中call指令为双字节指令,其余均为单字节指令,********为addr对应的二进制地址码。根据以上要求,设计数据通路图如下图:数据通路图三、总体设计(系统构成)利用CPU的运算器(ALU)、微程序控制器(MC)、通用寄存器5、(R0)、指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)等的各项功能即这个简单的模型机,设计各指令格式以及编码,并实现各机器指令微代码,根据定义的机器指令,编写满足要求的应用程序。通过以下几大步骤完成所需设计。a.通过分析CPU各个功能部件之间的相互关系,完成实验所需电路图设计,b.规划出整个应用程序所需要的流程图,为微代码的编写提供清晰的思路c.利用流程图所给思想,设计微代码格式,编写微指令以及机器指令微代码d.通过联机操作方式完成测试,检测是否能完成要求中的功能进行分析总结,策划优化方案四、详细设计A、系统涉及到的微程序流程见下图所6、示,当拟定“取指”微指令时,该微指令的判别测试字段为P<1>测试。由于“取指”微指令是所有微程序都使用的公用微指令,因此P<1>的测试结果出现多路分支。本设计用指令寄存器的高6位(IR—IR2)作为测试条件,出现七路分支,占用七个固定微地址单元,剩下的其它地方就可以一条微指令占用控存一个微地址单元随意填写,微程序流程图上的单元地址为16进制。beginNOP00PC---->ARPC+1--->PC01MEM--->IR03P<1>30SHLINADDOUTHTLMOVCALLRET39PC--->ARPC+1--->PC323033353A3C37、6A+B--->R0R0----.>AB--->PCIO---->IRNOPRO--->IOIO--->RO20060901010B01A<<1---->R0MEM----->R0R0--->AR0--->A0EPC--->B01A<<1---->R0IO--->ARIO--->RO070A0CMEM--->PC0FR0--->B080DR0--->MEM01010101B、电路连接图C、设计微代码格式,编写微指令以及机器指令微代码设计思想为:利用程序计数器(PC)作为每一小节程序段的开始,当拟定“取指”指令后,利用P<1>字段进行判别测试。IN,8、OUT,ADD,MOV,CALL,RET,SHL,RET作为并行的程序入口。IN:完成需要相加的两个数据i、j的输入,并分
2、键词:微程序控制器原理微指令编码机器指令微代码设计流程图二、微程序控制器原理1.设计要求:用微程序控制器实现以下指令功能,设计各指令格式以及编码,并实现各机器指令微代码,根据定义的机器指令,自拟编写包含以下指令的应用程序。参考实验5.3、6.1,在此基础上增加如下指令调用:CALLaddr;指令功能与80X86相同,addr是8位二进制地址返回:RET;存储器到存储器传送:MOVmemi,memj;memiß(memj),i<>j,memi内存单元地址带左移的加法运算:ADDRi,Rj,N;Riß(Ri)+(Rj)<3、及设计思想:本设计的核心是一个简单的cpu,CPU由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如下图所示。CPU在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU必须和主存挂接后,才有实际的意义,所以还需要在该CPU的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。这此次设计中用到了程序计数器,系统的程序计数器(PC)和地址寄存器(AR)集成在一片CPLD芯片中。CLR连接至CON单元的总清端CLR,按下CLR4、按钮,将使PC清零,LDPC和T3相与后作为计数器的计数时钟,当LOAD为低时,计数时钟到来后将CPU内总线上的数据打入PC。本模型机共有七条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、,HLT(停机),call(调用)相当于JMP(无条件转移)、ret(返回)、shl(左移)其指令格式如下(高4位为操作码):其中call指令为双字节指令,其余均为单字节指令,********为addr对应的二进制地址码。根据以上要求,设计数据通路图如下图:数据通路图三、总体设计(系统构成)利用CPU的运算器(ALU)、微程序控制器(MC)、通用寄存器5、(R0)、指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)等的各项功能即这个简单的模型机,设计各指令格式以及编码,并实现各机器指令微代码,根据定义的机器指令,编写满足要求的应用程序。通过以下几大步骤完成所需设计。a.通过分析CPU各个功能部件之间的相互关系,完成实验所需电路图设计,b.规划出整个应用程序所需要的流程图,为微代码的编写提供清晰的思路c.利用流程图所给思想,设计微代码格式,编写微指令以及机器指令微代码d.通过联机操作方式完成测试,检测是否能完成要求中的功能进行分析总结,策划优化方案四、详细设计A、系统涉及到的微程序流程见下图所6、示,当拟定“取指”微指令时,该微指令的判别测试字段为P<1>测试。由于“取指”微指令是所有微程序都使用的公用微指令,因此P<1>的测试结果出现多路分支。本设计用指令寄存器的高6位(IR—IR2)作为测试条件,出现七路分支,占用七个固定微地址单元,剩下的其它地方就可以一条微指令占用控存一个微地址单元随意填写,微程序流程图上的单元地址为16进制。beginNOP00PC---->ARPC+1--->PC01MEM--->IR03P<1>30SHLINADDOUTHTLMOVCALLRET39PC--->ARPC+1--->PC323033353A3C37、6A+B--->R0R0----.>AB--->PCIO---->IRNOPRO--->IOIO--->RO20060901010B01A<<1---->R0MEM----->R0R0--->AR0--->A0EPC--->B01A<<1---->R0IO--->ARIO--->RO070A0CMEM--->PC0FR0--->B080DR0--->MEM01010101B、电路连接图C、设计微代码格式,编写微指令以及机器指令微代码设计思想为:利用程序计数器(PC)作为每一小节程序段的开始,当拟定“取指”指令后,利用P<1>字段进行判别测试。IN,8、OUT,ADD,MOV,CALL,RET,SHL,RET作为并行的程序入口。IN:完成需要相加的两个数据i、j的输入,并分
3、及设计思想:本设计的核心是一个简单的cpu,CPU由运算器(ALU)、微程序控制器(MC)、通用寄存器(R0),指令寄存器(IR)、程序计数器(PC)和地址寄存器(AR)组成,如下图所示。CPU在写入相应的微指令后,就具备了执行机器指令的功能,但是机器指令一般存放在主存当中,CPU必须和主存挂接后,才有实际的意义,所以还需要在该CPU的基础上增加一个主存和基本的输入输出部件,以构成一个简单的模型计算机。这此次设计中用到了程序计数器,系统的程序计数器(PC)和地址寄存器(AR)集成在一片CPLD芯片中。CLR连接至CON单元的总清端CLR,按下CLR
4、按钮,将使PC清零,LDPC和T3相与后作为计数器的计数时钟,当LOAD为低时,计数时钟到来后将CPU内总线上的数据打入PC。本模型机共有七条指令:IN(输入)、ADD(二进制加法)、OUT(输出)、,HLT(停机),call(调用)相当于JMP(无条件转移)、ret(返回)、shl(左移)其指令格式如下(高4位为操作码):其中call指令为双字节指令,其余均为单字节指令,********为addr对应的二进制地址码。根据以上要求,设计数据通路图如下图:数据通路图三、总体设计(系统构成)利用CPU的运算器(ALU)、微程序控制器(MC)、通用寄存器
5、(R0)、指令寄存器(IR)、程序计数器(PC)、地址寄存器(AR)等的各项功能即这个简单的模型机,设计各指令格式以及编码,并实现各机器指令微代码,根据定义的机器指令,编写满足要求的应用程序。通过以下几大步骤完成所需设计。a.通过分析CPU各个功能部件之间的相互关系,完成实验所需电路图设计,b.规划出整个应用程序所需要的流程图,为微代码的编写提供清晰的思路c.利用流程图所给思想,设计微代码格式,编写微指令以及机器指令微代码d.通过联机操作方式完成测试,检测是否能完成要求中的功能进行分析总结,策划优化方案四、详细设计A、系统涉及到的微程序流程见下图所
6、示,当拟定“取指”微指令时,该微指令的判别测试字段为P<1>测试。由于“取指”微指令是所有微程序都使用的公用微指令,因此P<1>的测试结果出现多路分支。本设计用指令寄存器的高6位(IR—IR2)作为测试条件,出现七路分支,占用七个固定微地址单元,剩下的其它地方就可以一条微指令占用控存一个微地址单元随意填写,微程序流程图上的单元地址为16进制。beginNOP00PC---->ARPC+1--->PC01MEM--->IR03P<1>30SHLINADDOUTHTLMOVCALLRET39PC--->ARPC+1--->PC323033353A3C3
7、6A+B--->R0R0----.>AB--->PCIO---->IRNOPRO--->IOIO--->RO20060901010B01A<<1---->R0MEM----->R0R0--->AR0--->A0EPC--->B01A<<1---->R0IO--->ARIO--->RO070A0CMEM--->PC0FR0--->B080DR0--->MEM01010101B、电路连接图C、设计微代码格式,编写微指令以及机器指令微代码设计思想为:利用程序计数器(PC)作为每一小节程序段的开始,当拟定“取指”指令后,利用P<1>字段进行判别测试。IN,
8、OUT,ADD,MOV,CALL,RET,SHL,RET作为并行的程序入口。IN:完成需要相加的两个数据i、j的输入,并分
此文档下载收益归作者所有