北工大-VerilogHDL开发多周期处理器_第1页
北工大-VerilogHDL开发多周期处理器_第2页
北工大-VerilogHDL开发多周期处理器_第3页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、北工大-veriloghdl开发多周期处理器veriloghdl 开发多周期处理器-mips-lite2实验报告学 号_姓 名_王禹心_指导教师_朱文军_提交日期成绩评价表报告内容报告结构报告最终成绩丰富正确 基本正确 有一些问题 问题很大完全符合要求 基本符合要求 有比较多的缺陷 完全不符合要求报告与project功能一致性报告图表总体评价完全一致基本一致基本不一致符合规范 基本符合规范 有一些错误 完全不正确教师签字:_目录一、mips顶层设计二、数据通路中的模块设计1、pc2、npc3、mux4、im5、gpr6、alu7、ext8、dm9、sb10、lb11、controll

2、er三、测试程序四、机器指令描述五、运行结果六、问答七、收获体会附:modelsim模块目录一、 mips顶层设计二、数据通路中的模块设计1、pc模块接口信号名方向描述pcwripc写使能1:允许npc写pc内部寄存器;0:禁止写入pc内部寄存器clki时钟信号resti复位信号,高有效inpc31:0i下一条指令的地址outpc31:0o指令存储器地址功能定义功能名称功能描述复位将pc恢复为初始值,即将其地址置为0x00003000保存npc并输出在每个clk的上升沿保存npc,并输出2、npc模块接口信号名方向描述npcop1:0inpc的控制信号00:pc+4;01:pc+imm;10:

3、j,jal指令执行时pc结果;11:jr指令执行时pcpc31:0i初始pc值jrpc31:0i31号寄存器中储存的pc地址target25:0i指令outpc31:0o计算得到的下一个pc值pc4o执行jal指令时要写入31号寄存器的pc值功能定义功能名称功能描述计算pc值根据不同控制信号计算下一个pc值3、mux(1)mux_32(2)mux_32_4(3)mux_54、im信号名方向描述addr9:0ipc地址dout31:0opc地址的mips指令5、gpr模块接口信号名方向描述clki时钟信号resti复位信号,高有效ofi运算是否溢出0:否1:是datain31:0i写入寄存器的3

4、2位数据regwri寄存器写使能,高有效rd4:0i表示目的操作数的寄存器,用来保存操作的结果rt4:0i表示第二个源操作数的寄存器rs4:0i表示第一个源操作数的寄存器busa31:0ors寄存器的数据busb31:0ort寄存器的数据功能定义功能名称功能描述读取寄存器中的数据通过rt、rs提供的寄存器地址将对应数据通过busa、busb输出向寄存器中写入数据通过rd提供的寄存器地址将datain输入的数据储存在对应寄存器中6、alu模块接口信号名方向描述opcode5:0iopcode码busa31:0i32位a运算数busb31:0i32位b运算数aluctrl2:0ialu运算模式al

5、uout31:0o32位运算结果ofo运算是否溢出0:否1:是zreooalu 计算结果为 0 标志1:计算结果为 00:计算结果非 0功能定义功能名称功能描述add对两个操作数执行加运算sub对两个操作数执行减运算or对两个操作数执行或运算取立即数高位对第二个操作数取低16位作为高16位组成32位数7、ext模块接口信号名方向描述imm15:0i16位立即数extop1:0i功能选择out31:0o32位立即数功能定义功能名称功能描述零扩展当extop为00时,进行零扩展符号扩展当extop为01时,进行符号扩展高位扩展当extop为10时,进行高位扩展8、dm模块接口信号名方向描述clki

6、时钟信号addr9:0i单元地址输入din31:0i存储数据输入wei存储使能信号dout31:0o存储数据输出功能定义功能名称功能描述读数据根据寻址信号来进行数据的读取写数据当写使能为1时,根据寻址信号来进行数据的写入9、sb模块接口信号名方向描述busb31:0i存储数据输入dmout31:0i32位dm寄存器输出addr1:0i单元地址输入sb_out31:0o存储数据输出10、lb模块接口信号名方向描述dmin31:0i32位dm寄存器输入addr1:0i单元地址输入dmout31:0o32位dm寄存器输出11、controller模块接口信号名方向描述opcode5:0i6位指令操作

