欢迎来到天天文库
浏览记录
ID:36531787
大小:243.00 KB
页数:17页
时间:2019-05-11
《计算机组成原理课程设计vhdl设计cpu》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、目录1.课程设计目的32.开发工具选择33.方案选择34.指令系统设计45.模型机框图设计46.指令流程图57.微指令格式(微程序控制器)设计68.微程序(微程序控制器)设计79.VHDL程序代码910.调试仿真1611.课程设计回顾总结18参考文献18171.课程设计目的(1)、计算机组成原理课程设计的主要任务是让学生通过动脑和动手解决计算机设计中的实际问题。综合运用所学计算机组成原理知识,在掌握部件单元电路实验的基础上,进一步将其组成系统构造一台基本的模型计算机,掌握整机概念,并设计机器指令系统,编写程序,
2、在所设计的模型计算机上调试运行。(2)、通过一台模型机的设计过程,明确计算机的控制原理与控制过程,巩固和灵活应用所学的理论知识,掌握计算机组成的一般设计方法,提高学生设计能力和实践操作技能,为从事计算机研制与设计打下基础。2.开发工具选择使用QUARTUS5.0软件编写并调试VHDL程序,然后做功能仿真。3.方案选择本次实习的内容为16位模型计算机的设计,单总线,采用微程序控制方式,有四种寻址方式:直接寻址、寄存器寻址、寄存器间接寻址和变址寻址。微程序控制方式由微指令译码产生。微程序中一条机器指令往往分成几步执
3、行,将每一步操作所需的若干为命令以代码编写在一条微指令中,若干条微指令组成一段微程序,对应一条机器指令。然后根据系统的需要,事先编制各段微程序,将它存入一个专用寄存器(即控制存储器)中。微程序执行过程:如图1所示,为微程序控制基本框:(1)从控存中逐条取出“取指令操作”,执行取指令公共操作。(2)根据指令的操作码,经过微地址形成部件,得到这条指令的入口地址,并送入微地址寄存器中。(3)从控存中逐条的取出对应的微指令并执行。(4)执行完一条机器指令对应的微程序后又回到取指微程序的入口地址,继续第(1)步,以完成取
4、下一条机器指令的公共操作。IRPSWPC微地址形成电路微地址寄存器μAR微指令寄存器μIR译码器控制存储器CM指令代码运行状态……微命令字段微地址字段……微命令序列图1微程序控制基本框174.指令系统设计操作码目的操作数寻址方式目的操作数源操作数寻址方式源操作数15121110965430模拟机采用了定长的指令格式,每条指令字长为16位。采用的寻址方式为直接寻址(00)、寄存器寻址(01)、寄存器间接寻址(10)和变址寻址(11),操作码类型及编码方式如下操作码staaddsuband1or1shl编码方式00
5、00000100100011010001015.模型机框图设计模拟机数据通路如图2所示,模型机采用单总线结构,主要包括运部件ALU,以及程序计数器PC、累加器ACC、指令寄存器IR、数据寄存器MDR、地址寄存器MAR和通用寄存器R,RAM为内存R0R1CDIRPCALUMDRMMARACC图2:模型机数据通路(1)寄存器的位数:所有的寄存器都均为16位A通用寄存器R0,R1该模拟机有2个通用寄存器,用于提供操作数。B指令寄存器IR为了提高取指令的速度,将指令从内存中读出,经数据总线直接置入IR。C数据寄存器MD
6、R、地址寄存器MAR地址寄存器MAR提供访问主存的地址;数据寄存器MDR,把从内存取出的数据暂存于MDR中,在用到该数据进行运算时,再从MDR中取出数据进行运算。17D程序计数器PC用于存放下一条指令的内存地址。(2)总线宽度:该模拟机只有一条总线,且总线宽度为16位。(3)ALU位数及运算功能ALU可以实现16位操作数的运算,即ALU的位数为16位。ALU运算功能为:可以实现简单的加(0001:add)、减(0010:sub)、逻辑与(0011:and1)、或(0100:or1)操作。(4)微命令的设置(各标
7、识的含义)经过认真分析各信息传送路径,对指令过程基本掌握,并为相应的微命令做了一下设置:微地址171615141312111098765-0PC_busload_IRload_MARMDR_busload-MDRALU_ACCINC_PCAddr_busCSR_NWALU_addALU_sub下地址30292827262524232221201918ACC_addDACC_addCD_busload_DC_busload_CR1_busload_R1R0_busload_R0load_PCACC_busload
8、_ACC333231ALU_andALU_orALU_srl6.指令流程图指令的流程图如图3所示,共有6条指令,每条指令都要经过取指令、分析指令和执行指令3个步骤。在取指令阶段,8条指令是一样的,首先程序计数器PC的内容通过总线送入地址寄存器MAR,存储信息,PC+1传送给PC,把读出的内容传送给指令寄存器IR。再接下来的操作中,根据不同的指令,执行顺序也不同。17M—>IR,PC+1
此文档下载收益归作者所有