欢迎来到天天文库
浏览记录
ID:40647780
大小:1.75 MB
页数:18页
时间:2019-08-05
《计算机组成与系统结构课程设计》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、学号:计算机组成与系统结构课程设计设计说明书单周期32位CPU的设计起止日期:2014年1月13日至2014年1月17日学生姓名班级11计算机2班成绩指导教师(签字)计算机与信息工程学院2014年1月17日目录1、指令系统设计12、控制部件设计43、单周期中央处理器cpu设计94、计算机主机系统设计125、调试程序编制及主机系统调试126、心得体会16参考资料161、指令系统设计R型指令(op=0001)│←─━━━op────→│←rs→│←rt→│←rd→│←─━━━━func━━━────│add(func=000001):将rs寄存器中的值
2、和rt寄存器中的值相加,结果存入rd寄存器sub(func=000010):将rs寄存器中的值和rt寄存器中的值相减,结果存入rd寄存器and(func=000011):将rs寄存器中的值和rt寄存器中的值相与,结果存入rd寄存器or(func=000100):将rs寄存器中的值和rt寄存器中的值进行或运算,结果存入rd寄存器I型指令│←─━━━op────→│←rs→│←rt→│←─━━━━━━━立即数━━━━────│addi(op=1000):将rs寄存器中的值与(补零成32位的)立即数减,结果存入rt寄存器ori(op=0010):将rs寄
3、存器中的值与(补零成32位的)立即数或,结果存入rt寄存器lw(op=0011):将RAM中地址为[rs+立即数]单元的值写入rtsw(op=0100):将rt中的值写入RAM中地址为[rs+立即数]单元beq(op=0101):若rs中的值=rt中的值,则跳转到(原本的下一个地址+立即数)wr(op=0111):把(补零成32位的)立即数写入寄存器rtJ型指令│←─━━━op────→│←───invalid──→│←─━━━━━━━地址━━━━━━────│88jump(op=0110):直接跳转到目的地址(8位)开始执行16指令译码器的作业是
4、对取指令操作中得到的指令进行译码,确定这条指令需要完成的操作。从而产生相应的控制信号,驱动执行状态中的各种动作。它是控制器的一个重要组成部分。在MIPS指令集中,根据操作码OP和功能码FUNC来区别指令。根据表3-3列出的20条指令编码的逻辑表达式如下,其中,OP[5..0]为操作码OP,FUNC[5..0]为功能码FUNC,电路符号如图9-4所示。域编号[31..26][25..21][20..16][15..11][10..06][05..00]R形式OpRsRtRdSaFuncAdd000000RsRtRd00000100000Sub0000
5、00RsRtRd00000100010And000000RsRtRd00000100100Or000000RsRtRd00000100101Xor000000RsRtRd00000100110Sll00000000000RtRdSa000000Srl00000000000RtRdSa000010Sra00000000000RtRdSa000011Jr000000Rs000000000000000001000I形式OpRsRtImmediate(立即数)Addi001000RsRtImmediateAndi001100RsRtimmediateOri
6、001101RsRtimmediateXori001110RsRtimmediateLw100011RsRtOffsetSw101011RsRtOffsetBeq000100RsRtOffsetBne000101RsrtOffsetLui001111000000RtImmediateJ形式OpaddressJ000010targetjal000011target16图5-2指令执行时序图216仿真结果:1、控制部件设计控制器是计算机中发号施令的部件,它控制计算机的各部件有条不紊的进行工作。更具体的讲,控制器的任务是从内存中取出指令解题步骤加以分析,
7、然后执行某种操作。PCSOURCE是用于标记下一条指令的地址,通过计算得到的下一条指令有下列4种情况:为0时:下一条指令地址取PC+4(用于指令存储器的地址是[7..2]);为1时:下一条指令地址取分支跳转(BEQ、BNQ指令);为2时:下一条指令地址取跳转(J指令);为3时:下一条指令地址取跳转变链接(JAL指令)。CALL(JAL)标记31号寄存器,由于JAL指令要把分支延迟槽下一条指令的指令地址保存在寄存器31号中,故需要设置一个控制信号CALL,当CALL=1时,选择31号寄存器,为JAL跳转指令提供寄存器,当CALL=0时,从32位的寄存
8、器堆中根据地址选择出一个32位的寄存器用于读或写数据。M2REG(LW指令)标记是将运算的结果直接写入寄存器堆,还是将数据
此文档下载收益归作者所有