- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
简单计算机系统的数据通路和控制器设计精选
实验二简单计算机系统的数据通路和控制器设计一、实验目的1.掌握执行R型、I型、J型指令的数据通路;2. 掌握控制器模块的设计方法;3. 掌握简单计算机系统的集成和仿真。二、实验任务1. 电路模块的设计与仿真A.设计控制器单元控制器模块的封装结构图如下所示:该模块的输入端口中OP[3..0]是程序代码中的操作码,zero为ALU运算的零标志位;输出端口是控制器单元用来控制集成电路中其他模块的信号,这些控制信号的产生条件在实验指导书上详细写明,这里不再赘述。对该模块的波形仿真截图如下:【仿真分析】在上图所示的仿真结果中,当输入OP=0000时,此刻运行程序的名称是“与”运算,在ALU中“与”的代码是000,所以输出端ALUC的值也是“000”,其他的输出端口经过与实验指导书上输出说明对照之后发现都是正确的;对于输入端OP取其他值的情况也都是正确的,即仿真正确。B.程序指针计数器PC模块PC模块的封装结构图如下所示:该模块的作用是用于控制程序指针,即ROM中程序的读取地址。其输入端中有时钟信号CLK,异步清零信号RESET,其中输入信号BRANCH和JUMP从控制单元模块输出端引出,作用是控制输出PC在下一个时钟有效信号来临的时候下一个PC是PC+1还是PC+imm+1。这其实也是对于不同的指令的一个数据通路的选择。编写仿真文件,对于该模块进行波形仿真,得到的结果如下:【仿真分析】如上图所示,在仿真过程中设置立即数端imm为10,在波形的最开始BRANCH为低电平,JUMP为高电平,此时为无条件跳转指令,即在时钟信号的上升沿将立即数imm的值直接作为输出端的值,从结果中看出,此时PC为10;在波形的中间,BRANCH为1,JUMP为0,此时指令为BEQ或者BNE,并且此时PC=PC+imm+1,所以可以看到此时在时钟信号的上升沿PC都在原来的基础上加上11;在波形图的右边,BRANCH 和JUMP都是0,PC=PC+1,从结果中可以看出也是满足的,所以综上,仿真显示该模块的设计是正确的。2. 指令的数据通路分析(1)SUB R0,R2,R1 ;该指令属于R型指令,其操作码OP=“0011”,其数据通路可以表示如下:【指令运行分析】该指令主要是将寄存器R2的值无进位减去寄存器R1中的值,并将结果赋值给R0寄存器。其数据通路见上图所示,在时钟信号的有效沿,PC(程序指针计数器模块)将程序指针传到ROM里面,ROM读取该条指令,该指令的二进制代码为“0011 1001 0000 0000”,其将OP传给控制单元模块,在控制单元模块中生成信号ALUC[2..0]和WriteReg信号。其中ALUC信号用来控制ALU进行计算的种类,writereg信号用来控制寄存器组模块reg的可被写的信号。指令代码中rs(R2),rt(R1),rd(R0)分别给到reg模块的输入端N1,N2,ND。则Q1,Q2分别调用N1,N2地址所对应的寄存器里面的值,并将其传给ALU进行无进位减运算并得到结果,在reg的有效沿时将ALU运算得到的结果赋值给ND地址对应的寄存器。(2)ADDC R2,R3,R1;【指令运行分析】这也是一条R型指令,其作用是将R3对应寄存器的值和R1对应寄存器的值进行有进位相加,将得到的结果保存到R2所对应的寄存器的值。同样作为R型指令,其数据通路和上一条指令的数据通路相同,同样在运算时,通过PC的控制,ROM给出该条程序对应的二进制代码,将OP“0110”传给控制模块单元,之后的运行流程唯一和(1)中不同的是,ALU进行运算的种类不同,即在OP的控制下,控制模块传给ALU模块的运算代码是带进位加法。(3)ORI R2,R2,0;该指令属于I型指令中的寄存器操作指令,该指令的数据通路与R型指令的数据通路存在着些许的不同,I型指令寄存器操作指令的数据通路见下图:【指令运行分析】在运行时,在PC的控制下从ROM中读取该指令,丙输出该指令的十六位的二进制代码,其代码是“1001 1010 0000 0000”所以将“1001”作为OP传给控制单元模块。与R型通路不同的是,在I指令的数据通路中,将rs的值即“10”传给寄存器组模块的N1,由于I型指令是一个寄存器的值和一个立即数进行运算,所以N2没有用到,而将rt(10)的值传给ND,作为运算结果将要存到的寄存器的地址。寄存器组模块Q1端输出N1寄存器的值给ALU模块的A,将立即数给ALU模块的B,在控制单元输出信号ALUC的控制下,进行或运算,并最终将结果给rt地址对应寄存器。(4)BEQ R3,R2,8;该指令是I型指令中条件跳转指令,该指令的数据通路和I型指令中对于寄存器操作的指令的数据通路存在着很大的不同,其数据通路如下图所示:【指令运行分析】该指令的功能是实现PC的跳转,当
您可能关注的文档
- 盐城市东台东海国际项目营销顾问建议思考精选.ppt
- 病区标准化管理专题讲座精选.ppt
- 电脑课堂之硬件维护与系统安装精选.ppt
- 目标管理与绩效考核_教学讲义精选.ppt
- 白血病护理查房讲义精选.ppt
- 目视化管理与看板精选.ppt
- 目视管理培训精选.ppt
- 目视化管理培训教材精选.ppt
- 直流双环系统的设计及仿真分析课程设计精选.docx
- 直流电机控制系统的设计课程设计精选.docx
- 2025年中山市沙溪镇人民政府所属事业单位招聘11人笔试备考题库及参考答案详解一套.docx
- 2025年中山市横栏镇人民政府所属事业单位第二期招聘笔试高频难、易错点备考题库及参考答案详解一套.docx
- 2025年中山市横栏镇人民政府所属事业单位第二期招聘笔试高频难、易错点备考题库含答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库及完整答案详解1套.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库参考答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试高频难、易错点备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库附答案详解.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库及答案详解一套.docx
- 2025年中山市阜沙镇人民政府所属事业单位招聘笔试备考题库及完整答案详解1套.docx
文档评论(0)