计算机系统结构实验-单周期CPU.pptVIP

  1. 1、本文档共41页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
计算机系统结构实验-单周期CPU详解

CPU的文件组织结构 实验中使用的底层模块的实现 1.寄存器堆的电路符号及各信号的意义。 2.寄存器堆的代码实现。 3.带有异步清零端的D触发器。 4. 32位加法器。 5. 2x5 2x32 4x32多路选择器的实现。 6. 32位移位器的实现(ALU需调用此模块)。 7. 指令存储器IP_ROM的实现。 8. 数据存储器IP_RAM的实现。 单周期CPU实验要求 1.根据给出的指令,使用Verilog HDL代码实现单周期CPU。 2. 已给出一个参考实现的逻辑图。可按此参考实现的图实现单周期CPU,也可自行实现。 3. 给出一些关键模块的verilog HDL代码,供大家参考。 实验报告要求: a. 实验报告的检查开始时间为4月9日(周六),请各组按照通知检查的名单来进行答辩; b. 实验报告内容: 1. 画出CPU的完整电路图。 2. 给出控制部件的关键代码。 3. 设计包含所有指令的一个序列来仿真执行并截图。 使用 Xilinx ISE Design Suite 创建工程示例 1.打开ISE Design Suite ,单击界面左上部分的 New Project按钮。 2.在打开的窗口中输入项目名称和路径,点next。 3.根据提示选择你所用的开发板的型号、综合工具(XST)、仿真工具(ISim)和你所使用的语言(Verilog),点下一步 4.核对一下信息,点finish 5.在左上角工程管理区如图处点右键,选择“New Source” 6.选择如图的文件类型,输入文件名称和路径,点next。 7.可以在此设置输入输出接口,然后点next。 8.添加文件后的工程。 9.在代码编辑区域输入代码并保存(图中代码只是示意用),图中的代码调用了一个cu模块,文件名为sccu。 10.添加sccu文件,选择如图的文件类型,输入文件名称,点next 11.添加sccu文件后的工程,sccu成为sccpu调用的一个模块。 使用 Isim进行仿真 1.如图为一个32位加法器代码,以下将对其进行仿真。 2.在工程管理区点击鼠标右键,弹出菜单选择New source,弹出界面,输入文件名,选择Verilog Test Fixture,打钩add to project,单击NEXT 3.选择要仿真的文件,点击NEXT。 4.点击“FINISH”,就生成一个如下图所示的Verilog测试模块。 5. ISE能自动生成测试平台的完整构架,包括所需信号、端口声明以及模块调用的实现。所需要完成的工作就是initial….end模块中的“//Add stimulus here”后面添加测试向量生成代码。。 6.这里给出示例代码及注释,代码填写完成后点击保存。 7.在工程管理区上部点击“Simulation”;选择要仿真的文件名,过程管理区就会显示“Isim simlator”;。 8.下拉“Isim simlator”,选择“Simulate Behavioral Model”,单击鼠标右键,选择“Process Properties”可修改仿真运行时间等。 9.修改后,直接双击“Isim simlator”中的“Simulate Behavioral Model”进行仿真。可点击工具栏中的“+”及“—”符号调整时间尺度以显示易于观察的波形。可右键单击波形,按图中所示方法以调整数据显示的进制。 10.调整好后的波形图,根据填写的仿真文件代码可知,仿真结果正确。 CPU的指令集、指令译码示例和控制信号产生示例 1. CPU的指令集。 2. 需要符号扩展/零扩展的指令意义及说明(全部指令的说明参见文档) 对于addi/subi rd,rs1,imme 指令 //rd?rs1+imme(符号拓展) rd是目的寄存器号,立即数要做符号拓展到32位。 符号扩展:取imme的最高位的值,用其填充imme的左边所有位至imme成为32位二进制数为止(imme为16位,所以需填充16位)。 对于andi/ori rd,rs1,imme 指令 //rd?rs1 op imme(零拓展) 因为是逻辑指令,所以是零拓展。 零拓展:用0填充imme的左边所有位至imme成为32位二进制数为止(imme为16位,所以需填充16位)。 3.单周期CPU控制信号生成及指令译码示例 CPU的基本电路图框架和文件的组织结构 单周期CPU的参考实现

文档评论(0)

jiayou10 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8133070117000003

1亿VIP精品文档

相关文档