实例介绍
计算机组成原理课设要求做的54条cpu 用verilog HDL在vivado上编写的MIPS指令集的cpu,可以在N4板上下板运行,具体指令再实验报告和test文件夹中有 cputest文件夹是测试指令,在前仿真cpu时可以读取这些txt文件中的指令到内存中去,将结果输出到指定文件中,再与文件夹中的答案对比验证 用于前仿真的测试代码与最终的下板代码会有一点差异(关于频率和文件读写等),都是注释掉的,简单修改即可 两个实验报告中有比较详细的cpu设计图作为参考
【实例截图】
【核心代码】
MIPS54CPU
├── 54条CPUtest
│ ├── 10_and.hex.txt
│ ├── 10_and.result.txt
│ ├── 10_and.txt
│ ├── 11_beq.hex.txt
│ ├── 11_beq.result.txt
│ ├── 11_beq.txt
│ ├── 12_bne.hex.txt
│ ├── 12_bne.result.txt
│ ├── 12_bne.txt
│ ├── 13_j.hex.txt
│ ├── 13_j.result.txt
│ ├── 13_j.txt
│ ├── 14_jal.hex.txt
│ ├── 14_jal.result.txt
│ ├── 14_jal.txt
│ ├── 15_jr.hex.txt
│ ├── 15_jr.result.txt
│ ├── 15_jr.txt
│ ├── 16.26_lwsw.hex.txt
│ ├── 16.26_lwsw.result.txt
│ ├── 16.26_lwsw.txt
│ ├── 16.26_lwsw2.hex.txt
│ ├── 16.26_lwsw2.result.txt
│ ├── 16.26_lwsw2.txt
│ ├── 17_xor.hex.txt
│ ├── 17_xor.result.txt
│ ├── 17_xor.txt
│ ├── 18_nor.hex.txt
│ ├── 18_nor.result.txt
│ ├── 18_nor.txt
│ ├── 19_or.hex.txt
│ ├── 19_or.result.txt
│ ├── 19_or.txt
│ ├── 1_addi.hex.txt
│ ├── 1_addi.result.txt
│ ├── 1_addi.txt
│ ├── 20_sll.hex.txt
│ ├── 20_sll.result.txt
│ ├── 20_sll.txt
│ ├── 21_sllv.hex.txt
│ ├── 21_sllv.result.txt
│ ├── 21_sllv.txt
│ ├── 22_sltu.hex.txt
│ ├── 22_sltu.result.txt
│ ├── 22_sltu.txt
│ ├── 23_sra.hex.txt
│ ├── 23_sra.result.txt
│ ├── 23_sra.txt
│ ├── 24_srl.hex.txt
│ ├── 24_srl.result.txt
│ ├── 24_srl.txt
│ ├── 25_subu.hex.txt
│ ├── 25_subu.result.txt
│ ├── 25_subu.txt
│ ├── 27_add.hex.txt
│ ├── 27_add.result.txt
│ ├── 27_add.txt
│ ├── 28_sub.hex.txt
│ ├── 28_sub.result.txt
│ ├── 28_sub.txt
│ ├── 29_slt.hex.txt
│ ├── 29_slt.result.txt
│ ├── 29_slt.txt
│ ├── 2_addiu.hex.txt
│ ├── 2_addiu.result.txt
│ ├── 2_addiu.txt
│ ├── 30_srlv.hex.txt
│ ├── 30_srlv.result.txt
│ ├── 30_srlv.txt
│ ├── 31_srav.hex.txt
│ ├── 31_srav.result.txt
│ ├── 31_srav.txt
│ ├── 32_clz.hex.txt
│ ├── 32_clz.result.txt
│ ├── 32_clz.txt
│ ├── 33_divu.hex.txt
│ ├── 33_divu.result.txt
│ ├── 33_divu.txt
│ ├── 35_jalr.hex.txt
│ ├── 35_jalr.result.txt
│ ├── 35_jalr.txt
│ ├── 36.39_lbsb.hex.txt
│ ├── 36.39_lbsb.result.txt
│ ├── 36.39_lbsb.txt
│ ├── 36.39_lbsb2.hex.txt
│ ├── 36.39_lbsb2.result.txt
│ ├── 36.39_lbsb2.txt
│ ├── 37_lbu.hex.txt
│ ├── 37_lbu.result.txt
│ ├── 37_lbu.txt
│ ├── 37_lbu2.hex.txt
│ ├── 37_lbu2.result.txt
│ ├── 37_lbu2.txt
│ ├── 38_lhu.hex.txt
│ ├── 38_lhu.result.txt
│ ├── 38_lhu.txt
│ ├── 38_lhu2.hex.txt
│ ├── 38_lhu2.result.txt
│ ├── 38_lhu2.txt
│ ├── 3_andi.hex.txt
│ ├── 3_andi.result.txt
│ ├── 3_andi.txt
│ ├── 40.41_lhsh.hex.txt
│ ├── 40.41_lhsh.result.txt
│ ├── 40.41_lhsh.txt
│ ├── 40.41_lhsh2.hex.txt
│ ├── 40.41_lhsh2.result.txt
│ ├── 40.41_lhsh2.txt
│ ├── 42.45_mfc0mtc0.hex.txt
│ ├── 42.45_mfc0mtc0.result.txt
│ ├── 42.45_mfc0mtc0.txt
│ ├── 43.46_mfhi.mthi.hex.txt
│ ├── 43.46_mfhi.mthi.result.txt
│ ├── 43.46_mfhi.mthi.txt
│ ├── 44.47_mflo.mtlo.hex.txt
│ ├── 44.47_mflo.mtlo.result.txt
│ ├── 44.47_mflo.mtlo.txt
│ ├── 48_mul.hex.txt
│ ├── 48_mul.result.txt
│ ├── 48_mul.txt
│ ├── 49_multu.hex.txt
│ ├── 49_multu.result.txt
│ ├── 49_multu.txt
│ ├── 4_ori.hex.txt
│ ├── 4_ori.result.txt
│ ├── 4_ori.txt
│ ├── 52_bgez.hex.txt
│ ├── 52_bgez.result.txt
│ ├── 52_bgez.txt
│ ├── 54_div.hex.txt
│ ├── 54_div.result.txt
│ ├── 54_div.txt
│ ├── 5_sltiu.hex.txt
│ ├── 5_sltiu.result.txt
│ ├── 5_sltiu.txt
│ ├── 6_lui.hex.txt
│ ├── 6_lui.result.txt
│ ├── 6_lui.txt
│ ├── 7_xori.hex.txt
│ ├── 7_xori.result.txt
│ ├── 7_xori.txt
│ ├── 8_slti.hex.txt
│ ├── 8_slti.result.txt
│ ├── 8_slti.txt
│ ├── 9_addu.hex.txt
│ ├── 9_addu.result.txt
│ ├── 9_addu.txt
│ ├── CP0test.txt
│ ├── CP0测试说明.docx
│ ├── IP核使用示例.pdf
│ └── cpu指令测试指南.pdf
├── README.txt
├── cpu54
│ ├── cpu54.cache
│ │ └── wt
│ │ ├── java_command_handlers.wdf
│ │ ├── project.wpc
│ │ ├── synthesis.wdf
│ │ ├── synthesis_details.wdf
│ │ ├── webtalk_pa.xml
│ │ └── xsim.wdf
│ ├── cpu54.hw
│ │ ├── cpu54.lpr
│ │ └── hw_1
│ │ └── hw.xml
│ ├── cpu54.ip_user_files
│ │ ├── README.txt
│ │ ├── ip
│ │ │ └── iirom
│ │ │ ├── iirom.veo
│ │ │ ├── iirom.vho
│ │ │ ├── iirom_stub.v
│ │ │ └── iirom_stub.vhdl
│ │ ├── ipstatic
│ │ │ └── dist_mem_gen_v8_0_10
│ │ │ └── simulation
│ │ │ └── dist_mem_gen_v8_0.v
│ │ ├── mem_init_files
│ │ │ ├── iirom.mif
│ │ │ └── in.coe
│ │ └── sim_scripts
│ │ └── iirom
│ │ ├── README.txt
│ │ ├── activehdl
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── iirom.mif
│ │ │ ├── iirom.sh
│ │ │ ├── iirom.udo
│ │ │ ├── in.coe
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── ies
│ │ │ ├── README.txt
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── iirom.mif
│ │ │ ├── iirom.sh
│ │ │ ├── in.coe
│ │ │ └── run.f
│ │ ├── modelsim
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── iirom.mif
│ │ │ ├── iirom.sh
│ │ │ ├── iirom.udo
│ │ │ ├── in.coe
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── questa
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── elaborate.do
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── iirom.mif
│ │ │ ├── iirom.sh
│ │ │ ├── iirom.udo
│ │ │ ├── in.coe
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── riviera
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── iirom.mif
│ │ │ ├── iirom.sh
│ │ │ ├── iirom.udo
│ │ │ ├── in.coe
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── vcs
│ │ │ ├── README.txt
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── iirom.mif
│ │ │ ├── iirom.sh
│ │ │ ├── in.coe
│ │ │ └── simulate.do
│ │ └── xsim
│ │ ├── README.txt
│ │ ├── cmd.tcl
│ │ ├── elab.opt
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── iirom.mif
│ │ ├── iirom.sh
│ │ ├── in.coe
│ │ ├── vlog.prj
│ │ └── xsim.ini
│ ├── cpu54.runs
│ │ ├── iirom_synth_1
│ │ │ ├── ISEWrap.js
│ │ │ ├── ISEWrap.sh
│ │ │ ├── dont_touch.xdc
│ │ │ ├── gen_run.xml
│ │ │ ├── htr.txt
│ │ │ ├── iirom.dcp
│ │ │ ├── iirom.tcl
│ │ │ ├── iirom.vds
│ │ │ ├── iirom_utilization_synth.pb
│ │ │ ├── iirom_utilization_synth.rpt
│ │ │ ├── project.wdf
│ │ │ ├── rundef.js
│ │ │ ├── runme.bat
│ │ │ ├── runme.log
│ │ │ ├── runme.sh
│ │ │ ├── vivado.jou
│ │ │ └── vivado.pb
│ │ ├── impl_1
│ │ │ ├── ISEWrap.js
│ │ │ ├── ISEWrap.sh
│ │ │ ├── cpu31.bit
│ │ │ ├── cpu31.tcl
│ │ │ ├── cpu31.vdi
│ │ │ ├── cpu31_11680.backup.vdi
│ │ │ ├── cpu31_15448.backup.vdi
│ │ │ ├── cpu31_15564.backup.vdi
│ │ │ ├── cpu31_16736.backup.vdi
│ │ │ ├── cpu31_2400.backup.vdi
│ │ │ ├── cpu31_clock_utilization_routed.rpt
│ │ │ ├── cpu31_control_sets_placed.rpt
│ │ │ ├── cpu31_drc_opted.rpt
│ │ │ ├── cpu31_drc_routed.pb
│ │ │ ├── cpu31_drc_routed.rpt
│ │ │ ├── cpu31_io_placed.rpt
│ │ │ ├── cpu31_opt.dcp
│ │ │ ├── cpu31_placed.dcp
│ │ │ ├── cpu31_power_routed.rpt
│ │ │ ├── cpu31_power_routed.rpx
│ │ │ ├── cpu31_power_summary_routed.pb
│ │ │ ├── cpu31_route_status.pb
│ │ │ ├── cpu31_route_status.rpt
│ │ │ ├── cpu31_routed.dcp
│ │ │ ├── cpu31_timing_summary_routed.rpt
│ │ │ ├── cpu31_timing_summary_routed.rpx
│ │ │ ├── cpu31_utilization_placed.pb
│ │ │ ├── cpu31_utilization_placed.rpt
│ │ │ ├── gen_run.xml
│ │ │ ├── htr.txt
│ │ │ ├── init_design.pb
│ │ │ ├── opt_design.pb
│ │ │ ├── place_design.pb
│ │ │ ├── project.wdf
│ │ │ ├── route_design.pb
│ │ │ ├── rundef.js
│ │ │ ├── runme.bat
│ │ │ ├── runme.log
│ │ │ ├── runme.sh
│ │ │ ├── usage_statistics_webtalk.html
│ │ │ ├── usage_statistics_webtalk.xml
│ │ │ ├── vivado.jou
│ │ │ ├── vivado.pb
│ │ │ ├── vivado_11680.backup.jou
│ │ │ ├── vivado_15448.backup.jou
│ │ │ ├── vivado_15564.backup.jou
│ │ │ ├── vivado_16736.backup.jou
│ │ │ ├── vivado_2400.backup.jou
│ │ │ └── write_bitstream.pb
│ │ └── synth_1
│ │ ├── ISEWrap.js
│ │ ├── ISEWrap.sh
│ │ ├── cpu31.dcp
│ │ ├── cpu31.tcl
│ │ ├── cpu31.vds
│ │ ├── cpu31_15488.backup.vds
│ │ ├── cpu31_2248.backup.vds
│ │ ├── cpu31_33596.backup.vds
│ │ ├── cpu31_utilization_synth.pb
│ │ ├── cpu31_utilization_synth.rpt
│ │ ├── exception.log
│ │ ├── gen_run.xml
│ │ ├── hs_err_pid13420.dmp
│ │ ├── hs_err_pid13420.log
│ │ ├── hs_err_pid7076.dmp
│ │ ├── hs_err_pid7076.log
│ │ ├── htr.txt
│ │ ├── rundef.js
│ │ ├── runme.bat
│ │ ├── runme.log
│ │ ├── runme.sh
│ │ ├── vivado.jou
│ │ ├── vivado.pb
│ │ ├── vivado_15488.backup.jou
│ │ ├── vivado_2248.backup.jou
│ │ └── vivado_33596.backup.jou
│ ├── cpu54.sim
│ │ └── sim_1
│ │ └── behav
│ │ ├── compile.bat
│ │ ├── compile.log
│ │ ├── cpu31_tb.tcl
│ │ ├── cpu31_tb.udo
│ │ ├── cpu31_tb_behav.wdb
│ │ ├── cpu31_tb_vlog.prj
│ │ ├── elaborate.bat
│ │ ├── elaborate.log
│ │ ├── glbl.v
│ │ ├── iirom.mif
│ │ ├── in.coe
│ │ ├── simulate.bat
│ │ ├── simulate.log
│ │ ├── webtalk.jou
│ │ ├── webtalk.log
│ │ ├── webtalk_55612.backup.jou
│ │ ├── webtalk_55612.backup.log
│ │ ├── xelab.pb
│ │ ├── xsim.dir
│ │ │ ├── cpu31_tb_behav
│ │ │ │ ├── Compile_Options.txt
│ │ │ │ ├── TempBreakPointFile.txt
│ │ │ │ ├── webtalk
│ │ │ │ │ ├── usage_statistics_ext_xsim.html
│ │ │ │ │ └── usage_statistics_ext_xsim.xml
│ │ │ │ ├── xsim.dbg
│ │ │ │ ├── xsim.mem
│ │ │ │ ├── xsim.reloc
│ │ │ │ ├── xsim.rtti
│ │ │ │ ├── xsim.svtype
│ │ │ │ ├── xsim.type
│ │ │ │ ├── xsim.xdbg
│ │ │ │ ├── xsimcrash.log
│ │ │ │ ├── xsimk.exe
│ │ │ │ └── xsimkernel.log
│ │ │ ├── dist_mem_gen_v8_0_10
│ │ │ │ ├── dist_mem_gen_v8_0_10.rlx
│ │ │ │ └── dist_mem_gen_v8_0_10.sdb
│ │ │ ├── xil_defaultlib
│ │ │ │ ├── @a@d@d.sdb
│ │ │ │ ├── @a@d@d32.sdb
│ │ │ │ ├── @a@l@u.sdb
│ │ │ │ ├── @c@p0.sdb
│ │ │ │ ├── @controllor.sdb
│ │ │ │ ├── @d@i@v.sdb
│ │ │ │ ├── @d@m@e@m.sdb
│ │ │ │ ├── @divider.sdb
│ │ │ │ ├── @ext16.sdb
│ │ │ │ ├── @ext18.sdb
│ │ │ │ ├── @ext5.sdb
│ │ │ │ ├── @hi@lo.sdb
│ │ │ │ ├── @m@u@l@t.sdb
│ │ │ │ ├── @m@u@x11.sdb
│ │ │ │ ├── @m@u@x32.sdb
│ │ │ │ ├── @m@u@x3_1.sdb
│ │ │ │ ├── @m@u@x6.sdb
│ │ │ │ ├── @m@u@x7.sdb
│ │ │ │ ├── @m@u@xnew4.sdb
│ │ │ │ ├── @traverse.sdb
│ │ │ │ ├── cpu31.sdb
│ │ │ │ ├── cpu31_tb.sdb
│ │ │ │ ├── encoder325.sdb
│ │ │ │ ├── glbl.sdb
│ │ │ │ ├── iirom.sdb
│ │ │ │ ├── pcreg.sdb
│ │ │ │ ├── regfiles.sdb
│ │ │ │ ├── seg7x16.sdb
│ │ │ │ ├── stop.sdb
│ │ │ │ └── xil_defaultlib.rlx
│ │ │ └── xsim.svtype
│ │ ├── xsim.ini
│ │ ├── xvlog.log
│ │ └── xvlog.pb
│ ├── cpu54.srcs
│ │ ├── constrs_1
│ │ │ └── new
│ │ │ └── constraints.xdc
│ │ └── sources_1
│ │ ├── ip
│ │ │ └── iirom
│ │ │ ├── dist_mem_gen_v8_0_10
│ │ │ │ ├── hdl
│ │ │ │ │ ├── dist_mem_gen_v8_0.vhd
│ │ │ │ │ └── dist_mem_gen_v8_0_vhsyn_rfs.vhd
│ │ │ │ └── simulation
│ │ │ │ └── dist_mem_gen_v8_0.v
│ │ │ ├── doc
│ │ │ │ └── dist_mem_gen_v8_0_changelog.txt
│ │ │ ├── iirom.dcp
│ │ │ ├── iirom.mif
│ │ │ ├── iirom.veo
│ │ │ ├── iirom.vho
│ │ │ ├── iirom.xci
│ │ │ ├── iirom.xml
│ │ │ ├── iirom_ooc.xdc
│ │ │ ├── iirom_sim_netlist.v
│ │ │ ├── iirom_sim_netlist.vhdl
│ │ │ ├── iirom_stub.v
│ │ │ ├── iirom_stub.vhdl
│ │ │ ├── sim
│ │ │ │ └── iirom.v
│ │ │ └── synth
│ │ │ └── iirom.vhd
│ │ └── new
│ │ ├── CP0new.v
│ │ ├── ControllorNew.v
│ │ ├── HiLo.v
│ │ ├── MULT.v
│ │ ├── MUX2_1.v
│ │ ├── MUX7.v
│ │ ├── MUX89.v
│ │ ├── MUXnew4.v
│ │ ├── key.v
│ │ ├── stop.v
│ │ └── sw_mem_sel.v
│ ├── cpu54.xpr
│ ├── vivado.jou
│ ├── vivado.log
│ ├── vivado_3684.backup.jou
│ ├── vivado_3684.backup.log
│ ├── vivado_42388.backup.jou
│ ├── vivado_42388.backup.log
│ ├── vivado_66864.backup.jou
│ └── vivado_66864.backup.log
├── 实验报告.doc
└── 实验报告1.doc
47 directories, 434 files
标签:
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论