MIPS单周期CPU设计2018年版体会

MIPS单周期CPU设计2018年版体会

ID:42404210

大小:507.18 KB

页数:6页

时间:2019-09-14

MIPS单周期CPU设计2018年版体会_第1页
MIPS单周期CPU设计2018年版体会_第2页
MIPS单周期CPU设计2018年版体会_第3页
MIPS单周期CPU设计2018年版体会_第4页
MIPS单周期CPU设计2018年版体会_第5页
资源描述:

《MIPS单周期CPU设计2018年版体会》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、11条MIPS指令单周期CPU设计2018元月份,我按照袁春风老师的第三版教材,乂重新设计了11条MIPS指令的单周期CPU。这次的设计与我2017年7月份的单周期CPU还是有些区别。2017年7月份设计的CPU主要是参考《计算机组成与设计■硬件/软件接口DavidA.PattersonL设计中的几点体会如下:一.基本流程1.首先要分析清楚这□条指令的格式和特点。按照MIPS指令的格式和特点,完全掌握它们的功能和执行的过程。2.这些指令执行过程中需要哪些硬件部件和控制信号,这些部件如何连接构成数据通路。3.对所有需要的

2、控制信号进行归纳分析,列出真值表,设计相应的控制电路。二.具体设计过程1.ALU的设计。ALU的设计重点在于先设计岀32位的加法器,减法运算是利用加法的“变反加一”。同吋要产生各种运算结果的信号:溢出(OF)、进位(CF)、符号位(SF)、零符号位(Zero)。OF=Cn®Cn-i;CF=C0Ut®Cino至于需要其它的运算指令,如逻辑运算、移位运算、乘除法运算,都可以直接调用logisim库中的器件,添加到ALU中,这些运算的结果可以同时产生,只是最后用多路选择器来选择那种指令的结果输出,用的控制信号是OPctro在

3、ALU中需要设计一个控制信号生成部件,用于产生ALU内部需要的各种控制信号。见袁春风老师教材P155o(第一次实验:ALU部件的设计)(ALU设计中,现在的加法器只是串行的,可以让好的学生用先行进位加法器)图1:ALU电路图Result丄I图2:寄存器电路图DOOOOOOO0000000000000000oooooooo2・设计寄存器部件。设计一个32个*32位的寄存器部件。两路输入和两路输出,可读写。(第二次实验:寄存器部件的设计)3.数据通路的设计。通路的设计不能急于求成,要一条指令一条指令来分析和设计。首先设计R

4、-type中的add^sub、subu、sit、situ等的通路。要注意是否要判断溢岀。在此基础上,再分析I-type带立即数运算指令的数据通路,分析出需要添加哪些部件。再分析sw.lw指令的数据通路,分支指令的数据通路,无条件跳转指令的数据通路。通过逐步添加部件,最后就实现了整个数据通路。其实添加新部件的过程,就是不断添加多路选择器的过程。3.控制器的设计。分析设计完成了数据通路,就知道所需要的所有控制信号。按照信号产生的条件,就可以写出真值表P166、P167,产生逻辑电路,即控制器。其实控制器的设计过程,就是写真

5、值表。(第三次实验:单周期CPU的设计)。图3:11条指令的单周期CPU电路图一.Logisim的使用同学们自己网上查找资料。四.编写测试程序(test_ll.asm)1.利用用Mars4.5软件编写测试程序。测试程序使用自己设计的11条MIPS指令来实现。2.打开Mars4.5软件,用Edit编辑汇编源代码,后缀是.asmEditExecutetosCH.awn1•«X・$c).1<$>«ro)1«Si2.2CSs«r3ee..ad3»3.3»2.$»14*•$<3.3C$s*r«)5・ub5«3.1

6、2.)>

7、10"3»3.<7«abut*3.$«2.$clg«wS»3,5•*11$•:.>•!10*«3B3,6<$z«ro)11situSs3.Sa2.Sal2«•b.q3al.3a2.bbJ••IS»••$c2.8<$s«r«»>15J"1?18191.汇编源代码程序编写完成后,用Run菜单屮的Assemble进行汇编,得到机器代码。2.需要设置mars界面中setting的MemoryConfigration,将内存模式设置为下图的模式,这样数据段起始位置就是0开始的位置。MIPSMemor

8、yConfiguration3xOOOO7ff£memorymaplimitaddress3x00007f££kernelspacehighaddress3x00007£00F.1MIObaseaddress3xOOOO7«££kerneldatasegmentlimitaddress3x00005000・kdatabaseaddress3x00004f£ckerneltextlimitaddress3x00004180exceptionhandleraddress3x00004000kernelspacebasead

9、dress3x00004000・ktextbaseaddress3xOOOO3£ffuserspacehighaddress3x00003££ctextlimitaddress3x00003000.textbaseaddress3x00002f££datasegmentlimitaddress3x00002f£cstackpoin

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。