Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Generator : SpinalHDL v1.3.1 git head : 9fe87c98746a5306cb1d5a828db7af3137723649
- // Date : 24/02/2019, 12:36:07
- // Component : VexRiscv
- `define AluCtrlEnum_defaultEncoding_type [1:0]
- `define AluCtrlEnum_defaultEncoding_ADD_SUB 2'b00
- `define AluCtrlEnum_defaultEncoding_SLT_SLTU 2'b01
- `define AluCtrlEnum_defaultEncoding_BITWISE 2'b10
- `define ShiftCtrlEnum_defaultEncoding_type [1:0]
- `define ShiftCtrlEnum_defaultEncoding_DISABLE_1 2'b00
- `define ShiftCtrlEnum_defaultEncoding_SLL_1 2'b01
- `define ShiftCtrlEnum_defaultEncoding_SRL_1 2'b10
- `define ShiftCtrlEnum_defaultEncoding_SRA_1 2'b11
- `define AluBitwiseCtrlEnum_defaultEncoding_type [1:0]
- `define AluBitwiseCtrlEnum_defaultEncoding_XOR_1 2'b00
- `define AluBitwiseCtrlEnum_defaultEncoding_OR_1 2'b01
- `define AluBitwiseCtrlEnum_defaultEncoding_AND_1 2'b10
- `define AluBitwiseCtrlEnum_defaultEncoding_SRC1 2'b11
- `define BranchCtrlEnum_defaultEncoding_type [1:0]
- `define BranchCtrlEnum_defaultEncoding_INC 2'b00
- `define BranchCtrlEnum_defaultEncoding_B 2'b01
- `define BranchCtrlEnum_defaultEncoding_JAL 2'b10
- `define BranchCtrlEnum_defaultEncoding_JALR 2'b11
- `define Src2CtrlEnum_defaultEncoding_type [1:0]
- `define Src2CtrlEnum_defaultEncoding_RS 2'b00
- `define Src2CtrlEnum_defaultEncoding_IMI 2'b01
- `define Src2CtrlEnum_defaultEncoding_IMS 2'b10
- `define Src2CtrlEnum_defaultEncoding_PC 2'b11
- `define Src1CtrlEnum_defaultEncoding_type [1:0]
- `define Src1CtrlEnum_defaultEncoding_RS 2'b00
- `define Src1CtrlEnum_defaultEncoding_IMU 2'b01
- `define Src1CtrlEnum_defaultEncoding_PC_INCREMENT 2'b10
- `define Src1CtrlEnum_defaultEncoding_URS1 2'b11
- module StreamFifoLowLatency (
- input io_push_valid,
- output io_push_ready,
- input io_push_payload_error,
- input [31:0] io_push_payload_inst,
- output reg io_pop_valid,
- input io_pop_ready,
- output reg io_pop_payload_error,
- output reg [31:0] io_pop_payload_inst,
- input io_flush,
- output [0:0] io_occupancy,
- input clk,
- input reset);
- wire _zz_5_;
- wire [0:0] _zz_6_;
- reg _zz_1_;
- reg pushPtr_willIncrement;
- reg pushPtr_willClear;
- wire pushPtr_willOverflowIfInc;
- wire pushPtr_willOverflow;
- reg popPtr_willIncrement;
- reg popPtr_willClear;
- wire popPtr_willOverflowIfInc;
- wire popPtr_willOverflow;
- wire ptrMatch;
- reg risingOccupancy;
- wire empty;
- wire full;
- wire pushing;
- wire popping;
- wire [32:0] _zz_2_;
- wire [32:0] _zz_3_;
- reg [32:0] _zz_4_;
- assign _zz_5_ = (! empty);
- assign _zz_6_ = _zz_2_[0 : 0];
- always @ (*) begin
- _zz_1_ = 1'b0;
- if(pushing)begin
- _zz_1_ = 1'b1;
- end
- end
- always @ (*) begin
- pushPtr_willIncrement = 1'b0;
- if(pushing)begin
- pushPtr_willIncrement = 1'b1;
- end
- end
- always @ (*) begin
- pushPtr_willClear = 1'b0;
- if(io_flush)begin
- pushPtr_willClear = 1'b1;
- end
- end
- assign pushPtr_willOverflowIfInc = 1'b1;
- assign pushPtr_willOverflow = (pushPtr_willOverflowIfInc && pushPtr_willIncrement);
- always @ (*) begin
- popPtr_willIncrement = 1'b0;
- if(popping)begin
- popPtr_willIncrement = 1'b1;
- end
- end
- always @ (*) begin
- popPtr_willClear = 1'b0;
- if(io_flush)begin
- popPtr_willClear = 1'b1;
- end
- end
- assign popPtr_willOverflowIfInc = 1'b1;
- assign popPtr_willOverflow = (popPtr_willOverflowIfInc && popPtr_willIncrement);
- assign ptrMatch = 1'b1;
- assign empty = (ptrMatch && (! risingOccupancy));
- assign full = (ptrMatch && risingOccupancy);
- assign pushing = (io_push_valid && io_push_ready);
- assign popping = (io_pop_valid && io_pop_ready);
- assign io_push_ready = (! full);
- always @ (*) begin
- if(_zz_5_)begin
- io_pop_valid = 1'b1;
- end else begin
- io_pop_valid = io_push_valid;
- end
- end
- assign _zz_2_ = _zz_3_;
- always @ (*) begin
- if(_zz_5_)begin
- io_pop_payload_error = _zz_6_[0];
- end else begin
- io_pop_payload_error = io_push_payload_error;
- end
- end
- always @ (*) begin
- if(_zz_5_)begin
- io_pop_payload_inst = _zz_2_[32 : 1];
- end else begin
- io_pop_payload_inst = io_push_payload_inst;
- end
- end
- assign io_occupancy = (risingOccupancy && ptrMatch);
- assign _zz_3_ = _zz_4_;
- always @ (posedge clk or posedge reset) begin
- if (reset) begin
- risingOccupancy <= 1'b0;
- end else begin
- if((pushing != popping))begin
- risingOccupancy <= pushing;
- end
- if(io_flush)begin
- risingOccupancy <= 1'b0;
- end
- end
- end
- always @ (posedge clk) begin
- if(_zz_1_)begin
- _zz_4_ <= {io_push_payload_inst,io_push_payload_error};
- end
- end
- endmodule
- module VexRiscv (
- output iBus_cmd_valid,
- input iBus_cmd_ready,
- output [31:0] iBus_cmd_payload_pc,
- input iBus_rsp_valid,
- input iBus_rsp_payload_error,
- input [31:0] iBus_rsp_payload_inst,
- output dBus_cmd_valid,
- input dBus_cmd_ready,
- output dBus_cmd_payload_wr,
- output [31:0] dBus_cmd_payload_address,
- output [31:0] dBus_cmd_payload_data,
- output [1:0] dBus_cmd_payload_size,
- input dBus_rsp_ready,
- input dBus_rsp_error,
- input [31:0] dBus_rsp_data,
- input clk,
- input reset);
- wire _zz_113_;
- reg [31:0] _zz_114_;
- reg [31:0] _zz_115_;
- wire IBusSimplePlugin_rspJoin_rspBuffer_c_io_push_ready;
- wire IBusSimplePlugin_rspJoin_rspBuffer_c_io_pop_valid;
- wire IBusSimplePlugin_rspJoin_rspBuffer_c_io_pop_payload_error;
- wire [31:0] IBusSimplePlugin_rspJoin_rspBuffer_c_io_pop_payload_inst;
- wire [0:0] IBusSimplePlugin_rspJoin_rspBuffer_c_io_occupancy;
- wire _zz_116_;
- wire _zz_117_;
- wire _zz_118_;
- wire _zz_119_;
- wire _zz_120_;
- wire _zz_121_;
- wire _zz_122_;
- wire _zz_123_;
- wire _zz_124_;
- wire [1:0] _zz_125_;
- wire [2:0] _zz_126_;
- wire [31:0] _zz_127_;
- wire [2:0] _zz_128_;
- wire [0:0] _zz_129_;
- wire [2:0] _zz_130_;
- wire [0:0] _zz_131_;
- wire [2:0] _zz_132_;
- wire [0:0] _zz_133_;
- wire [2:0] _zz_134_;
- wire [0:0] _zz_135_;
- wire [2:0] _zz_136_;
- wire [0:0] _zz_137_;
- wire [0:0] _zz_138_;
- wire [0:0] _zz_139_;
- wire [0:0] _zz_140_;
- wire [0:0] _zz_141_;
- wire [0:0] _zz_142_;
- wire [0:0] _zz_143_;
- wire [0:0] _zz_144_;
- wire [0:0] _zz_145_;
- wire [2:0] _zz_146_;
- wire [4:0] _zz_147_;
- wire [11:0] _zz_148_;
- wire [11:0] _zz_149_;
- wire [31:0] _zz_150_;
- wire [31:0] _zz_151_;
- wire [31:0] _zz_152_;
- wire [31:0] _zz_153_;
- wire [1:0] _zz_154_;
- wire [31:0] _zz_155_;
- wire [1:0] _zz_156_;
- wire [1:0] _zz_157_;
- wire [31:0] _zz_158_;
- wire [32:0] _zz_159_;
- wire [19:0] _zz_160_;
- wire [11:0] _zz_161_;
- wire [11:0] _zz_162_;
- wire _zz_163_;
- wire _zz_164_;
- wire [31:0] _zz_165_;
- wire [31:0] _zz_166_;
- wire [31:0] _zz_167_;
- wire [31:0] _zz_168_;
- wire [0:0] _zz_169_;
- wire [0:0] _zz_170_;
- wire [2:0] _zz_171_;
- wire [2:0] _zz_172_;
- wire _zz_173_;
- wire [0:0] _zz_174_;
- wire [14:0] _zz_175_;
- wire [31:0] _zz_176_;
- wire _zz_177_;
- wire _zz_178_;
- wire [31:0] _zz_179_;
- wire [31:0] _zz_180_;
- wire [0:0] _zz_181_;
- wire [0:0] _zz_182_;
- wire [0:0] _zz_183_;
- wire [0:0] _zz_184_;
- wire _zz_185_;
- wire [0:0] _zz_186_;
- wire [11:0] _zz_187_;
- wire [31:0] _zz_188_;
- wire [31:0] _zz_189_;
- wire [31:0] _zz_190_;
- wire [31:0] _zz_191_;
- wire [0:0] _zz_192_;
- wire [0:0] _zz_193_;
- wire [1:0] _zz_194_;
- wire [1:0] _zz_195_;
- wire _zz_196_;
- wire [0:0] _zz_197_;
- wire [8:0] _zz_198_;
- wire [31:0] _zz_199_;
- wire [31:0] _zz_200_;
- wire [31:0] _zz_201_;
- wire [31:0] _zz_202_;
- wire _zz_203_;
- wire [0:0] _zz_204_;
- wire [0:0] _zz_205_;
- wire _zz_206_;
- wire [0:0] _zz_207_;
- wire [0:0] _zz_208_;
- wire _zz_209_;
- wire [0:0] _zz_210_;
- wire [4:0] _zz_211_;
- wire [31:0] _zz_212_;
- wire [31:0] _zz_213_;
- wire [31:0] _zz_214_;
- wire [31:0] _zz_215_;
- wire [31:0] _zz_216_;
- wire [0:0] _zz_217_;
- wire [1:0] _zz_218_;
- wire [0:0] _zz_219_;
- wire [0:0] _zz_220_;
- wire _zz_221_;
- wire [0:0] _zz_222_;
- wire [1:0] _zz_223_;
- wire [31:0] _zz_224_;
- wire [31:0] _zz_225_;
- wire [31:0] _zz_226_;
- wire [31:0] _zz_227_;
- wire [31:0] _zz_228_;
- wire [31:0] _zz_229_;
- wire [0:0] _zz_230_;
- wire [0:0] _zz_231_;
- wire [2:0] _zz_232_;
- wire [2:0] _zz_233_;
- wire `AluCtrlEnum_defaultEncoding_type decode_ALU_CTRL;
- wire `AluCtrlEnum_defaultEncoding_type _zz_1_;
- wire `AluCtrlEnum_defaultEncoding_type _zz_2_;
- wire `AluCtrlEnum_defaultEncoding_type _zz_3_;
- wire [31:0] execute_BRANCH_CALC;
- wire `ShiftCtrlEnum_defaultEncoding_type decode_SHIFT_CTRL;
- wire `ShiftCtrlEnum_defaultEncoding_type _zz_4_;
- wire `ShiftCtrlEnum_defaultEncoding_type _zz_5_;
- wire `ShiftCtrlEnum_defaultEncoding_type _zz_6_;
- wire [31:0] decode_RS1;
- wire [31:0] memory_MEMORY_READ_DATA;
- wire [31:0] writeBack_REGFILE_WRITE_DATA;
- wire [31:0] execute_REGFILE_WRITE_DATA;
- wire `AluBitwiseCtrlEnum_defaultEncoding_type decode_ALU_BITWISE_CTRL;
- wire `AluBitwiseCtrlEnum_defaultEncoding_type _zz_7_;
- wire `AluBitwiseCtrlEnum_defaultEncoding_type _zz_8_;
- wire `AluBitwiseCtrlEnum_defaultEncoding_type _zz_9_;
- wire execute_BRANCH_DO;
- wire [31:0] decode_SRC1;
- wire [31:0] decode_RS2;
- wire decode_SRC_USE_SUB_LESS;
- wire [31:0] memory_PC;
- wire decode_BYPASSABLE_EXECUTE_STAGE;
- wire execute_BYPASSABLE_MEMORY_STAGE;
- wire decode_BYPASSABLE_MEMORY_STAGE;
- wire decode_SRC_LESS_UNSIGNED;
- wire [1:0] memory_MEMORY_ADDRESS_LOW;
- wire [1:0] execute_MEMORY_ADDRESS_LOW;
- wire [31:0] memory_FORMAL_PC_NEXT;
- wire [31:0] execute_FORMAL_PC_NEXT;
- wire [31:0] decode_FORMAL_PC_NEXT;
- wire [31:0] decode_SRC2;
- wire decode_MEMORY_ENABLE;
- wire `BranchCtrlEnum_defaultEncoding_type decode_BRANCH_CTRL;
- wire `BranchCtrlEnum_defaultEncoding_type _zz_10_;
- wire `BranchCtrlEnum_defaultEncoding_type _zz_11_;
- wire `BranchCtrlEnum_defaultEncoding_type _zz_12_;
- wire [31:0] memory_BRANCH_CALC;
- wire memory_BRANCH_DO;
- wire [31:0] _zz_13_;
- wire [31:0] execute_PC;
- wire [31:0] execute_RS1;
- wire `BranchCtrlEnum_defaultEncoding_type execute_BRANCH_CTRL;
- wire `BranchCtrlEnum_defaultEncoding_type _zz_14_;
- wire _zz_15_;
- wire decode_RS2_USE;
- wire decode_RS1_USE;
- wire execute_REGFILE_WRITE_VALID;
- wire execute_BYPASSABLE_EXECUTE_STAGE;
- wire memory_REGFILE_WRITE_VALID;
- wire memory_BYPASSABLE_MEMORY_STAGE;
- wire writeBack_REGFILE_WRITE_VALID;
- reg [31:0] _zz_16_;
- wire [31:0] memory_REGFILE_WRITE_DATA;
- wire `ShiftCtrlEnum_defaultEncoding_type execute_SHIFT_CTRL;
- wire `ShiftCtrlEnum_defaultEncoding_type _zz_17_;
- wire _zz_18_;
- wire [31:0] _zz_19_;
- wire [31:0] _zz_20_;
- wire execute_SRC_LESS_UNSIGNED;
- wire execute_SRC_USE_SUB_LESS;
- wire [31:0] _zz_21_;
- wire [31:0] _zz_22_;
- wire `Src2CtrlEnum_defaultEncoding_type decode_SRC2_CTRL;
- wire `Src2CtrlEnum_defaultEncoding_type _zz_23_;
- wire [31:0] _zz_24_;
- wire [31:0] _zz_25_;
- wire `Src1CtrlEnum_defaultEncoding_type decode_SRC1_CTRL;
- wire `Src1CtrlEnum_defaultEncoding_type _zz_26_;
- wire [31:0] _zz_27_;
- wire [31:0] execute_SRC_ADD_SUB;
- wire execute_SRC_LESS;
- wire `AluCtrlEnum_defaultEncoding_type execute_ALU_CTRL;
- wire `AluCtrlEnum_defaultEncoding_type _zz_28_;
- wire [31:0] _zz_29_;
- wire [31:0] execute_SRC2;
- wire [31:0] execute_SRC1;
- wire `AluBitwiseCtrlEnum_defaultEncoding_type execute_ALU_BITWISE_CTRL;
- wire `AluBitwiseCtrlEnum_defaultEncoding_type _zz_30_;
- wire [31:0] _zz_31_;
- wire _zz_32_;
- reg _zz_33_;
- wire [31:0] _zz_34_;
- wire [31:0] _zz_35_;
- wire [31:0] decode_INSTRUCTION_ANTICIPATED;
- reg decode_REGFILE_WRITE_VALID;
- wire _zz_36_;
- wire _zz_37_;
- wire `AluBitwiseCtrlEnum_defaultEncoding_type _zz_38_;
- wire `ShiftCtrlEnum_defaultEncoding_type _zz_39_;
- wire `Src1CtrlEnum_defaultEncoding_type _zz_40_;
- wire `Src2CtrlEnum_defaultEncoding_type _zz_41_;
- wire _zz_42_;
- wire _zz_43_;
- wire _zz_44_;
- wire _zz_45_;
- wire `AluCtrlEnum_defaultEncoding_type _zz_46_;
- wire _zz_47_;
- wire `BranchCtrlEnum_defaultEncoding_type _zz_48_;
- wire _zz_49_;
- reg [31:0] _zz_50_;
- wire writeBack_MEMORY_ENABLE;
- wire [1:0] writeBack_MEMORY_ADDRESS_LOW;
- wire [31:0] writeBack_MEMORY_READ_DATA;
- wire [31:0] memory_INSTRUCTION;
- wire memory_MEMORY_ENABLE;
- wire [31:0] _zz_51_;
- wire [1:0] _zz_52_;
- wire [31:0] execute_RS2;
- wire [31:0] execute_SRC_ADD;
- wire [31:0] execute_INSTRUCTION;
- wire execute_ALIGNEMENT_FAULT;
- wire execute_MEMORY_ENABLE;
- wire [31:0] _zz_53_;
- wire [31:0] _zz_54_;
- wire [31:0] _zz_55_;
- wire [31:0] _zz_56_;
- wire [31:0] writeBack_PC /* verilator public */ ;
- wire [31:0] writeBack_INSTRUCTION /* verilator public */ ;
- wire [31:0] decode_PC /* verilator public */ ;
- wire [31:0] decode_INSTRUCTION /* verilator public */ ;
- wire decode_arbitration_haltItself /* verilator public */ ;
- reg decode_arbitration_haltByOther;
- reg decode_arbitration_removeIt;
- wire decode_arbitration_flushAll /* verilator public */ ;
- wire decode_arbitration_redoIt;
- wire decode_arbitration_isValid /* verilator public */ ;
- wire decode_arbitration_isStuck;
- wire decode_arbitration_isStuckByOthers;
- wire decode_arbitration_isFlushed;
- wire decode_arbitration_isMoving;
- wire decode_arbitration_isFiring;
- reg execute_arbitration_haltItself;
- wire execute_arbitration_haltByOther;
- reg execute_arbitration_removeIt;
- reg execute_arbitration_flushAll;
- wire execute_arbitration_redoIt;
- reg execute_arbitration_isValid;
- wire execute_arbitration_isStuck;
- wire execute_arbitration_isStuckByOthers;
- wire execute_arbitration_isFlushed;
- wire execute_arbitration_isMoving;
- wire execute_arbitration_isFiring;
- reg memory_arbitration_haltItself;
- wire memory_arbitration_haltByOther;
- reg memory_arbitration_removeIt;
- wire memory_arbitration_flushAll;
- wire memory_arbitration_redoIt;
- reg memory_arbitration_isValid;
- wire memory_arbitration_isStuck;
- wire memory_arbitration_isStuckByOthers;
- wire memory_arbitration_isFlushed;
- wire memory_arbitration_isMoving;
- wire memory_arbitration_isFiring;
- wire writeBack_arbitration_haltItself;
- wire writeBack_arbitration_haltByOther;
- reg writeBack_arbitration_removeIt;
- wire writeBack_arbitration_flushAll;
- wire writeBack_arbitration_redoIt;
- reg writeBack_arbitration_isValid /* verilator public */ ;
- wire writeBack_arbitration_isStuck;
- wire writeBack_arbitration_isStuckByOthers;
- wire writeBack_arbitration_isFlushed;
- wire writeBack_arbitration_isMoving;
- wire writeBack_arbitration_isFiring /* verilator public */ ;
- wire _zz_57_;
- wire _zz_58_;
- wire IBusSimplePlugin_jump_pcLoad_valid;
- wire [31:0] IBusSimplePlugin_jump_pcLoad_payload;
- wire IBusSimplePlugin_fetchPc_preOutput_valid;
- wire IBusSimplePlugin_fetchPc_preOutput_ready;
- wire [31:0] IBusSimplePlugin_fetchPc_preOutput_payload;
- wire _zz_59_;
- wire IBusSimplePlugin_fetchPc_output_valid;
- wire IBusSimplePlugin_fetchPc_output_ready;
- wire [31:0] IBusSimplePlugin_fetchPc_output_payload;
- reg [31:0] IBusSimplePlugin_fetchPc_pcReg /* verilator public */ ;
- reg IBusSimplePlugin_fetchPc_inc;
- reg IBusSimplePlugin_fetchPc_propagatePc;
- reg [31:0] IBusSimplePlugin_fetchPc_pc;
- reg IBusSimplePlugin_fetchPc_samplePcNext;
- reg _zz_60_;
- wire IBusSimplePlugin_iBusRsp_stages_0_input_valid;
- wire IBusSimplePlugin_iBusRsp_stages_0_input_ready;
- wire [31:0] IBusSimplePlugin_iBusRsp_stages_0_input_payload;
- wire IBusSimplePlugin_iBusRsp_stages_0_output_valid;
- wire IBusSimplePlugin_iBusRsp_stages_0_output_ready;
- wire [31:0] IBusSimplePlugin_iBusRsp_stages_0_output_payload;
- reg IBusSimplePlugin_iBusRsp_stages_0_halt;
- wire IBusSimplePlugin_iBusRsp_stages_0_inputSample;
- wire IBusSimplePlugin_iBusRsp_stages_1_input_valid;
- wire IBusSimplePlugin_iBusRsp_stages_1_input_ready;
- wire [31:0] IBusSimplePlugin_iBusRsp_stages_1_input_payload;
- wire IBusSimplePlugin_iBusRsp_stages_1_output_valid;
- wire IBusSimplePlugin_iBusRsp_stages_1_output_ready;
- wire [31:0] IBusSimplePlugin_iBusRsp_stages_1_output_payload;
- wire IBusSimplePlugin_iBusRsp_stages_1_halt;
- wire IBusSimplePlugin_iBusRsp_stages_1_inputSample;
- wire _zz_61_;
- wire _zz_62_;
- wire _zz_63_;
- wire _zz_64_;
- reg _zz_65_;
- reg IBusSimplePlugin_iBusRsp_readyForError;
- wire IBusSimplePlugin_iBusRsp_inputBeforeStage_valid;
- wire IBusSimplePlugin_iBusRsp_inputBeforeStage_ready;
- wire [31:0] IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_pc;
- wire IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_rsp_error;
- wire [31:0] IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_rsp_raw;
- wire IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_isRvc;
- wire IBusSimplePlugin_injector_decodeInput_valid;
- wire IBusSimplePlugin_injector_decodeInput_ready;
- wire [31:0] IBusSimplePlugin_injector_decodeInput_payload_pc;
- wire IBusSimplePlugin_injector_decodeInput_payload_rsp_error;
- wire [31:0] IBusSimplePlugin_injector_decodeInput_payload_rsp_inst;
- wire IBusSimplePlugin_injector_decodeInput_payload_isRvc;
- reg _zz_66_;
- reg [31:0] _zz_67_;
- reg _zz_68_;
- reg [31:0] _zz_69_;
- reg _zz_70_;
- reg IBusSimplePlugin_injector_nextPcCalc_valids_0;
- reg IBusSimplePlugin_injector_nextPcCalc_0;
- reg IBusSimplePlugin_injector_nextPcCalc_1;
- reg IBusSimplePlugin_injector_nextPcCalc_2;
- reg IBusSimplePlugin_injector_nextPcCalc_3;
- reg IBusSimplePlugin_injector_decodeRemoved;
- reg [31:0] IBusSimplePlugin_injector_formal_rawInDecode;
- wire IBusSimplePlugin_cmd_valid;
- wire IBusSimplePlugin_cmd_ready;
- wire [31:0] IBusSimplePlugin_cmd_payload_pc;
- reg [2:0] IBusSimplePlugin_pendingCmd;
- wire [2:0] IBusSimplePlugin_pendingCmdNext;
- reg [2:0] IBusSimplePlugin_rspJoin_discardCounter;
- wire IBusSimplePlugin_rspJoin_rspBufferOutput_valid;
- wire IBusSimplePlugin_rspJoin_rspBufferOutput_ready;
- wire IBusSimplePlugin_rspJoin_rspBufferOutput_payload_error;
- wire [31:0] IBusSimplePlugin_rspJoin_rspBufferOutput_payload_inst;
- wire iBus_rsp_takeWhen_valid;
- wire iBus_rsp_takeWhen_payload_error;
- wire [31:0] iBus_rsp_takeWhen_payload_inst;
- wire [31:0] IBusSimplePlugin_rspJoin_fetchRsp_pc;
- reg IBusSimplePlugin_rspJoin_fetchRsp_rsp_error;
- wire [31:0] IBusSimplePlugin_rspJoin_fetchRsp_rsp_inst;
- wire IBusSimplePlugin_rspJoin_fetchRsp_isRvc;
- wire IBusSimplePlugin_rspJoin_issueDetected;
- wire IBusSimplePlugin_rspJoin_join_valid;
- wire IBusSimplePlugin_rspJoin_join_ready;
- wire [31:0] IBusSimplePlugin_rspJoin_join_payload_pc;
- wire IBusSimplePlugin_rspJoin_join_payload_rsp_error;
- wire [31:0] IBusSimplePlugin_rspJoin_join_payload_rsp_inst;
- wire IBusSimplePlugin_rspJoin_join_payload_isRvc;
- wire _zz_71_;
- wire execute_DBusSimplePlugin_cmdSent;
- reg [31:0] _zz_72_;
- reg [3:0] _zz_73_;
- wire [3:0] execute_DBusSimplePlugin_formalMask;
- reg [31:0] writeBack_DBusSimplePlugin_rspShifted;
- wire _zz_74_;
- reg [31:0] _zz_75_;
- wire _zz_76_;
- reg [31:0] _zz_77_;
- reg [31:0] writeBack_DBusSimplePlugin_rspFormated;
- wire [20:0] _zz_78_;
- wire _zz_79_;
- wire _zz_80_;
- wire _zz_81_;
- wire _zz_82_;
- wire `BranchCtrlEnum_defaultEncoding_type _zz_83_;
- wire `AluCtrlEnum_defaultEncoding_type _zz_84_;
- wire `Src2CtrlEnum_defaultEncoding_type _zz_85_;
- wire `Src1CtrlEnum_defaultEncoding_type _zz_86_;
- wire `ShiftCtrlEnum_defaultEncoding_type _zz_87_;
- wire `AluBitwiseCtrlEnum_defaultEncoding_type _zz_88_;
- wire [4:0] decode_RegFilePlugin_regFileReadAddress1;
- wire [4:0] decode_RegFilePlugin_regFileReadAddress2;
- wire [31:0] decode_RegFilePlugin_rs1Data;
- wire [31:0] decode_RegFilePlugin_rs2Data;
- reg writeBack_RegFilePlugin_regFileWrite_valid /* verilator public */ ;
- wire [4:0] writeBack_RegFilePlugin_regFileWrite_payload_address /* verilator public */ ;
- wire [31:0] writeBack_RegFilePlugin_regFileWrite_payload_data /* verilator public */ ;
- reg _zz_89_;
- reg [31:0] execute_IntAluPlugin_bitwise;
- reg [31:0] _zz_90_;
- reg [31:0] _zz_91_;
- wire _zz_92_;
- reg [19:0] _zz_93_;
- wire _zz_94_;
- reg [19:0] _zz_95_;
- reg [31:0] _zz_96_;
- wire [31:0] execute_SrcPlugin_addSub;
- wire execute_SrcPlugin_less;
- reg execute_LightShifterPlugin_isActive;
- wire execute_LightShifterPlugin_isShift;
- reg [4:0] execute_LightShifterPlugin_amplitudeReg;
- wire [4:0] execute_LightShifterPlugin_amplitude;
- wire [31:0] execute_LightShifterPlugin_shiftInput;
- wire execute_LightShifterPlugin_done;
- reg [31:0] _zz_97_;
- reg _zz_98_;
- reg _zz_99_;
- wire _zz_100_;
- reg _zz_101_;
- reg [4:0] _zz_102_;
- wire execute_BranchPlugin_eq;
- wire [2:0] _zz_103_;
- reg _zz_104_;
- reg _zz_105_;
- wire [31:0] execute_BranchPlugin_branch_src1;
- wire _zz_106_;
- reg [10:0] _zz_107_;
- wire _zz_108_;
- reg [19:0] _zz_109_;
- wire _zz_110_;
- reg [18:0] _zz_111_;
- reg [31:0] _zz_112_;
- wire [31:0] execute_BranchPlugin_branch_src2;
- wire [31:0] execute_BranchPlugin_branchAdder;
- reg `BranchCtrlEnum_defaultEncoding_type decode_to_execute_BRANCH_CTRL;
- reg decode_to_execute_MEMORY_ENABLE;
- reg execute_to_memory_MEMORY_ENABLE;
- reg memory_to_writeBack_MEMORY_ENABLE;
- reg [31:0] decode_to_execute_SRC2;
- reg [31:0] decode_to_execute_FORMAL_PC_NEXT;
- reg [31:0] execute_to_memory_FORMAL_PC_NEXT;
- reg decode_to_execute_REGFILE_WRITE_VALID;
- reg execute_to_memory_REGFILE_WRITE_VALID;
- reg memory_to_writeBack_REGFILE_WRITE_VALID;
- reg [1:0] execute_to_memory_MEMORY_ADDRESS_LOW;
- reg [1:0] memory_to_writeBack_MEMORY_ADDRESS_LOW;
- reg decode_to_execute_SRC_LESS_UNSIGNED;
- reg decode_to_execute_BYPASSABLE_MEMORY_STAGE;
- reg execute_to_memory_BYPASSABLE_MEMORY_STAGE;
- reg decode_to_execute_BYPASSABLE_EXECUTE_STAGE;
- reg [31:0] decode_to_execute_PC;
- reg [31:0] execute_to_memory_PC;
- reg [31:0] memory_to_writeBack_PC;
- reg decode_to_execute_SRC_USE_SUB_LESS;
- reg [31:0] decode_to_execute_RS2;
- reg [31:0] decode_to_execute_SRC1;
- reg execute_to_memory_BRANCH_DO;
- reg `AluBitwiseCtrlEnum_defaultEncoding_type decode_to_execute_ALU_BITWISE_CTRL;
- reg [31:0] decode_to_execute_INSTRUCTION;
- reg [31:0] execute_to_memory_INSTRUCTION;
- reg [31:0] memory_to_writeBack_INSTRUCTION;
- reg [31:0] execute_to_memory_REGFILE_WRITE_DATA;
- reg [31:0] memory_to_writeBack_REGFILE_WRITE_DATA;
- reg [31:0] memory_to_writeBack_MEMORY_READ_DATA;
- reg [31:0] decode_to_execute_RS1;
- reg `ShiftCtrlEnum_defaultEncoding_type decode_to_execute_SHIFT_CTRL;
- reg [31:0] execute_to_memory_BRANCH_CALC;
- reg `AluCtrlEnum_defaultEncoding_type decode_to_execute_ALU_CTRL;
- `ifndef SYNTHESIS
- reg [63:0] decode_ALU_CTRL_string;
- reg [63:0] _zz_1__string;
- reg [63:0] _zz_2__string;
- reg [63:0] _zz_3__string;
- reg [71:0] decode_SHIFT_CTRL_string;
- reg [71:0] _zz_4__string;
- reg [71:0] _zz_5__string;
- reg [71:0] _zz_6__string;
- reg [39:0] decode_ALU_BITWISE_CTRL_string;
- reg [39:0] _zz_7__string;
- reg [39:0] _zz_8__string;
- reg [39:0] _zz_9__string;
- reg [31:0] decode_BRANCH_CTRL_string;
- reg [31:0] _zz_10__string;
- reg [31:0] _zz_11__string;
- reg [31:0] _zz_12__string;
- reg [31:0] execute_BRANCH_CTRL_string;
- reg [31:0] _zz_14__string;
- reg [71:0] execute_SHIFT_CTRL_string;
- reg [71:0] _zz_17__string;
- reg [23:0] decode_SRC2_CTRL_string;
- reg [23:0] _zz_23__string;
- reg [95:0] decode_SRC1_CTRL_string;
- reg [95:0] _zz_26__string;
- reg [63:0] execute_ALU_CTRL_string;
- reg [63:0] _zz_28__string;
- reg [39:0] execute_ALU_BITWISE_CTRL_string;
- reg [39:0] _zz_30__string;
- reg [39:0] _zz_38__string;
- reg [71:0] _zz_39__string;
- reg [95:0] _zz_40__string;
- reg [23:0] _zz_41__string;
- reg [63:0] _zz_46__string;
- reg [31:0] _zz_48__string;
- reg [31:0] _zz_83__string;
- reg [63:0] _zz_84__string;
- reg [23:0] _zz_85__string;
- reg [95:0] _zz_86__string;
- reg [71:0] _zz_87__string;
- reg [39:0] _zz_88__string;
- reg [31:0] decode_to_execute_BRANCH_CTRL_string;
- reg [39:0] decode_to_execute_ALU_BITWISE_CTRL_string;
- reg [71:0] decode_to_execute_SHIFT_CTRL_string;
- reg [63:0] decode_to_execute_ALU_CTRL_string;
- `endif
- reg [31:0] RegFilePlugin_regFile [0:31] /* verilator public */ ;
- assign _zz_116_ = ((execute_arbitration_isValid && execute_LightShifterPlugin_isShift) && (execute_SRC2[4 : 0] != (5'b00000)));
- assign _zz_117_ = (! execute_arbitration_isStuckByOthers);
- assign _zz_118_ = (IBusSimplePlugin_fetchPc_preOutput_valid && IBusSimplePlugin_fetchPc_preOutput_ready);
- assign _zz_119_ = (writeBack_arbitration_isValid && writeBack_REGFILE_WRITE_VALID);
- assign _zz_120_ = (1'b1 || (! 1'b1));
- assign _zz_121_ = (memory_arbitration_isValid && memory_REGFILE_WRITE_VALID);
- assign _zz_122_ = (1'b1 || (! memory_BYPASSABLE_MEMORY_STAGE));
- assign _zz_123_ = (execute_arbitration_isValid && execute_REGFILE_WRITE_VALID);
- assign _zz_124_ = (1'b1 || (! execute_BYPASSABLE_EXECUTE_STAGE));
- assign _zz_125_ = writeBack_INSTRUCTION[13 : 12];
- assign _zz_126_ = {IBusSimplePlugin_fetchPc_inc,(2'b00)};
- assign _zz_127_ = {29'd0, _zz_126_};
- assign _zz_128_ = (IBusSimplePlugin_pendingCmd + _zz_130_);
- assign _zz_129_ = (IBusSimplePlugin_cmd_valid && IBusSimplePlugin_cmd_ready);
- assign _zz_130_ = {2'd0, _zz_129_};
- assign _zz_131_ = iBus_rsp_valid;
- assign _zz_132_ = {2'd0, _zz_131_};
- assign _zz_133_ = (iBus_rsp_valid && (IBusSimplePlugin_rspJoin_discardCounter != (3'b000)));
- assign _zz_134_ = {2'd0, _zz_133_};
- assign _zz_135_ = iBus_rsp_valid;
- assign _zz_136_ = {2'd0, _zz_135_};
- assign _zz_137_ = _zz_78_[0 : 0];
- assign _zz_138_ = _zz_78_[3 : 3];
- assign _zz_139_ = _zz_78_[6 : 6];
- assign _zz_140_ = _zz_78_[8 : 8];
- assign _zz_141_ = _zz_78_[9 : 9];
- assign _zz_142_ = _zz_78_[10 : 10];
- assign _zz_143_ = _zz_78_[19 : 19];
- assign _zz_144_ = _zz_78_[20 : 20];
- assign _zz_145_ = execute_SRC_LESS;
- assign _zz_146_ = (3'b100);
- assign _zz_147_ = decode_INSTRUCTION[19 : 15];
- assign _zz_148_ = decode_INSTRUCTION[31 : 20];
- assign _zz_149_ = {decode_INSTRUCTION[31 : 25],decode_INSTRUCTION[11 : 7]};
- assign _zz_150_ = ($signed(_zz_151_) + $signed(_zz_155_));
- assign _zz_151_ = ($signed(_zz_152_) + $signed(_zz_153_));
- assign _zz_152_ = execute_SRC1;
- assign _zz_153_ = (execute_SRC_USE_SUB_LESS ? (~ execute_SRC2) : execute_SRC2);
- assign _zz_154_ = (execute_SRC_USE_SUB_LESS ? _zz_156_ : _zz_157_);
- assign _zz_155_ = {{30{_zz_154_[1]}}, _zz_154_};
- assign _zz_156_ = (2'b01);
- assign _zz_157_ = (2'b00);
- assign _zz_158_ = (_zz_159_ >>> 1);
- assign _zz_159_ = {((execute_SHIFT_CTRL == `ShiftCtrlEnum_defaultEncoding_SRA_1) && execute_LightShifterPlugin_shiftInput[31]),execute_LightShifterPlugin_shiftInput};
- assign _zz_160_ = {{{execute_INSTRUCTION[31],execute_INSTRUCTION[19 : 12]},execute_INSTRUCTION[20]},execute_INSTRUCTION[30 : 21]};
- assign _zz_161_ = execute_INSTRUCTION[31 : 20];
- assign _zz_162_ = {{{execute_INSTRUCTION[31],execute_INSTRUCTION[7]},execute_INSTRUCTION[30 : 25]},execute_INSTRUCTION[11 : 8]};
- assign _zz_163_ = 1'b1;
- assign _zz_164_ = 1'b1;
- assign _zz_165_ = (decode_INSTRUCTION & (32'b00000000000000000010000000010000));
- assign _zz_166_ = (32'b00000000000000000010000000000000);
- assign _zz_167_ = (decode_INSTRUCTION & (32'b00000000000000000101000000000000));
- assign _zz_168_ = (32'b00000000000000000001000000000000);
- assign _zz_169_ = ((decode_INSTRUCTION & _zz_176_) == (32'b00000000000000000001000000000000));
- assign _zz_170_ = _zz_80_;
- assign _zz_171_ = {_zz_80_,{_zz_177_,_zz_178_}};
- assign _zz_172_ = (3'b000);
- assign _zz_173_ = ((_zz_179_ == _zz_180_) != (1'b0));
- assign _zz_174_ = ({_zz_181_,_zz_182_} != (2'b00));
- assign _zz_175_ = {(_zz_183_ != _zz_184_),{_zz_185_,{_zz_186_,_zz_187_}}};
- assign _zz_176_ = (32'b00000000000000000001000000000000);
- assign _zz_177_ = ((decode_INSTRUCTION & (32'b00000000000000000011000000000000)) == (32'b00000000000000000001000000000000));
- assign _zz_178_ = ((decode_INSTRUCTION & (32'b00000000000000000011000000000000)) == (32'b00000000000000000010000000000000));
- assign _zz_179_ = (decode_INSTRUCTION & (32'b00000000000000000111000000010100));
- assign _zz_180_ = (32'b00000000000000000101000000010000);
- assign _zz_181_ = ((decode_INSTRUCTION & _zz_188_) == (32'b01000000000000000001000000010000));
- assign _zz_182_ = ((decode_INSTRUCTION & _zz_189_) == (32'b00000000000000000001000000010000));
- assign _zz_183_ = _zz_82_;
- assign _zz_184_ = (1'b0);
- assign _zz_185_ = ((_zz_190_ == _zz_191_) != (1'b0));
- assign _zz_186_ = ({_zz_192_,_zz_193_} != (2'b00));
- assign _zz_187_ = {(_zz_194_ != _zz_195_),{_zz_196_,{_zz_197_,_zz_198_}}};
- assign _zz_188_ = (32'b01000000000000000011000000010100);
- assign _zz_189_ = (32'b00000000000000000111000000010100);
- assign _zz_190_ = (decode_INSTRUCTION & (32'b00000000000000000000000001000100));
- assign _zz_191_ = (32'b00000000000000000000000000000100);
- assign _zz_192_ = _zz_80_;
- assign _zz_193_ = ((decode_INSTRUCTION & (32'b00000000000000000000000001110000)) == (32'b00000000000000000000000000100000));
- assign _zz_194_ = {_zz_80_,_zz_79_};
- assign _zz_195_ = (2'b00);
- assign _zz_196_ = ({(_zz_199_ == _zz_200_),(_zz_201_ == _zz_202_)} != (2'b00));
- assign _zz_197_ = ({_zz_203_,{_zz_204_,_zz_205_}} != (3'b000));
- assign _zz_198_ = {(_zz_206_ != (1'b0)),{(_zz_207_ != _zz_208_),{_zz_209_,{_zz_210_,_zz_211_}}}};
- assign _zz_199_ = (decode_INSTRUCTION & (32'b00000000000000000000000000000100));
- assign _zz_200_ = (32'b00000000000000000000000000000000);
- assign _zz_201_ = (decode_INSTRUCTION & (32'b00000000000000000000000000011000));
- assign _zz_202_ = (32'b00000000000000000000000000000000);
- assign _zz_203_ = ((decode_INSTRUCTION & (32'b00000000000000000000000001000100)) == (32'b00000000000000000000000001000000));
- assign _zz_204_ = ((decode_INSTRUCTION & _zz_212_) == (32'b01000000000000000000000000110000));
- assign _zz_205_ = ((decode_INSTRUCTION & _zz_213_) == (32'b00000000000000000010000000010000));
- assign _zz_206_ = ((decode_INSTRUCTION & (32'b00000000000000000000000001010000)) == (32'b00000000000000000000000000000000));
- assign _zz_207_ = ((decode_INSTRUCTION & _zz_214_) == (32'b00000000000000000000000001000000));
- assign _zz_208_ = (1'b0);
- assign _zz_209_ = ((_zz_215_ == _zz_216_) != (1'b0));
- assign _zz_210_ = ({_zz_217_,_zz_218_} != (3'b000));
- assign _zz_211_ = {(_zz_219_ != _zz_220_),{_zz_221_,{_zz_222_,_zz_223_}}};
- assign _zz_212_ = (32'b01000000000000000000000000110000);
- assign _zz_213_ = (32'b00000000000000000010000000010100);
- assign _zz_214_ = (32'b00000000000000000000000001000000);
- assign _zz_215_ = (decode_INSTRUCTION & (32'b00000000000000000000000000100100));
- assign _zz_216_ = (32'b00000000000000000000000000100000);
- assign _zz_217_ = ((decode_INSTRUCTION & _zz_224_) == (32'b00000000000000000100000000000000));
- assign _zz_218_ = {(_zz_225_ == _zz_226_),(_zz_227_ == _zz_228_)};
- assign _zz_219_ = ((decode_INSTRUCTION & _zz_229_) == (32'b00000000000000000010000000000000));
- assign _zz_220_ = (1'b0);
- assign _zz_221_ = (_zz_81_ != (1'b0));
- assign _zz_222_ = (_zz_82_ != (1'b0));
- assign _zz_223_ = {(_zz_230_ != _zz_231_),(_zz_232_ != _zz_233_)};
- assign _zz_224_ = (32'b00000000000000000100000000000100);
- assign _zz_225_ = (decode_INSTRUCTION & (32'b00000000000000000000000001100100));
- assign _zz_226_ = (32'b00000000000000000000000000100100);
- assign _zz_227_ = (decode_INSTRUCTION & (32'b00000000000000000011000000000100));
- assign _zz_228_ = (32'b00000000000000000001000000000000);
- assign _zz_229_ = (32'b00000000000000000110000000000100);
- assign _zz_230_ = ((decode_INSTRUCTION & (32'b00000000000000000000000001001000)) == (32'b00000000000000000000000001000000));
- assign _zz_231_ = (1'b0);
- assign _zz_232_ = {_zz_81_,{_zz_80_,_zz_79_}};
- assign _zz_233_ = (3'b000);
- always @ (posedge clk) begin
- if(_zz_33_) begin
- RegFilePlugin_regFile[writeBack_RegFilePlugin_regFileWrite_payload_address] <= writeBack_RegFilePlugin_regFileWrite_payload_data;
- end
- end
- always @ (posedge clk) begin
- if(_zz_163_) begin
- _zz_114_ <= RegFilePlugin_regFile[decode_RegFilePlugin_regFileReadAddress1];
- end
- end
- always @ (posedge clk) begin
- if(_zz_164_) begin
- _zz_115_ <= RegFilePlugin_regFile[decode_RegFilePlugin_regFileReadAddress2];
- end
- end
- StreamFifoLowLatency IBusSimplePlugin_rspJoin_rspBuffer_c (
- .io_push_valid(iBus_rsp_takeWhen_valid),
- .io_push_ready(IBusSimplePlugin_rspJoin_rspBuffer_c_io_push_ready),
- .io_push_payload_error(iBus_rsp_takeWhen_payload_error),
- .io_push_payload_inst(iBus_rsp_takeWhen_payload_inst),
- .io_pop_valid(IBusSimplePlugin_rspJoin_rspBuffer_c_io_pop_valid),
- .io_pop_ready(IBusSimplePlugin_rspJoin_rspBufferOutput_ready),
- .io_pop_payload_error(IBusSimplePlugin_rspJoin_rspBuffer_c_io_pop_payload_error),
- .io_pop_payload_inst(IBusSimplePlugin_rspJoin_rspBuffer_c_io_pop_payload_inst),
- .io_flush(_zz_113_),
- .io_occupancy(IBusSimplePlugin_rspJoin_rspBuffer_c_io_occupancy),
- .clk(clk),
- .reset(reset)
- );
- `ifndef SYNTHESIS
- always @(*) begin
- case(decode_ALU_CTRL)
- `AluCtrlEnum_defaultEncoding_ADD_SUB : decode_ALU_CTRL_string = "ADD_SUB ";
- `AluCtrlEnum_defaultEncoding_SLT_SLTU : decode_ALU_CTRL_string = "SLT_SLTU";
- `AluCtrlEnum_defaultEncoding_BITWISE : decode_ALU_CTRL_string = "BITWISE ";
- default : decode_ALU_CTRL_string = "????????";
- endcase
- end
- always @(*) begin
- case(_zz_1_)
- `AluCtrlEnum_defaultEncoding_ADD_SUB : _zz_1__string = "ADD_SUB ";
- `AluCtrlEnum_defaultEncoding_SLT_SLTU : _zz_1__string = "SLT_SLTU";
- `AluCtrlEnum_defaultEncoding_BITWISE : _zz_1__string = "BITWISE ";
- default : _zz_1__string = "????????";
- endcase
- end
- always @(*) begin
- case(_zz_2_)
- `AluCtrlEnum_defaultEncoding_ADD_SUB : _zz_2__string = "ADD_SUB ";
- `AluCtrlEnum_defaultEncoding_SLT_SLTU : _zz_2__string = "SLT_SLTU";
- `AluCtrlEnum_defaultEncoding_BITWISE : _zz_2__string = "BITWISE ";
- default : _zz_2__string = "????????";
- endcase
- end
- always @(*) begin
- case(_zz_3_)
- `AluCtrlEnum_defaultEncoding_ADD_SUB : _zz_3__string = "ADD_SUB ";
- `AluCtrlEnum_defaultEncoding_SLT_SLTU : _zz_3__string = "SLT_SLTU";
- `AluCtrlEnum_defaultEncoding_BITWISE : _zz_3__string = "BITWISE ";
- default : _zz_3__string = "????????";
- endcase
- end
- always @(*) begin
- case(decode_SHIFT_CTRL)
- `ShiftCtrlEnum_defaultEncoding_DISABLE_1 : decode_SHIFT_CTRL_string = "DISABLE_1";
- `ShiftCtrlEnum_defaultEncoding_SLL_1 : decode_SHIFT_CTRL_string = "SLL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRL_1 : decode_SHIFT_CTRL_string = "SRL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRA_1 : decode_SHIFT_CTRL_string = "SRA_1 ";
- default : decode_SHIFT_CTRL_string = "?????????";
- endcase
- end
- always @(*) begin
- case(_zz_4_)
- `ShiftCtrlEnum_defaultEncoding_DISABLE_1 : _zz_4__string = "DISABLE_1";
- `ShiftCtrlEnum_defaultEncoding_SLL_1 : _zz_4__string = "SLL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRL_1 : _zz_4__string = "SRL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRA_1 : _zz_4__string = "SRA_1 ";
- default : _zz_4__string = "?????????";
- endcase
- end
- always @(*) begin
- case(_zz_5_)
- `ShiftCtrlEnum_defaultEncoding_DISABLE_1 : _zz_5__string = "DISABLE_1";
- `ShiftCtrlEnum_defaultEncoding_SLL_1 : _zz_5__string = "SLL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRL_1 : _zz_5__string = "SRL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRA_1 : _zz_5__string = "SRA_1 ";
- default : _zz_5__string = "?????????";
- endcase
- end
- always @(*) begin
- case(_zz_6_)
- `ShiftCtrlEnum_defaultEncoding_DISABLE_1 : _zz_6__string = "DISABLE_1";
- `ShiftCtrlEnum_defaultEncoding_SLL_1 : _zz_6__string = "SLL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRL_1 : _zz_6__string = "SRL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRA_1 : _zz_6__string = "SRA_1 ";
- default : _zz_6__string = "?????????";
- endcase
- end
- always @(*) begin
- case(decode_ALU_BITWISE_CTRL)
- `AluBitwiseCtrlEnum_defaultEncoding_XOR_1 : decode_ALU_BITWISE_CTRL_string = "XOR_1";
- `AluBitwiseCtrlEnum_defaultEncoding_OR_1 : decode_ALU_BITWISE_CTRL_string = "OR_1 ";
- `AluBitwiseCtrlEnum_defaultEncoding_AND_1 : decode_ALU_BITWISE_CTRL_string = "AND_1";
- `AluBitwiseCtrlEnum_defaultEncoding_SRC1 : decode_ALU_BITWISE_CTRL_string = "SRC1 ";
- default : decode_ALU_BITWISE_CTRL_string = "?????";
- endcase
- end
- always @(*) begin
- case(_zz_7_)
- `AluBitwiseCtrlEnum_defaultEncoding_XOR_1 : _zz_7__string = "XOR_1";
- `AluBitwiseCtrlEnum_defaultEncoding_OR_1 : _zz_7__string = "OR_1 ";
- `AluBitwiseCtrlEnum_defaultEncoding_AND_1 : _zz_7__string = "AND_1";
- `AluBitwiseCtrlEnum_defaultEncoding_SRC1 : _zz_7__string = "SRC1 ";
- default : _zz_7__string = "?????";
- endcase
- end
- always @(*) begin
- case(_zz_8_)
- `AluBitwiseCtrlEnum_defaultEncoding_XOR_1 : _zz_8__string = "XOR_1";
- `AluBitwiseCtrlEnum_defaultEncoding_OR_1 : _zz_8__string = "OR_1 ";
- `AluBitwiseCtrlEnum_defaultEncoding_AND_1 : _zz_8__string = "AND_1";
- `AluBitwiseCtrlEnum_defaultEncoding_SRC1 : _zz_8__string = "SRC1 ";
- default : _zz_8__string = "?????";
- endcase
- end
- always @(*) begin
- case(_zz_9_)
- `AluBitwiseCtrlEnum_defaultEncoding_XOR_1 : _zz_9__string = "XOR_1";
- `AluBitwiseCtrlEnum_defaultEncoding_OR_1 : _zz_9__string = "OR_1 ";
- `AluBitwiseCtrlEnum_defaultEncoding_AND_1 : _zz_9__string = "AND_1";
- `AluBitwiseCtrlEnum_defaultEncoding_SRC1 : _zz_9__string = "SRC1 ";
- default : _zz_9__string = "?????";
- endcase
- end
- always @(*) begin
- case(decode_BRANCH_CTRL)
- `BranchCtrlEnum_defaultEncoding_INC : decode_BRANCH_CTRL_string = "INC ";
- `BranchCtrlEnum_defaultEncoding_B : decode_BRANCH_CTRL_string = "B ";
- `BranchCtrlEnum_defaultEncoding_JAL : decode_BRANCH_CTRL_string = "JAL ";
- `BranchCtrlEnum_defaultEncoding_JALR : decode_BRANCH_CTRL_string = "JALR";
- default : decode_BRANCH_CTRL_string = "????";
- endcase
- end
- always @(*) begin
- case(_zz_10_)
- `BranchCtrlEnum_defaultEncoding_INC : _zz_10__string = "INC ";
- `BranchCtrlEnum_defaultEncoding_B : _zz_10__string = "B ";
- `BranchCtrlEnum_defaultEncoding_JAL : _zz_10__string = "JAL ";
- `BranchCtrlEnum_defaultEncoding_JALR : _zz_10__string = "JALR";
- default : _zz_10__string = "????";
- endcase
- end
- always @(*) begin
- case(_zz_11_)
- `BranchCtrlEnum_defaultEncoding_INC : _zz_11__string = "INC ";
- `BranchCtrlEnum_defaultEncoding_B : _zz_11__string = "B ";
- `BranchCtrlEnum_defaultEncoding_JAL : _zz_11__string = "JAL ";
- `BranchCtrlEnum_defaultEncoding_JALR : _zz_11__string = "JALR";
- default : _zz_11__string = "????";
- endcase
- end
- always @(*) begin
- case(_zz_12_)
- `BranchCtrlEnum_defaultEncoding_INC : _zz_12__string = "INC ";
- `BranchCtrlEnum_defaultEncoding_B : _zz_12__string = "B ";
- `BranchCtrlEnum_defaultEncoding_JAL : _zz_12__string = "JAL ";
- `BranchCtrlEnum_defaultEncoding_JALR : _zz_12__string = "JALR";
- default : _zz_12__string = "????";
- endcase
- end
- always @(*) begin
- case(execute_BRANCH_CTRL)
- `BranchCtrlEnum_defaultEncoding_INC : execute_BRANCH_CTRL_string = "INC ";
- `BranchCtrlEnum_defaultEncoding_B : execute_BRANCH_CTRL_string = "B ";
- `BranchCtrlEnum_defaultEncoding_JAL : execute_BRANCH_CTRL_string = "JAL ";
- `BranchCtrlEnum_defaultEncoding_JALR : execute_BRANCH_CTRL_string = "JALR";
- default : execute_BRANCH_CTRL_string = "????";
- endcase
- end
- always @(*) begin
- case(_zz_14_)
- `BranchCtrlEnum_defaultEncoding_INC : _zz_14__string = "INC ";
- `BranchCtrlEnum_defaultEncoding_B : _zz_14__string = "B ";
- `BranchCtrlEnum_defaultEncoding_JAL : _zz_14__string = "JAL ";
- `BranchCtrlEnum_defaultEncoding_JALR : _zz_14__string = "JALR";
- default : _zz_14__string = "????";
- endcase
- end
- always @(*) begin
- case(execute_SHIFT_CTRL)
- `ShiftCtrlEnum_defaultEncoding_DISABLE_1 : execute_SHIFT_CTRL_string = "DISABLE_1";
- `ShiftCtrlEnum_defaultEncoding_SLL_1 : execute_SHIFT_CTRL_string = "SLL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRL_1 : execute_SHIFT_CTRL_string = "SRL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRA_1 : execute_SHIFT_CTRL_string = "SRA_1 ";
- default : execute_SHIFT_CTRL_string = "?????????";
- endcase
- end
- always @(*) begin
- case(_zz_17_)
- `ShiftCtrlEnum_defaultEncoding_DISABLE_1 : _zz_17__string = "DISABLE_1";
- `ShiftCtrlEnum_defaultEncoding_SLL_1 : _zz_17__string = "SLL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRL_1 : _zz_17__string = "SRL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRA_1 : _zz_17__string = "SRA_1 ";
- default : _zz_17__string = "?????????";
- endcase
- end
- always @(*) begin
- case(decode_SRC2_CTRL)
- `Src2CtrlEnum_defaultEncoding_RS : decode_SRC2_CTRL_string = "RS ";
- `Src2CtrlEnum_defaultEncoding_IMI : decode_SRC2_CTRL_string = "IMI";
- `Src2CtrlEnum_defaultEncoding_IMS : decode_SRC2_CTRL_string = "IMS";
- `Src2CtrlEnum_defaultEncoding_PC : decode_SRC2_CTRL_string = "PC ";
- default : decode_SRC2_CTRL_string = "???";
- endcase
- end
- always @(*) begin
- case(_zz_23_)
- `Src2CtrlEnum_defaultEncoding_RS : _zz_23__string = "RS ";
- `Src2CtrlEnum_defaultEncoding_IMI : _zz_23__string = "IMI";
- `Src2CtrlEnum_defaultEncoding_IMS : _zz_23__string = "IMS";
- `Src2CtrlEnum_defaultEncoding_PC : _zz_23__string = "PC ";
- default : _zz_23__string = "???";
- endcase
- end
- always @(*) begin
- case(decode_SRC1_CTRL)
- `Src1CtrlEnum_defaultEncoding_RS : decode_SRC1_CTRL_string = "RS ";
- `Src1CtrlEnum_defaultEncoding_IMU : decode_SRC1_CTRL_string = "IMU ";
- `Src1CtrlEnum_defaultEncoding_PC_INCREMENT : decode_SRC1_CTRL_string = "PC_INCREMENT";
- `Src1CtrlEnum_defaultEncoding_URS1 : decode_SRC1_CTRL_string = "URS1 ";
- default : decode_SRC1_CTRL_string = "????????????";
- endcase
- end
- always @(*) begin
- case(_zz_26_)
- `Src1CtrlEnum_defaultEncoding_RS : _zz_26__string = "RS ";
- `Src1CtrlEnum_defaultEncoding_IMU : _zz_26__string = "IMU ";
- `Src1CtrlEnum_defaultEncoding_PC_INCREMENT : _zz_26__string = "PC_INCREMENT";
- `Src1CtrlEnum_defaultEncoding_URS1 : _zz_26__string = "URS1 ";
- default : _zz_26__string = "????????????";
- endcase
- end
- always @(*) begin
- case(execute_ALU_CTRL)
- `AluCtrlEnum_defaultEncoding_ADD_SUB : execute_ALU_CTRL_string = "ADD_SUB ";
- `AluCtrlEnum_defaultEncoding_SLT_SLTU : execute_ALU_CTRL_string = "SLT_SLTU";
- `AluCtrlEnum_defaultEncoding_BITWISE : execute_ALU_CTRL_string = "BITWISE ";
- default : execute_ALU_CTRL_string = "????????";
- endcase
- end
- always @(*) begin
- case(_zz_28_)
- `AluCtrlEnum_defaultEncoding_ADD_SUB : _zz_28__string = "ADD_SUB ";
- `AluCtrlEnum_defaultEncoding_SLT_SLTU : _zz_28__string = "SLT_SLTU";
- `AluCtrlEnum_defaultEncoding_BITWISE : _zz_28__string = "BITWISE ";
- default : _zz_28__string = "????????";
- endcase
- end
- always @(*) begin
- case(execute_ALU_BITWISE_CTRL)
- `AluBitwiseCtrlEnum_defaultEncoding_XOR_1 : execute_ALU_BITWISE_CTRL_string = "XOR_1";
- `AluBitwiseCtrlEnum_defaultEncoding_OR_1 : execute_ALU_BITWISE_CTRL_string = "OR_1 ";
- `AluBitwiseCtrlEnum_defaultEncoding_AND_1 : execute_ALU_BITWISE_CTRL_string = "AND_1";
- `AluBitwiseCtrlEnum_defaultEncoding_SRC1 : execute_ALU_BITWISE_CTRL_string = "SRC1 ";
- default : execute_ALU_BITWISE_CTRL_string = "?????";
- endcase
- end
- always @(*) begin
- case(_zz_30_)
- `AluBitwiseCtrlEnum_defaultEncoding_XOR_1 : _zz_30__string = "XOR_1";
- `AluBitwiseCtrlEnum_defaultEncoding_OR_1 : _zz_30__string = "OR_1 ";
- `AluBitwiseCtrlEnum_defaultEncoding_AND_1 : _zz_30__string = "AND_1";
- `AluBitwiseCtrlEnum_defaultEncoding_SRC1 : _zz_30__string = "SRC1 ";
- default : _zz_30__string = "?????";
- endcase
- end
- always @(*) begin
- case(_zz_38_)
- `AluBitwiseCtrlEnum_defaultEncoding_XOR_1 : _zz_38__string = "XOR_1";
- `AluBitwiseCtrlEnum_defaultEncoding_OR_1 : _zz_38__string = "OR_1 ";
- `AluBitwiseCtrlEnum_defaultEncoding_AND_1 : _zz_38__string = "AND_1";
- `AluBitwiseCtrlEnum_defaultEncoding_SRC1 : _zz_38__string = "SRC1 ";
- default : _zz_38__string = "?????";
- endcase
- end
- always @(*) begin
- case(_zz_39_)
- `ShiftCtrlEnum_defaultEncoding_DISABLE_1 : _zz_39__string = "DISABLE_1";
- `ShiftCtrlEnum_defaultEncoding_SLL_1 : _zz_39__string = "SLL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRL_1 : _zz_39__string = "SRL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRA_1 : _zz_39__string = "SRA_1 ";
- default : _zz_39__string = "?????????";
- endcase
- end
- always @(*) begin
- case(_zz_40_)
- `Src1CtrlEnum_defaultEncoding_RS : _zz_40__string = "RS ";
- `Src1CtrlEnum_defaultEncoding_IMU : _zz_40__string = "IMU ";
- `Src1CtrlEnum_defaultEncoding_PC_INCREMENT : _zz_40__string = "PC_INCREMENT";
- `Src1CtrlEnum_defaultEncoding_URS1 : _zz_40__string = "URS1 ";
- default : _zz_40__string = "????????????";
- endcase
- end
- always @(*) begin
- case(_zz_41_)
- `Src2CtrlEnum_defaultEncoding_RS : _zz_41__string = "RS ";
- `Src2CtrlEnum_defaultEncoding_IMI : _zz_41__string = "IMI";
- `Src2CtrlEnum_defaultEncoding_IMS : _zz_41__string = "IMS";
- `Src2CtrlEnum_defaultEncoding_PC : _zz_41__string = "PC ";
- default : _zz_41__string = "???";
- endcase
- end
- always @(*) begin
- case(_zz_46_)
- `AluCtrlEnum_defaultEncoding_ADD_SUB : _zz_46__string = "ADD_SUB ";
- `AluCtrlEnum_defaultEncoding_SLT_SLTU : _zz_46__string = "SLT_SLTU";
- `AluCtrlEnum_defaultEncoding_BITWISE : _zz_46__string = "BITWISE ";
- default : _zz_46__string = "????????";
- endcase
- end
- always @(*) begin
- case(_zz_48_)
- `BranchCtrlEnum_defaultEncoding_INC : _zz_48__string = "INC ";
- `BranchCtrlEnum_defaultEncoding_B : _zz_48__string = "B ";
- `BranchCtrlEnum_defaultEncoding_JAL : _zz_48__string = "JAL ";
- `BranchCtrlEnum_defaultEncoding_JALR : _zz_48__string = "JALR";
- default : _zz_48__string = "????";
- endcase
- end
- always @(*) begin
- case(_zz_83_)
- `BranchCtrlEnum_defaultEncoding_INC : _zz_83__string = "INC ";
- `BranchCtrlEnum_defaultEncoding_B : _zz_83__string = "B ";
- `BranchCtrlEnum_defaultEncoding_JAL : _zz_83__string = "JAL ";
- `BranchCtrlEnum_defaultEncoding_JALR : _zz_83__string = "JALR";
- default : _zz_83__string = "????";
- endcase
- end
- always @(*) begin
- case(_zz_84_)
- `AluCtrlEnum_defaultEncoding_ADD_SUB : _zz_84__string = "ADD_SUB ";
- `AluCtrlEnum_defaultEncoding_SLT_SLTU : _zz_84__string = "SLT_SLTU";
- `AluCtrlEnum_defaultEncoding_BITWISE : _zz_84__string = "BITWISE ";
- default : _zz_84__string = "????????";
- endcase
- end
- always @(*) begin
- case(_zz_85_)
- `Src2CtrlEnum_defaultEncoding_RS : _zz_85__string = "RS ";
- `Src2CtrlEnum_defaultEncoding_IMI : _zz_85__string = "IMI";
- `Src2CtrlEnum_defaultEncoding_IMS : _zz_85__string = "IMS";
- `Src2CtrlEnum_defaultEncoding_PC : _zz_85__string = "PC ";
- default : _zz_85__string = "???";
- endcase
- end
- always @(*) begin
- case(_zz_86_)
- `Src1CtrlEnum_defaultEncoding_RS : _zz_86__string = "RS ";
- `Src1CtrlEnum_defaultEncoding_IMU : _zz_86__string = "IMU ";
- `Src1CtrlEnum_defaultEncoding_PC_INCREMENT : _zz_86__string = "PC_INCREMENT";
- `Src1CtrlEnum_defaultEncoding_URS1 : _zz_86__string = "URS1 ";
- default : _zz_86__string = "????????????";
- endcase
- end
- always @(*) begin
- case(_zz_87_)
- `ShiftCtrlEnum_defaultEncoding_DISABLE_1 : _zz_87__string = "DISABLE_1";
- `ShiftCtrlEnum_defaultEncoding_SLL_1 : _zz_87__string = "SLL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRL_1 : _zz_87__string = "SRL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRA_1 : _zz_87__string = "SRA_1 ";
- default : _zz_87__string = "?????????";
- endcase
- end
- always @(*) begin
- case(_zz_88_)
- `AluBitwiseCtrlEnum_defaultEncoding_XOR_1 : _zz_88__string = "XOR_1";
- `AluBitwiseCtrlEnum_defaultEncoding_OR_1 : _zz_88__string = "OR_1 ";
- `AluBitwiseCtrlEnum_defaultEncoding_AND_1 : _zz_88__string = "AND_1";
- `AluBitwiseCtrlEnum_defaultEncoding_SRC1 : _zz_88__string = "SRC1 ";
- default : _zz_88__string = "?????";
- endcase
- end
- always @(*) begin
- case(decode_to_execute_BRANCH_CTRL)
- `BranchCtrlEnum_defaultEncoding_INC : decode_to_execute_BRANCH_CTRL_string = "INC ";
- `BranchCtrlEnum_defaultEncoding_B : decode_to_execute_BRANCH_CTRL_string = "B ";
- `BranchCtrlEnum_defaultEncoding_JAL : decode_to_execute_BRANCH_CTRL_string = "JAL ";
- `BranchCtrlEnum_defaultEncoding_JALR : decode_to_execute_BRANCH_CTRL_string = "JALR";
- default : decode_to_execute_BRANCH_CTRL_string = "????";
- endcase
- end
- always @(*) begin
- case(decode_to_execute_ALU_BITWISE_CTRL)
- `AluBitwiseCtrlEnum_defaultEncoding_XOR_1 : decode_to_execute_ALU_BITWISE_CTRL_string = "XOR_1";
- `AluBitwiseCtrlEnum_defaultEncoding_OR_1 : decode_to_execute_ALU_BITWISE_CTRL_string = "OR_1 ";
- `AluBitwiseCtrlEnum_defaultEncoding_AND_1 : decode_to_execute_ALU_BITWISE_CTRL_string = "AND_1";
- `AluBitwiseCtrlEnum_defaultEncoding_SRC1 : decode_to_execute_ALU_BITWISE_CTRL_string = "SRC1 ";
- default : decode_to_execute_ALU_BITWISE_CTRL_string = "?????";
- endcase
- end
- always @(*) begin
- case(decode_to_execute_SHIFT_CTRL)
- `ShiftCtrlEnum_defaultEncoding_DISABLE_1 : decode_to_execute_SHIFT_CTRL_string = "DISABLE_1";
- `ShiftCtrlEnum_defaultEncoding_SLL_1 : decode_to_execute_SHIFT_CTRL_string = "SLL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRL_1 : decode_to_execute_SHIFT_CTRL_string = "SRL_1 ";
- `ShiftCtrlEnum_defaultEncoding_SRA_1 : decode_to_execute_SHIFT_CTRL_string = "SRA_1 ";
- default : decode_to_execute_SHIFT_CTRL_string = "?????????";
- endcase
- end
- always @(*) begin
- case(decode_to_execute_ALU_CTRL)
- `AluCtrlEnum_defaultEncoding_ADD_SUB : decode_to_execute_ALU_CTRL_string = "ADD_SUB ";
- `AluCtrlEnum_defaultEncoding_SLT_SLTU : decode_to_execute_ALU_CTRL_string = "SLT_SLTU";
- `AluCtrlEnum_defaultEncoding_BITWISE : decode_to_execute_ALU_CTRL_string = "BITWISE ";
- default : decode_to_execute_ALU_CTRL_string = "????????";
- endcase
- end
- `endif
- assign decode_ALU_CTRL = _zz_1_;
- assign _zz_2_ = _zz_3_;
- assign execute_BRANCH_CALC = _zz_13_;
- assign decode_SHIFT_CTRL = _zz_4_;
- assign _zz_5_ = _zz_6_;
- assign decode_RS1 = _zz_35_;
- assign memory_MEMORY_READ_DATA = _zz_51_;
- assign writeBack_REGFILE_WRITE_DATA = memory_to_writeBack_REGFILE_WRITE_DATA;
- assign execute_REGFILE_WRITE_DATA = _zz_29_;
- assign decode_ALU_BITWISE_CTRL = _zz_7_;
- assign _zz_8_ = _zz_9_;
- assign execute_BRANCH_DO = _zz_15_;
- assign decode_SRC1 = _zz_27_;
- assign decode_RS2 = _zz_34_;
- assign decode_SRC_USE_SUB_LESS = _zz_43_;
- assign memory_PC = execute_to_memory_PC;
- assign decode_BYPASSABLE_EXECUTE_STAGE = _zz_37_;
- assign execute_BYPASSABLE_MEMORY_STAGE = decode_to_execute_BYPASSABLE_MEMORY_STAGE;
- assign decode_BYPASSABLE_MEMORY_STAGE = _zz_47_;
- assign decode_SRC_LESS_UNSIGNED = _zz_36_;
- assign memory_MEMORY_ADDRESS_LOW = execute_to_memory_MEMORY_ADDRESS_LOW;
- assign execute_MEMORY_ADDRESS_LOW = _zz_52_;
- assign memory_FORMAL_PC_NEXT = execute_to_memory_FORMAL_PC_NEXT;
- assign execute_FORMAL_PC_NEXT = decode_to_execute_FORMAL_PC_NEXT;
- assign decode_FORMAL_PC_NEXT = _zz_53_;
- assign decode_SRC2 = _zz_24_;
- assign decode_MEMORY_ENABLE = _zz_44_;
- assign decode_BRANCH_CTRL = _zz_10_;
- assign _zz_11_ = _zz_12_;
- assign memory_BRANCH_CALC = execute_to_memory_BRANCH_CALC;
- assign memory_BRANCH_DO = execute_to_memory_BRANCH_DO;
- assign execute_PC = decode_to_execute_PC;
- assign execute_RS1 = decode_to_execute_RS1;
- assign execute_BRANCH_CTRL = _zz_14_;
- assign decode_RS2_USE = _zz_45_;
- assign decode_RS1_USE = _zz_42_;
- assign execute_REGFILE_WRITE_VALID = decode_to_execute_REGFILE_WRITE_VALID;
- assign execute_BYPASSABLE_EXECUTE_STAGE = decode_to_execute_BYPASSABLE_EXECUTE_STAGE;
- assign memory_REGFILE_WRITE_VALID = execute_to_memory_REGFILE_WRITE_VALID;
- assign memory_BYPASSABLE_MEMORY_STAGE = execute_to_memory_BYPASSABLE_MEMORY_STAGE;
- assign writeBack_REGFILE_WRITE_VALID = memory_to_writeBack_REGFILE_WRITE_VALID;
- always @ (*) begin
- _zz_16_ = execute_REGFILE_WRITE_DATA;
- if(_zz_116_)begin
- _zz_16_ = _zz_97_;
- end
- end
- assign memory_REGFILE_WRITE_DATA = execute_to_memory_REGFILE_WRITE_DATA;
- assign execute_SHIFT_CTRL = _zz_17_;
- assign execute_SRC_LESS_UNSIGNED = decode_to_execute_SRC_LESS_UNSIGNED;
- assign execute_SRC_USE_SUB_LESS = decode_to_execute_SRC_USE_SUB_LESS;
- assign _zz_21_ = decode_PC;
- assign _zz_22_ = decode_RS2;
- assign decode_SRC2_CTRL = _zz_23_;
- assign _zz_25_ = decode_RS1;
- assign decode_SRC1_CTRL = _zz_26_;
- assign execute_SRC_ADD_SUB = _zz_20_;
- assign execute_SRC_LESS = _zz_18_;
- assign execute_ALU_CTRL = _zz_28_;
- assign execute_SRC2 = decode_to_execute_SRC2;
- assign execute_SRC1 = decode_to_execute_SRC1;
- assign execute_ALU_BITWISE_CTRL = _zz_30_;
- assign _zz_31_ = writeBack_INSTRUCTION;
- assign _zz_32_ = writeBack_REGFILE_WRITE_VALID;
- always @ (*) begin
- _zz_33_ = 1'b0;
- if(writeBack_RegFilePlugin_regFileWrite_valid)begin
- _zz_33_ = 1'b1;
- end
- end
- assign decode_INSTRUCTION_ANTICIPATED = _zz_56_;
- always @ (*) begin
- decode_REGFILE_WRITE_VALID = _zz_49_;
- if((decode_INSTRUCTION[11 : 7] == (5'b00000)))begin
- decode_REGFILE_WRITE_VALID = 1'b0;
- end
- end
- always @ (*) begin
- _zz_50_ = writeBack_REGFILE_WRITE_DATA;
- if((writeBack_arbitration_isValid && writeBack_MEMORY_ENABLE))begin
- _zz_50_ = writeBack_DBusSimplePlugin_rspFormated;
- end
- end
- assign writeBack_MEMORY_ENABLE = memory_to_writeBack_MEMORY_ENABLE;
- assign writeBack_MEMORY_ADDRESS_LOW = memory_to_writeBack_MEMORY_ADDRESS_LOW;
- assign writeBack_MEMORY_READ_DATA = memory_to_writeBack_MEMORY_READ_DATA;
- assign memory_INSTRUCTION = execute_to_memory_INSTRUCTION;
- assign memory_MEMORY_ENABLE = execute_to_memory_MEMORY_ENABLE;
- assign execute_RS2 = decode_to_execute_RS2;
- assign execute_SRC_ADD = _zz_19_;
- assign execute_INSTRUCTION = decode_to_execute_INSTRUCTION;
- assign execute_ALIGNEMENT_FAULT = 1'b0;
- assign execute_MEMORY_ENABLE = decode_to_execute_MEMORY_ENABLE;
- assign writeBack_PC = memory_to_writeBack_PC;
- assign writeBack_INSTRUCTION = memory_to_writeBack_INSTRUCTION;
- assign decode_PC = _zz_55_;
- assign decode_INSTRUCTION = _zz_54_;
- assign decode_arbitration_haltItself = 1'b0;
- always @ (*) begin
- decode_arbitration_haltByOther = 1'b0;
- if((decode_arbitration_isValid && (_zz_98_ || _zz_99_)))begin
- decode_arbitration_haltByOther = 1'b1;
- end
- end
- always @ (*) begin
- decode_arbitration_removeIt = 1'b0;
- if(decode_arbitration_isFlushed)begin
- decode_arbitration_removeIt = 1'b1;
- end
- end
- assign decode_arbitration_flushAll = 1'b0;
- assign decode_arbitration_redoIt = 1'b0;
- always @ (*) begin
- execute_arbitration_haltItself = 1'b0;
- if(((((execute_arbitration_isValid && execute_MEMORY_ENABLE) && (! dBus_cmd_ready)) && (! execute_ALIGNEMENT_FAULT)) && (! execute_DBusSimplePlugin_cmdSent)))begin
- execute_arbitration_haltItself = 1'b1;
- end
- if(_zz_116_)begin
- if(_zz_117_)begin
- if(! execute_LightShifterPlugin_done) begin
- execute_arbitration_haltItself = 1'b1;
- end
- end
- end
- end
- assign execute_arbitration_haltByOther = 1'b0;
- always @ (*) begin
- execute_arbitration_removeIt = 1'b0;
- if(execute_arbitration_isFlushed)begin
- execute_arbitration_removeIt = 1'b1;
- end
- end
- always @ (*) begin
- execute_arbitration_flushAll = 1'b0;
- if(_zz_58_)begin
- execute_arbitration_flushAll = 1'b1;
- end
- end
- assign execute_arbitration_redoIt = 1'b0;
- always @ (*) begin
- memory_arbitration_haltItself = 1'b0;
- if((((memory_arbitration_isValid && memory_MEMORY_ENABLE) && (! memory_INSTRUCTION[5])) && (! dBus_rsp_ready)))begin
- memory_arbitration_haltItself = 1'b1;
- end
- end
- assign memory_arbitration_haltByOther = 1'b0;
- always @ (*) begin
- memory_arbitration_removeIt = 1'b0;
- if(memory_arbitration_isFlushed)begin
- memory_arbitration_removeIt = 1'b1;
- end
- end
- assign memory_arbitration_flushAll = 1'b0;
- assign memory_arbitration_redoIt = 1'b0;
- assign writeBack_arbitration_haltItself = 1'b0;
- assign writeBack_arbitration_haltByOther = 1'b0;
- always @ (*) begin
- writeBack_arbitration_removeIt = 1'b0;
- if(writeBack_arbitration_isFlushed)begin
- writeBack_arbitration_removeIt = 1'b1;
- end
- end
- assign writeBack_arbitration_flushAll = 1'b0;
- assign writeBack_arbitration_redoIt = 1'b0;
- assign _zz_57_ = 1'b0;
- assign IBusSimplePlugin_jump_pcLoad_valid = (_zz_58_ != (1'b0));
- assign IBusSimplePlugin_jump_pcLoad_payload = memory_BRANCH_CALC;
- assign _zz_59_ = (! 1'b0);
- assign IBusSimplePlugin_fetchPc_output_valid = (IBusSimplePlugin_fetchPc_preOutput_valid && _zz_59_);
- assign IBusSimplePlugin_fetchPc_preOutput_ready = (IBusSimplePlugin_fetchPc_output_ready && _zz_59_);
- assign IBusSimplePlugin_fetchPc_output_payload = IBusSimplePlugin_fetchPc_preOutput_payload;
- always @ (*) begin
- IBusSimplePlugin_fetchPc_propagatePc = 1'b0;
- if((IBusSimplePlugin_iBusRsp_stages_1_input_valid && IBusSimplePlugin_iBusRsp_stages_1_input_ready))begin
- IBusSimplePlugin_fetchPc_propagatePc = 1'b1;
- end
- end
- always @ (*) begin
- IBusSimplePlugin_fetchPc_pc = (IBusSimplePlugin_fetchPc_pcReg + _zz_127_);
- if(IBusSimplePlugin_jump_pcLoad_valid)begin
- IBusSimplePlugin_fetchPc_pc = IBusSimplePlugin_jump_pcLoad_payload;
- end
- IBusSimplePlugin_fetchPc_pc[0] = 1'b0;
- IBusSimplePlugin_fetchPc_pc[1] = 1'b0;
- end
- always @ (*) begin
- IBusSimplePlugin_fetchPc_samplePcNext = 1'b0;
- if(IBusSimplePlugin_fetchPc_propagatePc)begin
- IBusSimplePlugin_fetchPc_samplePcNext = 1'b1;
- end
- if(IBusSimplePlugin_jump_pcLoad_valid)begin
- IBusSimplePlugin_fetchPc_samplePcNext = 1'b1;
- end
- if(_zz_118_)begin
- IBusSimplePlugin_fetchPc_samplePcNext = 1'b1;
- end
- end
- assign IBusSimplePlugin_fetchPc_preOutput_valid = _zz_60_;
- assign IBusSimplePlugin_fetchPc_preOutput_payload = IBusSimplePlugin_fetchPc_pc;
- assign IBusSimplePlugin_iBusRsp_stages_0_input_valid = IBusSimplePlugin_fetchPc_output_valid;
- assign IBusSimplePlugin_fetchPc_output_ready = IBusSimplePlugin_iBusRsp_stages_0_input_ready;
- assign IBusSimplePlugin_iBusRsp_stages_0_input_payload = IBusSimplePlugin_fetchPc_output_payload;
- assign IBusSimplePlugin_iBusRsp_stages_0_inputSample = 1'b1;
- always @ (*) begin
- IBusSimplePlugin_iBusRsp_stages_0_halt = 1'b0;
- if((IBusSimplePlugin_iBusRsp_stages_0_input_valid && ((! IBusSimplePlugin_cmd_valid) || (! IBusSimplePlugin_cmd_ready))))begin
- IBusSimplePlugin_iBusRsp_stages_0_halt = 1'b1;
- end
- end
- assign _zz_61_ = (! IBusSimplePlugin_iBusRsp_stages_0_halt);
- assign IBusSimplePlugin_iBusRsp_stages_0_input_ready = (IBusSimplePlugin_iBusRsp_stages_0_output_ready && _zz_61_);
- assign IBusSimplePlugin_iBusRsp_stages_0_output_valid = (IBusSimplePlugin_iBusRsp_stages_0_input_valid && _zz_61_);
- assign IBusSimplePlugin_iBusRsp_stages_0_output_payload = IBusSimplePlugin_iBusRsp_stages_0_input_payload;
- assign IBusSimplePlugin_iBusRsp_stages_1_halt = 1'b0;
- assign _zz_62_ = (! IBusSimplePlugin_iBusRsp_stages_1_halt);
- assign IBusSimplePlugin_iBusRsp_stages_1_input_ready = (IBusSimplePlugin_iBusRsp_stages_1_output_ready && _zz_62_);
- assign IBusSimplePlugin_iBusRsp_stages_1_output_valid = (IBusSimplePlugin_iBusRsp_stages_1_input_valid && _zz_62_);
- assign IBusSimplePlugin_iBusRsp_stages_1_output_payload = IBusSimplePlugin_iBusRsp_stages_1_input_payload;
- assign IBusSimplePlugin_iBusRsp_stages_0_output_ready = _zz_63_;
- assign _zz_63_ = ((1'b0 && (! _zz_64_)) || IBusSimplePlugin_iBusRsp_stages_1_input_ready);
- assign _zz_64_ = _zz_65_;
- assign IBusSimplePlugin_iBusRsp_stages_1_input_valid = _zz_64_;
- assign IBusSimplePlugin_iBusRsp_stages_1_input_payload = IBusSimplePlugin_fetchPc_pcReg;
- always @ (*) begin
- IBusSimplePlugin_iBusRsp_readyForError = 1'b1;
- if(IBusSimplePlugin_injector_decodeInput_valid)begin
- IBusSimplePlugin_iBusRsp_readyForError = 1'b0;
- end
- end
- assign IBusSimplePlugin_iBusRsp_inputBeforeStage_ready = ((1'b0 && (! IBusSimplePlugin_injector_decodeInput_valid)) || IBusSimplePlugin_injector_decodeInput_ready);
- assign IBusSimplePlugin_injector_decodeInput_valid = _zz_66_;
- assign IBusSimplePlugin_injector_decodeInput_payload_pc = _zz_67_;
- assign IBusSimplePlugin_injector_decodeInput_payload_rsp_error = _zz_68_;
- assign IBusSimplePlugin_injector_decodeInput_payload_rsp_inst = _zz_69_;
- assign IBusSimplePlugin_injector_decodeInput_payload_isRvc = _zz_70_;
- assign _zz_56_ = (decode_arbitration_isStuck ? decode_INSTRUCTION : IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_rsp_raw);
- assign IBusSimplePlugin_injector_decodeInput_ready = (! decode_arbitration_isStuck);
- assign decode_arbitration_isValid = (IBusSimplePlugin_injector_decodeInput_valid && (! IBusSimplePlugin_injector_decodeRemoved));
- assign _zz_55_ = IBusSimplePlugin_injector_decodeInput_payload_pc;
- assign _zz_54_ = IBusSimplePlugin_injector_decodeInput_payload_rsp_inst;
- assign _zz_53_ = (decode_PC + (32'b00000000000000000000000000000100));
- assign iBus_cmd_valid = IBusSimplePlugin_cmd_valid;
- assign IBusSimplePlugin_cmd_ready = iBus_cmd_ready;
- assign iBus_cmd_payload_pc = IBusSimplePlugin_cmd_payload_pc;
- assign IBusSimplePlugin_pendingCmdNext = (_zz_128_ - _zz_132_);
- assign IBusSimplePlugin_cmd_valid = ((IBusSimplePlugin_iBusRsp_stages_0_input_valid && IBusSimplePlugin_iBusRsp_stages_0_output_ready) && (IBusSimplePlugin_pendingCmd != (3'b111)));
- assign IBusSimplePlugin_cmd_payload_pc = {IBusSimplePlugin_iBusRsp_stages_0_input_payload[31 : 2],(2'b00)};
- assign iBus_rsp_takeWhen_valid = (iBus_rsp_valid && (! (IBusSimplePlugin_rspJoin_discardCounter != (3'b000))));
- assign iBus_rsp_takeWhen_payload_error = iBus_rsp_payload_error;
- assign iBus_rsp_takeWhen_payload_inst = iBus_rsp_payload_inst;
- assign _zz_113_ = (IBusSimplePlugin_jump_pcLoad_valid || _zz_57_);
- assign IBusSimplePlugin_rspJoin_rspBufferOutput_valid = IBusSimplePlugin_rspJoin_rspBuffer_c_io_pop_valid;
- assign IBusSimplePlugin_rspJoin_rspBufferOutput_payload_error = IBusSimplePlugin_rspJoin_rspBuffer_c_io_pop_payload_error;
- assign IBusSimplePlugin_rspJoin_rspBufferOutput_payload_inst = IBusSimplePlugin_rspJoin_rspBuffer_c_io_pop_payload_inst;
- assign IBusSimplePlugin_rspJoin_fetchRsp_pc = IBusSimplePlugin_iBusRsp_stages_1_output_payload;
- always @ (*) begin
- IBusSimplePlugin_rspJoin_fetchRsp_rsp_error = IBusSimplePlugin_rspJoin_rspBufferOutput_payload_error;
- if((! IBusSimplePlugin_rspJoin_rspBufferOutput_valid))begin
- IBusSimplePlugin_rspJoin_fetchRsp_rsp_error = 1'b0;
- end
- end
- assign IBusSimplePlugin_rspJoin_fetchRsp_rsp_inst = IBusSimplePlugin_rspJoin_rspBufferOutput_payload_inst;
- assign IBusSimplePlugin_rspJoin_issueDetected = 1'b0;
- assign IBusSimplePlugin_rspJoin_join_valid = (IBusSimplePlugin_iBusRsp_stages_1_output_valid && IBusSimplePlugin_rspJoin_rspBufferOutput_valid);
- assign IBusSimplePlugin_rspJoin_join_payload_pc = IBusSimplePlugin_rspJoin_fetchRsp_pc;
- assign IBusSimplePlugin_rspJoin_join_payload_rsp_error = IBusSimplePlugin_rspJoin_fetchRsp_rsp_error;
- assign IBusSimplePlugin_rspJoin_join_payload_rsp_inst = IBusSimplePlugin_rspJoin_fetchRsp_rsp_inst;
- assign IBusSimplePlugin_rspJoin_join_payload_isRvc = IBusSimplePlugin_rspJoin_fetchRsp_isRvc;
- assign IBusSimplePlugin_iBusRsp_stages_1_output_ready = (IBusSimplePlugin_iBusRsp_stages_1_output_valid ? (IBusSimplePlugin_rspJoin_join_valid && IBusSimplePlugin_rspJoin_join_ready) : IBusSimplePlugin_rspJoin_join_ready);
- assign IBusSimplePlugin_rspJoin_rspBufferOutput_ready = (IBusSimplePlugin_rspJoin_join_valid && IBusSimplePlugin_rspJoin_join_ready);
- assign _zz_71_ = (! IBusSimplePlugin_rspJoin_issueDetected);
- assign IBusSimplePlugin_rspJoin_join_ready = (IBusSimplePlugin_iBusRsp_inputBeforeStage_ready && _zz_71_);
- assign IBusSimplePlugin_iBusRsp_inputBeforeStage_valid = (IBusSimplePlugin_rspJoin_join_valid && _zz_71_);
- assign IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_pc = IBusSimplePlugin_rspJoin_join_payload_pc;
- assign IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_rsp_error = IBusSimplePlugin_rspJoin_join_payload_rsp_error;
- assign IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_rsp_raw = IBusSimplePlugin_rspJoin_join_payload_rsp_inst;
- assign IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_isRvc = IBusSimplePlugin_rspJoin_join_payload_isRvc;
- assign execute_DBusSimplePlugin_cmdSent = 1'b0;
- assign dBus_cmd_valid = (((((execute_arbitration_isValid && execute_MEMORY_ENABLE) && (! execute_arbitration_isStuckByOthers)) && (! execute_arbitration_isFlushed)) && (! execute_ALIGNEMENT_FAULT)) && (! execute_DBusSimplePlugin_cmdSent));
- assign dBus_cmd_payload_wr = execute_INSTRUCTION[5];
- assign dBus_cmd_payload_address = execute_SRC_ADD;
- assign dBus_cmd_payload_size = execute_INSTRUCTION[13 : 12];
- always @ (*) begin
- case(dBus_cmd_payload_size)
- 2'b00 : begin
- _zz_72_ = {{{execute_RS2[7 : 0],execute_RS2[7 : 0]},execute_RS2[7 : 0]},execute_RS2[7 : 0]};
- end
- 2'b01 : begin
- _zz_72_ = {execute_RS2[15 : 0],execute_RS2[15 : 0]};
- end
- default : begin
- _zz_72_ = execute_RS2[31 : 0];
- end
- endcase
- end
- assign dBus_cmd_payload_data = _zz_72_;
- assign _zz_52_ = dBus_cmd_payload_address[1 : 0];
- always @ (*) begin
- case(dBus_cmd_payload_size)
- 2'b00 : begin
- _zz_73_ = (4'b0001);
- end
- 2'b01 : begin
- _zz_73_ = (4'b0011);
- end
- default : begin
- _zz_73_ = (4'b1111);
- end
- endcase
- end
- assign execute_DBusSimplePlugin_formalMask = (_zz_73_ <<< dBus_cmd_payload_address[1 : 0]);
- assign _zz_51_ = dBus_rsp_data;
- always @ (*) begin
- writeBack_DBusSimplePlugin_rspShifted = writeBack_MEMORY_READ_DATA;
- case(writeBack_MEMORY_ADDRESS_LOW)
- 2'b01 : begin
- writeBack_DBusSimplePlugin_rspShifted[7 : 0] = writeBack_MEMORY_READ_DATA[15 : 8];
- end
- 2'b10 : begin
- writeBack_DBusSimplePlugin_rspShifted[15 : 0] = writeBack_MEMORY_READ_DATA[31 : 16];
- end
- 2'b11 : begin
- writeBack_DBusSimplePlugin_rspShifted[7 : 0] = writeBack_MEMORY_READ_DATA[31 : 24];
- end
- default : begin
- end
- endcase
- end
- assign _zz_74_ = (writeBack_DBusSimplePlugin_rspShifted[7] && (! writeBack_INSTRUCTION[14]));
- always @ (*) begin
- _zz_75_[31] = _zz_74_;
- _zz_75_[30] = _zz_74_;
- _zz_75_[29] = _zz_74_;
- _zz_75_[28] = _zz_74_;
- _zz_75_[27] = _zz_74_;
- _zz_75_[26] = _zz_74_;
- _zz_75_[25] = _zz_74_;
- _zz_75_[24] = _zz_74_;
- _zz_75_[23] = _zz_74_;
- _zz_75_[22] = _zz_74_;
- _zz_75_[21] = _zz_74_;
- _zz_75_[20] = _zz_74_;
- _zz_75_[19] = _zz_74_;
- _zz_75_[18] = _zz_74_;
- _zz_75_[17] = _zz_74_;
- _zz_75_[16] = _zz_74_;
- _zz_75_[15] = _zz_74_;
- _zz_75_[14] = _zz_74_;
- _zz_75_[13] = _zz_74_;
- _zz_75_[12] = _zz_74_;
- _zz_75_[11] = _zz_74_;
- _zz_75_[10] = _zz_74_;
- _zz_75_[9] = _zz_74_;
- _zz_75_[8] = _zz_74_;
- _zz_75_[7 : 0] = writeBack_DBusSimplePlugin_rspShifted[7 : 0];
- end
- assign _zz_76_ = (writeBack_DBusSimplePlugin_rspShifted[15] && (! writeBack_INSTRUCTION[14]));
- always @ (*) begin
- _zz_77_[31] = _zz_76_;
- _zz_77_[30] = _zz_76_;
- _zz_77_[29] = _zz_76_;
- _zz_77_[28] = _zz_76_;
- _zz_77_[27] = _zz_76_;
- _zz_77_[26] = _zz_76_;
- _zz_77_[25] = _zz_76_;
- _zz_77_[24] = _zz_76_;
- _zz_77_[23] = _zz_76_;
- _zz_77_[22] = _zz_76_;
- _zz_77_[21] = _zz_76_;
- _zz_77_[20] = _zz_76_;
- _zz_77_[19] = _zz_76_;
- _zz_77_[18] = _zz_76_;
- _zz_77_[17] = _zz_76_;
- _zz_77_[16] = _zz_76_;
- _zz_77_[15 : 0] = writeBack_DBusSimplePlugin_rspShifted[15 : 0];
- end
- always @ (*) begin
- case(_zz_125_)
- 2'b00 : begin
- writeBack_DBusSimplePlugin_rspFormated = _zz_75_;
- end
- 2'b01 : begin
- writeBack_DBusSimplePlugin_rspFormated = _zz_77_;
- end
- default : begin
- writeBack_DBusSimplePlugin_rspFormated = writeBack_DBusSimplePlugin_rspShifted;
- end
- endcase
- end
- assign _zz_79_ = ((decode_INSTRUCTION & (32'b00000000000000000000000000100000)) == (32'b00000000000000000000000000000000));
- assign _zz_80_ = ((decode_INSTRUCTION & (32'b00000000000000000000000000000100)) == (32'b00000000000000000000000000000100));
- assign _zz_81_ = ((decode_INSTRUCTION & (32'b00000000000000000000000000010000)) == (32'b00000000000000000000000000010000));
- assign _zz_82_ = ((decode_INSTRUCTION & (32'b00000000000000000000000000010100)) == (32'b00000000000000000000000000000100));
- assign _zz_78_ = {({(_zz_165_ == _zz_166_),(_zz_167_ == _zz_168_)} != (2'b00)),{(_zz_81_ != (1'b0)),{({_zz_169_,_zz_170_} != (2'b00)),{(_zz_171_ != _zz_172_),{_zz_173_,{_zz_174_,_zz_175_}}}}}};
- assign _zz_49_ = _zz_137_[0];
- assign _zz_83_ = _zz_78_[2 : 1];
- assign _zz_48_ = _zz_83_;
- assign _zz_47_ = _zz_138_[0];
- assign _zz_84_ = _zz_78_[5 : 4];
- assign _zz_46_ = _zz_84_;
- assign _zz_45_ = _zz_139_[0];
- assign _zz_44_ = _zz_140_[0];
- assign _zz_43_ = _zz_141_[0];
- assign _zz_42_ = _zz_142_[0];
- assign _zz_85_ = _zz_78_[12 : 11];
- assign _zz_41_ = _zz_85_;
- assign _zz_86_ = _zz_78_[14 : 13];
- assign _zz_40_ = _zz_86_;
- assign _zz_87_ = _zz_78_[16 : 15];
- assign _zz_39_ = _zz_87_;
- assign _zz_88_ = _zz_78_[18 : 17];
- assign _zz_38_ = _zz_88_;
- assign _zz_37_ = _zz_143_[0];
- assign _zz_36_ = _zz_144_[0];
- assign decode_RegFilePlugin_regFileReadAddress1 = decode_INSTRUCTION_ANTICIPATED[19 : 15];
- assign decode_RegFilePlugin_regFileReadAddress2 = decode_INSTRUCTION_ANTICIPATED[24 : 20];
- assign decode_RegFilePlugin_rs1Data = _zz_114_;
- assign decode_RegFilePlugin_rs2Data = _zz_115_;
- assign _zz_35_ = decode_RegFilePlugin_rs1Data;
- assign _zz_34_ = decode_RegFilePlugin_rs2Data;
- always @ (*) begin
- writeBack_RegFilePlugin_regFileWrite_valid = (_zz_32_ && writeBack_arbitration_isFiring);
- if(_zz_89_)begin
- writeBack_RegFilePlugin_regFileWrite_valid = 1'b1;
- end
- end
- assign writeBack_RegFilePlugin_regFileWrite_payload_address = _zz_31_[11 : 7];
- assign writeBack_RegFilePlugin_regFileWrite_payload_data = _zz_50_;
- always @ (*) begin
- case(execute_ALU_BITWISE_CTRL)
- `AluBitwiseCtrlEnum_defaultEncoding_AND_1 : begin
- execute_IntAluPlugin_bitwise = (execute_SRC1 & execute_SRC2);
- end
- `AluBitwiseCtrlEnum_defaultEncoding_OR_1 : begin
- execute_IntAluPlugin_bitwise = (execute_SRC1 | execute_SRC2);
- end
- `AluBitwiseCtrlEnum_defaultEncoding_XOR_1 : begin
- execute_IntAluPlugin_bitwise = (execute_SRC1 ^ execute_SRC2);
- end
- default : begin
- execute_IntAluPlugin_bitwise = execute_SRC1;
- end
- endcase
- end
- always @ (*) begin
- case(execute_ALU_CTRL)
- `AluCtrlEnum_defaultEncoding_BITWISE : begin
- _zz_90_ = execute_IntAluPlugin_bitwise;
- end
- `AluCtrlEnum_defaultEncoding_SLT_SLTU : begin
- _zz_90_ = {31'd0, _zz_145_};
- end
- default : begin
- _zz_90_ = execute_SRC_ADD_SUB;
- end
- endcase
- end
- assign _zz_29_ = _zz_90_;
- always @ (*) begin
- case(decode_SRC1_CTRL)
- `Src1CtrlEnum_defaultEncoding_RS : begin
- _zz_91_ = _zz_25_;
- end
- `Src1CtrlEnum_defaultEncoding_PC_INCREMENT : begin
- _zz_91_ = {29'd0, _zz_146_};
- end
- `Src1CtrlEnum_defaultEncoding_IMU : begin
- _zz_91_ = {decode_INSTRUCTION[31 : 12],(12'b000000000000)};
- end
- default : begin
- _zz_91_ = {27'd0, _zz_147_};
- end
- endcase
- end
- assign _zz_27_ = _zz_91_;
- assign _zz_92_ = _zz_148_[11];
- always @ (*) begin
- _zz_93_[19] = _zz_92_;
- _zz_93_[18] = _zz_92_;
- _zz_93_[17] = _zz_92_;
- _zz_93_[16] = _zz_92_;
- _zz_93_[15] = _zz_92_;
- _zz_93_[14] = _zz_92_;
- _zz_93_[13] = _zz_92_;
- _zz_93_[12] = _zz_92_;
- _zz_93_[11] = _zz_92_;
- _zz_93_[10] = _zz_92_;
- _zz_93_[9] = _zz_92_;
- _zz_93_[8] = _zz_92_;
- _zz_93_[7] = _zz_92_;
- _zz_93_[6] = _zz_92_;
- _zz_93_[5] = _zz_92_;
- _zz_93_[4] = _zz_92_;
- _zz_93_[3] = _zz_92_;
- _zz_93_[2] = _zz_92_;
- _zz_93_[1] = _zz_92_;
- _zz_93_[0] = _zz_92_;
- end
- assign _zz_94_ = _zz_149_[11];
- always @ (*) begin
- _zz_95_[19] = _zz_94_;
- _zz_95_[18] = _zz_94_;
- _zz_95_[17] = _zz_94_;
- _zz_95_[16] = _zz_94_;
- _zz_95_[15] = _zz_94_;
- _zz_95_[14] = _zz_94_;
- _zz_95_[13] = _zz_94_;
- _zz_95_[12] = _zz_94_;
- _zz_95_[11] = _zz_94_;
- _zz_95_[10] = _zz_94_;
- _zz_95_[9] = _zz_94_;
- _zz_95_[8] = _zz_94_;
- _zz_95_[7] = _zz_94_;
- _zz_95_[6] = _zz_94_;
- _zz_95_[5] = _zz_94_;
- _zz_95_[4] = _zz_94_;
- _zz_95_[3] = _zz_94_;
- _zz_95_[2] = _zz_94_;
- _zz_95_[1] = _zz_94_;
- _zz_95_[0] = _zz_94_;
- end
- always @ (*) begin
- case(decode_SRC2_CTRL)
- `Src2CtrlEnum_defaultEncoding_RS : begin
- _zz_96_ = _zz_22_;
- end
- `Src2CtrlEnum_defaultEncoding_IMI : begin
- _zz_96_ = {_zz_93_,decode_INSTRUCTION[31 : 20]};
- end
- `Src2CtrlEnum_defaultEncoding_IMS : begin
- _zz_96_ = {_zz_95_,{decode_INSTRUCTION[31 : 25],decode_INSTRUCTION[11 : 7]}};
- end
- default : begin
- _zz_96_ = _zz_21_;
- end
- endcase
- end
- assign _zz_24_ = _zz_96_;
- assign execute_SrcPlugin_addSub = _zz_150_;
- assign execute_SrcPlugin_less = ((execute_SRC1[31] == execute_SRC2[31]) ? execute_SrcPlugin_addSub[31] : (execute_SRC_LESS_UNSIGNED ? execute_SRC2[31] : execute_SRC1[31]));
- assign _zz_20_ = execute_SrcPlugin_addSub;
- assign _zz_19_ = execute_SrcPlugin_addSub;
- assign _zz_18_ = execute_SrcPlugin_less;
- assign execute_LightShifterPlugin_isShift = (execute_SHIFT_CTRL != `ShiftCtrlEnum_defaultEncoding_DISABLE_1);
- assign execute_LightShifterPlugin_amplitude = (execute_LightShifterPlugin_isActive ? execute_LightShifterPlugin_amplitudeReg : execute_SRC2[4 : 0]);
- assign execute_LightShifterPlugin_shiftInput = (execute_LightShifterPlugin_isActive ? memory_REGFILE_WRITE_DATA : execute_SRC1);
- assign execute_LightShifterPlugin_done = (execute_LightShifterPlugin_amplitude[4 : 1] == (4'b0000));
- always @ (*) begin
- case(execute_SHIFT_CTRL)
- `ShiftCtrlEnum_defaultEncoding_SLL_1 : begin
- _zz_97_ = (execute_LightShifterPlugin_shiftInput <<< 1);
- end
- default : begin
- _zz_97_ = _zz_158_;
- end
- endcase
- end
- always @ (*) begin
- _zz_98_ = 1'b0;
- if(_zz_101_)begin
- if((_zz_102_ == decode_INSTRUCTION[19 : 15]))begin
- _zz_98_ = 1'b1;
- end
- end
- if(_zz_119_)begin
- if(_zz_120_)begin
- if((writeBack_INSTRUCTION[11 : 7] == decode_INSTRUCTION[19 : 15]))begin
- _zz_98_ = 1'b1;
- end
- end
- end
- if(_zz_121_)begin
- if(_zz_122_)begin
- if((memory_INSTRUCTION[11 : 7] == decode_INSTRUCTION[19 : 15]))begin
- _zz_98_ = 1'b1;
- end
- end
- end
- if(_zz_123_)begin
- if(_zz_124_)begin
- if((execute_INSTRUCTION[11 : 7] == decode_INSTRUCTION[19 : 15]))begin
- _zz_98_ = 1'b1;
- end
- end
- end
- if((! decode_RS1_USE))begin
- _zz_98_ = 1'b0;
- end
- end
- always @ (*) begin
- _zz_99_ = 1'b0;
- if(_zz_101_)begin
- if((_zz_102_ == decode_INSTRUCTION[24 : 20]))begin
- _zz_99_ = 1'b1;
- end
- end
- if(_zz_119_)begin
- if(_zz_120_)begin
- if((writeBack_INSTRUCTION[11 : 7] == decode_INSTRUCTION[24 : 20]))begin
- _zz_99_ = 1'b1;
- end
- end
- end
- if(_zz_121_)begin
- if(_zz_122_)begin
- if((memory_INSTRUCTION[11 : 7] == decode_INSTRUCTION[24 : 20]))begin
- _zz_99_ = 1'b1;
- end
- end
- end
- if(_zz_123_)begin
- if(_zz_124_)begin
- if((execute_INSTRUCTION[11 : 7] == decode_INSTRUCTION[24 : 20]))begin
- _zz_99_ = 1'b1;
- end
- end
- end
- if((! decode_RS2_USE))begin
- _zz_99_ = 1'b0;
- end
- end
- assign _zz_100_ = (_zz_32_ && writeBack_arbitration_isFiring);
- assign execute_BranchPlugin_eq = (execute_SRC1 == execute_SRC2);
- assign _zz_103_ = execute_INSTRUCTION[14 : 12];
- always @ (*) begin
- if((_zz_103_ == (3'b000))) begin
- _zz_104_ = execute_BranchPlugin_eq;
- end else if((_zz_103_ == (3'b001))) begin
- _zz_104_ = (! execute_BranchPlugin_eq);
- end else if((((_zz_103_ & (3'b101)) == (3'b101)))) begin
- _zz_104_ = (! execute_SRC_LESS);
- end else begin
- _zz_104_ = execute_SRC_LESS;
- end
- end
- always @ (*) begin
- case(execute_BRANCH_CTRL)
- `BranchCtrlEnum_defaultEncoding_INC : begin
- _zz_105_ = 1'b0;
- end
- `BranchCtrlEnum_defaultEncoding_JAL : begin
- _zz_105_ = 1'b1;
- end
- `BranchCtrlEnum_defaultEncoding_JALR : begin
- _zz_105_ = 1'b1;
- end
- default : begin
- _zz_105_ = _zz_104_;
- end
- endcase
- end
- assign _zz_15_ = _zz_105_;
- assign execute_BranchPlugin_branch_src1 = ((execute_BRANCH_CTRL == `BranchCtrlEnum_defaultEncoding_JALR) ? execute_RS1 : execute_PC);
- assign _zz_106_ = _zz_160_[19];
- always @ (*) begin
- _zz_107_[10] = _zz_106_;
- _zz_107_[9] = _zz_106_;
- _zz_107_[8] = _zz_106_;
- _zz_107_[7] = _zz_106_;
- _zz_107_[6] = _zz_106_;
- _zz_107_[5] = _zz_106_;
- _zz_107_[4] = _zz_106_;
- _zz_107_[3] = _zz_106_;
- _zz_107_[2] = _zz_106_;
- _zz_107_[1] = _zz_106_;
- _zz_107_[0] = _zz_106_;
- end
- assign _zz_108_ = _zz_161_[11];
- always @ (*) begin
- _zz_109_[19] = _zz_108_;
- _zz_109_[18] = _zz_108_;
- _zz_109_[17] = _zz_108_;
- _zz_109_[16] = _zz_108_;
- _zz_109_[15] = _zz_108_;
- _zz_109_[14] = _zz_108_;
- _zz_109_[13] = _zz_108_;
- _zz_109_[12] = _zz_108_;
- _zz_109_[11] = _zz_108_;
- _zz_109_[10] = _zz_108_;
- _zz_109_[9] = _zz_108_;
- _zz_109_[8] = _zz_108_;
- _zz_109_[7] = _zz_108_;
- _zz_109_[6] = _zz_108_;
- _zz_109_[5] = _zz_108_;
- _zz_109_[4] = _zz_108_;
- _zz_109_[3] = _zz_108_;
- _zz_109_[2] = _zz_108_;
- _zz_109_[1] = _zz_108_;
- _zz_109_[0] = _zz_108_;
- end
- assign _zz_110_ = _zz_162_[11];
- always @ (*) begin
- _zz_111_[18] = _zz_110_;
- _zz_111_[17] = _zz_110_;
- _zz_111_[16] = _zz_110_;
- _zz_111_[15] = _zz_110_;
- _zz_111_[14] = _zz_110_;
- _zz_111_[13] = _zz_110_;
- _zz_111_[12] = _zz_110_;
- _zz_111_[11] = _zz_110_;
- _zz_111_[10] = _zz_110_;
- _zz_111_[9] = _zz_110_;
- _zz_111_[8] = _zz_110_;
- _zz_111_[7] = _zz_110_;
- _zz_111_[6] = _zz_110_;
- _zz_111_[5] = _zz_110_;
- _zz_111_[4] = _zz_110_;
- _zz_111_[3] = _zz_110_;
- _zz_111_[2] = _zz_110_;
- _zz_111_[1] = _zz_110_;
- _zz_111_[0] = _zz_110_;
- end
- always @ (*) begin
- case(execute_BRANCH_CTRL)
- `BranchCtrlEnum_defaultEncoding_JAL : begin
- _zz_112_ = {{_zz_107_,{{{execute_INSTRUCTION[31],execute_INSTRUCTION[19 : 12]},execute_INSTRUCTION[20]},execute_INSTRUCTION[30 : 21]}},1'b0};
- end
- `BranchCtrlEnum_defaultEncoding_JALR : begin
- _zz_112_ = {_zz_109_,execute_INSTRUCTION[31 : 20]};
- end
- default : begin
- _zz_112_ = {{_zz_111_,{{{execute_INSTRUCTION[31],execute_INSTRUCTION[7]},execute_INSTRUCTION[30 : 25]},execute_INSTRUCTION[11 : 8]}},1'b0};
- end
- endcase
- end
- assign execute_BranchPlugin_branch_src2 = _zz_112_;
- assign execute_BranchPlugin_branchAdder = (execute_BranchPlugin_branch_src1 + execute_BranchPlugin_branch_src2);
- assign _zz_13_ = {execute_BranchPlugin_branchAdder[31 : 1],(1'b0)};
- assign _zz_58_ = ((memory_arbitration_isValid && (! memory_arbitration_isStuckByOthers)) && memory_BRANCH_DO);
- assign _zz_12_ = decode_BRANCH_CTRL;
- assign _zz_10_ = _zz_48_;
- assign _zz_14_ = decode_to_execute_BRANCH_CTRL;
- assign _zz_23_ = _zz_41_;
- assign _zz_9_ = decode_ALU_BITWISE_CTRL;
- assign _zz_7_ = _zz_38_;
- assign _zz_30_ = decode_to_execute_ALU_BITWISE_CTRL;
- assign _zz_26_ = _zz_40_;
- assign _zz_6_ = decode_SHIFT_CTRL;
- assign _zz_4_ = _zz_39_;
- assign _zz_17_ = decode_to_execute_SHIFT_CTRL;
- assign _zz_3_ = decode_ALU_CTRL;
- assign _zz_1_ = _zz_46_;
- assign _zz_28_ = decode_to_execute_ALU_CTRL;
- assign decode_arbitration_isFlushed = ({writeBack_arbitration_flushAll,{memory_arbitration_flushAll,{execute_arbitration_flushAll,decode_arbitration_flushAll}}} != (4'b0000));
- assign execute_arbitration_isFlushed = ({writeBack_arbitration_flushAll,{memory_arbitration_flushAll,execute_arbitration_flushAll}} != (3'b000));
- assign memory_arbitration_isFlushed = ({writeBack_arbitration_flushAll,memory_arbitration_flushAll} != (2'b00));
- assign writeBack_arbitration_isFlushed = (writeBack_arbitration_flushAll != (1'b0));
- assign decode_arbitration_isStuckByOthers = (decode_arbitration_haltByOther || (((1'b0 || execute_arbitration_isStuck) || memory_arbitration_isStuck) || writeBack_arbitration_isStuck));
- assign decode_arbitration_isStuck = (decode_arbitration_haltItself || decode_arbitration_isStuckByOthers);
- assign decode_arbitration_isMoving = ((! decode_arbitration_isStuck) && (! decode_arbitration_removeIt));
- assign decode_arbitration_isFiring = ((decode_arbitration_isValid && (! decode_arbitration_isStuck)) && (! decode_arbitration_removeIt));
- assign execute_arbitration_isStuckByOthers = (execute_arbitration_haltByOther || ((1'b0 || memory_arbitration_isStuck) || writeBack_arbitration_isStuck));
- assign execute_arbitration_isStuck = (execute_arbitration_haltItself || execute_arbitration_isStuckByOthers);
- assign execute_arbitration_isMoving = ((! execute_arbitration_isStuck) && (! execute_arbitration_removeIt));
- assign execute_arbitration_isFiring = ((execute_arbitration_isValid && (! execute_arbitration_isStuck)) && (! execute_arbitration_removeIt));
- assign memory_arbitration_isStuckByOthers = (memory_arbitration_haltByOther || (1'b0 || writeBack_arbitration_isStuck));
- assign memory_arbitration_isStuck = (memory_arbitration_haltItself || memory_arbitration_isStuckByOthers);
- assign memory_arbitration_isMoving = ((! memory_arbitration_isStuck) && (! memory_arbitration_removeIt));
- assign memory_arbitration_isFiring = ((memory_arbitration_isValid && (! memory_arbitration_isStuck)) && (! memory_arbitration_removeIt));
- assign writeBack_arbitration_isStuckByOthers = (writeBack_arbitration_haltByOther || 1'b0);
- assign writeBack_arbitration_isStuck = (writeBack_arbitration_haltItself || writeBack_arbitration_isStuckByOthers);
- assign writeBack_arbitration_isMoving = ((! writeBack_arbitration_isStuck) && (! writeBack_arbitration_removeIt));
- assign writeBack_arbitration_isFiring = ((writeBack_arbitration_isValid && (! writeBack_arbitration_isStuck)) && (! writeBack_arbitration_removeIt));
- always @ (posedge clk or posedge reset) begin
- if (reset) begin
- IBusSimplePlugin_fetchPc_pcReg <= (32'b10000000000000000000000000000000);
- IBusSimplePlugin_fetchPc_inc <= 1'b0;
- _zz_60_ <= 1'b0;
- _zz_65_ <= 1'b0;
- _zz_66_ <= 1'b0;
- IBusSimplePlugin_injector_nextPcCalc_valids_0 <= 1'b0;
- IBusSimplePlugin_injector_nextPcCalc_0 <= 1'b0;
- IBusSimplePlugin_injector_nextPcCalc_1 <= 1'b0;
- IBusSimplePlugin_injector_nextPcCalc_2 <= 1'b0;
- IBusSimplePlugin_injector_nextPcCalc_3 <= 1'b0;
- IBusSimplePlugin_injector_decodeRemoved <= 1'b0;
- IBusSimplePlugin_pendingCmd <= (3'b000);
- IBusSimplePlugin_rspJoin_discardCounter <= (3'b000);
- _zz_89_ <= 1'b1;
- execute_LightShifterPlugin_isActive <= 1'b0;
- _zz_101_ <= 1'b0;
- execute_arbitration_isValid <= 1'b0;
- memory_arbitration_isValid <= 1'b0;
- writeBack_arbitration_isValid <= 1'b0;
- memory_to_writeBack_REGFILE_WRITE_DATA <= (32'b00000000000000000000000000000000);
- memory_to_writeBack_INSTRUCTION <= (32'b00000000000000000000000000000000);
- end else begin
- if(IBusSimplePlugin_fetchPc_propagatePc)begin
- IBusSimplePlugin_fetchPc_inc <= 1'b0;
- end
- if(IBusSimplePlugin_jump_pcLoad_valid)begin
- IBusSimplePlugin_fetchPc_inc <= 1'b0;
- end
- if(_zz_118_)begin
- IBusSimplePlugin_fetchPc_inc <= 1'b1;
- end
- if(IBusSimplePlugin_fetchPc_samplePcNext)begin
- IBusSimplePlugin_fetchPc_pcReg <= IBusSimplePlugin_fetchPc_pc;
- end
- _zz_60_ <= 1'b1;
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- _zz_65_ <= 1'b0;
- end
- if(_zz_63_)begin
- _zz_65_ <= IBusSimplePlugin_iBusRsp_stages_0_output_valid;
- end
- if(IBusSimplePlugin_iBusRsp_inputBeforeStage_ready)begin
- _zz_66_ <= IBusSimplePlugin_iBusRsp_inputBeforeStage_valid;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- _zz_66_ <= 1'b0;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_injector_nextPcCalc_valids_0 <= 1'b0;
- end
- if((! (! IBusSimplePlugin_iBusRsp_stages_1_input_ready)))begin
- IBusSimplePlugin_injector_nextPcCalc_valids_0 <= 1'b1;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_injector_nextPcCalc_0 <= 1'b0;
- end
- if((! (! IBusSimplePlugin_injector_decodeInput_ready)))begin
- IBusSimplePlugin_injector_nextPcCalc_0 <= IBusSimplePlugin_injector_nextPcCalc_valids_0;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_injector_nextPcCalc_0 <= 1'b0;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_injector_nextPcCalc_1 <= 1'b0;
- end
- if((! execute_arbitration_isStuck))begin
- IBusSimplePlugin_injector_nextPcCalc_1 <= IBusSimplePlugin_injector_nextPcCalc_0;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_injector_nextPcCalc_1 <= 1'b0;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_injector_nextPcCalc_2 <= 1'b0;
- end
- if((! memory_arbitration_isStuck))begin
- IBusSimplePlugin_injector_nextPcCalc_2 <= IBusSimplePlugin_injector_nextPcCalc_1;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_injector_nextPcCalc_2 <= 1'b0;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_injector_nextPcCalc_3 <= 1'b0;
- end
- if((! writeBack_arbitration_isStuck))begin
- IBusSimplePlugin_injector_nextPcCalc_3 <= IBusSimplePlugin_injector_nextPcCalc_2;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_injector_nextPcCalc_3 <= 1'b0;
- end
- if(decode_arbitration_removeIt)begin
- IBusSimplePlugin_injector_decodeRemoved <= 1'b1;
- end
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_injector_decodeRemoved <= 1'b0;
- end
- IBusSimplePlugin_pendingCmd <= IBusSimplePlugin_pendingCmdNext;
- IBusSimplePlugin_rspJoin_discardCounter <= (IBusSimplePlugin_rspJoin_discardCounter - _zz_134_);
- if((IBusSimplePlugin_jump_pcLoad_valid || _zz_57_))begin
- IBusSimplePlugin_rspJoin_discardCounter <= (IBusSimplePlugin_pendingCmd - _zz_136_);
- end
- _zz_89_ <= 1'b0;
- if(_zz_116_)begin
- if(_zz_117_)begin
- execute_LightShifterPlugin_isActive <= 1'b1;
- if(execute_LightShifterPlugin_done)begin
- execute_LightShifterPlugin_isActive <= 1'b0;
- end
- end
- end
- if(execute_arbitration_removeIt)begin
- execute_LightShifterPlugin_isActive <= 1'b0;
- end
- _zz_101_ <= _zz_100_;
- if((! writeBack_arbitration_isStuck))begin
- memory_to_writeBack_INSTRUCTION <= memory_INSTRUCTION;
- end
- if((! writeBack_arbitration_isStuck))begin
- memory_to_writeBack_REGFILE_WRITE_DATA <= memory_REGFILE_WRITE_DATA;
- end
- if(((! execute_arbitration_isStuck) || execute_arbitration_removeIt))begin
- execute_arbitration_isValid <= 1'b0;
- end
- if(((! decode_arbitration_isStuck) && (! decode_arbitration_removeIt)))begin
- execute_arbitration_isValid <= decode_arbitration_isValid;
- end
- if(((! memory_arbitration_isStuck) || memory_arbitration_removeIt))begin
- memory_arbitration_isValid <= 1'b0;
- end
- if(((! execute_arbitration_isStuck) && (! execute_arbitration_removeIt)))begin
- memory_arbitration_isValid <= execute_arbitration_isValid;
- end
- if(((! writeBack_arbitration_isStuck) || writeBack_arbitration_removeIt))begin
- writeBack_arbitration_isValid <= 1'b0;
- end
- if(((! memory_arbitration_isStuck) && (! memory_arbitration_removeIt)))begin
- writeBack_arbitration_isValid <= memory_arbitration_isValid;
- end
- end
- end
- always @ (posedge clk) begin
- if(IBusSimplePlugin_iBusRsp_inputBeforeStage_ready)begin
- _zz_67_ <= IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_pc;
- _zz_68_ <= IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_rsp_error;
- _zz_69_ <= IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_rsp_raw;
- _zz_70_ <= IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_isRvc;
- end
- if(IBusSimplePlugin_injector_decodeInput_ready)begin
- IBusSimplePlugin_injector_formal_rawInDecode <= IBusSimplePlugin_iBusRsp_inputBeforeStage_payload_rsp_raw;
- end
- if(!(! (((dBus_rsp_ready && memory_MEMORY_ENABLE) && memory_arbitration_isValid) && memory_arbitration_isStuck))) begin
- end
- if(!(! (((writeBack_arbitration_isValid && writeBack_MEMORY_ENABLE) && (! writeBack_INSTRUCTION[5])) && writeBack_arbitration_isStuck))) begin
- end
- if(_zz_116_)begin
- if(_zz_117_)begin
- execute_LightShifterPlugin_amplitudeReg <= (execute_LightShifterPlugin_amplitude - (5'b00001));
- end
- end
- if(_zz_100_)begin
- _zz_102_ <= _zz_31_[11 : 7];
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_BRANCH_CTRL <= _zz_11_;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_MEMORY_ENABLE <= decode_MEMORY_ENABLE;
- end
- if((! memory_arbitration_isStuck))begin
- execute_to_memory_MEMORY_ENABLE <= execute_MEMORY_ENABLE;
- end
- if((! writeBack_arbitration_isStuck))begin
- memory_to_writeBack_MEMORY_ENABLE <= memory_MEMORY_ENABLE;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_SRC2 <= decode_SRC2;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_FORMAL_PC_NEXT <= decode_FORMAL_PC_NEXT;
- end
- if((! memory_arbitration_isStuck))begin
- execute_to_memory_FORMAL_PC_NEXT <= execute_FORMAL_PC_NEXT;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_REGFILE_WRITE_VALID <= decode_REGFILE_WRITE_VALID;
- end
- if((! memory_arbitration_isStuck))begin
- execute_to_memory_REGFILE_WRITE_VALID <= execute_REGFILE_WRITE_VALID;
- end
- if((! writeBack_arbitration_isStuck))begin
- memory_to_writeBack_REGFILE_WRITE_VALID <= memory_REGFILE_WRITE_VALID;
- end
- if((! memory_arbitration_isStuck))begin
- execute_to_memory_MEMORY_ADDRESS_LOW <= execute_MEMORY_ADDRESS_LOW;
- end
- if((! writeBack_arbitration_isStuck))begin
- memory_to_writeBack_MEMORY_ADDRESS_LOW <= memory_MEMORY_ADDRESS_LOW;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_SRC_LESS_UNSIGNED <= decode_SRC_LESS_UNSIGNED;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_BYPASSABLE_MEMORY_STAGE <= decode_BYPASSABLE_MEMORY_STAGE;
- end
- if((! memory_arbitration_isStuck))begin
- execute_to_memory_BYPASSABLE_MEMORY_STAGE <= execute_BYPASSABLE_MEMORY_STAGE;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_BYPASSABLE_EXECUTE_STAGE <= decode_BYPASSABLE_EXECUTE_STAGE;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_PC <= _zz_21_;
- end
- if((! memory_arbitration_isStuck))begin
- execute_to_memory_PC <= execute_PC;
- end
- if((! writeBack_arbitration_isStuck))begin
- memory_to_writeBack_PC <= memory_PC;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_SRC_USE_SUB_LESS <= decode_SRC_USE_SUB_LESS;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_RS2 <= _zz_22_;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_SRC1 <= decode_SRC1;
- end
- if((! memory_arbitration_isStuck))begin
- execute_to_memory_BRANCH_DO <= execute_BRANCH_DO;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_ALU_BITWISE_CTRL <= _zz_8_;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_INSTRUCTION <= decode_INSTRUCTION;
- end
- if((! memory_arbitration_isStuck))begin
- execute_to_memory_INSTRUCTION <= execute_INSTRUCTION;
- end
- if((! memory_arbitration_isStuck))begin
- execute_to_memory_REGFILE_WRITE_DATA <= _zz_16_;
- end
- if((! writeBack_arbitration_isStuck))begin
- memory_to_writeBack_MEMORY_READ_DATA <= memory_MEMORY_READ_DATA;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_RS1 <= _zz_25_;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_SHIFT_CTRL <= _zz_5_;
- end
- if((! memory_arbitration_isStuck))begin
- execute_to_memory_BRANCH_CALC <= execute_BRANCH_CALC;
- end
- if((! execute_arbitration_isStuck))begin
- decode_to_execute_ALU_CTRL <= _zz_2_;
- end
- end
- endmodule
Add Comment
Please, Sign In to add comment