基于FPEG的SOC设计-mips指令系统-(数据通路图)
- 格式:doc
- 大小:299.00 KB
- 文档页数:4


实验MIPS指令系统和MIPS体系结构1.1 实验目的1.了解和熟悉指令集模拟器。
2. 熟练掌握模拟器MIPSsim的操作和使用方法。
3. 熟悉MIPS指令系统及其特点,加深对MIPS指令操作语义的理解。
4. 熟悉MIPS体系结构。
1.2 实验平台实验平台采用指令级和流水线操作级模拟器MIPSsim1.3 实验内容和步骤首先要阅读MIPSsim模拟器的使用方法,然后了解MIPSsim的指令系统和汇编语言。
1. 启动MIPSsim2. 选择“配置”→“流水方式”选项,使模拟器工作在非流水方式下。
3.参照使用说明,熟悉MIPSsim模拟器的操作和使用方法。
可以先载入一个样例程序,然后分别以单步执行一条指令、执行多条指令、连续执行、设置断点等的方式运行程序,观察程序的执行情况,观察CPU中寄存器和存储器的内容的变化。
4.选择“文件”→“载入程序”选项,加载样例程序alltest.s,然后查看“代码”窗口,查看程序所在的位置。
(起始地址为0x00000000)5.查看“寄存器”窗口PC寄存器的值:[PC]=0x000000006. 执行load和store指令,步骤如下:(1)单步执行一条指令(F7)(2)下一条指令地址为0x00000004 ,是一条有(有,无)符号载入字节(字节,半字,字)指令。
(3)单步执行一条指令(F7)(4)查看R1的值,[R1] =0xFFFFFFFFFFFFFF80 。
(5)下一条指令地址为0x00000008 ,是一条有(有,无)符号载入字(字节,半字,字)指令。
(6)单步执行一条指令。
(7)查看R1的值,[R1] =0x0000000000000080 。
(8)下一条指令地址为0x0000000C ,是一条无(有,无)符号载入字节(字节,半字,字)指令。
(9)单步执行一条指令。
(10)查看R1的值,[R1] =0x0000000000000080 。
(11)单步执行一条指令。
课程设计说明书〔论文〕课程名称:数字集成系统课程设计设计题目:基于MIPS指令的单周期微控制器设计院系:航天学院微电子科学与技术系班级:设计者:学号:指导教师:设计时间:2015年7月27日-2015年8月7日一、功能描述基于MIPS指令的单周期微控制器设计:l_w和s_w指令的实现:控制器实现支持load word(lw)、store word(sw)指令的MIPS单周期数据通路:l_w:存放器rs中的数据和立即数imm相加,得到存储器地址,用这个地址访问存储器,把得到的存储器数据写入存放器rt中。
把PC + 4写入PC。
s_w:存放器rs中的数据和立即数imm相加,得到存储器地址,把存放器rt中的数据写入这个地址的存储器中。
把PC + 4写入PC。
二、设计方案:1.整体框图:2.模块划分:如下图中,各个大模块中还包含:立即数符号位扩展,存放器堆,存储器,ALU,指令存放器,PC,控制部件3.模块连接框图:4.总体设计思想:我设计的局部主要包三四局部,分别为:指令存放器、存放器堆、和存储器,额外还有一个Alu,即加法器和一个pc,即程序计数器,是借助同组同学编译的程序。
存取指令需要两个状态单元,计算下一个指令地址需要一个加法器,两个状态单元分别是指令存放器和程序存放器。
指令存放器是制度的,任意时刻的输出都反映了输入的地址的内容,而不需要读控制信号。
程序计数器是一个32位的存放器,让在每个时钟周期末都会被写入。
加法器被设计为只进展加法运算的ALU,他将输入的俩个32位数相加将结果输出。
Mips指令执行时,首先需要的是指令存储器,用来存储指令,并根据所给地址提供指令,指令地址存放在pc中,pc的设计还需要一个加法器来指向下一个指令的地址。
在执行R型指令时,读两个存放器,对他们中的内容进展Alu操作,再写出结果。
处理器的32个存放器组成一个存放器堆的结构,即register。
在读取指令的时候,一般形式为:op rs rt imm,此时需要将一个16位的立即数带符号扩大为32位,然后和rs地址内的内容通过Alu加法器相加,如果是读取指令即load word ,即得出的是存储器地址,将得出的存储器地址内的内容写入rt所指的存放器地址处,如果是存储指令即store word,即得出的存储器地址用来写入rt地址内的所存内容。