├── README.md
├── datapath_pipeline.png
├── datapath_single.png
├── pipeline
├── pipeline.cache
│ ├── ip
│ │ └── 2019.2
│ │ │ ├── ac4765ccab3a8c3a
│ │ │ ├── ac4765ccab3a8c3a.xci
│ │ │ ├── data_mem.dcp
│ │ │ ├── data_mem_sim_netlist.v
│ │ │ ├── data_mem_sim_netlist.vhdl
│ │ │ ├── data_mem_stub.v
│ │ │ └── data_mem_stub.vhdl
│ │ │ ├── ce28ec6061e64c3c
│ │ │ ├── ce28ec6061e64c3c.xci
│ │ │ ├── inst_mem.dcp
│ │ │ ├── inst_mem_sim_netlist.v
│ │ │ ├── inst_mem_sim_netlist.vhdl
│ │ │ ├── inst_mem_stub.v
│ │ │ └── inst_mem_stub.vhdl
│ │ │ └── e97bb78a59256adc
│ │ │ ├── cpuclk.dcp
│ │ │ ├── cpuclk_sim_netlist.v
│ │ │ ├── cpuclk_sim_netlist.vhdl
│ │ │ ├── cpuclk_stub.v
│ │ │ ├── cpuclk_stub.vhdl
│ │ │ └── e97bb78a59256adc.xci
│ └── wt
│ │ ├── gui_handlers.wdf
│ │ ├── java_command_handlers.wdf
│ │ ├── project.wpc
│ │ ├── synthesis.wdf
│ │ └── webtalk_pa.xml
├── pipeline.hw
│ └── pipeline.lpr
├── pipeline.ip_user_files
│ ├── README.txt
│ ├── ip
│ │ ├── cpuclk
│ │ │ ├── cpuclk.veo
│ │ │ ├── cpuclk_stub.v
│ │ │ └── cpuclk_stub.vhdl
│ │ ├── data_mem
│ │ │ ├── data_mem.veo
│ │ │ ├── data_mem.vho
│ │ │ ├── data_mem_stub.v
│ │ │ └── data_mem_stub.vhdl
│ │ └── inst_mem
│ │ │ ├── inst_mem.veo
│ │ │ ├── inst_mem.vho
│ │ │ ├── inst_mem_stub.v
│ │ │ └── inst_mem_stub.vhdl
│ ├── ipstatic
│ │ └── simulation
│ │ │ └── dist_mem_gen_v8_0.v
│ └── sim_scripts
│ │ ├── cpuclk
│ │ ├── README.txt
│ │ ├── activehdl
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── cpuclk.sh
│ │ │ ├── cpuclk.udo
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── ies
│ │ │ ├── README.txt
│ │ │ ├── cpuclk.sh
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ └── run.f
│ │ ├── modelsim
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── cpuclk.sh
│ │ │ ├── cpuclk.udo
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── questa
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── cpuclk.sh
│ │ │ ├── cpuclk.udo
│ │ │ ├── elaborate.do
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── riviera
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── cpuclk.sh
│ │ │ ├── cpuclk.udo
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── vcs
│ │ │ ├── README.txt
│ │ │ ├── cpuclk.sh
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ └── simulate.do
│ │ ├── xcelium
│ │ │ ├── README.txt
│ │ │ ├── cpuclk.sh
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ └── run.f
│ │ └── xsim
│ │ │ ├── README.txt
│ │ │ ├── cmd.tcl
│ │ │ ├── cpuclk.sh
│ │ │ ├── elab.opt
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── vlog.prj
│ │ │ └── xsim.ini
│ │ ├── data_mem
│ │ ├── README.txt
│ │ ├── activehdl
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── data_mem.sh
│ │ │ ├── data_mem.udo
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── ies
│ │ │ ├── README.txt
│ │ │ ├── data_mem.sh
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ └── run.f
│ │ ├── modelsim
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── data_mem.sh
│ │ │ ├── data_mem.udo
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── questa
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── data_mem.sh
│ │ │ ├── data_mem.udo
│ │ │ ├── elaborate.do
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── riviera
│ │ │ ├── README.txt
│ │ │ ├── compile.do
│ │ │ ├── data_mem.sh
│ │ │ ├── data_mem.udo
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── simulate.do
│ │ │ └── wave.do
│ │ ├── vcs
│ │ │ ├── README.txt
│ │ │ ├── data_mem.sh
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ └── simulate.do
│ │ ├── xcelium
│ │ │ ├── README.txt
│ │ │ ├── data_mem.sh
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ └── run.f
│ │ └── xsim
│ │ │ ├── README.txt
│ │ │ ├── cmd.tcl
│ │ │ ├── data_mem.sh
│ │ │ ├── elab.opt
│ │ │ ├── file_info.txt
│ │ │ ├── glbl.v
│ │ │ ├── vlog.prj
│ │ │ └── xsim.ini
│ │ └── inst_mem
│ │ ├── README.txt
│ │ ├── activehdl
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── inst_mem.sh
│ │ ├── inst_mem.udo
│ │ ├── simulate.do
│ │ └── wave.do
│ │ ├── ies
│ │ ├── README.txt
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── inst_mem.sh
│ │ └── run.f
│ │ ├── modelsim
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── inst_mem.sh
│ │ ├── inst_mem.udo
│ │ ├── simulate.do
│ │ └── wave.do
│ │ ├── questa
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── elaborate.do
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── inst_mem.sh
│ │ ├── inst_mem.udo
│ │ ├── simulate.do
│ │ └── wave.do
│ │ ├── riviera
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── inst_mem.sh
│ │ ├── inst_mem.udo
│ │ ├── simulate.do
│ │ └── wave.do
│ │ ├── vcs
│ │ ├── README.txt
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── inst_mem.sh
│ │ └── simulate.do
│ │ ├── xcelium
│ │ ├── README.txt
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── inst_mem.sh
│ │ └── run.f
│ │ └── xsim
│ │ ├── README.txt
│ │ ├── cmd.tcl
│ │ ├── elab.opt
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── inst_mem.sh
│ │ ├── vlog.prj
│ │ └── xsim.ini
├── pipeline.runs
│ ├── .jobs
│ │ ├── vrs_config_1.xml
│ │ ├── vrs_config_2.xml
│ │ └── vrs_config_3.xml
│ ├── cpuclk_synth_1
│ │ ├── .Vivado_Synthesis.queue.rst
│ │ ├── .Xil
│ │ │ └── cpuclk_propImpl.xdc
│ │ ├── .vivado.begin.rst
│ │ ├── .vivado.end.rst
│ │ ├── ISEWrap.js
│ │ ├── ISEWrap.sh
│ │ ├── __synthesis_is_complete__
│ │ ├── cpuclk.dcp
│ │ ├── cpuclk.tcl
│ │ ├── cpuclk.vds
│ │ ├── cpuclk_utilization_synth.pb
│ │ ├── cpuclk_utilization_synth.rpt
│ │ ├── dont_touch.xdc
│ │ ├── gen_run.xml
│ │ ├── htr.txt
│ │ ├── project.wdf
│ │ ├── rundef.js
│ │ ├── runme.bat
│ │ ├── runme.log
│ │ ├── runme.sh
│ │ ├── vivado.jou
│ │ └── vivado.pb
│ ├── data_mem_synth_1
│ │ ├── .Vivado_Synthesis.queue.rst
│ │ ├── .vivado.begin.rst
│ │ ├── .vivado.end.rst
│ │ ├── ISEWrap.js
│ │ ├── ISEWrap.sh
│ │ ├── __synthesis_is_complete__
│ │ ├── data_mem.dcp
│ │ ├── data_mem.tcl
│ │ ├── data_mem.vds
│ │ ├── data_mem_utilization_synth.pb
│ │ ├── data_mem_utilization_synth.rpt
│ │ ├── dont_touch.xdc
│ │ ├── gen_run.xml
│ │ ├── htr.txt
│ │ ├── project.wdf
│ │ ├── rundef.js
│ │ ├── runme.bat
│ │ ├── runme.log
│ │ ├── runme.sh
│ │ ├── vivado.jou
│ │ └── vivado.pb
│ └── inst_mem_synth_1
│ │ ├── .Vivado_Synthesis.queue.rst
│ │ ├── .vivado.begin.rst
│ │ ├── .vivado.end.rst
│ │ ├── ISEWrap.js
│ │ ├── ISEWrap.sh
│ │ ├── __synthesis_is_complete__
│ │ ├── dont_touch.xdc
│ │ ├── gen_run.xml
│ │ ├── htr.txt
│ │ ├── inst_mem.dcp
│ │ ├── inst_mem.tcl
│ │ ├── inst_mem.vds
│ │ ├── inst_mem_utilization_synth.pb
│ │ ├── inst_mem_utilization_synth.rpt
│ │ ├── project.wdf
│ │ ├── rundef.js
│ │ ├── runme.bat
│ │ ├── runme.log
│ │ ├── runme.sh
│ │ ├── vivado.jou
│ │ └── vivado.pb
├── pipeline.srcs
│ └── sources_1
│ │ ├── imports
│ │ └── pipeline
│ │ │ ├── adder_for_plus_4.v
│ │ │ ├── algorithm_calculation.v
│ │ │ ├── algorithm_logic_unit.v
│ │ │ ├── branch_compare.v
│ │ │ ├── branch_reg_select.v
│ │ │ ├── control_hazard.v
│ │ │ ├── control_unit.v
│ │ │ ├── forwarding_unit.v
│ │ │ ├── hazard_detection_unit.v
│ │ │ ├── j_format_stall.v
│ │ │ ├── lb_lh_unit.v
│ │ │ ├── logic_calculation.v
│ │ │ ├── mini_rv.v
│ │ │ ├── mux_3.v
│ │ │ ├── mux_5.v
│ │ │ ├── mux_6.v
│ │ │ ├── mux_7.v
│ │ │ ├── param.v
│ │ │ ├── pipeline_reg0.v
│ │ │ ├── pipeline_reg1.v
│ │ │ ├── pipeline_reg2.v
│ │ │ ├── pipeline_reg3.v
│ │ │ ├── program_counter.v
│ │ │ ├── reg_file.v
│ │ │ ├── reg_for_inst_before_LW.v
│ │ │ ├── shift.v
│ │ │ ├── sign_extention.v
│ │ │ ├── sl_sh_unit.v
│ │ │ ├── top.v
│ │ │ └── wb_value_recorder.v
│ │ └── ip
│ │ ├── cpuclk
│ │ ├── cpuclk.dcp
│ │ ├── cpuclk.v
│ │ ├── cpuclk.veo
│ │ ├── cpuclk.xci
│ │ ├── cpuclk.xdc
│ │ ├── cpuclk.xml
│ │ ├── cpuclk_board.xdc
│ │ ├── cpuclk_clk_wiz.v
│ │ ├── cpuclk_ooc.xdc
│ │ ├── cpuclk_sim_netlist.v
│ │ ├── cpuclk_sim_netlist.vhdl
│ │ ├── cpuclk_stub.v
│ │ ├── cpuclk_stub.vhdl
│ │ ├── doc
│ │ │ └── clk_wiz_v6_0_changelog.txt
│ │ ├── mmcm_pll_drp_func_7s_mmcm.vh
│ │ ├── mmcm_pll_drp_func_7s_pll.vh
│ │ ├── mmcm_pll_drp_func_us_mmcm.vh
│ │ ├── mmcm_pll_drp_func_us_pll.vh
│ │ ├── mmcm_pll_drp_func_us_plus_mmcm.vh
│ │ └── mmcm_pll_drp_func_us_plus_pll.vh
│ │ ├── data_mem
│ │ ├── data_mem.dcp
│ │ ├── data_mem.veo
│ │ ├── data_mem.vho
│ │ ├── data_mem.xci
│ │ ├── data_mem.xml
│ │ ├── data_mem_ooc.xdc
│ │ ├── data_mem_sim_netlist.v
│ │ ├── data_mem_sim_netlist.vhdl
│ │ ├── data_mem_stub.v
│ │ ├── data_mem_stub.vhdl
│ │ ├── doc
│ │ │ └── dist_mem_gen_v8_0_changelog.txt
│ │ ├── hdl
│ │ │ └── dist_mem_gen_v8_0_vhsyn_rfs.vhd
│ │ ├── sim
│ │ │ └── data_mem.v
│ │ ├── simulation
│ │ │ └── dist_mem_gen_v8_0.v
│ │ └── synth
│ │ │ └── data_mem.vhd
│ │ └── inst_mem
│ │ ├── doc
│ │ └── dist_mem_gen_v8_0_changelog.txt
│ │ ├── hdl
│ │ └── dist_mem_gen_v8_0_vhsyn_rfs.vhd
│ │ ├── inst_mem.dcp
│ │ ├── inst_mem.veo
│ │ ├── inst_mem.vho
│ │ ├── inst_mem.xci
│ │ ├── inst_mem.xml
│ │ ├── inst_mem_ooc.xdc
│ │ ├── inst_mem_sim_netlist.v
│ │ ├── inst_mem_sim_netlist.vhdl
│ │ ├── inst_mem_stub.v
│ │ ├── inst_mem_stub.vhdl
│ │ ├── sim
│ │ └── inst_mem.v
│ │ ├── simulation
│ │ └── dist_mem_gen_v8_0.v
│ │ └── synth
│ │ └── inst_mem.vhd
└── pipeline.xpr
└── single
├── single.cache
├── ip
│ └── 2019.2
│ │ ├── ac4765ccab3a8c3a
│ │ ├── ac4765ccab3a8c3a.xci
│ │ ├── data_mem.dcp
│ │ ├── data_mem_sim_netlist.v
│ │ ├── data_mem_sim_netlist.vhdl
│ │ ├── data_mem_stub.v
│ │ └── data_mem_stub.vhdl
│ │ ├── b7219d93de4be123
│ │ ├── b7219d93de4be123.xci
│ │ ├── cpuclk.dcp
│ │ ├── cpuclk_sim_netlist.v
│ │ ├── cpuclk_sim_netlist.vhdl
│ │ ├── cpuclk_stub.v
│ │ └── cpuclk_stub.vhdl
│ │ └── ce28ec6061e64c3c
│ │ ├── ce28ec6061e64c3c.xci
│ │ ├── inst_mem.dcp
│ │ ├── inst_mem_sim_netlist.v
│ │ ├── inst_mem_sim_netlist.vhdl
│ │ ├── inst_mem_stub.v
│ │ └── inst_mem_stub.vhdl
└── wt
│ ├── gui_handlers.wdf
│ ├── java_command_handlers.wdf
│ ├── project.wpc
│ ├── synthesis.wdf
│ └── webtalk_pa.xml
├── single.hw
└── single.lpr
├── single.ip_user_files
├── README.txt
├── ip
│ ├── cpuclk
│ │ ├── cpuclk.veo
│ │ ├── cpuclk_stub.v
│ │ └── cpuclk_stub.vhdl
│ ├── data_mem
│ │ ├── data_mem.veo
│ │ ├── data_mem.vho
│ │ ├── data_mem_stub.v
│ │ └── data_mem_stub.vhdl
│ └── inst_mem
│ │ ├── inst_mem.veo
│ │ ├── inst_mem.vho
│ │ ├── inst_mem_stub.v
│ │ └── inst_mem_stub.vhdl
├── ipstatic
│ └── simulation
│ │ └── dist_mem_gen_v8_0.v
└── sim_scripts
│ ├── cpuclk
│ ├── README.txt
│ ├── activehdl
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── cpuclk.sh
│ │ ├── cpuclk.udo
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── simulate.do
│ │ └── wave.do
│ ├── ies
│ │ ├── README.txt
│ │ ├── cpuclk.sh
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ └── run.f
│ ├── modelsim
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── cpuclk.sh
│ │ ├── cpuclk.udo
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── simulate.do
│ │ └── wave.do
│ ├── questa
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── cpuclk.sh
│ │ ├── cpuclk.udo
│ │ ├── elaborate.do
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── simulate.do
│ │ └── wave.do
│ ├── riviera
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── cpuclk.sh
│ │ ├── cpuclk.udo
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── simulate.do
│ │ └── wave.do
│ ├── vcs
│ │ ├── README.txt
│ │ ├── cpuclk.sh
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ └── simulate.do
│ ├── xcelium
│ │ ├── README.txt
│ │ ├── cpuclk.sh
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ └── run.f
│ └── xsim
│ │ ├── README.txt
│ │ ├── cmd.tcl
│ │ ├── cpuclk.sh
│ │ ├── elab.opt
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── vlog.prj
│ │ └── xsim.ini
│ ├── data_mem
│ ├── README.txt
│ ├── activehdl
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── data_mem.sh
│ │ ├── data_mem.udo
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── simulate.do
│ │ └── wave.do
│ ├── ies
│ │ ├── README.txt
│ │ ├── data_mem.sh
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ └── run.f
│ ├── modelsim
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── data_mem.sh
│ │ ├── data_mem.udo
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── simulate.do
│ │ └── wave.do
│ ├── questa
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── data_mem.sh
│ │ ├── data_mem.udo
│ │ ├── elaborate.do
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── simulate.do
│ │ └── wave.do
│ ├── riviera
│ │ ├── README.txt
│ │ ├── compile.do
│ │ ├── data_mem.sh
│ │ ├── data_mem.udo
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── simulate.do
│ │ └── wave.do
│ ├── vcs
│ │ ├── README.txt
│ │ ├── data_mem.sh
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ └── simulate.do
│ ├── xcelium
│ │ ├── README.txt
│ │ ├── data_mem.sh
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ └── run.f
│ └── xsim
│ │ ├── README.txt
│ │ ├── cmd.tcl
│ │ ├── data_mem.sh
│ │ ├── elab.opt
│ │ ├── file_info.txt
│ │ ├── glbl.v
│ │ ├── vlog.prj
│ │ └── xsim.ini
│ └── inst_mem
│ ├── README.txt
│ ├── activehdl
│ ├── README.txt
│ ├── compile.do
│ ├── file_info.txt
│ ├── glbl.v
│ ├── inst_mem.sh
│ ├── inst_mem.udo
│ ├── simulate.do
│ └── wave.do
│ ├── ies
│ ├── README.txt
│ ├── file_info.txt
│ ├── glbl.v
│ ├── inst_mem.sh
│ └── run.f
│ ├── modelsim
│ ├── README.txt
│ ├── compile.do
│ ├── file_info.txt
│ ├── glbl.v
│ ├── inst_mem.sh
│ ├── inst_mem.udo
│ ├── simulate.do
│ └── wave.do
│ ├── questa
│ ├── README.txt
│ ├── compile.do
│ ├── elaborate.do
│ ├── file_info.txt
│ ├── glbl.v
│ ├── inst_mem.sh
│ ├── inst_mem.udo
│ ├── simulate.do
│ └── wave.do
│ ├── riviera
│ ├── README.txt
│ ├── compile.do
│ ├── file_info.txt
│ ├── glbl.v
│ ├── inst_mem.sh
│ ├── inst_mem.udo
│ ├── simulate.do
│ └── wave.do
│ ├── vcs
│ ├── README.txt
│ ├── file_info.txt
│ ├── glbl.v
│ ├── inst_mem.sh
│ └── simulate.do
│ ├── xcelium
│ ├── README.txt
│ ├── file_info.txt
│ ├── glbl.v
│ ├── inst_mem.sh
│ └── run.f
│ └── xsim
│ ├── README.txt
│ ├── cmd.tcl
│ ├── elab.opt
│ ├── file_info.txt
│ ├── glbl.v
│ ├── inst_mem.sh
│ ├── vlog.prj
│ └── xsim.ini
├── single.runs
├── .jobs
│ ├── vrs_config_1.xml
│ ├── vrs_config_2.xml
│ └── vrs_config_3.xml
├── cpuclk_synth_1
│ ├── .Vivado_Synthesis.queue.rst
│ ├── .Xil
│ │ └── cpuclk_propImpl.xdc
│ ├── .vivado.begin.rst
│ ├── .vivado.end.rst
│ ├── ISEWrap.js
│ ├── ISEWrap.sh
│ ├── __synthesis_is_complete__
│ ├── cpuclk.dcp
│ ├── cpuclk.tcl
│ ├── cpuclk.vds
│ ├── cpuclk_utilization_synth.pb
│ ├── cpuclk_utilization_synth.rpt
│ ├── dont_touch.xdc
│ ├── gen_run.xml
│ ├── htr.txt
│ ├── project.wdf
│ ├── rundef.js
│ ├── runme.bat
│ ├── runme.log
│ ├── runme.sh
│ ├── vivado.jou
│ └── vivado.pb
├── data_mem_synth_1
│ ├── .Vivado_Synthesis.queue.rst
│ ├── .vivado.begin.rst
│ ├── .vivado.end.rst
│ ├── ISEWrap.js
│ ├── ISEWrap.sh
│ ├── __synthesis_is_complete__
│ ├── data_mem.dcp
│ ├── data_mem.tcl
│ ├── data_mem.vds
│ ├── data_mem_utilization_synth.pb
│ ├── data_mem_utilization_synth.rpt
│ ├── dont_touch.xdc
│ ├── gen_run.xml
│ ├── htr.txt
│ ├── project.wdf
│ ├── rundef.js
│ ├── runme.bat
│ ├── runme.log
│ ├── runme.sh
│ ├── vivado.jou
│ └── vivado.pb
└── inst_mem_synth_1
│ ├── .Vivado_Synthesis.queue.rst
│ ├── .vivado.begin.rst
│ ├── .vivado.end.rst
│ ├── ISEWrap.js
│ ├── ISEWrap.sh
│ ├── __synthesis_is_complete__
│ ├── dont_touch.xdc
│ ├── gen_run.xml
│ ├── htr.txt
│ ├── inst_mem.dcp
│ ├── inst_mem.tcl
│ ├── inst_mem.vds
│ ├── inst_mem_utilization_synth.pb
│ ├── inst_mem_utilization_synth.rpt
│ ├── project.wdf
│ ├── rundef.js
│ ├── runme.bat
│ ├── runme.log
│ ├── runme.sh
│ ├── vivado.jou
│ └── vivado.pb
├── single.srcs
└── sources_1
│ ├── imports
│ └── single_cycle
│ │ ├── adder_for_plus_4.v
│ │ ├── algorithm_calculation.v
│ │ ├── algorithm_logic_unit.v
│ │ ├── branch_compare.v
│ │ ├── control_unit.v
│ │ ├── lb_lh_unit.v
│ │ ├── logic_calculation.v
│ │ ├── mux_2.v
│ │ ├── mux_4.v
│ │ ├── param.v
│ │ ├── program_counter.v
│ │ ├── reg_file.v
│ │ ├── shift.v
│ │ ├── sign_extention.v
│ │ ├── sl_sh_unit.v
│ │ └── top.v
│ └── ip
│ ├── cpuclk
│ ├── cpuclk.dcp
│ ├── cpuclk.v
│ ├── cpuclk.veo
│ ├── cpuclk.xci
│ ├── cpuclk.xdc
│ ├── cpuclk.xml
│ ├── cpuclk_board.xdc
│ ├── cpuclk_clk_wiz.v
│ ├── cpuclk_ooc.xdc
│ ├── cpuclk_sim_netlist.v
│ ├── cpuclk_sim_netlist.vhdl
│ ├── cpuclk_stub.v
│ ├── cpuclk_stub.vhdl
│ ├── doc
│ │ └── clk_wiz_v6_0_changelog.txt
│ ├── mmcm_pll_drp_func_7s_mmcm.vh
│ ├── mmcm_pll_drp_func_7s_pll.vh
│ ├── mmcm_pll_drp_func_us_mmcm.vh
│ ├── mmcm_pll_drp_func_us_pll.vh
│ ├── mmcm_pll_drp_func_us_plus_mmcm.vh
│ └── mmcm_pll_drp_func_us_plus_pll.vh
│ ├── data_mem
│ ├── data_mem.dcp
│ ├── data_mem.veo
│ ├── data_mem.vho
│ ├── data_mem.xci
│ ├── data_mem.xml
│ ├── data_mem_ooc.xdc
│ ├── data_mem_sim_netlist.v
│ ├── data_mem_sim_netlist.vhdl
│ ├── data_mem_stub.v
│ ├── data_mem_stub.vhdl
│ ├── doc
│ │ └── dist_mem_gen_v8_0_changelog.txt
│ ├── hdl
│ │ └── dist_mem_gen_v8_0_vhsyn_rfs.vhd
│ ├── sim
│ │ └── data_mem.v
│ ├── simulation
│ │ └── dist_mem_gen_v8_0.v
│ └── synth
│ │ └── data_mem.vhd
│ └── inst_mem
│ ├── doc
│ └── dist_mem_gen_v8_0_changelog.txt
│ ├── hdl
│ └── dist_mem_gen_v8_0_vhsyn_rfs.vhd
│ ├── inst_mem.dcp
│ ├── inst_mem.veo
│ ├── inst_mem.vho
│ ├── inst_mem.xci
│ ├── inst_mem.xml
│ ├── inst_mem_ooc.xdc
│ ├── inst_mem_sim_netlist.v
│ ├── inst_mem_sim_netlist.vhdl
│ ├── inst_mem_stub.v
│ ├── inst_mem_stub.vhdl
│ ├── sim
│ └── inst_mem.v
│ ├── simulation
│ └── dist_mem_gen_v8_0.v
│ └── synth
│ └── inst_mem.vhd
└── single.xpr
/README.md:
--------------------------------------------------------------------------------
1 | # RISC-V CPU
2 |
3 | 记录一下夏季学期计算机设计与实践课上写的RISC-V单周期CPU和RISC-V五级流水线CPU
4 |
5 |
6 |
7 | ## 已实现功能
8 |
9 | * miniRV-1指令集
10 | * 流水线CPU的停顿、前递、静态分支预测
11 |
12 |
13 |
14 | ## 说明
15 |
16 | * 开发板
17 |
18 | Minisys开发板 (芯片型号:**XC7A100TFGG484-1**)
19 |
20 | * 实现频率
21 |
22 | 单周期CPU:25MHz
23 |
24 | 流水线CPU:70MHz
25 |
26 |
27 |
28 | ## 数据通路
29 |
30 | * 单周期CPU
31 |
32 | 
33 |
34 | * 流水线CPU
35 |
36 | 
37 |
--------------------------------------------------------------------------------
/datapath_pipeline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/datapath_pipeline.png
--------------------------------------------------------------------------------
/datapath_single.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/datapath_single.png
--------------------------------------------------------------------------------
/pipeline/pipeline.cache/ip/2019.2/ac4765ccab3a8c3a/data_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.cache/ip/2019.2/ac4765ccab3a8c3a/data_mem.dcp
--------------------------------------------------------------------------------
/pipeline/pipeline.cache/ip/2019.2/ac4765ccab3a8c3a/data_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:57:50 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub -rename_top decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix -prefix
7 | // decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix_ data_mem_stub.v
8 | // Design : data_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix(a, d, clk, we, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],d[31:0],clk,we,spo[31:0]" */;
19 | input [13:0]a;
20 | input [31:0]d;
21 | input clk;
22 | input we;
23 | output [31:0]spo;
24 | endmodule
25 |
--------------------------------------------------------------------------------
/pipeline/pipeline.cache/ip/2019.2/ce28ec6061e64c3c/inst_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.cache/ip/2019.2/ce28ec6061e64c3c/inst_mem.dcp
--------------------------------------------------------------------------------
/pipeline/pipeline.cache/ip/2019.2/ce28ec6061e64c3c/inst_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:57:01 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub -rename_top decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix -prefix
7 | // decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix_ inst_mem_stub.v
8 | // Design : inst_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix(a, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],spo[31:0]" */;
19 | input [13:0]a;
20 | output [31:0]spo;
21 | endmodule
22 |
--------------------------------------------------------------------------------
/pipeline/pipeline.cache/ip/2019.2/ce28ec6061e64c3c/inst_mem_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:57:01 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub -rename_top decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix -prefix
7 | -- decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix_ inst_mem_stub.vhdl
8 | -- Design : inst_mem
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix is
16 | Port (
17 | a : in STD_LOGIC_VECTOR ( 13 downto 0 );
18 | spo : out STD_LOGIC_VECTOR ( 31 downto 0 )
19 | );
20 |
21 | end decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix;
22 |
23 | architecture stub of decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix is
24 | attribute syn_black_box : boolean;
25 | attribute black_box_pad_pin : string;
26 | attribute syn_black_box of stub : architecture is true;
27 | attribute black_box_pad_pin of stub : architecture is "a[13:0],spo[31:0]";
28 | attribute x_core_info : string;
29 | attribute x_core_info of stub : architecture is "dist_mem_gen_v8_0_13,Vivado 2019.2";
30 | begin
31 | end;
32 |
--------------------------------------------------------------------------------
/pipeline/pipeline.cache/ip/2019.2/e97bb78a59256adc/cpuclk.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.cache/ip/2019.2/e97bb78a59256adc/cpuclk.dcp
--------------------------------------------------------------------------------
/pipeline/pipeline.cache/ip/2019.2/e97bb78a59256adc/cpuclk_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:54:58 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub -rename_top decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix -prefix
7 | // decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix_ cpuclk_stub.v
8 | // Design : cpuclk
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | module decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix(clk_out1, locked, clk_in1)
17 | /* synthesis syn_black_box black_box_pad_pin="clk_out1,locked,clk_in1" */;
18 | output clk_out1;
19 | output locked;
20 | input clk_in1;
21 | endmodule
22 |
--------------------------------------------------------------------------------
/pipeline/pipeline.cache/ip/2019.2/e97bb78a59256adc/cpuclk_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:54:58 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub -rename_top decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix -prefix
7 | -- decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix_ cpuclk_stub.vhdl
8 | -- Design : cpuclk
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix is
16 | Port (
17 | clk_out1 : out STD_LOGIC;
18 | locked : out STD_LOGIC;
19 | clk_in1 : in STD_LOGIC
20 | );
21 |
22 | end decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix;
23 |
24 | architecture stub of decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix is
25 | attribute syn_black_box : boolean;
26 | attribute black_box_pad_pin : string;
27 | attribute syn_black_box of stub : architecture is true;
28 | attribute black_box_pad_pin of stub : architecture is "clk_out1,locked,clk_in1";
29 | begin
30 | end;
31 |
--------------------------------------------------------------------------------
/pipeline/pipeline.cache/wt/java_command_handlers.wdf:
--------------------------------------------------------------------------------
1 | version:1
2 | 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:636f726576696577:31:00:00
3 | 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:637573746f6d697a65636f7265:33:00:00
4 | 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:6e657770726f6a656374:31:00:00
5 | 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:736574676c6f62616c696e636c756465:31:00:00
6 | eof:3636137316
7 |
--------------------------------------------------------------------------------
/pipeline/pipeline.cache/wt/project.wpc:
--------------------------------------------------------------------------------
1 | version:1
2 | 6d6f64655f636f756e7465727c4755494d6f6465:1
3 | eof:
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.hw/pipeline.lpr:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/README.txt:
--------------------------------------------------------------------------------
1 | The files in this directory structure are automatically generated and managed by Vivado. Editing these files is not recommended.
2 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/ip/cpuclk/cpuclk_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:54:58 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub
7 | // d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/cpuclk/cpuclk_stub.v
8 | // Design : cpuclk
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | module cpuclk(clk_out1, locked, clk_in1)
17 | /* synthesis syn_black_box black_box_pad_pin="clk_out1,locked,clk_in1" */;
18 | output clk_out1;
19 | output locked;
20 | input clk_in1;
21 | endmodule
22 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/ip/cpuclk/cpuclk_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:54:58 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub
7 | -- d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/cpuclk/cpuclk_stub.vhdl
8 | -- Design : cpuclk
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity cpuclk is
16 | Port (
17 | clk_out1 : out STD_LOGIC;
18 | locked : out STD_LOGIC;
19 | clk_in1 : in STD_LOGIC
20 | );
21 |
22 | end cpuclk;
23 |
24 | architecture stub of cpuclk is
25 | attribute syn_black_box : boolean;
26 | attribute black_box_pad_pin : string;
27 | attribute syn_black_box of stub : architecture is true;
28 | attribute black_box_pad_pin of stub : architecture is "clk_out1,locked,clk_in1";
29 | begin
30 | end;
31 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/ip/data_mem/data_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:57:54 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub
7 | // d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem_stub.v
8 | // Design : data_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module data_mem(a, d, clk, we, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],d[31:0],clk,we,spo[31:0]" */;
19 | input [13:0]a;
20 | input [31:0]d;
21 | input clk;
22 | input we;
23 | output [31:0]spo;
24 | endmodule
25 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/ip/data_mem/data_mem_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:57:54 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub
7 | -- d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem_stub.vhdl
8 | -- Design : data_mem
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity data_mem is
16 | Port (
17 | a : in STD_LOGIC_VECTOR ( 13 downto 0 );
18 | d : in STD_LOGIC_VECTOR ( 31 downto 0 );
19 | clk : in STD_LOGIC;
20 | we : in STD_LOGIC;
21 | spo : out STD_LOGIC_VECTOR ( 31 downto 0 )
22 | );
23 |
24 | end data_mem;
25 |
26 | architecture stub of data_mem is
27 | attribute syn_black_box : boolean;
28 | attribute black_box_pad_pin : string;
29 | attribute syn_black_box of stub : architecture is true;
30 | attribute black_box_pad_pin of stub : architecture is "a[13:0],d[31:0],clk,we,spo[31:0]";
31 | attribute x_core_info : string;
32 | attribute x_core_info of stub : architecture is "dist_mem_gen_v8_0_13,Vivado 2019.2";
33 | begin
34 | end;
35 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/ip/inst_mem/inst_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:57:01 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub
7 | // d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem_stub.v
8 | // Design : inst_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module inst_mem(a, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],spo[31:0]" */;
19 | input [13:0]a;
20 | output [31:0]spo;
21 | endmodule
22 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/ip/inst_mem/inst_mem_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:57:01 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub
7 | -- d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem_stub.vhdl
8 | -- Design : inst_mem
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity inst_mem is
16 | Port (
17 | a : in STD_LOGIC_VECTOR ( 13 downto 0 );
18 | spo : out STD_LOGIC_VECTOR ( 31 downto 0 )
19 | );
20 |
21 | end inst_mem;
22 |
23 | architecture stub of inst_mem is
24 | attribute syn_black_box : boolean;
25 | attribute black_box_pad_pin : string;
26 | attribute syn_black_box of stub : architecture is true;
27 | attribute black_box_pad_pin of stub : architecture is "a[13:0],spo[31:0]";
28 | attribute x_core_info : string;
29 | attribute x_core_info of stub : architecture is "dist_mem_gen_v8_0_13,Vivado 2019.2";
30 | begin
31 | end;
32 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/activehdl/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib activehdl
3 |
4 | vlib activehdl/xpm
5 | vlib activehdl/xil_defaultlib
6 |
7 | vmap xpm activehdl/xpm
8 | vmap xil_defaultlib activehdl/xil_defaultlib
9 |
10 | vlog -work xpm -sv2k12 "+incdir+../../../ipstatic" \
11 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
12 |
13 | vcom -work xpm -93 \
14 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
15 |
16 | vlog -work xil_defaultlib -v2k5 "+incdir+../../../ipstatic" \
17 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
18 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v" \
19 |
20 | vlog -work xil_defaultlib \
21 | "glbl.v"
22 |
23 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/activehdl/cpuclk.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/activehdl/cpuclk.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/activehdl/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/activehdl/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+cpuclk -L xpm -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.cpuclk xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {cpuclk.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/activehdl/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/ies/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/ies/run.f:
--------------------------------------------------------------------------------
1 | -makelib ies_lib/xpm -sv \
2 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
3 | -endlib
4 | -makelib ies_lib/xpm \
5 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
6 | -endlib
7 | -makelib ies_lib/xil_defaultlib \
8 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
9 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v" \
10 | -endlib
11 | -makelib ies_lib/xil_defaultlib \
12 | glbl.v
13 | -endlib
14 |
15 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/modelsim/compile.do:
--------------------------------------------------------------------------------
1 | vlib modelsim_lib/work
2 | vlib modelsim_lib/msim
3 |
4 | vlib modelsim_lib/msim/xpm
5 | vlib modelsim_lib/msim/xil_defaultlib
6 |
7 | vmap xpm modelsim_lib/msim/xpm
8 | vmap xil_defaultlib modelsim_lib/msim/xil_defaultlib
9 |
10 | vlog -work xpm -64 -incr -sv "+incdir+../../../ipstatic" \
11 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
12 |
13 | vcom -work xpm -64 -93 \
14 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
15 |
16 | vlog -work xil_defaultlib -64 -incr "+incdir+../../../ipstatic" \
17 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
18 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v" \
19 |
20 | vlog -work xil_defaultlib \
21 | "glbl.v"
22 |
23 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/modelsim/cpuclk.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/modelsim/cpuclk.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/modelsim/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/modelsim/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -voptargs="+acc" -t 1ps -L xpm -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -lib xil_defaultlib xil_defaultlib.cpuclk xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {cpuclk.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/modelsim/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/questa/compile.do:
--------------------------------------------------------------------------------
1 | vlib questa_lib/work
2 | vlib questa_lib/msim
3 |
4 | vlib questa_lib/msim/xpm
5 | vlib questa_lib/msim/xil_defaultlib
6 |
7 | vmap xpm questa_lib/msim/xpm
8 | vmap xil_defaultlib questa_lib/msim/xil_defaultlib
9 |
10 | vlog -work xpm -64 -sv "+incdir+../../../ipstatic" \
11 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
12 |
13 | vcom -work xpm -64 -93 \
14 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
15 |
16 | vlog -work xil_defaultlib -64 "+incdir+../../../ipstatic" \
17 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
18 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v" \
19 |
20 | vlog -work xil_defaultlib \
21 | "glbl.v"
22 |
23 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/questa/cpuclk.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/questa/cpuclk.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/questa/elaborate.do:
--------------------------------------------------------------------------------
1 | vopt -64 +acc -l elaborate.log -L xpm -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -work xil_defaultlib xil_defaultlib.cpuclk xil_defaultlib.glbl -o cpuclk_opt
2 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/questa/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/questa/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -t 1ps -lib xil_defaultlib cpuclk_opt
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {cpuclk.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/questa/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/riviera/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib riviera
3 |
4 | vlib riviera/xpm
5 | vlib riviera/xil_defaultlib
6 |
7 | vmap xpm riviera/xpm
8 | vmap xil_defaultlib riviera/xil_defaultlib
9 |
10 | vlog -work xpm -sv2k12 "+incdir+../../../ipstatic" \
11 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
12 |
13 | vcom -work xpm -93 \
14 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
15 |
16 | vlog -work xil_defaultlib -v2k5 "+incdir+../../../ipstatic" \
17 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
18 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v" \
19 |
20 | vlog -work xil_defaultlib \
21 | "glbl.v"
22 |
23 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/riviera/cpuclk.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/riviera/cpuclk.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/riviera/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/riviera/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+cpuclk -L xpm -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.cpuclk xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {cpuclk.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/riviera/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/vcs/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/vcs/simulate.do:
--------------------------------------------------------------------------------
1 | run
2 | quit
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/xcelium/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/xcelium/run.f:
--------------------------------------------------------------------------------
1 | -makelib xcelium_lib/xpm -sv \
2 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
3 | -endlib
4 | -makelib xcelium_lib/xpm \
5 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
6 | -endlib
7 | -makelib xcelium_lib/xil_defaultlib \
8 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
9 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v" \
10 | -endlib
11 | -makelib xcelium_lib/xil_defaultlib \
12 | glbl.v
13 | -endlib
14 |
15 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/xsim/cmd.tcl:
--------------------------------------------------------------------------------
1 | set curr_wave [current_wave_config]
2 | if { [string length $curr_wave] == 0 } {
3 | if { [llength [get_objects]] > 0} {
4 | add_wave /
5 | set_property needs_save false [current_wave_config]
6 | } else {
7 | send_msg_id Add_Wave-1 WARNING "No top level signals found. Simulator will start without a wave window. If you want to open a wave window go to 'File->New Waveform Configuration' or type 'create_wave_config' in the TCL console."
8 | }
9 | }
10 |
11 | run -all
12 | quit
13 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/xsim/elab.opt:
--------------------------------------------------------------------------------
1 | --relax --debug typical --mt auto -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -L xpm --snapshot cpuclk xil_defaultlib.cpuclk xil_defaultlib.glbl -log elaborate.log
2 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/xsim/file_info.txt:
--------------------------------------------------------------------------------
1 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
2 | cpuclk.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/cpuclk/xsim/vlog.prj:
--------------------------------------------------------------------------------
1 | verilog xil_defaultlib --include "../../../ipstatic" \
2 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
3 | "../../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.v" \
4 |
5 | verilog xil_defaultlib "glbl.v"
6 |
7 | nosort
8 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/activehdl/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib activehdl
3 |
4 | vlib activehdl/dist_mem_gen_v8_0_13
5 | vlib activehdl/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 activehdl/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib activehdl/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -v2k5 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -v2k5 \
14 | "../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/activehdl/data_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/activehdl/data_mem.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/activehdl/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/activehdl/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+data_mem -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.data_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {data_mem.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/activehdl/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/ies/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/ies/run.f:
--------------------------------------------------------------------------------
1 | -makelib ies_lib/dist_mem_gen_v8_0_13 \
2 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
3 | -endlib
4 | -makelib ies_lib/xil_defaultlib \
5 | "../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
6 | -endlib
7 | -makelib ies_lib/xil_defaultlib \
8 | glbl.v
9 | -endlib
10 |
11 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/modelsim/compile.do:
--------------------------------------------------------------------------------
1 | vlib modelsim_lib/work
2 | vlib modelsim_lib/msim
3 |
4 | vlib modelsim_lib/msim/dist_mem_gen_v8_0_13
5 | vlib modelsim_lib/msim/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 modelsim_lib/msim/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib modelsim_lib/msim/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -64 -incr \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -64 -incr \
14 | "../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/modelsim/data_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/modelsim/data_mem.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/modelsim/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/modelsim/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -voptargs="+acc" -t 1ps -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -lib xil_defaultlib xil_defaultlib.data_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {data_mem.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/modelsim/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/questa/compile.do:
--------------------------------------------------------------------------------
1 | vlib questa_lib/work
2 | vlib questa_lib/msim
3 |
4 | vlib questa_lib/msim/dist_mem_gen_v8_0_13
5 | vlib questa_lib/msim/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 questa_lib/msim/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib questa_lib/msim/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -64 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -64 \
14 | "../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/questa/data_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/questa/data_mem.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/questa/elaborate.do:
--------------------------------------------------------------------------------
1 | vopt -64 +acc -l elaborate.log -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -work xil_defaultlib xil_defaultlib.data_mem xil_defaultlib.glbl -o data_mem_opt
2 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/questa/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/questa/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -t 1ps -lib xil_defaultlib data_mem_opt
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {data_mem.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/questa/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/riviera/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib riviera
3 |
4 | vlib riviera/dist_mem_gen_v8_0_13
5 | vlib riviera/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 riviera/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib riviera/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -v2k5 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -v2k5 \
14 | "../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/riviera/data_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/riviera/data_mem.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/riviera/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/riviera/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+data_mem -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.data_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {data_mem.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/riviera/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/vcs/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/vcs/simulate.do:
--------------------------------------------------------------------------------
1 | run
2 | quit
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/xcelium/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/xcelium/run.f:
--------------------------------------------------------------------------------
1 | -makelib xcelium_lib/dist_mem_gen_v8_0_13 \
2 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
3 | -endlib
4 | -makelib xcelium_lib/xil_defaultlib \
5 | "../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
6 | -endlib
7 | -makelib xcelium_lib/xil_defaultlib \
8 | glbl.v
9 | -endlib
10 |
11 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/xsim/cmd.tcl:
--------------------------------------------------------------------------------
1 | set curr_wave [current_wave_config]
2 | if { [string length $curr_wave] == 0 } {
3 | if { [llength [get_objects]] > 0} {
4 | add_wave /
5 | set_property needs_save false [current_wave_config]
6 | } else {
7 | send_msg_id Add_Wave-1 WARNING "No top level signals found. Simulator will start without a wave window. If you want to open a wave window go to 'File->New Waveform Configuration' or type 'create_wave_config' in the TCL console."
8 | }
9 | }
10 |
11 | run -all
12 | quit
13 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/xsim/elab.opt:
--------------------------------------------------------------------------------
1 | --relax --debug typical --mt auto -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -L xpm --snapshot data_mem xil_defaultlib.data_mem xil_defaultlib.glbl -log elaborate.log
2 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/xsim/file_info.txt:
--------------------------------------------------------------------------------
1 | data_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v,
2 | glbl.v,Verilog,xil_defaultlib,glbl.v
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/data_mem/xsim/vlog.prj:
--------------------------------------------------------------------------------
1 | verilog xil_defaultlib \
2 | "../../../../pipeline.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
3 |
4 | verilog xil_defaultlib "glbl.v"
5 |
6 | nosort
7 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/activehdl/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib activehdl
3 |
4 | vlib activehdl/dist_mem_gen_v8_0_13
5 | vlib activehdl/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 activehdl/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib activehdl/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -v2k5 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -v2k5 \
14 | "../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/activehdl/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/activehdl/inst_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/activehdl/inst_mem.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/activehdl/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+inst_mem -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.inst_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {inst_mem.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/activehdl/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/ies/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/ies/run.f:
--------------------------------------------------------------------------------
1 | -makelib ies_lib/dist_mem_gen_v8_0_13 \
2 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
3 | -endlib
4 | -makelib ies_lib/xil_defaultlib \
5 | "../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
6 | -endlib
7 | -makelib ies_lib/xil_defaultlib \
8 | glbl.v
9 | -endlib
10 |
11 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/modelsim/compile.do:
--------------------------------------------------------------------------------
1 | vlib modelsim_lib/work
2 | vlib modelsim_lib/msim
3 |
4 | vlib modelsim_lib/msim/dist_mem_gen_v8_0_13
5 | vlib modelsim_lib/msim/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 modelsim_lib/msim/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib modelsim_lib/msim/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -64 -incr \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -64 -incr \
14 | "../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/modelsim/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/modelsim/inst_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/modelsim/inst_mem.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/modelsim/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -voptargs="+acc" -t 1ps -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -lib xil_defaultlib xil_defaultlib.inst_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {inst_mem.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/modelsim/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/questa/compile.do:
--------------------------------------------------------------------------------
1 | vlib questa_lib/work
2 | vlib questa_lib/msim
3 |
4 | vlib questa_lib/msim/dist_mem_gen_v8_0_13
5 | vlib questa_lib/msim/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 questa_lib/msim/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib questa_lib/msim/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -64 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -64 \
14 | "../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/questa/elaborate.do:
--------------------------------------------------------------------------------
1 | vopt -64 +acc -l elaborate.log -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -work xil_defaultlib xil_defaultlib.inst_mem xil_defaultlib.glbl -o inst_mem_opt
2 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/questa/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/questa/inst_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/questa/inst_mem.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/questa/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -t 1ps -lib xil_defaultlib inst_mem_opt
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {inst_mem.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/questa/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/riviera/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib riviera
3 |
4 | vlib riviera/dist_mem_gen_v8_0_13
5 | vlib riviera/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 riviera/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib riviera/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -v2k5 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -v2k5 \
14 | "../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/riviera/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/riviera/inst_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/riviera/inst_mem.udo
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/riviera/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+inst_mem -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.inst_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {inst_mem.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/riviera/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/vcs/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/vcs/simulate.do:
--------------------------------------------------------------------------------
1 | run
2 | quit
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/xcelium/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/xcelium/run.f:
--------------------------------------------------------------------------------
1 | -makelib xcelium_lib/dist_mem_gen_v8_0_13 \
2 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
3 | -endlib
4 | -makelib xcelium_lib/xil_defaultlib \
5 | "../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
6 | -endlib
7 | -makelib xcelium_lib/xil_defaultlib \
8 | glbl.v
9 | -endlib
10 |
11 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/xsim/cmd.tcl:
--------------------------------------------------------------------------------
1 | set curr_wave [current_wave_config]
2 | if { [string length $curr_wave] == 0 } {
3 | if { [llength [get_objects]] > 0} {
4 | add_wave /
5 | set_property needs_save false [current_wave_config]
6 | } else {
7 | send_msg_id Add_Wave-1 WARNING "No top level signals found. Simulator will start without a wave window. If you want to open a wave window go to 'File->New Waveform Configuration' or type 'create_wave_config' in the TCL console."
8 | }
9 | }
10 |
11 | run -all
12 | quit
13 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/xsim/elab.opt:
--------------------------------------------------------------------------------
1 | --relax --debug typical --mt auto -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -L xpm --snapshot inst_mem xil_defaultlib.inst_mem xil_defaultlib.glbl -log elaborate.log
2 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/xsim/file_info.txt:
--------------------------------------------------------------------------------
1 | inst_mem.v,verilog,xil_defaultlib,../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
2 | glbl.v,Verilog,xil_defaultlib,glbl.v
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.ip_user_files/sim_scripts/inst_mem/xsim/vlog.prj:
--------------------------------------------------------------------------------
1 | verilog xil_defaultlib \
2 | "../../../../pipeline.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
3 |
4 | verilog xil_defaultlib "glbl.v"
5 |
6 | nosort
7 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/.jobs/vrs_config_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/.jobs/vrs_config_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/.jobs/vrs_config_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/.Vivado_Synthesis.queue.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/cpuclk_synth_1/.Vivado_Synthesis.queue.rst
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/.Xil/cpuclk_propImpl.xdc:
--------------------------------------------------------------------------------
1 | set_property SRC_FILE_INFO {cfile:d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/cpuclk/cpuclk.xdc rfile:../../../pipeline.srcs/sources_1/ip/cpuclk/cpuclk.xdc id:1 order:EARLY scoped_inst:inst} [current_design]
2 | current_instance inst
3 | set_property src_info {type:SCOPED_XDC file:1 line:57 export:INPUT save:INPUT read:READ} [current_design]
4 | set_input_jitter [get_clocks -of_objects [get_ports clk_in1]] 0.1
5 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/.vivado.begin.rst:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/.vivado.end.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/cpuclk_synth_1/.vivado.end.rst
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/__synthesis_is_complete__:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/cpuclk_synth_1/__synthesis_is_complete__
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/cpuclk.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/cpuclk_synth_1/cpuclk.dcp
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/cpuclk_utilization_synth.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/cpuclk_synth_1/cpuclk_utilization_synth.pb
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/htr.txt:
--------------------------------------------------------------------------------
1 | REM
2 | REM Vivado(TM)
3 | REM htr.txt: a Vivado-generated description of how-to-repeat the
4 | REM the basic steps of a run. Note that runme.bat/sh needs
5 | REM to be invoked for Vivado to track run status.
6 | REM Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | REM
8 |
9 | vivado -log cpuclk.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source cpuclk.tcl
10 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/rundef.js:
--------------------------------------------------------------------------------
1 | //
2 | // Vivado(TM)
3 | // rundef.js: a Vivado-generated Runs Script for WSH 5.1/5.6
4 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
5 | //
6 |
7 | var WshShell = new ActiveXObject( "WScript.Shell" );
8 | var ProcEnv = WshShell.Environment( "Process" );
9 | var PathVal = ProcEnv("PATH");
10 | if ( PathVal.length == 0 ) {
11 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;";
12 | } else {
13 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;" + PathVal;
14 | }
15 |
16 | ProcEnv("PATH") = PathVal;
17 |
18 | var RDScrFP = WScript.ScriptFullName;
19 | var RDScrN = WScript.ScriptName;
20 | var RDScrDir = RDScrFP.substr( 0, RDScrFP.length - RDScrN.length - 1 );
21 | var ISEJScriptLib = RDScrDir + "/ISEWrap.js";
22 | eval( EAInclude(ISEJScriptLib) );
23 |
24 |
25 | ISEStep( "vivado",
26 | "-log cpuclk.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source cpuclk.tcl" );
27 |
28 |
29 |
30 | function EAInclude( EAInclFilename ) {
31 | var EAFso = new ActiveXObject( "Scripting.FileSystemObject" );
32 | var EAInclFile = EAFso.OpenTextFile( EAInclFilename );
33 | var EAIFContents = EAInclFile.ReadAll();
34 | EAInclFile.Close();
35 | return EAIFContents;
36 | }
37 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/runme.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | rem Vivado (TM)
4 | rem runme.bat: a Vivado-generated Script
5 | rem Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
6 |
7 |
8 | set HD_SDIR=%~dp0
9 | cd /d "%HD_SDIR%"
10 | cscript /nologo /E:JScript "%HD_SDIR%\rundef.js" %*
11 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/runme.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | #
4 | # Vivado(TM)
5 | # runme.sh: a Vivado-generated Runs Script for UNIX
6 | # Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | #
8 |
9 | echo "This script was generated under a different operating system."
10 | echo "Please update the PATH and LD_LIBRARY_PATH variables below, before executing this script"
11 | exit
12 |
13 | if [ -z "$PATH" ]; then
14 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin
15 | else
16 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin:$PATH
17 | fi
18 | export PATH
19 |
20 | if [ -z "$LD_LIBRARY_PATH" ]; then
21 | LD_LIBRARY_PATH=
22 | else
23 | LD_LIBRARY_PATH=:$LD_LIBRARY_PATH
24 | fi
25 | export LD_LIBRARY_PATH
26 |
27 | HD_PWD='D:/STUDY/CPU/pipeline/pipeline.runs/cpuclk_synth_1'
28 | cd "$HD_PWD"
29 |
30 | HD_LOG=runme.log
31 | /bin/touch $HD_LOG
32 |
33 | ISEStep="./ISEWrap.sh"
34 | EAStep()
35 | {
36 | $ISEStep $HD_LOG "$@" >> $HD_LOG 2>&1
37 | if [ $? -ne 0 ]
38 | then
39 | exit
40 | fi
41 | }
42 |
43 | EAStep vivado -log cpuclk.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source cpuclk.tcl
44 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/vivado.jou:
--------------------------------------------------------------------------------
1 | #-----------------------------------------------------------
2 | # Vivado v2019.2 (64-bit)
3 | # SW Build 2708876 on Wed Nov 6 21:40:23 MST 2019
4 | # IP Build 2700528 on Thu Nov 7 00:09:20 MST 2019
5 | # Start of session at: Mon Sep 6 16:54:15 2021
6 | # Process ID: 15760
7 | # Current directory: D:/STUDY/CPU/pipeline/pipeline.runs/cpuclk_synth_1
8 | # Command line: vivado.exe -log cpuclk.vds -product Vivado -mode batch -messageDb vivado.pb -notrace -source cpuclk.tcl
9 | # Log file: D:/STUDY/CPU/pipeline/pipeline.runs/cpuclk_synth_1/cpuclk.vds
10 | # Journal file: D:/STUDY/CPU/pipeline/pipeline.runs/cpuclk_synth_1\vivado.jou
11 | #-----------------------------------------------------------
12 | source cpuclk.tcl -notrace
13 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/cpuclk_synth_1/vivado.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/cpuclk_synth_1/vivado.pb
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/.Vivado_Synthesis.queue.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/data_mem_synth_1/.Vivado_Synthesis.queue.rst
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/.vivado.begin.rst:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/.vivado.end.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/data_mem_synth_1/.vivado.end.rst
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/__synthesis_is_complete__:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/data_mem_synth_1/__synthesis_is_complete__
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/data_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/data_mem_synth_1/data_mem.dcp
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/data_mem_utilization_synth.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/data_mem_synth_1/data_mem_utilization_synth.pb
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/dont_touch.xdc:
--------------------------------------------------------------------------------
1 | # This file is automatically generated.
2 | # It contains project source information necessary for synthesis and implementation.
3 |
4 | # IP: d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem.xci
5 | # IP: The module: 'data_mem' is the root of the design. Do not add the DONT_TOUCH constraint.
6 |
7 | # XDC: d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem_ooc.xdc
8 | # XDC: The top module name and the constraint reference have the same name: 'data_mem'. Do not add the DONT_TOUCH constraint.
9 | set_property DONT_TOUCH TRUE [get_cells U0 -quiet] -quiet
10 |
11 | # IP: d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem.xci
12 | # IP: The module: 'data_mem' is the root of the design. Do not add the DONT_TOUCH constraint.
13 |
14 | # XDC: d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem_ooc.xdc
15 | # XDC: The top module name and the constraint reference have the same name: 'data_mem'. Do not add the DONT_TOUCH constraint.
16 | #dup# set_property DONT_TOUCH TRUE [get_cells U0 -quiet] -quiet
17 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/htr.txt:
--------------------------------------------------------------------------------
1 | REM
2 | REM Vivado(TM)
3 | REM htr.txt: a Vivado-generated description of how-to-repeat the
4 | REM the basic steps of a run. Note that runme.bat/sh needs
5 | REM to be invoked for Vivado to track run status.
6 | REM Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | REM
8 |
9 | vivado -log data_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source data_mem.tcl
10 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/rundef.js:
--------------------------------------------------------------------------------
1 | //
2 | // Vivado(TM)
3 | // rundef.js: a Vivado-generated Runs Script for WSH 5.1/5.6
4 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
5 | //
6 |
7 | var WshShell = new ActiveXObject( "WScript.Shell" );
8 | var ProcEnv = WshShell.Environment( "Process" );
9 | var PathVal = ProcEnv("PATH");
10 | if ( PathVal.length == 0 ) {
11 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;";
12 | } else {
13 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;" + PathVal;
14 | }
15 |
16 | ProcEnv("PATH") = PathVal;
17 |
18 | var RDScrFP = WScript.ScriptFullName;
19 | var RDScrN = WScript.ScriptName;
20 | var RDScrDir = RDScrFP.substr( 0, RDScrFP.length - RDScrN.length - 1 );
21 | var ISEJScriptLib = RDScrDir + "/ISEWrap.js";
22 | eval( EAInclude(ISEJScriptLib) );
23 |
24 |
25 | ISEStep( "vivado",
26 | "-log data_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source data_mem.tcl" );
27 |
28 |
29 |
30 | function EAInclude( EAInclFilename ) {
31 | var EAFso = new ActiveXObject( "Scripting.FileSystemObject" );
32 | var EAInclFile = EAFso.OpenTextFile( EAInclFilename );
33 | var EAIFContents = EAInclFile.ReadAll();
34 | EAInclFile.Close();
35 | return EAIFContents;
36 | }
37 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/runme.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | rem Vivado (TM)
4 | rem runme.bat: a Vivado-generated Script
5 | rem Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
6 |
7 |
8 | set HD_SDIR=%~dp0
9 | cd /d "%HD_SDIR%"
10 | cscript /nologo /E:JScript "%HD_SDIR%\rundef.js" %*
11 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/runme.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | #
4 | # Vivado(TM)
5 | # runme.sh: a Vivado-generated Runs Script for UNIX
6 | # Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | #
8 |
9 | echo "This script was generated under a different operating system."
10 | echo "Please update the PATH and LD_LIBRARY_PATH variables below, before executing this script"
11 | exit
12 |
13 | if [ -z "$PATH" ]; then
14 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin
15 | else
16 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin:$PATH
17 | fi
18 | export PATH
19 |
20 | if [ -z "$LD_LIBRARY_PATH" ]; then
21 | LD_LIBRARY_PATH=
22 | else
23 | LD_LIBRARY_PATH=:$LD_LIBRARY_PATH
24 | fi
25 | export LD_LIBRARY_PATH
26 |
27 | HD_PWD='D:/STUDY/CPU/pipeline/pipeline.runs/data_mem_synth_1'
28 | cd "$HD_PWD"
29 |
30 | HD_LOG=runme.log
31 | /bin/touch $HD_LOG
32 |
33 | ISEStep="./ISEWrap.sh"
34 | EAStep()
35 | {
36 | $ISEStep $HD_LOG "$@" >> $HD_LOG 2>&1
37 | if [ $? -ne 0 ]
38 | then
39 | exit
40 | fi
41 | }
42 |
43 | EAStep vivado -log data_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source data_mem.tcl
44 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/vivado.jou:
--------------------------------------------------------------------------------
1 | #-----------------------------------------------------------
2 | # Vivado v2019.2 (64-bit)
3 | # SW Build 2708876 on Wed Nov 6 21:40:23 MST 2019
4 | # IP Build 2700528 on Thu Nov 7 00:09:20 MST 2019
5 | # Start of session at: Mon Sep 6 16:56:40 2021
6 | # Process ID: 19252
7 | # Current directory: D:/STUDY/CPU/pipeline/pipeline.runs/data_mem_synth_1
8 | # Command line: vivado.exe -log data_mem.vds -product Vivado -mode batch -messageDb vivado.pb -notrace -source data_mem.tcl
9 | # Log file: D:/STUDY/CPU/pipeline/pipeline.runs/data_mem_synth_1/data_mem.vds
10 | # Journal file: D:/STUDY/CPU/pipeline/pipeline.runs/data_mem_synth_1\vivado.jou
11 | #-----------------------------------------------------------
12 | source data_mem.tcl -notrace
13 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/data_mem_synth_1/vivado.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/data_mem_synth_1/vivado.pb
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/.Vivado_Synthesis.queue.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/inst_mem_synth_1/.Vivado_Synthesis.queue.rst
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/.vivado.begin.rst:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/.vivado.end.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/inst_mem_synth_1/.vivado.end.rst
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/__synthesis_is_complete__:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/inst_mem_synth_1/__synthesis_is_complete__
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/dont_touch.xdc:
--------------------------------------------------------------------------------
1 | # This file is automatically generated.
2 | # It contains project source information necessary for synthesis and implementation.
3 |
4 | # IP: d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem.xci
5 | # IP: The module: 'inst_mem' is the root of the design. Do not add the DONT_TOUCH constraint.
6 |
7 | # XDC: d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem_ooc.xdc
8 | # XDC: The top module name and the constraint reference have the same name: 'inst_mem'. Do not add the DONT_TOUCH constraint.
9 | set_property DONT_TOUCH TRUE [get_cells U0 -quiet] -quiet
10 |
11 | # IP: d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem.xci
12 | # IP: The module: 'inst_mem' is the root of the design. Do not add the DONT_TOUCH constraint.
13 |
14 | # XDC: d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem_ooc.xdc
15 | # XDC: The top module name and the constraint reference have the same name: 'inst_mem'. Do not add the DONT_TOUCH constraint.
16 | #dup# set_property DONT_TOUCH TRUE [get_cells U0 -quiet] -quiet
17 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/htr.txt:
--------------------------------------------------------------------------------
1 | REM
2 | REM Vivado(TM)
3 | REM htr.txt: a Vivado-generated description of how-to-repeat the
4 | REM the basic steps of a run. Note that runme.bat/sh needs
5 | REM to be invoked for Vivado to track run status.
6 | REM Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | REM
8 |
9 | vivado -log inst_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source inst_mem.tcl
10 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/inst_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/inst_mem_synth_1/inst_mem.dcp
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/inst_mem_utilization_synth.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/inst_mem_synth_1/inst_mem_utilization_synth.pb
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/rundef.js:
--------------------------------------------------------------------------------
1 | //
2 | // Vivado(TM)
3 | // rundef.js: a Vivado-generated Runs Script for WSH 5.1/5.6
4 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
5 | //
6 |
7 | var WshShell = new ActiveXObject( "WScript.Shell" );
8 | var ProcEnv = WshShell.Environment( "Process" );
9 | var PathVal = ProcEnv("PATH");
10 | if ( PathVal.length == 0 ) {
11 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;";
12 | } else {
13 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;" + PathVal;
14 | }
15 |
16 | ProcEnv("PATH") = PathVal;
17 |
18 | var RDScrFP = WScript.ScriptFullName;
19 | var RDScrN = WScript.ScriptName;
20 | var RDScrDir = RDScrFP.substr( 0, RDScrFP.length - RDScrN.length - 1 );
21 | var ISEJScriptLib = RDScrDir + "/ISEWrap.js";
22 | eval( EAInclude(ISEJScriptLib) );
23 |
24 |
25 | ISEStep( "vivado",
26 | "-log inst_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source inst_mem.tcl" );
27 |
28 |
29 |
30 | function EAInclude( EAInclFilename ) {
31 | var EAFso = new ActiveXObject( "Scripting.FileSystemObject" );
32 | var EAInclFile = EAFso.OpenTextFile( EAInclFilename );
33 | var EAIFContents = EAInclFile.ReadAll();
34 | EAInclFile.Close();
35 | return EAIFContents;
36 | }
37 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/runme.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | rem Vivado (TM)
4 | rem runme.bat: a Vivado-generated Script
5 | rem Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
6 |
7 |
8 | set HD_SDIR=%~dp0
9 | cd /d "%HD_SDIR%"
10 | cscript /nologo /E:JScript "%HD_SDIR%\rundef.js" %*
11 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/runme.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | #
4 | # Vivado(TM)
5 | # runme.sh: a Vivado-generated Runs Script for UNIX
6 | # Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | #
8 |
9 | echo "This script was generated under a different operating system."
10 | echo "Please update the PATH and LD_LIBRARY_PATH variables below, before executing this script"
11 | exit
12 |
13 | if [ -z "$PATH" ]; then
14 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin
15 | else
16 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin:$PATH
17 | fi
18 | export PATH
19 |
20 | if [ -z "$LD_LIBRARY_PATH" ]; then
21 | LD_LIBRARY_PATH=
22 | else
23 | LD_LIBRARY_PATH=:$LD_LIBRARY_PATH
24 | fi
25 | export LD_LIBRARY_PATH
26 |
27 | HD_PWD='D:/STUDY/CPU/pipeline/pipeline.runs/inst_mem_synth_1'
28 | cd "$HD_PWD"
29 |
30 | HD_LOG=runme.log
31 | /bin/touch $HD_LOG
32 |
33 | ISEStep="./ISEWrap.sh"
34 | EAStep()
35 | {
36 | $ISEStep $HD_LOG "$@" >> $HD_LOG 2>&1
37 | if [ $? -ne 0 ]
38 | then
39 | exit
40 | fi
41 | }
42 |
43 | EAStep vivado -log inst_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source inst_mem.tcl
44 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/vivado.jou:
--------------------------------------------------------------------------------
1 | #-----------------------------------------------------------
2 | # Vivado v2019.2 (64-bit)
3 | # SW Build 2708876 on Wed Nov 6 21:40:23 MST 2019
4 | # IP Build 2700528 on Thu Nov 7 00:09:20 MST 2019
5 | # Start of session at: Mon Sep 6 16:55:58 2021
6 | # Process ID: 3888
7 | # Current directory: D:/STUDY/CPU/pipeline/pipeline.runs/inst_mem_synth_1
8 | # Command line: vivado.exe -log inst_mem.vds -product Vivado -mode batch -messageDb vivado.pb -notrace -source inst_mem.tcl
9 | # Log file: D:/STUDY/CPU/pipeline/pipeline.runs/inst_mem_synth_1/inst_mem.vds
10 | # Journal file: D:/STUDY/CPU/pipeline/pipeline.runs/inst_mem_synth_1\vivado.jou
11 | #-----------------------------------------------------------
12 | source inst_mem.tcl -notrace
13 |
--------------------------------------------------------------------------------
/pipeline/pipeline.runs/inst_mem_synth_1/vivado.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.runs/inst_mem_synth_1/vivado.pb
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/adder_for_plus_4.v:
--------------------------------------------------------------------------------
1 | module adder_for_plus_4(
2 | input [31:0] pc_from_pc_i,
3 | output [31:0] pc_plus_4_o
4 | );
5 |
6 | reg [31:0] pc_plus_4;
7 | assign pc_plus_4_o = pc_plus_4;
8 | always @ (*)
9 | begin
10 | pc_plus_4 = pc_from_pc_i + 4;
11 | end
12 | endmodule
13 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/algorithm_calculation.v:
--------------------------------------------------------------------------------
1 |
2 | module algorithm_calculation(
3 | input [3:0] algorithm_op_sel_i,
4 | input [31:0] operand_A_i,
5 | input [31:0] operand_B_i,
6 | output [31:0] result_from_algorithm_o
7 | );
8 |
9 |
10 |
11 | reg [31:0] result;
12 | assign result_from_algorithm_o = result;
13 | always @ (*)
14 | begin
15 | case(algorithm_op_sel_i)
16 | `ADD: result = operand_A_i + operand_B_i;
17 | `SUB: result = operand_A_i + (operand_B_i ^ 32'b1111_1111_1111_1111_1111_1111_1111_1111) + 1'b1;
18 | default:result = 0;
19 | endcase
20 | end
21 | endmodule
22 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/branch_compare.v:
--------------------------------------------------------------------------------
1 | module branch_compare(
2 | input [31:0] data1_from_rf_i,
3 | input [31:0] data2_from_rf_i,
4 | output [1:0] cmp_result_from_branch_o,
5 | input [2:0] func3
6 | );
7 |
8 | reg [1:0] cmp_result_from_branch;
9 | assign cmp_result_from_branch_o = cmp_result_from_branch;
10 | always @ (*)
11 | begin
12 | if (func3 == 3'b110 || func3 == 3'b111) cmp_result_from_branch = ((~(data1_from_rf_i < data2_from_rf_i)) ? 2'b01 : 2'b10);
13 | else if (($signed(data1_from_rf_i)) == ($signed(data2_from_rf_i))) cmp_result_from_branch = 2'b00;
14 | else if (($signed(data1_from_rf_i)) > ($signed(data2_from_rf_i))) cmp_result_from_branch = 2'b01;
15 | else cmp_result_from_branch = 2'b10;
16 | end
17 | endmodule
18 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/hazard_detection_unit.v:
--------------------------------------------------------------------------------
1 | module hazard_detection_unit(
2 | input rst_n,
3 | input clk_i,
4 | input [31:0] instruction_from_preg1_i,
5 | input [4:0] rd_from_ID_EX_i,
6 | input [4:0] rs1_from_IF_ID_i,
7 | input [4:0] rs2_from_IF_ID_i,
8 | output lw_stall_o
9 | );
10 | reg lw_stall;
11 | // stop for 2 cycles
12 | reg counter = 0;
13 | always @ (posedge clk_i)
14 | begin
15 | if (~rst_n)
16 | counter <= 0;
17 | else if (lw_stall)
18 | counter <= counter + 1;
19 | else
20 | counter <= 0;
21 | end
22 |
23 | reg [1:0] stop_for_2_cycles = 0;
24 | always @ (posedge clk_i)
25 | begin
26 | if (~rst_n)
27 | stop_for_2_cycles <= 0;
28 | else if (instruction_from_preg1_i[6:0] == 7'b0000011 && instruction_from_preg1_i[14:12] != 3'b010)
29 | stop_for_2_cycles <= stop_for_2_cycles + 1;
30 | else if (stop_for_2_cycles == 1)
31 | stop_for_2_cycles <= stop_for_2_cycles + 1;
32 | else
33 | stop_for_2_cycles <= 0;
34 | end
35 | always @ (posedge clk_i)
36 | begin
37 |
38 | end
39 | assign lw_stall_o = lw_stall;
40 | always @ (*)
41 | begin
42 | if (~rst_n)
43 | lw_stall = 0;
44 | else if (stop_for_2_cycles)
45 | lw_stall = 1;
46 | else if (counter)
47 | lw_stall = 0;
48 | else if (instruction_from_preg1_i[6:2] != 5'b00000)
49 | lw_stall = 0;
50 | else if (rd_from_ID_EX_i == 0)
51 | lw_stall = 0;
52 | else if (rd_from_ID_EX_i == rs1_from_IF_ID_i || rd_from_ID_EX_i == rs2_from_IF_ID_i)
53 | lw_stall = 1;
54 | else
55 | lw_stall = 0;
56 | end
57 |
58 | endmodule
59 |
60 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/j_format_stall.v:
--------------------------------------------------------------------------------
1 | module j_format_stall(
2 | input rst_n,
3 | input bstall_i,
4 | input clk_i,
5 | input [31:0] instruction_from_preg1_i,
6 | input [31:0] instruction_from_preg0_i,
7 | output jstall_o
8 | );
9 | reg stall;
10 | assign jstall_o = stall;
11 | reg [2:0] counter = 0;
12 | // stop for 3 cycles
13 | always @ (posedge clk_i)
14 | begin
15 | if (~rst_n)
16 | counter <= 0;
17 | else if (counter == 1)
18 | counter <= 0;
19 | else if (stall)
20 | counter <= counter + 1;
21 | else
22 | counter <= 0;
23 | end
24 | // stop for 3 cycles
25 | always @ (*)
26 | begin
27 | if (~rst_n)
28 | stall = 0;
29 | else if (bstall_i)
30 | stall = 0;
31 | else if (instruction_from_preg1_i[6:2] == 5'b11000)
32 | stall = 0;
33 | else if (instruction_from_preg0_i[6:2] == 5'b11011 || instruction_from_preg0_i[6:2] == 5'b11001)
34 | stall = 1;
35 | else if (counter != 0)
36 | stall = 1;
37 | else
38 | stall = 0;
39 | end
40 | endmodule
41 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/logic_calculation.v:
--------------------------------------------------------------------------------
1 |
2 | module logic_calculation(
3 | input [3:0] logic_op_sel_i,
4 | input [31:0] operand_A_i,
5 | input [31:0] operand_B_i,
6 | output [31:0] result_from_logic_o
7 | );
8 |
9 |
10 | reg [31:0] result;
11 | assign result_from_logic_o = result;
12 | always @ (*)
13 | begin
14 | case(logic_op_sel_i)
15 | `AND: result = operand_A_i & operand_B_i;
16 | `OR: result = operand_A_i | operand_B_i;
17 | `XOR: result = operand_A_i ^ operand_B_i;
18 | default:result = 0;
19 | endcase
20 | end
21 | endmodule
22 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/mux_3.v:
--------------------------------------------------------------------------------
1 | module mux_3(
2 | input [1:0] select_signal,
3 | input [31:0] input0,
4 | input [31:0] input1,
5 | input [31:0] input2,
6 | output [31:0] output_data
7 | );
8 |
9 | reg [31:0] output_reg;
10 | assign output_data = output_reg;
11 | always @ (*)
12 | begin
13 | case(select_signal)
14 | 2'b00: output_reg = input0;
15 | 2'b01: output_reg = input1;
16 | 2'b10: output_reg = input2;
17 | default: output_reg = input0;
18 | endcase
19 | end
20 | endmodule
21 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/mux_5.v:
--------------------------------------------------------------------------------
1 | module mux_5(
2 | input [2:0] select_signal,
3 | input [31:0] input0,
4 | input [31:0] input1,
5 | input [31:0] input2,
6 | input [31:0] input3,
7 | input [31:0] input4,
8 | output [31:0] output_data
9 | );
10 | reg [31:0] result;
11 | assign output_data = result;
12 | always @ (*)
13 | begin
14 | case(select_signal)
15 | 3'b000: result = input0;
16 | 3'b001: result = input1;
17 | 3'b010: result = input2;
18 | 3'b011: result = input3;
19 | 3'b100: result = input4;
20 | default:result = input0;
21 | endcase
22 | end
23 | endmodule
24 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/mux_6.v:
--------------------------------------------------------------------------------
1 | module mux_6(
2 | input [2:0] select_signal,
3 | input [31:0] input0,
4 | input [31:0] input1,
5 | input [31:0] input2,
6 | input [31:0] input3,
7 | input [31:0] input4,
8 | input [31:0] input5,
9 | output [31:0] output_data
10 | );
11 | reg [31:0] result;
12 | assign output_data = result;
13 | always @ (*)
14 | begin
15 | case(select_signal)
16 | 3'b000: result = input0;
17 | 3'b001: result = input1;
18 | 3'b010: result = input2;
19 | 3'b011: result = input3;
20 | 3'b100: result = input4;
21 | 3'b101: result = input5;
22 | default:result = input0;
23 | endcase
24 | end
25 | endmodule
26 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/mux_7.v:
--------------------------------------------------------------------------------
1 | module mux_7(
2 | input [2:0] select_signal,
3 | input [31:0] input0,
4 | input [31:0] input1,
5 | input [31:0] input2,
6 | input [31:0] input3,
7 | input [31:0] input4,
8 | input [31:0] input5,
9 | input [31:0] input6,
10 | output [31:0] output_data
11 | );
12 | reg [31:0] result;
13 | assign output_data = result;
14 | always @ (*)
15 | begin
16 | case(select_signal)
17 | 3'b000: result = input0;
18 | 3'b001: result = input1;
19 | 3'b010: result = input2;
20 | 3'b011: result = input3;
21 | 3'b100: result = input4;
22 | 3'b101: result = input5;
23 | 3'b110: result = input6;
24 | default:result = input0;
25 | endcase
26 | end
27 | endmodule
28 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/param.v:
--------------------------------------------------------------------------------
1 | // file: param.v
2 | `ifndef CPU_PARAM
3 | `define CPU_PARAM
4 |
5 | `define ADD 4'b0000
6 | `define SUB 4'b0001
7 | `define AND 4'b0010
8 | `define OR 4'b0011
9 | `define XOR 4'b0100
10 | `define SLL 4'b0101
11 | `define SRL 4'b0110
12 | `define SRA 4'b0111
13 |
14 | `define SLT 4'b1000
15 | `define SLTU 4'b1001
16 | `define SLTI 4'b1010
17 | `define SLTIU 4'b1011
18 |
19 | `endif
20 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/program_counter.v:
--------------------------------------------------------------------------------
1 | module program_counter(
2 | input clk_i,
3 | input reset_i,
4 | input stall_i,
5 | input [31:0] next_pc_i,
6 | output [31:0] pc_o
7 | );
8 | reg [31:0] pc;
9 | assign pc_o = pc;
10 |
11 | always @ (posedge clk_i or posedge reset_i)
12 | begin
13 | if (reset_i) pc <= 'hffff_fffc;
14 | else if (stall_i) pc <= pc;
15 | else pc <= next_pc_i;
16 | end
17 |
18 |
19 | endmodule
20 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/reg_file.v:
--------------------------------------------------------------------------------
1 | module reg_file(
2 | input clk_i,
3 | input [4:0] rR1_i,
4 | input [4:0] rR2_i,
5 | input [4:0] wR_i,
6 | input WE_i,
7 | input [31:0] wD_i,
8 | output [31:0] rD1_o,
9 | output [31:0] rD2_o
10 | );
11 |
12 | reg [31:0] register [0:31];
13 | reg [31:0] data1;
14 | reg [31:0] data2;
15 | assign rD1_o = data1;
16 | assign rD2_o = data2;
17 |
18 | // read logic
19 | always @ (*)
20 | begin
21 | data1 = register[rR1_i];
22 | data2 = register[rR2_i];
23 | end
24 |
25 | // write logic
26 | always @ (posedge clk_i)
27 | begin
28 | register[0] <= 0;
29 | if (WE_i && wR_i != 0)
30 | register[wR_i] <= wD_i;
31 | end
32 |
33 | endmodule
34 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/reg_for_inst_before_LW.v:
--------------------------------------------------------------------------------
1 | module reg_for_inst_before_LW(
2 | input rst_n,
3 | input clk_i,
4 | input [31:0] instruction_from_preg3_i,
5 | output [31:0] instruction_before_o
6 | );
7 | reg [31:0] instruction_before;
8 | assign instruction_before_o = instruction_before;
9 | always @ (posedge clk_i)
10 | begin
11 | if (~rst_n)
12 | instruction_before <= 0;
13 | else
14 | instruction_before <= instruction_from_preg3_i;
15 | end
16 |
17 | endmodule
18 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/top.v:
--------------------------------------------------------------------------------
1 | module top(
2 | input clk,
3 | input rst_n,
4 | output debug_wb_have_inst,
5 | output [31:0] debug_wb_pc,
6 | output debug_wb_ena,
7 | output [4:0] debug_wb_reg,
8 | output [31:0] debug_wb_value
9 |
10 | );
11 |
12 | wire [31:0] pc_from_pc;
13 | wire [31:0] instruction_from_irom;
14 | wire [31:0] addr_i;
15 | wire [31:0] rd_data_o;
16 | wire mem_wr_i;
17 | wire [31:0] wr_data_i;
18 |
19 | inst_mem U0_irom (
20 | .a(pc_from_pc[15:2]), // input wire [13:0] a
21 | .spo(instruction_from_irom) // output wire [31:0] spo
22 | );
23 |
24 | wire ram_clk; // reverse clk for Data RAM
25 | assign ram_clk = !clk;
26 | data_mem U_dram (
27 | .clk (ram_clk), // input wire clka
28 | .a (addr_i[15:2]), // input wire [13:0] addra
29 | .spo (rd_data_o), // output wire [31:0] douta
30 | .we (memwr_i), // input wire [0:0] wea
31 | .d (wr_data_i) // input wire [31:0] dina
32 | );
33 |
34 | mini_rv U_mini_rv(
35 | .rst_n(rst_n),
36 | .clk(clk),
37 | .debug_wb_have_inst(debug_wb_have_inst),
38 | .debug_wb_pc(debug_wb_pc),
39 | .debug_wb_ena(debug_wb_ena),
40 | .debug_wb_reg(debug_wb_reg),
41 | .debug_wb_value(debug_wb_value),
42 |
43 |
44 | .pc_from_pc_o(pc_from_pc),
45 | .instruction_from_irom(instruction_from_irom),
46 | .addr_i(addr_i),
47 | .rd_data_o(rd_data_o),
48 | .memwr_i(memwr_i),
49 | .wr_data_i(wr_data_i)
50 |
51 | );
52 | endmodule
53 |
54 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/imports/pipeline/wb_value_recorder.v:
--------------------------------------------------------------------------------
1 | module wb_value_recorder(
2 | input rst_n,
3 | input clk_i,
4 | input [31:0] wb_value_i,
5 | output [31:0] wb_value_3_o,
6 | output [31:0] wb_value_2_o,
7 | output [31:0] wb_value_1_o,
8 | output [31:0] wb_value_0_o
9 | );
10 |
11 | reg [31:0] wb_value_3;
12 | reg [31:0] wb_value_2;
13 | reg [31:0] wb_value_1;
14 | assign wb_value_3_o = wb_value_3;
15 | assign wb_value_2_o = wb_value_2;
16 | assign wb_value_1_o = wb_value_1;
17 | assign wb_value_0_o = wb_value_i;
18 |
19 | always @ (posedge clk_i)
20 | begin
21 | if (~rst_n)
22 | begin
23 | wb_value_3 <= 0;
24 | wb_value_2 <= 0;
25 | wb_value_1 <= 0;
26 | end
27 | else
28 | begin
29 | wb_value_3 <= wb_value_2;
30 | wb_value_2 <= wb_value_1;
31 | wb_value_1 <= wb_value_i;
32 | end
33 | end
34 | endmodule
35 |
36 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/ip/cpuclk/cpuclk.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.srcs/sources_1/ip/cpuclk/cpuclk.dcp
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/ip/cpuclk/cpuclk_board.xdc:
--------------------------------------------------------------------------------
1 | #--------------------Physical Constraints-----------------
2 |
3 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/ip/cpuclk/cpuclk_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:54:58 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub
7 | // d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/cpuclk/cpuclk_stub.v
8 | // Design : cpuclk
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | module cpuclk(clk_out1, locked, clk_in1)
17 | /* synthesis syn_black_box black_box_pad_pin="clk_out1,locked,clk_in1" */;
18 | output clk_out1;
19 | output locked;
20 | input clk_in1;
21 | endmodule
22 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/ip/cpuclk/cpuclk_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:54:58 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub
7 | -- d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/cpuclk/cpuclk_stub.vhdl
8 | -- Design : cpuclk
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity cpuclk is
16 | Port (
17 | clk_out1 : out STD_LOGIC;
18 | locked : out STD_LOGIC;
19 | clk_in1 : in STD_LOGIC
20 | );
21 |
22 | end cpuclk;
23 |
24 | architecture stub of cpuclk is
25 | attribute syn_black_box : boolean;
26 | attribute black_box_pad_pin : string;
27 | attribute syn_black_box of stub : architecture is true;
28 | attribute black_box_pad_pin of stub : architecture is "clk_out1,locked,clk_in1";
29 | begin
30 | end;
31 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem.dcp
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:57:54 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub
7 | // d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem_stub.v
8 | // Design : data_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module data_mem(a, d, clk, we, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],d[31:0],clk,we,spo[31:0]" */;
19 | input [13:0]a;
20 | input [31:0]d;
21 | input clk;
22 | input we;
23 | output [31:0]spo;
24 | endmodule
25 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:57:54 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub
7 | -- d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/data_mem/data_mem_stub.vhdl
8 | -- Design : data_mem
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity data_mem is
16 | Port (
17 | a : in STD_LOGIC_VECTOR ( 13 downto 0 );
18 | d : in STD_LOGIC_VECTOR ( 31 downto 0 );
19 | clk : in STD_LOGIC;
20 | we : in STD_LOGIC;
21 | spo : out STD_LOGIC_VECTOR ( 31 downto 0 )
22 | );
23 |
24 | end data_mem;
25 |
26 | architecture stub of data_mem is
27 | attribute syn_black_box : boolean;
28 | attribute black_box_pad_pin : string;
29 | attribute syn_black_box of stub : architecture is true;
30 | attribute black_box_pad_pin of stub : architecture is "a[13:0],d[31:0],clk,we,spo[31:0]";
31 | attribute x_core_info : string;
32 | attribute x_core_info of stub : architecture is "dist_mem_gen_v8_0_13,Vivado 2019.2";
33 | begin
34 | end;
35 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem.dcp
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:57:01 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub
7 | // d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem_stub.v
8 | // Design : inst_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module inst_mem(a, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],spo[31:0]" */;
19 | input [13:0]a;
20 | output [31:0]spo;
21 | endmodule
22 |
--------------------------------------------------------------------------------
/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:57:01 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub
7 | -- d:/STUDY/CPU/pipeline/pipeline.srcs/sources_1/ip/inst_mem/inst_mem_stub.vhdl
8 | -- Design : inst_mem
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity inst_mem is
16 | Port (
17 | a : in STD_LOGIC_VECTOR ( 13 downto 0 );
18 | spo : out STD_LOGIC_VECTOR ( 31 downto 0 )
19 | );
20 |
21 | end inst_mem;
22 |
23 | architecture stub of inst_mem is
24 | attribute syn_black_box : boolean;
25 | attribute black_box_pad_pin : string;
26 | attribute syn_black_box of stub : architecture is true;
27 | attribute black_box_pad_pin of stub : architecture is "a[13:0],spo[31:0]";
28 | attribute x_core_info : string;
29 | attribute x_core_info of stub : architecture is "dist_mem_gen_v8_0_13,Vivado 2019.2";
30 | begin
31 | end;
32 |
--------------------------------------------------------------------------------
/single/single.cache/ip/2019.2/ac4765ccab3a8c3a/data_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.cache/ip/2019.2/ac4765ccab3a8c3a/data_mem.dcp
--------------------------------------------------------------------------------
/single/single.cache/ip/2019.2/ac4765ccab3a8c3a/data_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:57:18 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub -rename_top decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix -prefix
7 | // decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix_ data_mem_stub.v
8 | // Design : data_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix(a, d, clk, we, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],d[31:0],clk,we,spo[31:0]" */;
19 | input [13:0]a;
20 | input [31:0]d;
21 | input clk;
22 | input we;
23 | output [31:0]spo;
24 | endmodule
25 |
--------------------------------------------------------------------------------
/single/single.cache/ip/2019.2/b7219d93de4be123/cpuclk.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.cache/ip/2019.2/b7219d93de4be123/cpuclk.dcp
--------------------------------------------------------------------------------
/single/single.cache/ip/2019.2/b7219d93de4be123/cpuclk_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:54:50 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub -rename_top decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix -prefix
7 | // decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix_ cpuclk_stub.v
8 | // Design : cpuclk
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | module decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix(clk_out1, locked, clk_in1)
17 | /* synthesis syn_black_box black_box_pad_pin="clk_out1,locked,clk_in1" */;
18 | output clk_out1;
19 | output locked;
20 | input clk_in1;
21 | endmodule
22 |
--------------------------------------------------------------------------------
/single/single.cache/ip/2019.2/b7219d93de4be123/cpuclk_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:54:50 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub -rename_top decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix -prefix
7 | -- decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix_ cpuclk_stub.vhdl
8 | -- Design : cpuclk
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix is
16 | Port (
17 | clk_out1 : out STD_LOGIC;
18 | locked : out STD_LOGIC;
19 | clk_in1 : in STD_LOGIC
20 | );
21 |
22 | end decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix;
23 |
24 | architecture stub of decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix is
25 | attribute syn_black_box : boolean;
26 | attribute black_box_pad_pin : string;
27 | attribute syn_black_box of stub : architecture is true;
28 | attribute black_box_pad_pin of stub : architecture is "clk_out1,locked,clk_in1";
29 | begin
30 | end;
31 |
--------------------------------------------------------------------------------
/single/single.cache/ip/2019.2/ce28ec6061e64c3c/inst_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.cache/ip/2019.2/ce28ec6061e64c3c/inst_mem.dcp
--------------------------------------------------------------------------------
/single/single.cache/ip/2019.2/ce28ec6061e64c3c/inst_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:55:32 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub -rename_top decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix -prefix
7 | // decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix_ inst_mem_stub.v
8 | // Design : inst_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix(a, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],spo[31:0]" */;
19 | input [13:0]a;
20 | output [31:0]spo;
21 | endmodule
22 |
--------------------------------------------------------------------------------
/single/single.cache/ip/2019.2/ce28ec6061e64c3c/inst_mem_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:55:32 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub -rename_top decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix -prefix
7 | -- decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix_ inst_mem_stub.vhdl
8 | -- Design : inst_mem
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix is
16 | Port (
17 | a : in STD_LOGIC_VECTOR ( 13 downto 0 );
18 | spo : out STD_LOGIC_VECTOR ( 31 downto 0 )
19 | );
20 |
21 | end decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix;
22 |
23 | architecture stub of decalper_eb_ot_sdeen_pot_pi_dehcac_xnilix is
24 | attribute syn_black_box : boolean;
25 | attribute black_box_pad_pin : string;
26 | attribute syn_black_box of stub : architecture is true;
27 | attribute black_box_pad_pin of stub : architecture is "a[13:0],spo[31:0]";
28 | attribute x_core_info : string;
29 | attribute x_core_info of stub : architecture is "dist_mem_gen_v8_0_13,Vivado 2019.2";
30 | begin
31 | end;
32 |
--------------------------------------------------------------------------------
/single/single.cache/wt/java_command_handlers.wdf:
--------------------------------------------------------------------------------
1 | version:1
2 | 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:636f726576696577:31:00:00
3 | 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:637573746f6d697a65636f7265:33:00:00
4 | 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:6e657770726f6a656374:31:00:00
5 | 70726f6a656374:76697661646f5f75736167655c6a6176615f636f6d6d616e645f68616e646c657273:736574676c6f62616c696e636c756465:31:00:00
6 | eof:3636137316
7 |
--------------------------------------------------------------------------------
/single/single.cache/wt/project.wpc:
--------------------------------------------------------------------------------
1 | version:1
2 | 6d6f64655f636f756e7465727c4755494d6f6465:1
3 | eof:
4 |
--------------------------------------------------------------------------------
/single/single.hw/single.lpr:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/README.txt:
--------------------------------------------------------------------------------
1 | The files in this directory structure are automatically generated and managed by Vivado. Editing these files is not recommended.
2 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/ip/cpuclk/cpuclk_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:54:51 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub d:/STUDY/CPU/single/single.srcs/sources_1/ip/cpuclk/cpuclk_stub.v
7 | // Design : cpuclk
8 | // Purpose : Stub declaration of top-level module interface
9 | // Device : xc7a100tfgg484-1
10 | // --------------------------------------------------------------------------------
11 |
12 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
13 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
14 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
15 | module cpuclk(clk_out1, locked, clk_in1)
16 | /* synthesis syn_black_box black_box_pad_pin="clk_out1,locked,clk_in1" */;
17 | output clk_out1;
18 | output locked;
19 | input clk_in1;
20 | endmodule
21 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/ip/cpuclk/cpuclk_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:54:51 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub d:/STUDY/CPU/single/single.srcs/sources_1/ip/cpuclk/cpuclk_stub.vhdl
7 | -- Design : cpuclk
8 | -- Purpose : Stub declaration of top-level module interface
9 | -- Device : xc7a100tfgg484-1
10 | -- --------------------------------------------------------------------------------
11 | library IEEE;
12 | use IEEE.STD_LOGIC_1164.ALL;
13 |
14 | entity cpuclk is
15 | Port (
16 | clk_out1 : out STD_LOGIC;
17 | locked : out STD_LOGIC;
18 | clk_in1 : in STD_LOGIC
19 | );
20 |
21 | end cpuclk;
22 |
23 | architecture stub of cpuclk is
24 | attribute syn_black_box : boolean;
25 | attribute black_box_pad_pin : string;
26 | attribute syn_black_box of stub : architecture is true;
27 | attribute black_box_pad_pin of stub : architecture is "clk_out1,locked,clk_in1";
28 | begin
29 | end;
30 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/ip/data_mem/data_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:57:21 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub
7 | // d:/STUDY/CPU/single/single.srcs/sources_1/ip/data_mem/data_mem_stub.v
8 | // Design : data_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module data_mem(a, d, clk, we, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],d[31:0],clk,we,spo[31:0]" */;
19 | input [13:0]a;
20 | input [31:0]d;
21 | input clk;
22 | input we;
23 | output [31:0]spo;
24 | endmodule
25 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/ip/data_mem/data_mem_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:57:21 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub
7 | -- d:/STUDY/CPU/single/single.srcs/sources_1/ip/data_mem/data_mem_stub.vhdl
8 | -- Design : data_mem
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity data_mem is
16 | Port (
17 | a : in STD_LOGIC_VECTOR ( 13 downto 0 );
18 | d : in STD_LOGIC_VECTOR ( 31 downto 0 );
19 | clk : in STD_LOGIC;
20 | we : in STD_LOGIC;
21 | spo : out STD_LOGIC_VECTOR ( 31 downto 0 )
22 | );
23 |
24 | end data_mem;
25 |
26 | architecture stub of data_mem is
27 | attribute syn_black_box : boolean;
28 | attribute black_box_pad_pin : string;
29 | attribute syn_black_box of stub : architecture is true;
30 | attribute black_box_pad_pin of stub : architecture is "a[13:0],d[31:0],clk,we,spo[31:0]";
31 | attribute x_core_info : string;
32 | attribute x_core_info of stub : architecture is "dist_mem_gen_v8_0_13,Vivado 2019.2";
33 | begin
34 | end;
35 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/ip/inst_mem/inst_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:55:32 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub
7 | // d:/STUDY/CPU/single/single.srcs/sources_1/ip/inst_mem/inst_mem_stub.v
8 | // Design : inst_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module inst_mem(a, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],spo[31:0]" */;
19 | input [13:0]a;
20 | output [31:0]spo;
21 | endmodule
22 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/ip/inst_mem/inst_mem_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:55:32 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub
7 | -- d:/STUDY/CPU/single/single.srcs/sources_1/ip/inst_mem/inst_mem_stub.vhdl
8 | -- Design : inst_mem
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity inst_mem is
16 | Port (
17 | a : in STD_LOGIC_VECTOR ( 13 downto 0 );
18 | spo : out STD_LOGIC_VECTOR ( 31 downto 0 )
19 | );
20 |
21 | end inst_mem;
22 |
23 | architecture stub of inst_mem is
24 | attribute syn_black_box : boolean;
25 | attribute black_box_pad_pin : string;
26 | attribute syn_black_box of stub : architecture is true;
27 | attribute black_box_pad_pin of stub : architecture is "a[13:0],spo[31:0]";
28 | attribute x_core_info : string;
29 | attribute x_core_info of stub : architecture is "dist_mem_gen_v8_0_13,Vivado 2019.2";
30 | begin
31 | end;
32 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/activehdl/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib activehdl
3 |
4 | vlib activehdl/xpm
5 | vlib activehdl/xil_defaultlib
6 |
7 | vmap xpm activehdl/xpm
8 | vmap xil_defaultlib activehdl/xil_defaultlib
9 |
10 | vlog -work xpm -sv2k12 "+incdir+../../../ipstatic" \
11 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
12 |
13 | vcom -work xpm -93 \
14 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
15 |
16 | vlog -work xil_defaultlib -v2k5 "+incdir+../../../ipstatic" \
17 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
18 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v" \
19 |
20 | vlog -work xil_defaultlib \
21 | "glbl.v"
22 |
23 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/activehdl/cpuclk.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/cpuclk/activehdl/cpuclk.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/activehdl/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/activehdl/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+cpuclk -L xpm -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.cpuclk xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {cpuclk.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/activehdl/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/ies/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/ies/run.f:
--------------------------------------------------------------------------------
1 | -makelib ies_lib/xpm -sv \
2 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
3 | -endlib
4 | -makelib ies_lib/xpm \
5 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
6 | -endlib
7 | -makelib ies_lib/xil_defaultlib \
8 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
9 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v" \
10 | -endlib
11 | -makelib ies_lib/xil_defaultlib \
12 | glbl.v
13 | -endlib
14 |
15 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/modelsim/compile.do:
--------------------------------------------------------------------------------
1 | vlib modelsim_lib/work
2 | vlib modelsim_lib/msim
3 |
4 | vlib modelsim_lib/msim/xpm
5 | vlib modelsim_lib/msim/xil_defaultlib
6 |
7 | vmap xpm modelsim_lib/msim/xpm
8 | vmap xil_defaultlib modelsim_lib/msim/xil_defaultlib
9 |
10 | vlog -work xpm -64 -incr -sv "+incdir+../../../ipstatic" \
11 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
12 |
13 | vcom -work xpm -64 -93 \
14 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
15 |
16 | vlog -work xil_defaultlib -64 -incr "+incdir+../../../ipstatic" \
17 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
18 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v" \
19 |
20 | vlog -work xil_defaultlib \
21 | "glbl.v"
22 |
23 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/modelsim/cpuclk.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/cpuclk/modelsim/cpuclk.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/modelsim/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/modelsim/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -voptargs="+acc" -t 1ps -L xpm -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -lib xil_defaultlib xil_defaultlib.cpuclk xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {cpuclk.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/modelsim/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/questa/compile.do:
--------------------------------------------------------------------------------
1 | vlib questa_lib/work
2 | vlib questa_lib/msim
3 |
4 | vlib questa_lib/msim/xpm
5 | vlib questa_lib/msim/xil_defaultlib
6 |
7 | vmap xpm questa_lib/msim/xpm
8 | vmap xil_defaultlib questa_lib/msim/xil_defaultlib
9 |
10 | vlog -work xpm -64 -sv "+incdir+../../../ipstatic" \
11 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
12 |
13 | vcom -work xpm -64 -93 \
14 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
15 |
16 | vlog -work xil_defaultlib -64 "+incdir+../../../ipstatic" \
17 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
18 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v" \
19 |
20 | vlog -work xil_defaultlib \
21 | "glbl.v"
22 |
23 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/questa/cpuclk.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/cpuclk/questa/cpuclk.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/questa/elaborate.do:
--------------------------------------------------------------------------------
1 | vopt -64 +acc -l elaborate.log -L xpm -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -work xil_defaultlib xil_defaultlib.cpuclk xil_defaultlib.glbl -o cpuclk_opt
2 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/questa/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/questa/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -t 1ps -lib xil_defaultlib cpuclk_opt
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {cpuclk.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/questa/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/riviera/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib riviera
3 |
4 | vlib riviera/xpm
5 | vlib riviera/xil_defaultlib
6 |
7 | vmap xpm riviera/xpm
8 | vmap xil_defaultlib riviera/xil_defaultlib
9 |
10 | vlog -work xpm -sv2k12 "+incdir+../../../ipstatic" \
11 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
12 |
13 | vcom -work xpm -93 \
14 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
15 |
16 | vlog -work xil_defaultlib -v2k5 "+incdir+../../../ipstatic" \
17 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
18 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v" \
19 |
20 | vlog -work xil_defaultlib \
21 | "glbl.v"
22 |
23 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/riviera/cpuclk.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/cpuclk/riviera/cpuclk.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/riviera/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/riviera/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+cpuclk -L xpm -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.cpuclk xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {cpuclk.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/riviera/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/vcs/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/vcs/simulate.do:
--------------------------------------------------------------------------------
1 | run
2 | quit
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/xcelium/file_info.txt:
--------------------------------------------------------------------------------
1 | xpm_cdc.sv,systemverilog,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
2 | xpm_VCOMP.vhd,vhdl,xpm,D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
3 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
4 | cpuclk.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
5 | glbl.v,Verilog,xil_defaultlib,glbl.v
6 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/xcelium/run.f:
--------------------------------------------------------------------------------
1 | -makelib xcelium_lib/xpm -sv \
2 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_cdc/hdl/xpm_cdc.sv" \
3 | -endlib
4 | -makelib xcelium_lib/xpm \
5 | "D:/Applications/Vivado2020/Vivado/2019.2/data/ip/xpm/xpm_VCOMP.vhd" \
6 | -endlib
7 | -makelib xcelium_lib/xil_defaultlib \
8 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
9 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v" \
10 | -endlib
11 | -makelib xcelium_lib/xil_defaultlib \
12 | glbl.v
13 | -endlib
14 |
15 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/xsim/cmd.tcl:
--------------------------------------------------------------------------------
1 | set curr_wave [current_wave_config]
2 | if { [string length $curr_wave] == 0 } {
3 | if { [llength [get_objects]] > 0} {
4 | add_wave /
5 | set_property needs_save false [current_wave_config]
6 | } else {
7 | send_msg_id Add_Wave-1 WARNING "No top level signals found. Simulator will start without a wave window. If you want to open a wave window go to 'File->New Waveform Configuration' or type 'create_wave_config' in the TCL console."
8 | }
9 | }
10 |
11 | run -all
12 | quit
13 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/xsim/elab.opt:
--------------------------------------------------------------------------------
1 | --relax --debug typical --mt auto -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -L xpm --snapshot cpuclk xil_defaultlib.cpuclk xil_defaultlib.glbl -log elaborate.log
2 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/xsim/file_info.txt:
--------------------------------------------------------------------------------
1 | cpuclk_clk_wiz.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
2 | cpuclk.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v,incdir="$ref_dir/../../../ipstatic"incdir="../../../ipstatic"
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/cpuclk/xsim/vlog.prj:
--------------------------------------------------------------------------------
1 | verilog xil_defaultlib --include "../../../ipstatic" \
2 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk_clk_wiz.v" \
3 | "../../../../single.srcs/sources_1/ip/cpuclk/cpuclk.v" \
4 |
5 | verilog xil_defaultlib "glbl.v"
6 |
7 | nosort
8 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/activehdl/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib activehdl
3 |
4 | vlib activehdl/dist_mem_gen_v8_0_13
5 | vlib activehdl/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 activehdl/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib activehdl/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -v2k5 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -v2k5 \
14 | "../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/activehdl/data_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/data_mem/activehdl/data_mem.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/activehdl/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/activehdl/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+data_mem -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.data_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {data_mem.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/activehdl/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/ies/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/ies/run.f:
--------------------------------------------------------------------------------
1 | -makelib ies_lib/dist_mem_gen_v8_0_13 \
2 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
3 | -endlib
4 | -makelib ies_lib/xil_defaultlib \
5 | "../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
6 | -endlib
7 | -makelib ies_lib/xil_defaultlib \
8 | glbl.v
9 | -endlib
10 |
11 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/modelsim/compile.do:
--------------------------------------------------------------------------------
1 | vlib modelsim_lib/work
2 | vlib modelsim_lib/msim
3 |
4 | vlib modelsim_lib/msim/dist_mem_gen_v8_0_13
5 | vlib modelsim_lib/msim/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 modelsim_lib/msim/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib modelsim_lib/msim/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -64 -incr \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -64 -incr \
14 | "../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/modelsim/data_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/data_mem/modelsim/data_mem.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/modelsim/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/modelsim/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -voptargs="+acc" -t 1ps -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -lib xil_defaultlib xil_defaultlib.data_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {data_mem.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/modelsim/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/questa/compile.do:
--------------------------------------------------------------------------------
1 | vlib questa_lib/work
2 | vlib questa_lib/msim
3 |
4 | vlib questa_lib/msim/dist_mem_gen_v8_0_13
5 | vlib questa_lib/msim/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 questa_lib/msim/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib questa_lib/msim/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -64 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -64 \
14 | "../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/questa/data_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/data_mem/questa/data_mem.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/questa/elaborate.do:
--------------------------------------------------------------------------------
1 | vopt -64 +acc -l elaborate.log -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -work xil_defaultlib xil_defaultlib.data_mem xil_defaultlib.glbl -o data_mem_opt
2 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/questa/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/questa/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -t 1ps -lib xil_defaultlib data_mem_opt
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {data_mem.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/questa/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/riviera/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib riviera
3 |
4 | vlib riviera/dist_mem_gen_v8_0_13
5 | vlib riviera/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 riviera/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib riviera/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -v2k5 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -v2k5 \
14 | "../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/riviera/data_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/data_mem/riviera/data_mem.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/riviera/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/riviera/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+data_mem -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.data_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {data_mem.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/riviera/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/vcs/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/vcs/simulate.do:
--------------------------------------------------------------------------------
1 | run
2 | quit
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/xcelium/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | data_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/xcelium/run.f:
--------------------------------------------------------------------------------
1 | -makelib xcelium_lib/dist_mem_gen_v8_0_13 \
2 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
3 | -endlib
4 | -makelib xcelium_lib/xil_defaultlib \
5 | "../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
6 | -endlib
7 | -makelib xcelium_lib/xil_defaultlib \
8 | glbl.v
9 | -endlib
10 |
11 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/xsim/cmd.tcl:
--------------------------------------------------------------------------------
1 | set curr_wave [current_wave_config]
2 | if { [string length $curr_wave] == 0 } {
3 | if { [llength [get_objects]] > 0} {
4 | add_wave /
5 | set_property needs_save false [current_wave_config]
6 | } else {
7 | send_msg_id Add_Wave-1 WARNING "No top level signals found. Simulator will start without a wave window. If you want to open a wave window go to 'File->New Waveform Configuration' or type 'create_wave_config' in the TCL console."
8 | }
9 | }
10 |
11 | run -all
12 | quit
13 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/xsim/elab.opt:
--------------------------------------------------------------------------------
1 | --relax --debug typical --mt auto -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -L xpm --snapshot data_mem xil_defaultlib.data_mem xil_defaultlib.glbl -log elaborate.log
2 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/xsim/file_info.txt:
--------------------------------------------------------------------------------
1 | data_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v,
2 | glbl.v,Verilog,xil_defaultlib,glbl.v
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/data_mem/xsim/vlog.prj:
--------------------------------------------------------------------------------
1 | verilog xil_defaultlib \
2 | "../../../../single.srcs/sources_1/ip/data_mem/sim/data_mem.v" \
3 |
4 | verilog xil_defaultlib "glbl.v"
5 |
6 | nosort
7 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/activehdl/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib activehdl
3 |
4 | vlib activehdl/dist_mem_gen_v8_0_13
5 | vlib activehdl/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 activehdl/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib activehdl/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -v2k5 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -v2k5 \
14 | "../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/activehdl/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/activehdl/inst_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/inst_mem/activehdl/inst_mem.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/activehdl/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+inst_mem -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.inst_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {inst_mem.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/activehdl/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/ies/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/ies/run.f:
--------------------------------------------------------------------------------
1 | -makelib ies_lib/dist_mem_gen_v8_0_13 \
2 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
3 | -endlib
4 | -makelib ies_lib/xil_defaultlib \
5 | "../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
6 | -endlib
7 | -makelib ies_lib/xil_defaultlib \
8 | glbl.v
9 | -endlib
10 |
11 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/modelsim/compile.do:
--------------------------------------------------------------------------------
1 | vlib modelsim_lib/work
2 | vlib modelsim_lib/msim
3 |
4 | vlib modelsim_lib/msim/dist_mem_gen_v8_0_13
5 | vlib modelsim_lib/msim/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 modelsim_lib/msim/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib modelsim_lib/msim/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -64 -incr \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -64 -incr \
14 | "../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/modelsim/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/modelsim/inst_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/inst_mem/modelsim/inst_mem.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/modelsim/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -voptargs="+acc" -t 1ps -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -lib xil_defaultlib xil_defaultlib.inst_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {inst_mem.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/modelsim/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/questa/compile.do:
--------------------------------------------------------------------------------
1 | vlib questa_lib/work
2 | vlib questa_lib/msim
3 |
4 | vlib questa_lib/msim/dist_mem_gen_v8_0_13
5 | vlib questa_lib/msim/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 questa_lib/msim/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib questa_lib/msim/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -64 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -64 \
14 | "../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/questa/elaborate.do:
--------------------------------------------------------------------------------
1 | vopt -64 +acc -l elaborate.log -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -work xil_defaultlib xil_defaultlib.inst_mem xil_defaultlib.glbl -o inst_mem_opt
2 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/questa/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/questa/inst_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/inst_mem/questa/inst_mem.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/questa/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -f}
2 | onerror {quit -f}
3 |
4 | vsim -t 1ps -lib xil_defaultlib inst_mem_opt
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 | view signals
11 |
12 | do {inst_mem.udo}
13 |
14 | run -all
15 |
16 | quit -force
17 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/questa/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/riviera/compile.do:
--------------------------------------------------------------------------------
1 | vlib work
2 | vlib riviera
3 |
4 | vlib riviera/dist_mem_gen_v8_0_13
5 | vlib riviera/xil_defaultlib
6 |
7 | vmap dist_mem_gen_v8_0_13 riviera/dist_mem_gen_v8_0_13
8 | vmap xil_defaultlib riviera/xil_defaultlib
9 |
10 | vlog -work dist_mem_gen_v8_0_13 -v2k5 \
11 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
12 |
13 | vlog -work xil_defaultlib -v2k5 \
14 | "../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
15 |
16 |
17 | vlog -work xil_defaultlib \
18 | "glbl.v"
19 |
20 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/riviera/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/riviera/inst_mem.udo:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.ip_user_files/sim_scripts/inst_mem/riviera/inst_mem.udo
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/riviera/simulate.do:
--------------------------------------------------------------------------------
1 | onbreak {quit -force}
2 | onerror {quit -force}
3 |
4 | asim -t 1ps +access +r +m+inst_mem -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -O5 xil_defaultlib.inst_mem xil_defaultlib.glbl
5 |
6 | do {wave.do}
7 |
8 | view wave
9 | view structure
10 |
11 | do {inst_mem.udo}
12 |
13 | run -all
14 |
15 | endsim
16 |
17 | quit -force
18 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/riviera/wave.do:
--------------------------------------------------------------------------------
1 | add wave *
2 | add wave /glbl/GSR
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/vcs/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/vcs/simulate.do:
--------------------------------------------------------------------------------
1 | run
2 | quit
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/xcelium/file_info.txt:
--------------------------------------------------------------------------------
1 | dist_mem_gen_v8_0.v,verilog,dist_mem_gen_v8_0_13,../../../ipstatic/simulation/dist_mem_gen_v8_0.v,
2 | inst_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
3 | glbl.v,Verilog,xil_defaultlib,glbl.v
4 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/xcelium/run.f:
--------------------------------------------------------------------------------
1 | -makelib xcelium_lib/dist_mem_gen_v8_0_13 \
2 | "../../../ipstatic/simulation/dist_mem_gen_v8_0.v" \
3 | -endlib
4 | -makelib xcelium_lib/xil_defaultlib \
5 | "../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
6 | -endlib
7 | -makelib xcelium_lib/xil_defaultlib \
8 | glbl.v
9 | -endlib
10 |
11 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/xsim/cmd.tcl:
--------------------------------------------------------------------------------
1 | set curr_wave [current_wave_config]
2 | if { [string length $curr_wave] == 0 } {
3 | if { [llength [get_objects]] > 0} {
4 | add_wave /
5 | set_property needs_save false [current_wave_config]
6 | } else {
7 | send_msg_id Add_Wave-1 WARNING "No top level signals found. Simulator will start without a wave window. If you want to open a wave window go to 'File->New Waveform Configuration' or type 'create_wave_config' in the TCL console."
8 | }
9 | }
10 |
11 | run -all
12 | quit
13 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/xsim/elab.opt:
--------------------------------------------------------------------------------
1 | --relax --debug typical --mt auto -L dist_mem_gen_v8_0_13 -L xil_defaultlib -L unisims_ver -L unimacro_ver -L secureip -L xpm --snapshot inst_mem xil_defaultlib.inst_mem xil_defaultlib.glbl -log elaborate.log
2 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/xsim/file_info.txt:
--------------------------------------------------------------------------------
1 | inst_mem.v,verilog,xil_defaultlib,../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v,
2 | glbl.v,Verilog,xil_defaultlib,glbl.v
3 |
--------------------------------------------------------------------------------
/single/single.ip_user_files/sim_scripts/inst_mem/xsim/vlog.prj:
--------------------------------------------------------------------------------
1 | verilog xil_defaultlib \
2 | "../../../../single.srcs/sources_1/ip/inst_mem/sim/inst_mem.v" \
3 |
4 | verilog xil_defaultlib "glbl.v"
5 |
6 | nosort
7 |
--------------------------------------------------------------------------------
/single/single.runs/.jobs/vrs_config_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/single/single.runs/.jobs/vrs_config_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/single/single.runs/.jobs/vrs_config_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/.Vivado_Synthesis.queue.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/cpuclk_synth_1/.Vivado_Synthesis.queue.rst
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/.Xil/cpuclk_propImpl.xdc:
--------------------------------------------------------------------------------
1 | set_property SRC_FILE_INFO {cfile:d:/STUDY/CPU/single/single.srcs/sources_1/ip/cpuclk/cpuclk.xdc rfile:../../../single.srcs/sources_1/ip/cpuclk/cpuclk.xdc id:1 order:EARLY scoped_inst:inst} [current_design]
2 | current_instance inst
3 | set_property src_info {type:SCOPED_XDC file:1 line:57 export:INPUT save:INPUT read:READ} [current_design]
4 | set_input_jitter [get_clocks -of_objects [get_ports clk_in1]] 0.1
5 |
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/.vivado.begin.rst:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/.vivado.end.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/cpuclk_synth_1/.vivado.end.rst
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/__synthesis_is_complete__:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/cpuclk_synth_1/__synthesis_is_complete__
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/cpuclk.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/cpuclk_synth_1/cpuclk.dcp
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/cpuclk_utilization_synth.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/cpuclk_synth_1/cpuclk_utilization_synth.pb
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/htr.txt:
--------------------------------------------------------------------------------
1 | REM
2 | REM Vivado(TM)
3 | REM htr.txt: a Vivado-generated description of how-to-repeat the
4 | REM the basic steps of a run. Note that runme.bat/sh needs
5 | REM to be invoked for Vivado to track run status.
6 | REM Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | REM
8 |
9 | vivado -log cpuclk.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source cpuclk.tcl
10 |
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/rundef.js:
--------------------------------------------------------------------------------
1 | //
2 | // Vivado(TM)
3 | // rundef.js: a Vivado-generated Runs Script for WSH 5.1/5.6
4 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
5 | //
6 |
7 | var WshShell = new ActiveXObject( "WScript.Shell" );
8 | var ProcEnv = WshShell.Environment( "Process" );
9 | var PathVal = ProcEnv("PATH");
10 | if ( PathVal.length == 0 ) {
11 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;";
12 | } else {
13 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;" + PathVal;
14 | }
15 |
16 | ProcEnv("PATH") = PathVal;
17 |
18 | var RDScrFP = WScript.ScriptFullName;
19 | var RDScrN = WScript.ScriptName;
20 | var RDScrDir = RDScrFP.substr( 0, RDScrFP.length - RDScrN.length - 1 );
21 | var ISEJScriptLib = RDScrDir + "/ISEWrap.js";
22 | eval( EAInclude(ISEJScriptLib) );
23 |
24 |
25 | ISEStep( "vivado",
26 | "-log cpuclk.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source cpuclk.tcl" );
27 |
28 |
29 |
30 | function EAInclude( EAInclFilename ) {
31 | var EAFso = new ActiveXObject( "Scripting.FileSystemObject" );
32 | var EAInclFile = EAFso.OpenTextFile( EAInclFilename );
33 | var EAIFContents = EAInclFile.ReadAll();
34 | EAInclFile.Close();
35 | return EAIFContents;
36 | }
37 |
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/runme.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | rem Vivado (TM)
4 | rem runme.bat: a Vivado-generated Script
5 | rem Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
6 |
7 |
8 | set HD_SDIR=%~dp0
9 | cd /d "%HD_SDIR%"
10 | cscript /nologo /E:JScript "%HD_SDIR%\rundef.js" %*
11 |
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/runme.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | #
4 | # Vivado(TM)
5 | # runme.sh: a Vivado-generated Runs Script for UNIX
6 | # Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | #
8 |
9 | echo "This script was generated under a different operating system."
10 | echo "Please update the PATH and LD_LIBRARY_PATH variables below, before executing this script"
11 | exit
12 |
13 | if [ -z "$PATH" ]; then
14 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin
15 | else
16 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin:$PATH
17 | fi
18 | export PATH
19 |
20 | if [ -z "$LD_LIBRARY_PATH" ]; then
21 | LD_LIBRARY_PATH=
22 | else
23 | LD_LIBRARY_PATH=:$LD_LIBRARY_PATH
24 | fi
25 | export LD_LIBRARY_PATH
26 |
27 | HD_PWD='D:/STUDY/CPU/single/single.runs/cpuclk_synth_1'
28 | cd "$HD_PWD"
29 |
30 | HD_LOG=runme.log
31 | /bin/touch $HD_LOG
32 |
33 | ISEStep="./ISEWrap.sh"
34 | EAStep()
35 | {
36 | $ISEStep $HD_LOG "$@" >> $HD_LOG 2>&1
37 | if [ $? -ne 0 ]
38 | then
39 | exit
40 | fi
41 | }
42 |
43 | EAStep vivado -log cpuclk.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source cpuclk.tcl
44 |
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/vivado.jou:
--------------------------------------------------------------------------------
1 | #-----------------------------------------------------------
2 | # Vivado v2019.2 (64-bit)
3 | # SW Build 2708876 on Wed Nov 6 21:40:23 MST 2019
4 | # IP Build 2700528 on Thu Nov 7 00:09:20 MST 2019
5 | # Start of session at: Mon Sep 6 16:54:08 2021
6 | # Process ID: 5904
7 | # Current directory: D:/STUDY/CPU/single/single.runs/cpuclk_synth_1
8 | # Command line: vivado.exe -log cpuclk.vds -product Vivado -mode batch -messageDb vivado.pb -notrace -source cpuclk.tcl
9 | # Log file: D:/STUDY/CPU/single/single.runs/cpuclk_synth_1/cpuclk.vds
10 | # Journal file: D:/STUDY/CPU/single/single.runs/cpuclk_synth_1\vivado.jou
11 | #-----------------------------------------------------------
12 | source cpuclk.tcl -notrace
13 |
--------------------------------------------------------------------------------
/single/single.runs/cpuclk_synth_1/vivado.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/cpuclk_synth_1/vivado.pb
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/.Vivado_Synthesis.queue.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/data_mem_synth_1/.Vivado_Synthesis.queue.rst
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/.vivado.begin.rst:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/.vivado.end.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/data_mem_synth_1/.vivado.end.rst
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/__synthesis_is_complete__:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/data_mem_synth_1/__synthesis_is_complete__
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/data_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/data_mem_synth_1/data_mem.dcp
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/data_mem_utilization_synth.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/data_mem_synth_1/data_mem_utilization_synth.pb
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/dont_touch.xdc:
--------------------------------------------------------------------------------
1 | # This file is automatically generated.
2 | # It contains project source information necessary for synthesis and implementation.
3 |
4 | # IP: d:/STUDY/CPU/single/single.srcs/sources_1/ip/data_mem/data_mem.xci
5 | # IP: The module: 'data_mem' is the root of the design. Do not add the DONT_TOUCH constraint.
6 |
7 | # XDC: d:/STUDY/CPU/single/single.srcs/sources_1/ip/data_mem/data_mem_ooc.xdc
8 | # XDC: The top module name and the constraint reference have the same name: 'data_mem'. Do not add the DONT_TOUCH constraint.
9 | set_property DONT_TOUCH TRUE [get_cells U0 -quiet] -quiet
10 |
11 | # IP: d:/STUDY/CPU/single/single.srcs/sources_1/ip/data_mem/data_mem.xci
12 | # IP: The module: 'data_mem' is the root of the design. Do not add the DONT_TOUCH constraint.
13 |
14 | # XDC: d:/STUDY/CPU/single/single.srcs/sources_1/ip/data_mem/data_mem_ooc.xdc
15 | # XDC: The top module name and the constraint reference have the same name: 'data_mem'. Do not add the DONT_TOUCH constraint.
16 | #dup# set_property DONT_TOUCH TRUE [get_cells U0 -quiet] -quiet
17 |
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/htr.txt:
--------------------------------------------------------------------------------
1 | REM
2 | REM Vivado(TM)
3 | REM htr.txt: a Vivado-generated description of how-to-repeat the
4 | REM the basic steps of a run. Note that runme.bat/sh needs
5 | REM to be invoked for Vivado to track run status.
6 | REM Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | REM
8 |
9 | vivado -log data_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source data_mem.tcl
10 |
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/rundef.js:
--------------------------------------------------------------------------------
1 | //
2 | // Vivado(TM)
3 | // rundef.js: a Vivado-generated Runs Script for WSH 5.1/5.6
4 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
5 | //
6 |
7 | var WshShell = new ActiveXObject( "WScript.Shell" );
8 | var ProcEnv = WshShell.Environment( "Process" );
9 | var PathVal = ProcEnv("PATH");
10 | if ( PathVal.length == 0 ) {
11 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;";
12 | } else {
13 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;" + PathVal;
14 | }
15 |
16 | ProcEnv("PATH") = PathVal;
17 |
18 | var RDScrFP = WScript.ScriptFullName;
19 | var RDScrN = WScript.ScriptName;
20 | var RDScrDir = RDScrFP.substr( 0, RDScrFP.length - RDScrN.length - 1 );
21 | var ISEJScriptLib = RDScrDir + "/ISEWrap.js";
22 | eval( EAInclude(ISEJScriptLib) );
23 |
24 |
25 | ISEStep( "vivado",
26 | "-log data_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source data_mem.tcl" );
27 |
28 |
29 |
30 | function EAInclude( EAInclFilename ) {
31 | var EAFso = new ActiveXObject( "Scripting.FileSystemObject" );
32 | var EAInclFile = EAFso.OpenTextFile( EAInclFilename );
33 | var EAIFContents = EAInclFile.ReadAll();
34 | EAInclFile.Close();
35 | return EAIFContents;
36 | }
37 |
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/runme.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | rem Vivado (TM)
4 | rem runme.bat: a Vivado-generated Script
5 | rem Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
6 |
7 |
8 | set HD_SDIR=%~dp0
9 | cd /d "%HD_SDIR%"
10 | cscript /nologo /E:JScript "%HD_SDIR%\rundef.js" %*
11 |
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/runme.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | #
4 | # Vivado(TM)
5 | # runme.sh: a Vivado-generated Runs Script for UNIX
6 | # Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | #
8 |
9 | echo "This script was generated under a different operating system."
10 | echo "Please update the PATH and LD_LIBRARY_PATH variables below, before executing this script"
11 | exit
12 |
13 | if [ -z "$PATH" ]; then
14 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin
15 | else
16 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin:$PATH
17 | fi
18 | export PATH
19 |
20 | if [ -z "$LD_LIBRARY_PATH" ]; then
21 | LD_LIBRARY_PATH=
22 | else
23 | LD_LIBRARY_PATH=:$LD_LIBRARY_PATH
24 | fi
25 | export LD_LIBRARY_PATH
26 |
27 | HD_PWD='D:/STUDY/CPU/single/single.runs/data_mem_synth_1'
28 | cd "$HD_PWD"
29 |
30 | HD_LOG=runme.log
31 | /bin/touch $HD_LOG
32 |
33 | ISEStep="./ISEWrap.sh"
34 | EAStep()
35 | {
36 | $ISEStep $HD_LOG "$@" >> $HD_LOG 2>&1
37 | if [ $? -ne 0 ]
38 | then
39 | exit
40 | fi
41 | }
42 |
43 | EAStep vivado -log data_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source data_mem.tcl
44 |
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/vivado.jou:
--------------------------------------------------------------------------------
1 | #-----------------------------------------------------------
2 | # Vivado v2019.2 (64-bit)
3 | # SW Build 2708876 on Wed Nov 6 21:40:23 MST 2019
4 | # IP Build 2700528 on Thu Nov 7 00:09:20 MST 2019
5 | # Start of session at: Mon Sep 6 16:56:03 2021
6 | # Process ID: 9564
7 | # Current directory: D:/STUDY/CPU/single/single.runs/data_mem_synth_1
8 | # Command line: vivado.exe -log data_mem.vds -product Vivado -mode batch -messageDb vivado.pb -notrace -source data_mem.tcl
9 | # Log file: D:/STUDY/CPU/single/single.runs/data_mem_synth_1/data_mem.vds
10 | # Journal file: D:/STUDY/CPU/single/single.runs/data_mem_synth_1\vivado.jou
11 | #-----------------------------------------------------------
12 | source data_mem.tcl -notrace
13 |
--------------------------------------------------------------------------------
/single/single.runs/data_mem_synth_1/vivado.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/data_mem_synth_1/vivado.pb
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/.Vivado_Synthesis.queue.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/inst_mem_synth_1/.Vivado_Synthesis.queue.rst
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/.vivado.begin.rst:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/.vivado.end.rst:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/inst_mem_synth_1/.vivado.end.rst
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/__synthesis_is_complete__:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/inst_mem_synth_1/__synthesis_is_complete__
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/dont_touch.xdc:
--------------------------------------------------------------------------------
1 | # This file is automatically generated.
2 | # It contains project source information necessary for synthesis and implementation.
3 |
4 | # IP: d:/STUDY/CPU/single/single.srcs/sources_1/ip/inst_mem/inst_mem.xci
5 | # IP: The module: 'inst_mem' is the root of the design. Do not add the DONT_TOUCH constraint.
6 |
7 | # XDC: d:/STUDY/CPU/single/single.srcs/sources_1/ip/inst_mem/inst_mem_ooc.xdc
8 | # XDC: The top module name and the constraint reference have the same name: 'inst_mem'. Do not add the DONT_TOUCH constraint.
9 | set_property DONT_TOUCH TRUE [get_cells U0 -quiet] -quiet
10 |
11 | # IP: d:/STUDY/CPU/single/single.srcs/sources_1/ip/inst_mem/inst_mem.xci
12 | # IP: The module: 'inst_mem' is the root of the design. Do not add the DONT_TOUCH constraint.
13 |
14 | # XDC: d:/STUDY/CPU/single/single.srcs/sources_1/ip/inst_mem/inst_mem_ooc.xdc
15 | # XDC: The top module name and the constraint reference have the same name: 'inst_mem'. Do not add the DONT_TOUCH constraint.
16 | #dup# set_property DONT_TOUCH TRUE [get_cells U0 -quiet] -quiet
17 |
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/htr.txt:
--------------------------------------------------------------------------------
1 | REM
2 | REM Vivado(TM)
3 | REM htr.txt: a Vivado-generated description of how-to-repeat the
4 | REM the basic steps of a run. Note that runme.bat/sh needs
5 | REM to be invoked for Vivado to track run status.
6 | REM Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | REM
8 |
9 | vivado -log inst_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source inst_mem.tcl
10 |
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/inst_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/inst_mem_synth_1/inst_mem.dcp
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/inst_mem_utilization_synth.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/inst_mem_synth_1/inst_mem_utilization_synth.pb
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/rundef.js:
--------------------------------------------------------------------------------
1 | //
2 | // Vivado(TM)
3 | // rundef.js: a Vivado-generated Runs Script for WSH 5.1/5.6
4 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
5 | //
6 |
7 | var WshShell = new ActiveXObject( "WScript.Shell" );
8 | var ProcEnv = WshShell.Environment( "Process" );
9 | var PathVal = ProcEnv("PATH");
10 | if ( PathVal.length == 0 ) {
11 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;";
12 | } else {
13 | PathVal = "D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64;D:/Applications/Vivado2020/Vivado/2019.2/bin;" + PathVal;
14 | }
15 |
16 | ProcEnv("PATH") = PathVal;
17 |
18 | var RDScrFP = WScript.ScriptFullName;
19 | var RDScrN = WScript.ScriptName;
20 | var RDScrDir = RDScrFP.substr( 0, RDScrFP.length - RDScrN.length - 1 );
21 | var ISEJScriptLib = RDScrDir + "/ISEWrap.js";
22 | eval( EAInclude(ISEJScriptLib) );
23 |
24 |
25 | ISEStep( "vivado",
26 | "-log inst_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source inst_mem.tcl" );
27 |
28 |
29 |
30 | function EAInclude( EAInclFilename ) {
31 | var EAFso = new ActiveXObject( "Scripting.FileSystemObject" );
32 | var EAInclFile = EAFso.OpenTextFile( EAInclFilename );
33 | var EAIFContents = EAInclFile.ReadAll();
34 | EAInclFile.Close();
35 | return EAIFContents;
36 | }
37 |
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/runme.bat:
--------------------------------------------------------------------------------
1 | @echo off
2 |
3 | rem Vivado (TM)
4 | rem runme.bat: a Vivado-generated Script
5 | rem Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
6 |
7 |
8 | set HD_SDIR=%~dp0
9 | cd /d "%HD_SDIR%"
10 | cscript /nologo /E:JScript "%HD_SDIR%\rundef.js" %*
11 |
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/runme.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | #
4 | # Vivado(TM)
5 | # runme.sh: a Vivado-generated Runs Script for UNIX
6 | # Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
7 | #
8 |
9 | echo "This script was generated under a different operating system."
10 | echo "Please update the PATH and LD_LIBRARY_PATH variables below, before executing this script"
11 | exit
12 |
13 | if [ -z "$PATH" ]; then
14 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin
15 | else
16 | PATH=D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/bin/nt64;D:/Applications/Vivado2020/Vivado/2019.2/ids_lite/ISE/lib/nt64:D:/Applications/Vivado2020/Vivado/2019.2/bin:$PATH
17 | fi
18 | export PATH
19 |
20 | if [ -z "$LD_LIBRARY_PATH" ]; then
21 | LD_LIBRARY_PATH=
22 | else
23 | LD_LIBRARY_PATH=:$LD_LIBRARY_PATH
24 | fi
25 | export LD_LIBRARY_PATH
26 |
27 | HD_PWD='D:/STUDY/CPU/single/single.runs/inst_mem_synth_1'
28 | cd "$HD_PWD"
29 |
30 | HD_LOG=runme.log
31 | /bin/touch $HD_LOG
32 |
33 | ISEStep="./ISEWrap.sh"
34 | EAStep()
35 | {
36 | $ISEStep $HD_LOG "$@" >> $HD_LOG 2>&1
37 | if [ $? -ne 0 ]
38 | then
39 | exit
40 | fi
41 | }
42 |
43 | EAStep vivado -log inst_mem.vds -m64 -product Vivado -mode batch -messageDb vivado.pb -notrace -source inst_mem.tcl
44 |
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/vivado.jou:
--------------------------------------------------------------------------------
1 | #-----------------------------------------------------------
2 | # Vivado v2019.2 (64-bit)
3 | # SW Build 2708876 on Wed Nov 6 21:40:23 MST 2019
4 | # IP Build 2700528 on Thu Nov 7 00:09:20 MST 2019
5 | # Start of session at: Mon Sep 6 16:54:40 2021
6 | # Process ID: 17772
7 | # Current directory: D:/STUDY/CPU/single/single.runs/inst_mem_synth_1
8 | # Command line: vivado.exe -log inst_mem.vds -product Vivado -mode batch -messageDb vivado.pb -notrace -source inst_mem.tcl
9 | # Log file: D:/STUDY/CPU/single/single.runs/inst_mem_synth_1/inst_mem.vds
10 | # Journal file: D:/STUDY/CPU/single/single.runs/inst_mem_synth_1\vivado.jou
11 | #-----------------------------------------------------------
12 | source inst_mem.tcl -notrace
13 |
--------------------------------------------------------------------------------
/single/single.runs/inst_mem_synth_1/vivado.pb:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.runs/inst_mem_synth_1/vivado.pb
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/imports/single_cycle/adder_for_plus_4.v:
--------------------------------------------------------------------------------
1 |
2 |
3 | module adder_for_plus_4(
4 | input [31:0] pc_from_pc_i,
5 | output [31:0] pc_plus_4_o
6 | );
7 |
8 | reg [31:0] pc_plus_4;
9 | assign pc_plus_4_o = pc_plus_4;
10 | always @ (*)
11 | begin
12 | pc_plus_4 = pc_from_pc_i + 4;
13 | end
14 | endmodule
15 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/imports/single_cycle/algorithm_calculation.v:
--------------------------------------------------------------------------------
1 |
2 | module algorithm_calculation(
3 | input [3:0] algorithm_op_sel_i,
4 | input [31:0] operand_A_i,
5 | input [31:0] operand_B_i,
6 | output [31:0] result_from_algorithm_o
7 | );
8 |
9 |
10 |
11 | reg [31:0] result;
12 | assign result_from_algorithm_o = result;
13 | always @ (*)
14 | begin
15 | case(algorithm_op_sel_i)
16 | `ADD: result = operand_A_i + operand_B_i;
17 | `SUB: result = operand_A_i + (operand_B_i ^ 32'b1111_1111_1111_1111_1111_1111_1111_1111) + 1'b1;
18 | default:result = 0;
19 | endcase
20 | end
21 | endmodule
22 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/imports/single_cycle/branch_compare.v:
--------------------------------------------------------------------------------
1 | module branch_compare(
2 | input [31:0] data1_from_rf_i,
3 | input [31:0] data2_from_rf_i,
4 | output [1:0] cmp_result_from_branch_o,
5 | input [2:0] func3
6 | );
7 |
8 | reg [1:0] cmp_result_from_branch;
9 | assign cmp_result_from_branch_o = cmp_result_from_branch;
10 | always @ (*)
11 | begin
12 | if (func3 == 3'b110 || func3 == 3'b111) cmp_result_from_branch = ((~(data1_from_rf_i < data2_from_rf_i)) ? 2'b01 : 2'b10);
13 | else if (($signed(data1_from_rf_i)) == ($signed(data2_from_rf_i))) cmp_result_from_branch = 2'b00;
14 | else if (($signed(data1_from_rf_i)) > ($signed(data2_from_rf_i))) cmp_result_from_branch = 2'b01;
15 | else cmp_result_from_branch = 2'b10;
16 | end
17 | endmodule
18 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/imports/single_cycle/logic_calculation.v:
--------------------------------------------------------------------------------
1 |
2 | module logic_calculation(
3 | input [3:0] logic_op_sel_i,
4 | input [31:0] operand_A_i,
5 | input [31:0] operand_B_i,
6 | output [31:0] result_from_logic_o
7 | );
8 |
9 |
10 | reg [31:0] result;
11 | assign result_from_logic_o = result;
12 | always @ (*)
13 | begin
14 | case(logic_op_sel_i)
15 | `AND: result = operand_A_i & operand_B_i;
16 | `OR: result = operand_A_i | operand_B_i;
17 | `XOR: result = operand_A_i ^ operand_B_i;
18 | default:result = 0;
19 | endcase
20 | end
21 | endmodule
22 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/imports/single_cycle/mux_2.v:
--------------------------------------------------------------------------------
1 |
2 |
3 | module mux_2(
4 | input select_signal,
5 | input [31:0] input0,
6 | input [31:0] input1,
7 | output [31:0] output_data
8 | );
9 |
10 | reg [31:0] result;
11 | assign output_data = result;
12 | always @ (*)
13 | begin
14 | if(select_signal) result = input1;
15 | else result = input0;
16 | end
17 | endmodule
18 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/imports/single_cycle/mux_4.v:
--------------------------------------------------------------------------------
1 |
2 | module mux_4(
3 | input [0:1] select_signal,
4 | input [31:0] input0,
5 | input [31:0] input1,
6 | input [31:0] input2,
7 | input [31:0] input3,
8 | output [31:0] output_data
9 | );
10 | reg [31:0] result;
11 | assign output_data = result;
12 | always @ (*)
13 | begin
14 | case(select_signal)
15 | 2'b00: result = input0;
16 | 2'b01: result = input1;
17 | 2'b10: result = input2;
18 | 2'b11: result = input3;
19 | default:result = input0;
20 | endcase
21 | end
22 | endmodule
23 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/imports/single_cycle/param.v:
--------------------------------------------------------------------------------
1 | // file: param.v
2 | `ifndef CPU_PARAM
3 | `define CPU_PARAM
4 |
5 | `define ADD 4'b0000
6 | `define SUB 4'b0001
7 | `define AND 4'b0010
8 | `define OR 4'b0011
9 | `define XOR 4'b0100
10 | `define SLL 4'b0101
11 | `define SRL 4'b0110
12 | `define SRA 4'b0111
13 |
14 | `define SLT 4'b1000
15 | `define SLTU 4'b1001
16 | `define SLTI 4'b1010
17 | `define SLTIU 4'b1011
18 |
19 | `endif
20 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/imports/single_cycle/program_counter.v:
--------------------------------------------------------------------------------
1 |
2 |
3 | module program_counter(
4 | input clk_i,
5 | input reset_i,
6 | input [31:0] next_pc_i,
7 | output [31:0] pc_o
8 | );
9 | reg [31:0] pc;
10 | assign pc_o = pc;
11 |
12 | always @ (posedge clk_i or posedge reset_i)
13 | begin
14 | if (reset_i) pc <= 'hffff_fffc;
15 | else pc <= next_pc_i;
16 | end
17 |
18 |
19 | endmodule
20 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/imports/single_cycle/reg_file.v:
--------------------------------------------------------------------------------
1 |
2 | module reg_file(
3 | input clk_i,
4 | input [4:0] rR1_i,
5 | input [4:0] rR2_i,
6 | input [4:0] wR_i,
7 | input WE_i,
8 | input [31:0] wD_i,
9 | output [31:0] rD1_o,
10 | output [31:0] rD2_o
11 | );
12 |
13 | reg [31:0] register [0:31];
14 | reg [31:0] data1;
15 | reg [31:0] data2;
16 | assign rD1_o = data1;
17 | assign rD2_o = data2;
18 |
19 | // read logic
20 | always @ (*)
21 | begin
22 | data1 = register[rR1_i];
23 | data2 = register[rR2_i];
24 | end
25 |
26 | // write logic
27 | always @ (posedge clk_i)
28 | begin
29 | register[0] <= 0;
30 | if (WE_i && wR_i != 0)
31 | register[wR_i] <= wD_i;
32 | end
33 |
34 | endmodule
35 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/ip/cpuclk/cpuclk.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.srcs/sources_1/ip/cpuclk/cpuclk.dcp
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/ip/cpuclk/cpuclk_board.xdc:
--------------------------------------------------------------------------------
1 | #--------------------Physical Constraints-----------------
2 |
3 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/ip/cpuclk/cpuclk_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:54:51 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub d:/STUDY/CPU/single/single.srcs/sources_1/ip/cpuclk/cpuclk_stub.v
7 | // Design : cpuclk
8 | // Purpose : Stub declaration of top-level module interface
9 | // Device : xc7a100tfgg484-1
10 | // --------------------------------------------------------------------------------
11 |
12 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
13 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
14 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
15 | module cpuclk(clk_out1, locked, clk_in1)
16 | /* synthesis syn_black_box black_box_pad_pin="clk_out1,locked,clk_in1" */;
17 | output clk_out1;
18 | output locked;
19 | input clk_in1;
20 | endmodule
21 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/ip/cpuclk/cpuclk_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:54:51 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub d:/STUDY/CPU/single/single.srcs/sources_1/ip/cpuclk/cpuclk_stub.vhdl
7 | -- Design : cpuclk
8 | -- Purpose : Stub declaration of top-level module interface
9 | -- Device : xc7a100tfgg484-1
10 | -- --------------------------------------------------------------------------------
11 | library IEEE;
12 | use IEEE.STD_LOGIC_1164.ALL;
13 |
14 | entity cpuclk is
15 | Port (
16 | clk_out1 : out STD_LOGIC;
17 | locked : out STD_LOGIC;
18 | clk_in1 : in STD_LOGIC
19 | );
20 |
21 | end cpuclk;
22 |
23 | architecture stub of cpuclk is
24 | attribute syn_black_box : boolean;
25 | attribute black_box_pad_pin : string;
26 | attribute syn_black_box of stub : architecture is true;
27 | attribute black_box_pad_pin of stub : architecture is "clk_out1,locked,clk_in1";
28 | begin
29 | end;
30 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/ip/data_mem/data_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.srcs/sources_1/ip/data_mem/data_mem.dcp
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/ip/data_mem/data_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:57:21 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub
7 | // d:/STUDY/CPU/single/single.srcs/sources_1/ip/data_mem/data_mem_stub.v
8 | // Design : data_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module data_mem(a, d, clk, we, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],d[31:0],clk,we,spo[31:0]" */;
19 | input [13:0]a;
20 | input [31:0]d;
21 | input clk;
22 | input we;
23 | output [31:0]spo;
24 | endmodule
25 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/ip/data_mem/data_mem_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:57:21 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub
7 | -- d:/STUDY/CPU/single/single.srcs/sources_1/ip/data_mem/data_mem_stub.vhdl
8 | -- Design : data_mem
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity data_mem is
16 | Port (
17 | a : in STD_LOGIC_VECTOR ( 13 downto 0 );
18 | d : in STD_LOGIC_VECTOR ( 31 downto 0 );
19 | clk : in STD_LOGIC;
20 | we : in STD_LOGIC;
21 | spo : out STD_LOGIC_VECTOR ( 31 downto 0 )
22 | );
23 |
24 | end data_mem;
25 |
26 | architecture stub of data_mem is
27 | attribute syn_black_box : boolean;
28 | attribute black_box_pad_pin : string;
29 | attribute syn_black_box of stub : architecture is true;
30 | attribute black_box_pad_pin of stub : architecture is "a[13:0],d[31:0],clk,we,spo[31:0]";
31 | attribute x_core_info : string;
32 | attribute x_core_info of stub : architecture is "dist_mem_gen_v8_0_13,Vivado 2019.2";
33 | begin
34 | end;
35 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/ip/inst_mem/inst_mem.dcp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/RegiaYoung/RISC-V-CPU/f410822af82f772b51abdce42b78c99bbe729cba/single/single.srcs/sources_1/ip/inst_mem/inst_mem.dcp
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/ip/inst_mem/inst_mem_stub.v:
--------------------------------------------------------------------------------
1 | // Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | // --------------------------------------------------------------------------------
3 | // Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | // Date : Mon Sep 6 16:55:32 2021
5 | // Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | // Command : write_verilog -force -mode synth_stub
7 | // d:/STUDY/CPU/single/single.srcs/sources_1/ip/inst_mem/inst_mem_stub.v
8 | // Design : inst_mem
9 | // Purpose : Stub declaration of top-level module interface
10 | // Device : xc7a100tfgg484-1
11 | // --------------------------------------------------------------------------------
12 |
13 | // This empty module with port declaration file causes synthesis tools to infer a black box for IP.
14 | // The synthesis directives are for Synopsys Synplify support to prevent IO buffer insertion.
15 | // Please paste the declaration into a Verilog source file or add the file as an additional source.
16 | (* x_core_info = "dist_mem_gen_v8_0_13,Vivado 2019.2" *)
17 | module inst_mem(a, spo)
18 | /* synthesis syn_black_box black_box_pad_pin="a[13:0],spo[31:0]" */;
19 | input [13:0]a;
20 | output [31:0]spo;
21 | endmodule
22 |
--------------------------------------------------------------------------------
/single/single.srcs/sources_1/ip/inst_mem/inst_mem_stub.vhdl:
--------------------------------------------------------------------------------
1 | -- Copyright 1986-2019 Xilinx, Inc. All Rights Reserved.
2 | -- --------------------------------------------------------------------------------
3 | -- Tool Version: Vivado v.2019.2 (win64) Build 2708876 Wed Nov 6 21:40:23 MST 2019
4 | -- Date : Mon Sep 6 16:55:32 2021
5 | -- Host : DESKTOP-S2SIT85 running 64-bit major release (build 9200)
6 | -- Command : write_vhdl -force -mode synth_stub
7 | -- d:/STUDY/CPU/single/single.srcs/sources_1/ip/inst_mem/inst_mem_stub.vhdl
8 | -- Design : inst_mem
9 | -- Purpose : Stub declaration of top-level module interface
10 | -- Device : xc7a100tfgg484-1
11 | -- --------------------------------------------------------------------------------
12 | library IEEE;
13 | use IEEE.STD_LOGIC_1164.ALL;
14 |
15 | entity inst_mem is
16 | Port (
17 | a : in STD_LOGIC_VECTOR ( 13 downto 0 );
18 | spo : out STD_LOGIC_VECTOR ( 31 downto 0 )
19 | );
20 |
21 | end inst_mem;
22 |
23 | architecture stub of inst_mem is
24 | attribute syn_black_box : boolean;
25 | attribute black_box_pad_pin : string;
26 | attribute syn_black_box of stub : architecture is true;
27 | attribute black_box_pad_pin of stub : architecture is "a[13:0],spo[31:0]";
28 | attribute x_core_info : string;
29 | attribute x_core_info of stub : architecture is "dist_mem_gen_v8_0_13,Vivado 2019.2";
30 | begin
31 | end;
32 |
--------------------------------------------------------------------------------