BEQ and LD fix
This commit is contained in:
@@ -12,14 +12,14 @@
|
|||||||
</db_ref_list>
|
</db_ref_list>
|
||||||
<zoom_setting>
|
<zoom_setting>
|
||||||
<ZoomStartTime time="0fs"></ZoomStartTime>
|
<ZoomStartTime time="0fs"></ZoomStartTime>
|
||||||
<ZoomEndTime time="217363695fs"></ZoomEndTime>
|
<ZoomEndTime time="520000001fs"></ZoomEndTime>
|
||||||
<Cursor1Time time="188569000fs"></Cursor1Time>
|
<Cursor1Time time="65000000fs"></Cursor1Time>
|
||||||
</zoom_setting>
|
</zoom_setting>
|
||||||
<column_width_setting>
|
<column_width_setting>
|
||||||
<NameColumnWidth column_width="175"></NameColumnWidth>
|
<NameColumnWidth column_width="286"></NameColumnWidth>
|
||||||
<ValueColumnWidth column_width="142"></ValueColumnWidth>
|
<ValueColumnWidth column_width="209"></ValueColumnWidth>
|
||||||
</column_width_setting>
|
</column_width_setting>
|
||||||
<WVObjectSize size="23" />
|
<WVObjectSize size="31" />
|
||||||
<wvobject fp_name="/CPU9bits_tb/clk" type="logic">
|
<wvobject fp_name="/CPU9bits_tb/clk" type="logic">
|
||||||
<obj_property name="ElementShortName">clk</obj_property>
|
<obj_property name="ElementShortName">clk</obj_property>
|
||||||
<obj_property name="ObjectShortName">clk</obj_property>
|
<obj_property name="ObjectShortName">clk</obj_property>
|
||||||
@@ -35,39 +35,10 @@
|
|||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/instr" type="array">
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/instr" type="array">
|
||||||
<obj_property name="ElementShortName">instr[8:0]</obj_property>
|
<obj_property name="ElementShortName">instr[8:0]</obj_property>
|
||||||
<obj_property name="ObjectShortName">instr[8:0]</obj_property>
|
<obj_property name="ObjectShortName">instr[8:0]</obj_property>
|
||||||
<obj_property name="isExpanded"></obj_property>
|
|
||||||
</wvobject>
|
</wvobject>
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/RF/enable" type="logic">
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/FetchU/AddrOut" type="array">
|
||||||
<obj_property name="ElementShortName">enable</obj_property>
|
<obj_property name="ElementShortName">AddrOut[8:0]</obj_property>
|
||||||
<obj_property name="ObjectShortName">enable</obj_property>
|
<obj_property name="ObjectShortName">AddrOut[8:0]</obj_property>
|
||||||
</wvobject>
|
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/RF/write_index" type="array">
|
|
||||||
<obj_property name="ElementShortName">write_index[1:0]</obj_property>
|
|
||||||
<obj_property name="ObjectShortName">write_index[1:0]</obj_property>
|
|
||||||
</wvobject>
|
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/RF/op0_idx" type="array">
|
|
||||||
<obj_property name="ElementShortName">op0_idx[1:0]</obj_property>
|
|
||||||
<obj_property name="ObjectShortName">op0_idx[1:0]</obj_property>
|
|
||||||
</wvobject>
|
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/RF/op1_idx" type="array">
|
|
||||||
<obj_property name="ElementShortName">op1_idx[1:0]</obj_property>
|
|
||||||
<obj_property name="ObjectShortName">op1_idx[1:0]</obj_property>
|
|
||||||
</wvobject>
|
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/RF/write_data" type="array">
|
|
||||||
<obj_property name="ElementShortName">write_data[8:0]</obj_property>
|
|
||||||
<obj_property name="ObjectShortName">write_data[8:0]</obj_property>
|
|
||||||
</wvobject>
|
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/RF/op0" type="array">
|
|
||||||
<obj_property name="ElementShortName">op0[8:0]</obj_property>
|
|
||||||
<obj_property name="ObjectShortName">op0[8:0]</obj_property>
|
|
||||||
</wvobject>
|
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/RF/op1" type="array">
|
|
||||||
<obj_property name="ElementShortName">op1[8:0]</obj_property>
|
|
||||||
<obj_property name="ObjectShortName">op1[8:0]</obj_property>
|
|
||||||
</wvobject>
|
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/RF/decOut" type="array">
|
|
||||||
<obj_property name="ElementShortName">decOut[3:0]</obj_property>
|
|
||||||
<obj_property name="ObjectShortName">decOut[3:0]</obj_property>
|
|
||||||
</wvobject>
|
</wvobject>
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/RF/r0_out" type="array">
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/RF/r0_out" type="array">
|
||||||
<obj_property name="ElementShortName">r0_out[8:0]</obj_property>
|
<obj_property name="ElementShortName">r0_out[8:0]</obj_property>
|
||||||
@@ -85,6 +56,54 @@
|
|||||||
<obj_property name="ElementShortName">r3_out[8:0]</obj_property>
|
<obj_property name="ElementShortName">r3_out[8:0]</obj_property>
|
||||||
<obj_property name="ObjectShortName">r3_out[8:0]</obj_property>
|
<obj_property name="ObjectShortName">r3_out[8:0]</obj_property>
|
||||||
</wvobject>
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/Bank/r0_out" type="array">
|
||||||
|
<obj_property name="ElementShortName">r0_out[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">r0_out[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/Bank/r1_out" type="array">
|
||||||
|
<obj_property name="ElementShortName">r1_out[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">r1_out[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/Bank/r2_out" type="array">
|
||||||
|
<obj_property name="ElementShortName">r2_out[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">r2_out[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/Bank/r3_out" type="array">
|
||||||
|
<obj_property name="ElementShortName">r3_out[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">r3_out[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/mux4/switch" type="logic">
|
||||||
|
<obj_property name="ElementShortName">switch</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">switch</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/dM/writeEnable" type="logic">
|
||||||
|
<obj_property name="ElementShortName">writeEnable</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">writeEnable</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/dM/address" type="array">
|
||||||
|
<obj_property name="ElementShortName">address[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">address[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/dM/writeData" type="array">
|
||||||
|
<obj_property name="ElementShortName">writeData[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">writeData[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/dM/memory" type="array">
|
||||||
|
<obj_property name="ElementShortName">memory[15:0][8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">memory[15:0][8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/dM/readData" type="array">
|
||||||
|
<obj_property name="ElementShortName">readData[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">readData[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/alu/operand0" type="array">
|
||||||
|
<obj_property name="ElementShortName">operand0[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">operand0[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/alu/result_K" type="array">
|
||||||
|
<obj_property name="ElementShortName">result_K[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">result_K[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/FetchU/op_idx" type="logic">
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/FetchU/op_idx" type="logic">
|
||||||
<obj_property name="ElementShortName">op_idx</obj_property>
|
<obj_property name="ElementShortName">op_idx</obj_property>
|
||||||
<obj_property name="ObjectShortName">op_idx</obj_property>
|
<obj_property name="ObjectShortName">op_idx</obj_property>
|
||||||
@@ -93,10 +112,6 @@
|
|||||||
<obj_property name="ElementShortName">AddrIn[8:0]</obj_property>
|
<obj_property name="ElementShortName">AddrIn[8:0]</obj_property>
|
||||||
<obj_property name="ObjectShortName">AddrIn[8:0]</obj_property>
|
<obj_property name="ObjectShortName">AddrIn[8:0]</obj_property>
|
||||||
</wvobject>
|
</wvobject>
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/FetchU/AddrOut" type="array">
|
|
||||||
<obj_property name="ElementShortName">AddrOut[8:0]</obj_property>
|
|
||||||
<obj_property name="ObjectShortName">AddrOut[8:0]</obj_property>
|
|
||||||
</wvobject>
|
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/FetchU/progC_out" type="array">
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/FetchU/progC_out" type="array">
|
||||||
<obj_property name="ElementShortName">progC_out[8:0]</obj_property>
|
<obj_property name="ElementShortName">progC_out[8:0]</obj_property>
|
||||||
<obj_property name="ObjectShortName">progC_out[8:0]</obj_property>
|
<obj_property name="ObjectShortName">progC_out[8:0]</obj_property>
|
||||||
@@ -109,6 +124,22 @@
|
|||||||
<obj_property name="ElementShortName">cout</obj_property>
|
<obj_property name="ElementShortName">cout</obj_property>
|
||||||
<obj_property name="ObjectShortName">cout</obj_property>
|
<obj_property name="ObjectShortName">cout</obj_property>
|
||||||
</wvobject>
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/alu/result" type="array">
|
||||||
|
<obj_property name="ElementShortName">result[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">result[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/alu/mux0/switch" type="array">
|
||||||
|
<obj_property name="ElementShortName">switch[3:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">switch[3:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/alu/mux0/K" type="array">
|
||||||
|
<obj_property name="ElementShortName">K[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">K[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/alu/mux0/out" type="array">
|
||||||
|
<obj_property name="ElementShortName">out[8:0]</obj_property>
|
||||||
|
<obj_property name="ObjectShortName">out[8:0]</obj_property>
|
||||||
|
</wvobject>
|
||||||
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/CU/FU" type="array">
|
<wvobject fp_name="/CPU9bits_tb/CPU9bits0/CU/FU" type="array">
|
||||||
<obj_property name="ElementShortName">FU[2:0]</obj_property>
|
<obj_property name="ElementShortName">FU[2:0]</obj_property>
|
||||||
<obj_property name="ObjectShortName">FU[2:0]</obj_property>
|
<obj_property name="ObjectShortName">FU[2:0]</obj_property>
|
||||||
|
|||||||
@@ -1,14 +1,14 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<GenRun Id="impl_1" LaunchPart="xc7k160tifbg484-2L" LaunchTime="1553093609">
|
<GenRun Id="impl_1" LaunchPart="xc7k160tifbg484-2L" LaunchTime="1553093609">
|
||||||
<File Type="BITSTR-BMM" Name="CPU9bits_bd.bmm"/>
|
|
||||||
<File Type="ROUTE-PWR" Name="CPU9bits_power_routed.rpt"/>
|
<File Type="ROUTE-PWR" Name="CPU9bits_power_routed.rpt"/>
|
||||||
<File Type="PA-TCL" Name="CPU9bits.tcl"/>
|
<File Type="PA-TCL" Name="CPU9bits.tcl"/>
|
||||||
<File Type="OPT-DCP" Name="CPU9bits_opt.dcp"/>
|
<File Type="BITSTR-BMM" Name="CPU9bits_bd.bmm"/>
|
||||||
<File Type="ROUTE-PWR-SUM" Name="CPU9bits_power_summary_routed.pb"/>
|
<File Type="ROUTE-PWR-SUM" Name="CPU9bits_power_summary_routed.pb"/>
|
||||||
<File Type="REPORTS-TCL" Name="CPU9bits_reports.tcl"/>
|
<File Type="REPORTS-TCL" Name="CPU9bits_reports.tcl"/>
|
||||||
|
<File Type="OPT-DCP" Name="CPU9bits_opt.dcp"/>
|
||||||
<File Type="OPT-HWDEF" Name="CPU9bits.hwdef"/>
|
<File Type="OPT-HWDEF" Name="CPU9bits.hwdef"/>
|
||||||
<File Type="BG-BGN" Name="CPU9bits.bgn"/>
|
|
||||||
<File Type="PWROPT-DCP" Name="CPU9bits_pwropt.dcp"/>
|
<File Type="PWROPT-DCP" Name="CPU9bits_pwropt.dcp"/>
|
||||||
|
<File Type="BG-BGN" Name="CPU9bits.bgn"/>
|
||||||
<File Type="PLACE-DCP" Name="CPU9bits_placed.dcp"/>
|
<File Type="PLACE-DCP" Name="CPU9bits_placed.dcp"/>
|
||||||
<File Type="PLACE-PRE-SIMILARITY" Name="CPU9bits_incremental_reuse_pre_placed.rpt"/>
|
<File Type="PLACE-PRE-SIMILARITY" Name="CPU9bits_incremental_reuse_pre_placed.rpt"/>
|
||||||
<File Type="POSTPLACE-PWROPT-DCP" Name="CPU9bits_postplace_pwropt.dcp"/>
|
<File Type="POSTPLACE-PWROPT-DCP" Name="CPU9bits_postplace_pwropt.dcp"/>
|
||||||
@@ -18,12 +18,12 @@
|
|||||||
<File Type="ROUTE-ERROR-DCP" Name="CPU9bits_routed_error.dcp"/>
|
<File Type="ROUTE-ERROR-DCP" Name="CPU9bits_routed_error.dcp"/>
|
||||||
<File Type="ROUTE-DCP" Name="CPU9bits_routed.dcp"/>
|
<File Type="ROUTE-DCP" Name="CPU9bits_routed.dcp"/>
|
||||||
<File Type="ROUTE-BLACKBOX-DCP" Name="CPU9bits_routed_bb.dcp"/>
|
<File Type="ROUTE-BLACKBOX-DCP" Name="CPU9bits_routed_bb.dcp"/>
|
||||||
<File Type="ROUTE-DRC-RPX" Name="CPU9bits_drc_routed.rpx"/>
|
|
||||||
<File Type="BITSTR-LTX" Name="CPU9bits.ltx"/>
|
<File Type="BITSTR-LTX" Name="CPU9bits.ltx"/>
|
||||||
<File Type="ROUTE-METHODOLOGY-DRC" Name="CPU9bits_methodology_drc_routed.rpt"/>
|
<File Type="ROUTE-DRC-RPX" Name="CPU9bits_drc_routed.rpx"/>
|
||||||
<File Type="BITSTR-MMI" Name="CPU9bits.mmi"/>
|
<File Type="BITSTR-MMI" Name="CPU9bits.mmi"/>
|
||||||
<File Type="ROUTE-METHODOLOGY-DRC-PB" Name="CPU9bits_methodology_drc_routed.pb"/>
|
<File Type="ROUTE-METHODOLOGY-DRC" Name="CPU9bits_methodology_drc_routed.rpt"/>
|
||||||
<File Type="BITSTR-SYSDEF" Name="CPU9bits.sysdef"/>
|
<File Type="BITSTR-SYSDEF" Name="CPU9bits.sysdef"/>
|
||||||
|
<File Type="ROUTE-METHODOLOGY-DRC-PB" Name="CPU9bits_methodology_drc_routed.pb"/>
|
||||||
<File Type="ROUTE-TIMING-PB" Name="CPU9bits_timing_summary_routed.pb"/>
|
<File Type="ROUTE-TIMING-PB" Name="CPU9bits_timing_summary_routed.pb"/>
|
||||||
<File Type="POSTROUTE-PHYSOPT-DCP" Name="CPU9bits_postroute_physopt.dcp"/>
|
<File Type="POSTROUTE-PHYSOPT-DCP" Name="CPU9bits_postroute_physopt.dcp"/>
|
||||||
<File Type="POSTROUTE-PHYSOPT-BLACKBOX-DCP" Name="CPU9bits_postroute_physopt_bb.dcp"/>
|
<File Type="POSTROUTE-PHYSOPT-BLACKBOX-DCP" Name="CPU9bits_postroute_physopt_bb.dcp"/>
|
||||||
@@ -31,8 +31,8 @@
|
|||||||
<File Type="BITSTR-RBT" Name="CPU9bits.rbt"/>
|
<File Type="BITSTR-RBT" Name="CPU9bits.rbt"/>
|
||||||
<File Type="BITSTR-NKY" Name="CPU9bits.nky"/>
|
<File Type="BITSTR-NKY" Name="CPU9bits.nky"/>
|
||||||
<File Type="BG-DRC" Name="CPU9bits.drc"/>
|
<File Type="BG-DRC" Name="CPU9bits.drc"/>
|
||||||
<File Type="ROUTE-CLK" Name="CPU9bits_clock_utilization_routed.rpt"/>
|
|
||||||
<File Type="RDI-RDI" Name="CPU9bits.vdi"/>
|
<File Type="RDI-RDI" Name="CPU9bits.vdi"/>
|
||||||
|
<File Type="ROUTE-CLK" Name="CPU9bits_clock_utilization_routed.rpt"/>
|
||||||
<File Type="WBT-USG" Name="usage_statistics_webtalk.html"/>
|
<File Type="WBT-USG" Name="usage_statistics_webtalk.html"/>
|
||||||
<File Type="OPT-DRC" Name="CPU9bits_drc_opted.rpt"/>
|
<File Type="OPT-DRC" Name="CPU9bits_drc_opted.rpt"/>
|
||||||
<File Type="PLACE-UTIL" Name="CPU9bits_utilization_placed.rpt"/>
|
<File Type="PLACE-UTIL" Name="CPU9bits_utilization_placed.rpt"/>
|
||||||
|
|||||||
Binary file not shown.
@@ -46,83 +46,85 @@ typedef void (*funcp)(char *, char *);
|
|||||||
extern int main(int, char**);
|
extern int main(int, char**);
|
||||||
extern void execute_2(char*, char *);
|
extern void execute_2(char*, char *);
|
||||||
extern void execute_3(char*, char *);
|
extern void execute_3(char*, char *);
|
||||||
extern void execute_163(char*, char *);
|
extern void execute_176(char*, char *);
|
||||||
extern void execute_375(char*, char *);
|
extern void execute_412(char*, char *);
|
||||||
extern void execute_376(char*, char *);
|
extern void execute_413(char*, char *);
|
||||||
extern void execute_354(char*, char *);
|
extern void execute_387(char*, char *);
|
||||||
extern void vlog_const_rhs_process_execute_0_fast_no_reg_no_agg(char*, char*, char*);
|
extern void vlog_const_rhs_process_execute_0_fast_no_reg_no_agg(char*, char*, char*);
|
||||||
extern void execute_356(char*, char *);
|
extern void execute_389(char*, char *);
|
||||||
extern void execute_358(char*, char *);
|
extern void execute_390(char*, char *);
|
||||||
extern void execute_359(char*, char *);
|
extern void execute_392(char*, char *);
|
||||||
extern void execute_360(char*, char *);
|
extern void execute_393(char*, char *);
|
||||||
extern void execute_361(char*, char *);
|
extern void execute_394(char*, char *);
|
||||||
extern void execute_362(char*, char *);
|
extern void execute_395(char*, char *);
|
||||||
extern void execute_363(char*, char *);
|
extern void execute_396(char*, char *);
|
||||||
extern void execute_364(char*, char *);
|
extern void execute_397(char*, char *);
|
||||||
extern void execute_365(char*, char *);
|
extern void execute_398(char*, char *);
|
||||||
extern void execute_366(char*, char *);
|
extern void execute_399(char*, char *);
|
||||||
extern void execute_367(char*, char *);
|
extern void execute_400(char*, char *);
|
||||||
extern void execute_368(char*, char *);
|
extern void execute_401(char*, char *);
|
||||||
extern void execute_369(char*, char *);
|
extern void execute_402(char*, char *);
|
||||||
extern void execute_370(char*, char *);
|
extern void execute_403(char*, char *);
|
||||||
extern void execute_371(char*, char *);
|
extern void execute_404(char*, char *);
|
||||||
extern void execute_372(char*, char *);
|
extern void execute_405(char*, char *);
|
||||||
extern void execute_373(char*, char *);
|
extern void execute_406(char*, char *);
|
||||||
extern void execute_374(char*, char *);
|
extern void execute_407(char*, char *);
|
||||||
|
extern void execute_408(char*, char *);
|
||||||
|
extern void execute_409(char*, char *);
|
||||||
|
extern void execute_410(char*, char *);
|
||||||
|
extern void execute_411(char*, char *);
|
||||||
extern void execute_6(char*, char *);
|
extern void execute_6(char*, char *);
|
||||||
extern void execute_7(char*, char *);
|
extern void execute_7(char*, char *);
|
||||||
extern void execute_9(char*, char *);
|
extern void execute_9(char*, char *);
|
||||||
extern void execute_10(char*, char *);
|
extern void execute_10(char*, char *);
|
||||||
extern void execute_168(char*, char *);
|
extern void execute_181(char*, char *);
|
||||||
extern void execute_169(char*, char *);
|
extern void execute_182(char*, char *);
|
||||||
extern void execute_170(char*, char *);
|
extern void execute_183(char*, char *);
|
||||||
extern void execute_171(char*, char *);
|
extern void execute_184(char*, char *);
|
||||||
extern void execute_172(char*, char *);
|
extern void execute_185(char*, char *);
|
||||||
extern void execute_173(char*, char *);
|
extern void execute_186(char*, char *);
|
||||||
extern void execute_174(char*, char *);
|
extern void execute_187(char*, char *);
|
||||||
extern void execute_13(char*, char *);
|
extern void execute_13(char*, char *);
|
||||||
extern void execute_15(char*, char *);
|
extern void execute_15(char*, char *);
|
||||||
extern void execute_23(char*, char *);
|
extern void execute_23(char*, char *);
|
||||||
extern void execute_201(char*, char *);
|
extern void execute_214(char*, char *);
|
||||||
extern void execute_203(char*, char *);
|
extern void execute_216(char*, char *);
|
||||||
extern void execute_204(char*, char *);
|
extern void execute_217(char*, char *);
|
||||||
extern void execute_182(char*, char *);
|
extern void execute_195(char*, char *);
|
||||||
extern void execute_183(char*, char *);
|
extern void execute_196(char*, char *);
|
||||||
extern void execute_55(char*, char *);
|
extern void execute_55(char*, char *);
|
||||||
extern void execute_313(char*, char *);
|
extern void execute_326(char*, char *);
|
||||||
extern void execute_314(char*, char *);
|
extern void execute_327(char*, char *);
|
||||||
extern void execute_242(char*, char *);
|
extern void execute_255(char*, char *);
|
||||||
extern void execute_223(char*, char *);
|
extern void execute_236(char*, char *);
|
||||||
extern void execute_263(char*, char *);
|
extern void execute_276(char*, char *);
|
||||||
extern void execute_264(char*, char *);
|
extern void execute_277(char*, char *);
|
||||||
extern void execute_265(char*, char *);
|
extern void execute_278(char*, char *);
|
||||||
extern void execute_266(char*, char *);
|
extern void execute_279(char*, char *);
|
||||||
extern void execute_267(char*, char *);
|
extern void execute_280(char*, char *);
|
||||||
extern void execute_268(char*, char *);
|
extern void execute_281(char*, char *);
|
||||||
extern void execute_310(char*, char *);
|
extern void execute_323(char*, char *);
|
||||||
extern void execute_311(char*, char *);
|
extern void execute_324(char*, char *);
|
||||||
extern void execute_123(char*, char *);
|
extern void execute_123(char*, char *);
|
||||||
extern void execute_125(char*, char *);
|
extern void execute_125(char*, char *);
|
||||||
extern void execute_333(char*, char *);
|
extern void execute_367(char*, char *);
|
||||||
extern void execute_334(char*, char *);
|
extern void execute_156(char*, char *);
|
||||||
extern void execute_143(char*, char *);
|
extern void execute_178(char*, char *);
|
||||||
extern void execute_353(char*, char *);
|
extern void execute_179(char*, char *);
|
||||||
extern void execute_165(char*, char *);
|
extern void execute_180(char*, char *);
|
||||||
extern void execute_166(char*, char *);
|
extern void execute_414(char*, char *);
|
||||||
extern void execute_167(char*, char *);
|
extern void execute_415(char*, char *);
|
||||||
extern void execute_377(char*, char *);
|
extern void execute_416(char*, char *);
|
||||||
extern void execute_378(char*, char *);
|
extern void execute_417(char*, char *);
|
||||||
extern void execute_379(char*, char *);
|
extern void execute_418(char*, char *);
|
||||||
extern void execute_380(char*, char *);
|
|
||||||
extern void execute_381(char*, char *);
|
|
||||||
extern void vlog_transfunc_eventcallback(char*, char*, unsigned, unsigned, unsigned, char *);
|
extern void vlog_transfunc_eventcallback(char*, char*, unsigned, unsigned, unsigned, char *);
|
||||||
extern void transaction_56(char*, char*, unsigned, unsigned, unsigned);
|
extern void transaction_60(char*, char*, unsigned, unsigned, unsigned);
|
||||||
funcp funcTab[73] = {(funcp)execute_2, (funcp)execute_3, (funcp)execute_163, (funcp)execute_375, (funcp)execute_376, (funcp)execute_354, (funcp)vlog_const_rhs_process_execute_0_fast_no_reg_no_agg, (funcp)execute_356, (funcp)execute_358, (funcp)execute_359, (funcp)execute_360, (funcp)execute_361, (funcp)execute_362, (funcp)execute_363, (funcp)execute_364, (funcp)execute_365, (funcp)execute_366, (funcp)execute_367, (funcp)execute_368, (funcp)execute_369, (funcp)execute_370, (funcp)execute_371, (funcp)execute_372, (funcp)execute_373, (funcp)execute_374, (funcp)execute_6, (funcp)execute_7, (funcp)execute_9, (funcp)execute_10, (funcp)execute_168, (funcp)execute_169, (funcp)execute_170, (funcp)execute_171, (funcp)execute_172, (funcp)execute_173, (funcp)execute_174, (funcp)execute_13, (funcp)execute_15, (funcp)execute_23, (funcp)execute_201, (funcp)execute_203, (funcp)execute_204, (funcp)execute_182, (funcp)execute_183, (funcp)execute_55, (funcp)execute_313, (funcp)execute_314, (funcp)execute_242, (funcp)execute_223, (funcp)execute_263, (funcp)execute_264, (funcp)execute_265, (funcp)execute_266, (funcp)execute_267, (funcp)execute_268, (funcp)execute_310, (funcp)execute_311, (funcp)execute_123, (funcp)execute_125, (funcp)execute_333, (funcp)execute_334, (funcp)execute_143, (funcp)execute_353, (funcp)execute_165, (funcp)execute_166, (funcp)execute_167, (funcp)execute_377, (funcp)execute_378, (funcp)execute_379, (funcp)execute_380, (funcp)execute_381, (funcp)vlog_transfunc_eventcallback, (funcp)transaction_56};
|
funcp funcTab[75] = {(funcp)execute_2, (funcp)execute_3, (funcp)execute_176, (funcp)execute_412, (funcp)execute_413, (funcp)execute_387, (funcp)vlog_const_rhs_process_execute_0_fast_no_reg_no_agg, (funcp)execute_389, (funcp)execute_390, (funcp)execute_392, (funcp)execute_393, (funcp)execute_394, (funcp)execute_395, (funcp)execute_396, (funcp)execute_397, (funcp)execute_398, (funcp)execute_399, (funcp)execute_400, (funcp)execute_401, (funcp)execute_402, (funcp)execute_403, (funcp)execute_404, (funcp)execute_405, (funcp)execute_406, (funcp)execute_407, (funcp)execute_408, (funcp)execute_409, (funcp)execute_410, (funcp)execute_411, (funcp)execute_6, (funcp)execute_7, (funcp)execute_9, (funcp)execute_10, (funcp)execute_181, (funcp)execute_182, (funcp)execute_183, (funcp)execute_184, (funcp)execute_185, (funcp)execute_186, (funcp)execute_187, (funcp)execute_13, (funcp)execute_15, (funcp)execute_23, (funcp)execute_214, (funcp)execute_216, (funcp)execute_217, (funcp)execute_195, (funcp)execute_196, (funcp)execute_55, (funcp)execute_326, (funcp)execute_327, (funcp)execute_255, (funcp)execute_236, (funcp)execute_276, (funcp)execute_277, (funcp)execute_278, (funcp)execute_279, (funcp)execute_280, (funcp)execute_281, (funcp)execute_323, (funcp)execute_324, (funcp)execute_123, (funcp)execute_125, (funcp)execute_367, (funcp)execute_156, (funcp)execute_178, (funcp)execute_179, (funcp)execute_180, (funcp)execute_414, (funcp)execute_415, (funcp)execute_416, (funcp)execute_417, (funcp)execute_418, (funcp)vlog_transfunc_eventcallback, (funcp)transaction_60};
|
||||||
const int NumRelocateId= 73;
|
const int NumRelocateId= 75;
|
||||||
|
|
||||||
void relocate(char *dp)
|
void relocate(char *dp)
|
||||||
{
|
{
|
||||||
iki_relocate(dp, "xsim.dir/CPU9bits_tb_behav/xsim.reloc", (void **)funcTab, 73);
|
iki_relocate(dp, "xsim.dir/CPU9bits_tb_behav/xsim.reloc", (void **)funcTab, 75);
|
||||||
|
|
||||||
/*Populate the transaction function pointer field in the whole net structure */
|
/*Populate the transaction function pointer field in the whole net structure */
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
webtalk_init -webtalk_dir C:/Users/ecelab/ECE3570-Lab/lab2CA.sim/sim_1/behav/xsim/xsim.dir/CPU9bits_tb_behav/webtalk/
|
webtalk_init -webtalk_dir C:/Users/ecelab/ECE3570-Lab/lab2CA.sim/sim_1/behav/xsim/xsim.dir/CPU9bits_tb_behav/webtalk/
|
||||||
webtalk_register_client -client project
|
webtalk_register_client -client project
|
||||||
webtalk_add_data -client project -key date_generated -value "Sun Mar 24 14:11:52 2019" -context "software_version_and_target_device"
|
webtalk_add_data -client project -key date_generated -value "Sun Mar 24 16:01:00 2019" -context "software_version_and_target_device"
|
||||||
webtalk_add_data -client project -key product_version -value "XSIM v2018.3 (64-bit)" -context "software_version_and_target_device"
|
webtalk_add_data -client project -key product_version -value "XSIM v2018.3 (64-bit)" -context "software_version_and_target_device"
|
||||||
webtalk_add_data -client project -key build_version -value "2405991" -context "software_version_and_target_device"
|
webtalk_add_data -client project -key build_version -value "2405991" -context "software_version_and_target_device"
|
||||||
webtalk_add_data -client project -key os_platform -value "WIN64" -context "software_version_and_target_device"
|
webtalk_add_data -client project -key os_platform -value "WIN64" -context "software_version_and_target_device"
|
||||||
@@ -14,7 +14,7 @@ webtalk_add_data -client project -key target_package -value "not_applicable" -co
|
|||||||
webtalk_add_data -client project -key target_speed -value "not_applicable" -context "software_version_and_target_device"
|
webtalk_add_data -client project -key target_speed -value "not_applicable" -context "software_version_and_target_device"
|
||||||
webtalk_add_data -client project -key random_id -value "4e917e26-7591-4435-9135-15bd446b0238" -context "software_version_and_target_device"
|
webtalk_add_data -client project -key random_id -value "4e917e26-7591-4435-9135-15bd446b0238" -context "software_version_and_target_device"
|
||||||
webtalk_add_data -client project -key project_id -value "0a5803efda44405bb28bbf43ba22e808" -context "software_version_and_target_device"
|
webtalk_add_data -client project -key project_id -value "0a5803efda44405bb28bbf43ba22e808" -context "software_version_and_target_device"
|
||||||
webtalk_add_data -client project -key project_iteration -value "60" -context "software_version_and_target_device"
|
webtalk_add_data -client project -key project_iteration -value "96" -context "software_version_and_target_device"
|
||||||
webtalk_add_data -client project -key os_name -value "Microsoft Windows 8 or later , 64-bit" -context "user_environment"
|
webtalk_add_data -client project -key os_name -value "Microsoft Windows 8 or later , 64-bit" -context "user_environment"
|
||||||
webtalk_add_data -client project -key os_release -value "major release (build 9200)" -context "user_environment"
|
webtalk_add_data -client project -key os_release -value "major release (build 9200)" -context "user_environment"
|
||||||
webtalk_add_data -client project -key cpu_name -value "Intel(R) Xeon(R) CPU E5-1620 v3 @ 3.50GHz" -context "user_environment"
|
webtalk_add_data -client project -key cpu_name -value "Intel(R) Xeon(R) CPU E5-1620 v3 @ 3.50GHz" -context "user_environment"
|
||||||
@@ -22,11 +22,21 @@ webtalk_add_data -client project -key cpu_speed -value "3492 MHz" -context "user
|
|||||||
webtalk_add_data -client project -key total_processors -value "1" -context "user_environment"
|
webtalk_add_data -client project -key total_processors -value "1" -context "user_environment"
|
||||||
webtalk_add_data -client project -key system_ram -value "34.000 GB" -context "user_environment"
|
webtalk_add_data -client project -key system_ram -value "34.000 GB" -context "user_environment"
|
||||||
webtalk_register_client -client xsim
|
webtalk_register_client -client xsim
|
||||||
webtalk_add_data -client xsim -key Command -value "xsim" -context "xsim\\command_line_options"
|
webtalk_add_data -client xsim -key File_Counter -value "9" -context "xsim\\command_line_options"
|
||||||
webtalk_add_data -client xsim -key trace_waveform -value "true" -context "xsim\\usage"
|
webtalk_add_data -client xsim -key Command -value "xelab" -context "xsim\\command_line_options"
|
||||||
webtalk_add_data -client xsim -key runtime -value "515 ns" -context "xsim\\usage"
|
webtalk_add_data -client xsim -key Vhdl2008 -value "false" -context "xsim\\command_line_options"
|
||||||
webtalk_add_data -client xsim -key iteration -value "0" -context "xsim\\usage"
|
webtalk_add_data -client xsim -key GenDLL -value "false" -context "xsim\\command_line_options"
|
||||||
webtalk_add_data -client xsim -key Simulation_Time -value "0.08_sec" -context "xsim\\usage"
|
webtalk_add_data -client xsim -key SDFModeling -value "false" -context "xsim\\command_line_options"
|
||||||
webtalk_add_data -client xsim -key Simulation_Memory -value "6364_KB" -context "xsim\\usage"
|
webtalk_add_data -client xsim -key HWCosim -value "false" -context "xsim\\command_line_options"
|
||||||
webtalk_transmit -clientid 346626644 -regid "174150793_174150794_210688225_140" -xml C:/Users/ecelab/ECE3570-Lab/lab2CA.sim/sim_1/behav/xsim/xsim.dir/CPU9bits_tb_behav/webtalk/usage_statistics_ext_xsim.xml -html C:/Users/ecelab/ECE3570-Lab/lab2CA.sim/sim_1/behav/xsim/xsim.dir/CPU9bits_tb_behav/webtalk/usage_statistics_ext_xsim.html -wdm C:/Users/ecelab/ECE3570-Lab/lab2CA.sim/sim_1/behav/xsim/xsim.dir/CPU9bits_tb_behav/webtalk/usage_statistics_ext_xsim.wdm -intro "<H3>XSIM Usage Report</H3><BR>"
|
webtalk_add_data -client xsim -key DPI_Used -value "false" -context "xsim\\command_line_options"
|
||||||
|
webtalk_add_data -client xsim -key Debug -value "typical" -context "xsim\\command_line_options"
|
||||||
|
webtalk_add_data -client xsim -key Simulation_Image_Code -value "106 KB" -context "xsim\\usage"
|
||||||
|
webtalk_add_data -client xsim -key Simulation_Image_Data -value "19 KB" -context "xsim\\usage"
|
||||||
|
webtalk_add_data -client xsim -key Total_Nets -value "0" -context "xsim\\usage"
|
||||||
|
webtalk_add_data -client xsim -key Total_Processes -value "281" -context "xsim\\usage"
|
||||||
|
webtalk_add_data -client xsim -key Total_Instances -value "144" -context "xsim\\usage"
|
||||||
|
webtalk_add_data -client xsim -key Xilinx_HDL_Libraries_Used -value "secureip unimacro_ver unisims_ver " -context "xsim\\usage"
|
||||||
|
webtalk_add_data -client xsim -key Compiler_Time -value "0.90_sec" -context "xsim\\usage"
|
||||||
|
webtalk_add_data -client xsim -key Compiler_Memory -value "47248_KB" -context "xsim\\usage"
|
||||||
|
webtalk_transmit -clientid 2879076635 -regid "174150793_174150794_210688225_140" -xml C:/Users/ecelab/ECE3570-Lab/lab2CA.sim/sim_1/behav/xsim/xsim.dir/CPU9bits_tb_behav/webtalk/usage_statistics_ext_xsim.xml -html C:/Users/ecelab/ECE3570-Lab/lab2CA.sim/sim_1/behav/xsim/xsim.dir/CPU9bits_tb_behav/webtalk/usage_statistics_ext_xsim.html -wdm C:/Users/ecelab/ECE3570-Lab/lab2CA.sim/sim_1/behav/xsim/xsim.dir/CPU9bits_tb_behav/webtalk/usage_statistics_ext_xsim.wdm -intro "<H3>XSIM Usage Report</H3><BR>"
|
||||||
webtalk_terminate
|
webtalk_terminate
|
||||||
|
|||||||
Binary file not shown.
Binary file not shown.
@@ -9,7 +9,7 @@ module CPU9bits(
|
|||||||
wire [2:0] FU;
|
wire [2:0] FU;
|
||||||
wire [3:0] aluOp;
|
wire [3:0] aluOp;
|
||||||
wire [1:0] bankS;
|
wire [1:0] bankS;
|
||||||
wire addiS, RegEn, loadS, fetchBranch, halt, cout0, cout1, link, js;
|
wire addiS, RegEn, loadS, fetchBranch, halt, cout0, cout1, link, js, dataMemEn;
|
||||||
|
|
||||||
instructionMemory iM(
|
instructionMemory iM(
|
||||||
.clk(clk),
|
.clk(clk),
|
||||||
@@ -19,7 +19,7 @@ module CPU9bits(
|
|||||||
|
|
||||||
dataMemory dM(
|
dataMemory dM(
|
||||||
.clk(clk),
|
.clk(clk),
|
||||||
.writeEnable(loadS),
|
.writeEnable(dataMemEn),
|
||||||
.writeData(op0),
|
.writeData(op0),
|
||||||
.address(op1),
|
.address(op1),
|
||||||
.readData(dataMemOut)
|
.readData(dataMemOut)
|
||||||
@@ -71,6 +71,7 @@ module CPU9bits(
|
|||||||
.FU(FU),
|
.FU(FU),
|
||||||
.addi(addiS),
|
.addi(addiS),
|
||||||
.mem(loadS),
|
.mem(loadS),
|
||||||
|
.dataMemEn(dataMemEn),
|
||||||
.RegEn(RegEn),
|
.RegEn(RegEn),
|
||||||
.halt(done),
|
.halt(done),
|
||||||
.link(link),
|
.link(link),
|
||||||
@@ -117,7 +118,7 @@ module CPU9bits(
|
|||||||
|
|
||||||
bit1_mux_2_1 BranMux( // BEQ MUX
|
bit1_mux_2_1 BranMux( // BEQ MUX
|
||||||
.A(FU[0]),
|
.A(FU[0]),
|
||||||
.B(op0[0]),
|
.B(AluOut[0]),
|
||||||
.out(fetchBranch),
|
.out(fetchBranch),
|
||||||
.switch(FU[2])); // FU[2] only goes high when BEQ
|
.switch(FU[2])); // FU[2] only goes high when BEQ
|
||||||
|
|
||||||
@@ -185,8 +186,9 @@ module CPU9bits_tb();
|
|||||||
.done(done));
|
.done(done));
|
||||||
|
|
||||||
initial begin
|
initial begin
|
||||||
|
#10
|
||||||
reset = 1'b1;
|
reset = 1'b1;
|
||||||
#15
|
#10
|
||||||
reset = 1'b0;
|
reset = 1'b0;
|
||||||
#500
|
#500
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ module ControlUnit(
|
|||||||
output reg [3:0] aluOut,
|
output reg [3:0] aluOut,
|
||||||
output reg [2:0] FU,
|
output reg [2:0] FU,
|
||||||
output reg addi,
|
output reg addi,
|
||||||
output reg mem,
|
output reg mem, dataMemEn,
|
||||||
output reg RegEn,
|
output reg RegEn,
|
||||||
output reg halt,
|
output reg halt,
|
||||||
output reg link,
|
output reg link,
|
||||||
@@ -23,6 +23,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -34,6 +35,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -45,6 +47,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -56,6 +59,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -68,6 +72,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -79,6 +84,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -91,6 +97,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -102,6 +109,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -113,6 +121,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -124,6 +133,7 @@ module ControlUnit(
|
|||||||
FU <= 3'b001; // Disable Branching
|
FU <= 3'b001; // Disable Branching
|
||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -135,6 +145,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -146,6 +157,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b1;
|
js <= 1'b1;
|
||||||
@@ -157,17 +169,19 @@ module ControlUnit(
|
|||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
aluOut <= 4'b0000;
|
aluOut <= 4'b0000;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b1;
|
link <= 1'b1;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
end
|
end
|
||||||
4'b1100: begin
|
4'b1100: begin
|
||||||
aluOut <= 4'b0000;
|
aluOut <= 4'b1010;
|
||||||
FU <= 3'b110; // branch
|
FU <= 3'b110; // branch
|
||||||
RegEn <= 1'b1;
|
RegEn <= 1'b1;
|
||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -179,6 +193,7 @@ module ControlUnit(
|
|||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
mem <= 1'b0;
|
mem <= 1'b0;
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
link <= 1'b0;
|
link <= 1'b0;
|
||||||
bank <= 2'b10;
|
bank <= 2'b10;
|
||||||
js <= 1'b0;
|
js <= 1'b0;
|
||||||
@@ -186,6 +201,7 @@ module ControlUnit(
|
|||||||
4'b0001: begin
|
4'b0001: begin
|
||||||
aluOut <= 4'b0000;
|
aluOut <= 4'b0000;
|
||||||
mem <= 1'b1; // load
|
mem <= 1'b1; // load
|
||||||
|
dataMemEn <= 1'b0;
|
||||||
RegEn <= 1'b0;
|
RegEn <= 1'b0;
|
||||||
FU <= 3'b001; // Disable Branching
|
FU <= 3'b001; // Disable Branching
|
||||||
addi <= 1'b0;
|
addi <= 1'b0;
|
||||||
@@ -197,6 +213,7 @@ module ControlUnit(
|
|||||||
4'b0010: begin
|
4'b0010: begin
|
||||||
aluOut <= 4'b0000;
|
aluOut <= 4'b0000;
|
||||||
mem <= 1'b0; // store
|
mem <= 1'b0; // store
|
||||||
|
dataMemEn <= 1'b1;
|
||||||
RegEn <= 1'b1;
|
RegEn <= 1'b1;
|
||||||
FU <= 3'b001; // Disable Branching
|
FU <= 3'b001; // Disable Branching
|
||||||
halt <= 1'b0;
|
halt <= 1'b0;
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ module dataMemory(
|
|||||||
always@(address, clk, memory)begin
|
always@(address, clk, memory)begin
|
||||||
if(clk == 1'b1)begin
|
if(clk == 1'b1)begin
|
||||||
readData <= memory[address];
|
readData <= memory[address];
|
||||||
if(writeEnable == 1'b0)begin
|
if(writeEnable == 1'b1)begin
|
||||||
memory[address] <= writeData;
|
memory[address] <= writeData;
|
||||||
end
|
end
|
||||||
else begin
|
else begin
|
||||||
|
|||||||
@@ -28,7 +28,7 @@ module instructionMemory(
|
|||||||
// memory[13] <= 9'b111111001; //srl
|
// memory[13] <= 9'b111111001; //srl
|
||||||
// // memory[14] <= 9'b100100010; //j
|
// // memory[14] <= 9'b100100010; //j
|
||||||
// memory[14] <= 9'b010001000; //zero
|
// memory[14] <= 9'b010001000; //zero
|
||||||
// memory[15] <= 9'b110001101; //beq
|
// memory[15] <= 9'b110001001; //beq
|
||||||
// memory[16] <= 9'b100001000; //jr
|
// memory[16] <= 9'b100001000; //jr
|
||||||
// memory[17] <= 9'b100111100; //j
|
// memory[17] <= 9'b100111100; //j
|
||||||
|
|
||||||
@@ -48,7 +48,7 @@ module instructionMemory(
|
|||||||
memory[11] <= 9'b000111110;
|
memory[11] <= 9'b000111110;
|
||||||
memory[12] <= 9'b101010000;
|
memory[12] <= 9'b101010000;
|
||||||
memory[13] <= 9'b101000010;
|
memory[13] <= 9'b101000010;
|
||||||
memory[14] <= 9'b101010100;
|
memory[14] <= 9'b101001100;
|
||||||
memory[15] <= 9'b101011110; //ends initialization
|
memory[15] <= 9'b101011110; //ends initialization
|
||||||
memory[16] <= 9'b101000011;
|
memory[16] <= 9'b101000011;
|
||||||
memory[17] <= 9'b101001101;
|
memory[17] <= 9'b101001101;
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
<!-- -->
|
<!-- -->
|
||||||
<!-- Copyright 1986-2018 Xilinx, Inc. All Rights Reserved. -->
|
<!-- Copyright 1986-2018 Xilinx, Inc. All Rights Reserved. -->
|
||||||
|
|
||||||
<Project Version="7" Minor="39" Path="C:/Users/JoseIgnacio/CA Lab/lab2CA.xpr">
|
<Project Version="7" Minor="39" Path="C:/Users/ecelab/ECE3570-Lab/lab2CA.xpr">
|
||||||
<DefaultLaunch Dir="$PRUNDIR"/>
|
<DefaultLaunch Dir="$PRUNDIR"/>
|
||||||
<Configuration>
|
<Configuration>
|
||||||
<Option Name="Id" Val="0a5803efda44405bb28bbf43ba22e808"/>
|
<Option Name="Id" Val="0a5803efda44405bb28bbf43ba22e808"/>
|
||||||
@@ -31,7 +31,7 @@
|
|||||||
<Option Name="EnableBDX" Val="FALSE"/>
|
<Option Name="EnableBDX" Val="FALSE"/>
|
||||||
<Option Name="DSAVendor" Val="xilinx"/>
|
<Option Name="DSAVendor" Val="xilinx"/>
|
||||||
<Option Name="DSANumComputeUnits" Val="60"/>
|
<Option Name="DSANumComputeUnits" Val="60"/>
|
||||||
<Option Name="WTXSimLaunchSim" Val="250"/>
|
<Option Name="WTXSimLaunchSim" Val="295"/>
|
||||||
<Option Name="WTModelSimLaunchSim" Val="0"/>
|
<Option Name="WTModelSimLaunchSim" Val="0"/>
|
||||||
<Option Name="WTQuestaLaunchSim" Val="0"/>
|
<Option Name="WTQuestaLaunchSim" Val="0"/>
|
||||||
<Option Name="WTIesLaunchSim" Val="0"/>
|
<Option Name="WTIesLaunchSim" Val="0"/>
|
||||||
@@ -136,7 +136,7 @@
|
|||||||
</FileSet>
|
</FileSet>
|
||||||
<FileSet Name="sim_1" Type="SimulationSrcs" RelSrcDir="$PSRCDIR/sim_1">
|
<FileSet Name="sim_1" Type="SimulationSrcs" RelSrcDir="$PSRCDIR/sim_1">
|
||||||
<Filter Type="Srcs"/>
|
<Filter Type="Srcs"/>
|
||||||
<File Path="$PPRDIR/CPU9bits_tb_behav1.wcfg">
|
<File Path="$PPRDIR/CPU9bits_tb_behav.wcfg">
|
||||||
<FileInfo>
|
<FileInfo>
|
||||||
<Attr Name="UsedIn" Val="simulation"/>
|
<Attr Name="UsedIn" Val="simulation"/>
|
||||||
</FileInfo>
|
</FileInfo>
|
||||||
|
|||||||
Reference in New Issue
Block a user