完整版MIPS处理器设计说明Word文档下载推荐.docx
- 文档编号:18261338
- 上传时间:2022-12-14
- 格式:DOCX
- 页数:21
- 大小:473.04KB
完整版MIPS处理器设计说明Word文档下载推荐.docx
《完整版MIPS处理器设计说明Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《完整版MIPS处理器设计说明Word文档下载推荐.docx(21页珍藏版)》请在冰豆网上搜索。
addu
100001
sub
100010
Jg=sj1-sj2
subu
Sj1
100011
or
000010
Jg=sj1|sj2
and
000011
Jg=sj1&
sj2
sla
移位数
000100
Jg<
sj
lr
sr
(2)I型指令:
Immediate
addi
001000
Imm
Sj2=sj1+imm
addiu
001001
andi
001100
Sj2=sj1&
imm
ori
001101
Lw
base
offset
offsetß
Memory[base+imm]
sw
101011
Memory[base+imm]ß
slti
001010
sj1=Sj2<
sltu
001011
Sj1=sj2<
(3)J型指令:
Beq
Ifsj1=sj2thenbranch
Bnq
000101
Ifsj1≠sj2thenbranch
3.2总体结构设计:
该MIPS主要由8个模块组成,各个子模块分别设计其特定的功能,最终利用一个总的模块进行子模块间连接,使得整个CPU能连贯执行指令,在仿真结果中观察设计结果,最终进行硬件下载,验证设计。
其中各个模块简单功能如下:
(1)存储器模块:
具备基本的读写功能,用于存放数据和指令。
(2)寄存器堆模块:
由32个32位的寄存器组成,提供较大的存储空间,用于存放暂存数据和指令。
(3)算术逻辑运算器模块:
执行加减法等算术运算,与非或等逻辑运算,以及比较移位传送等操作的功能部件,是该CPU的设计核心部分,存在不同的运算处理功能,是体现实验设计结果正确性的模块。
(4)立即数扩展模块:
执行I型指令时需要立即数扩展,该模块用于MIPS符号扩展,将16位数据扩展为32位数据。
(5)主控制模块:
用于控制各个模块之间的分工运行,产生不同数据通路的控制信号,保证指令顺序执行不发生紊乱。
(6)ALU控制模块:
用于生成ALU执行各种功能的控制信号,使ALU内部运行不发生紊乱。
。
(7)分支跳转指令控制模块:
用于生成分支和跳转指令的控制信号。
(8)取指模块:
进行指令的取出及译码,同时包括程序计数器PC运行设计。
各模块间关系如下:
3.3接口定义和接口时序
说明:
该CPU由cpu_clk和进行总的控制,并且输出程序计数器低4位进行简易流水灯显示,CPU运行的结果包括逻辑运算等在仿真界面中进行分析和设计验证。
cpu_clk上升沿有效
rst位低电平时复位有效
4子模块详细设计
4.1存储器模块设计
4.1.1模块方案设计
指令存储器用于存放CPU运算的程序指令和数据等,采用单端口存储器设计,设计最大为64个存储单元,每个存储单元数据宽度为32bit。
4.1.2接口定义
序号
接口信号名称
方向(I/O)
说明
1
clk
I
存储器工作时钟,频率为50Mhz
2
rst
存储器片选信号,低有效
3
ExtMem_Adr[5:
0]
存储器地址线
4
ExtMem_WR
存储器读写信号,1为写反之读
5
ExtMem_Din[31:
存储器输入数据线
6
ExtMem32[31:
O
存储器输出数据线
4.1.3模块仿真验证
4.2寄存器堆模块设计
4.2.1模块方案设计
该MIPS指令格式中的寄存器号是5bits,指令可以访问32个32位的寄存器。
这32个32位的寄存器构成一个寄存器堆。
4.2.2接口定义
方向
处理器工作时钟
复位信号
Raddr1[4:
读寄存器堆时的第1个寄存器下标
Raddr2[4:
读寄存器堆时的第2个寄存器下标
Waddr[4:
写寄存器堆时的寄存器下标
We
寄存器堆写使能
7
Wdata[31:
待写入寄存器堆的数据
8
Rdata1[31:
读寄存器堆时第1个寄存器的输出
9
Rdata2[31:
读寄存器堆时第2个寄存器的输出
4.2.3模块仿真验证
4.3算术逻辑运算器模块设计
4.3.1模块方案设计
运用alu_clt控制运算器的各种运算,包括无符号数的加法运算,有符号数的加法运算,或逻辑运算,与逻辑运算,无符号数的减法运算,无符号小于置1运算,逻辑左移,逻辑右移,算术右移等。
4.3.2接口定义
1
ALU_DA[31:
参与运算的第一个输入数据
2
ALU_DB[31:
参与运算的第二个输入数据
3
alu_clt[3:
运算功能编码
4
alu_shift[4:
偏移量
5
ALU_Zero
零标志位
6
Alu_Overflow
溢出标志位
7
ALU_Dout[31:
运算结果输出位
4.3.3关键控制信号的产生
SUBctr=alu_clt[2];
ANDctr=alu_clt[0];
OVctr=!
alu_clt[1]&
alu_clt[0];
SIGctr=alu_clt[0];
OPctr[1]=alu_clt[2]&
alu_clt[1]|alu_clt[3];
OPctr[0]=alu_clt[1];
4.3.4具体ALU实现如下图所示:
4.3.5模块仿真验证
4.4立即数扩展模块设计
4.4.1模块方案设计
设计一个32位MIPS符号扩展单元SE,用于将16位的数据转换为32位数据。
4.4.2接口定义
信号名
端口说明
描述
Imm16[15:
来自指令寄存器的16位立即数
AluSrc
立即数扩展信号的使能端
bus[31:
ExtImm32[31:
符号扩展后的32位立即数
4.4.3模块仿真验证
4.5主控制模块设计
4.5.1模块方案设计
以指令译码结果中的6位操作码及相关信号产生整个数据通路中的各个控制信号。
4.5.2接口定义
操作码
RegDst
目的寄存器选择
ALU输入信号选择
ExtOp
立即数扩展的使能信号
RegWr
寄存器写使能
MemWr,
存储器写使能
MemtoReg
寄存器的装载信号选择
4.5.3各控制信号的编码规则如下表所示:
000
001
100
101
011
010
MemWr
4.5.4模块仿真验证
4.6ALU控制模块设计
4.6.1模块方案设计
通过译码结果中的高6位以及相关信号编码出数据通路中各个控制信号。
4.6.2接口定义
端口名称
输入输出
复位信号(高电平1有效)
cpu_clk
时钟(上升沿有效)
func[5:
功能区分
Alu_ctrl[3:
Alu功能信号
4.6.3执行R型指令func对应的Alu_ctrl编码如下表所示:
Alu_ctrl
0001
0000
0101
0100
100100
100101
0011
0110
101010
0111
1001
1100
4.6.4模块仿真验证
4.7分支跳转指令控制模块设计
4.7.1模块方案设计
运用译码结果的高6位以及ALU的两个输入数据决定分支及分支和跳转指令的控制信号。
4.7.2接口定义
端口定义
ALU_DA
算术逻辑单元数据A
ALU_DB
算术逻辑单元数据B
指令操作码
func,
R指令的功能操作码
Jump
跳转信号使能端
Branch
分支信号使能端
4.7.3模块仿真验证
4.8取指模块设计
4.8.1模块方案设计
由程序计数器,取出指令以及译码三个子模块构成总的取指模块。
4.8.2接口定义
I
O
8
9
10
11
shamt
12
imm16
立即数
13
14
Pc_out
程序计数器输出
4.8.3电路基本构成如下图所示:
4.8.4跳转和分支指令执行时PC_out的编码规律
Jump:
Pc_out<
=ALU_DA
Branch:
Pc_out<
=Pc_out+1+ALU_DB
正常情况下:
=Pc_out+1
4.8.5模块仿真验证
5设计总体连接及仿真验证
5.1设计总体连线
5.2在ISE仿真环境下仿真验证设计结果,仿真结果如下图所示:
5.3仿真结果分析
由仿真结果得知该CPU执行的12条指令均正常运行,实验基本成功,但是设计较为简单,并未涵盖太多复杂指令,需要进一步改善,使其趋于完善。
6、实践课总结和心得体会
西安邮电大学电子工程学院
计算机组成与实践实践课程过程考核表
学生姓名
班级/学号
承担任务实验室
微电子实验室
所在部门
微电子学系
实施时间
2015年3月6日—2015年6月19日
实践课程:
时间安排、具体内容及成绩考核
具体内容安排
考核结果
第1周
1、实践课程讲解,任务要求说明,学习和实践内容安排
2、兼容MIPS格式指令系统设计
第2~3周
1、指令存储器设计,寄存器堆设计
第4~6周
1、ALU设计——基本算术、逻辑单元的设计
32位超前进位加法器的设计
32位桶式移位寄存器的设计
第7~8周
1、取指令部件的设计
2、立即数处理单元设计
第9~11周
1、单周期处理器设计——R型指令的数据通路设计
I型指令的数据通路设计
Load/Store指令的数据通路设计
分支指令/转移指令的数据通路设计
综合12条指令的完整数据通路设计
第12周
1、ALU控制单元设计,主控制单元的设计
第13~14周
1、单周期处理器总体连接
第14~15周
1、单周期处理器总体仿真验证
第16周
课程考核验收
指导教师
对学生的评价
学习态度
□认真□一般□不认真
学习纪律
□全勤□偶尔缺勤□经常缺勤
实践能力
□很强□一般□较差
指导教师对学生专业知识或社会实践能力等情况的意见
指导教师签字:
年月日
西安邮电大学电子工程学院
计算机组成与实践实践课程成绩鉴定表
进行时间
成绩鉴定
学习内容(20分)
与教学任务计划结合程度(10分)
与专业培养结合程度(6分)
其它(4分)
接受单位评价
(20分)
实践能力(10分)
学习态度(6分)
学习纪律(4分)
报告鉴定
(60分)
报告内容与实践过程紧密结合(15分)
报告内容与教学计划内容紧密结合(15分)
报告质量(主题、结构、观点、逻辑、资料、字数30分)
指导教师姓名
孟李林
职称
教授
成绩
评语
指导教师签字:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整版 MIPS 处理器 设计 说明