资源描述:
《mips单周期cpu实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、word资料下载可编辑《计算机组成原理实验》实验报告(实验二)学院名称:专业(班级):学生姓名:学号:专业技术资料word资料下载可编辑时间:2017年11月25日成绩:实验二:单周期CPU设计与实现一.实验目的(1)掌握单周期CPU数据通路图的构成、原理及其设计方法;(2)掌握单周期CPU的实现方法,代码实现方法;(3)认识和掌握指令与CPU的关系;(4)掌握测试单周期CPU的方法;(5)掌握单周期CPU的实现方法。二.实验内容设计一个单周期的MIPSCPU,使其能实现下列指令:==>算术运算指令(1)a
2、ddrd,rs,rt(说明:以助记符表示,是汇编指令;以代码表示,是机器指令)000000rs(5位)rt(5位)rd(5位)reserved功能:rd←rs+rt。reserved为预留部分,即未用,一般填“0”。(2)addirt,rs,immediate000001rs(5位)rt(5位)immediate(16位)功能:rt←rs+(sign-extend)immediate;immediate符号扩展再参加“加”运算。专业技术资料word资料下载可编辑(3)subrd,rs,rt000010rs(
3、5位)rt(5位)rd(5位)reserved功能:rd←rs-rt==>逻辑运算指令(4)orirt,rs,immediate010000rs(5位)rt(5位)immediate(16位)功能:rt←rs
4、(zero-extend)immediate;immediate做“0”扩展再参加“或”运算。(5)andrd,rs,rt010001rs(5位)rt(5位)rd(5位)reserved功能:rd←rs&rt;逻辑与运算。(6)orrd,rs,rt010010rs(5位)rt(5位)rd(5位)res
5、erved功能:rd←rs
6、rt;逻辑或运算。==>移位指令(7)sllrd,rt,sa011000未用rt(5位)rd(5位)sareserved功能:rd<-rt<<(zero-extend)sa,左移sa位,(zero-extend)sa==>比较指令(8)sltrd,rs,rt带符号数011100rs(5位)rt(5位)rd(5位)reserved功能:if(rs
7、t,immediate(rs)写存储器100110rs(5位)rt(5位)immediate(16位)功能:memory[rs+(sign-extend)immediate]←rt;immediate符号扩展再相加。即将rt寄存器的内容保存到rs寄存器内容和立即数符号扩展后的数相加作为地址的内存单元中。(10)lwrt,immediate(rs)读存储器100111rs(5位)rt(5位)immediate(16位)功能:rt←memory[rs+(sign-extend)immediate];immedi
8、ate符号扩展再相加。即读取rs寄存器内容和立即数符号扩展后的数相加作为地址的内存单元中的数,然后保存到rt寄存器中。==>分支指令(11)beqrs,rt,immediate110000rs(5位)rt(5位)immediate(16位)功能:if(rs=rt)pc←pc+4+(sign-extend)immediate<<2elsepc←pc+4特别说明:immediate是从PC+4地址开始和转移到的指令之间指令条数。immediate符号扩展之后左移2位再相加。为什么要左移2位?由于跳转到的指令地址
9、肯定是4的倍数(每条指令占4个字节),最低两位是“00”,因此将immediate放进指令码中的时候,是右移了2位的,也就是以上说的“指令之间指令条数”。12)bners,rt,immediate110001rs(5位)rt(5位)immediate功能:if(rs!=rt)pc←pc+4+(sign-extend)immediate<<2elsepc←pc+4专业技术资料word资料下载可编辑特别说明:与beq不同点是,不等时转移,相等时顺序执行。(13)bgtzrs,immediate110010rs(
10、5位)00000immediate功能:if(rs>0)pc←pc+4+(sign-extend)immediate<<2elsepc←pc+4==>跳转指令(14)jaddr111000addr[27..2]==>停机指令(15)halt11111100000000000000000000000000(26位)功能:停机;不改变PC的值,PC保持不变。一.实验原理1.时间周期:单周期CPU指的是一条指令的执行在