7、码funct5:0i函数码,用来选择op域的一个特定的操作zeroialu计算结果是否为01:为00:不为0clki时钟信号reseti复位信号pcwro控制pc更改irwroir寄存器的控制信号extopo判断扩展类型gprwro是否将数据写入寄存器堆中0:不写入1:写入dmwro是否将数据写数据存储器中0:不写入1:写入sb_selo是否sb指令lb_selo是否lb指令aluop2:0oalu的控制端000:add001:sub010:or011:取立即数高位wdsel1:0o选择写入寄存器的数据00:aluout01:r(dm中的数据)10:jal_o,2b00npcop1:0onpc

8、模块的控制信号。gprsel1:0o选择写入寄存器的数据00:aluout01:r(dm中的数据)10:jal_o,2b00三、测试程序机器码:ori $16, $0, 1ori $17, $0, 3ori $8, $0, 1ori $12, $0,0xabablui $13, 10start:addu $4, $0,$16addu $5, $0,$8jal newaddaddu $16, $0, $2subu $17,$17,$8beq $16, $17, startori $8, $0,4addiu $24,$0,0x7fffffffaddiu $9,$24,3addiu $10,$24,

9、5addu $0,$0,$0#addi $22,$24,6start2:sw $9, -4($8)sw $1, 0($8)lb $14, 3($8)sb $12,7($8)lw $15,4($8)sb $4, -3($8)lb $18, -1($8)addu $4,$0,$8addu $5,$0,$9jal newaddslt $25,$10,$8beq $25, $0,end2slt $20,$12,$4beq $20, $0, end1lui $12, 65535end1:ori $0, $0,1lui $19, 0xefefaddiu $3,$0,0xababcdcdstart3:add

10、iu $4, $3, 2addi $23, $3, 5jal newaddaddu $8, $0, $2addu $4, $0, $8addu $5, $0, $9jal newaddaddu $9, $0, $2addu $9, $8, $0lui $10, 0x69beq $8, $9, start4beq $0, $0, start3start4:j endnewadd:addu $2, $4, $5addi $0,$12,0x1234jr $31end2:addi $26,$0,0x5678end:mars:四、机器指令描述助记符opcodefunction功能addu00000010

11、0001rd<-rs+rtaddi001000rt <- rs + (sign-extend)immediate addiu001001rt <- rs + (zero-extend)immediate subu000000100011rd<-rs-rtslt000000101010if (rs < rt) rd=1 else rd=0 ori001101 rt <- rs | (zero-extend)immediatelw100011rt <- memoryrs + (sign-exten

12、d)immediate sw101011memoryrs + (sign-extend)immediate <- rtbeq000100 if (rs = rt) pc <- pc+4 + (sign-extend)immediate<<2 lui001111rt <- immediate*65536 j000010pc <- (pc+4)31.28,address,0,0 jr000000001000pc <- rsjal000011$31<-pc+4;pc <- (pc+4)3

13、1.28,address,0,0lb100000gprrt memorygprbase + offsetsb101000memorygprbase + offset gprrt五、运行结果gprdm六、问答状态机设计通常没有唯一答案。figure3 为 2 个均可行的状态机。状态机设计思路的主要差异在于在译码状态后,根据指令的性质设置了不同的状态分支。每位设计者的设计构思可能都不尽相同。请详细描述你的设计构思,特别是描述你为什么要这样设计状态分支。j指令(包括jr,jal,j)经过s0,s1,s9这一回路,因为他们都属于无条件转移指令。beq指令经过s0,s1,s8这一回路,因为属于条件转移指令。addu,subu,ori,lui同为运算指令,经过部件有都相同,所以将他们安排在同一个分支中。lw,sw指令在一个大回路中,因为他们同属于存取指令,但是l

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论