Line 203... |
Line 203... |
reg [`OR1200_SR_WIDTH-1:0] sr_reg; // SR
|
reg [`OR1200_SR_WIDTH-1:0] sr_reg; // SR
|
reg sr_reg_bit_eph; // SR_EPH bit
|
reg sr_reg_bit_eph; // SR_EPH bit
|
reg sr_reg_bit_eph_select; // SR_EPH select
|
reg sr_reg_bit_eph_select; // SR_EPH select
|
wire sr_reg_bit_eph_muxed; // SR_EPH muxed bit
|
wire sr_reg_bit_eph_muxed; // SR_EPH muxed bit
|
reg [`OR1200_SR_WIDTH-1:0] sr; // SR
|
reg [`OR1200_SR_WIDTH-1:0] sr; // SR
|
|
/* verilator lint_off UNOPTFLAT */
|
reg write_spr; // Write SPR
|
reg write_spr; // Write SPR
|
reg read_spr; // Read SPR
|
reg read_spr; // Read SPR
|
|
/* verilator lint_on UNOPTFLAT */
|
reg [width-1:0] to_wbmux; // For l.mfspr
|
reg [width-1:0] to_wbmux; // For l.mfspr
|
wire cfgr_sel; // Select for cfg regs
|
wire cfgr_sel; // Select for cfg regs
|
wire rf_sel; // Select for RF
|
wire rf_sel; // Select for RF
|
wire npc_sel; // Select for NPC
|
wire npc_sel; // Select for NPC
|
wire ppc_sel; // Select for PPC
|
wire ppc_sel; // Select for PPC
|
Line 256... |
Line 258... |
assign spr_we = du_write | write_spr;
|
assign spr_we = du_write | write_spr;
|
|
|
//
|
//
|
// Qualify chip selects
|
// Qualify chip selects
|
//
|
//
|
|
/* verilator lint_off UNOPTFLAT */
|
assign spr_cs = unqualified_cs & {32{read_spr | write_spr}};
|
assign spr_cs = unqualified_cs & {32{read_spr | write_spr}};
|
|
/* verilator lint_on UNOPTFLAT */
|
//
|
//
|
// Decoding of groups
|
// Decoding of groups
|
//
|
//
|
always @(spr_addr)
|
always @(spr_addr)
|
case (spr_addr[`OR1200_SPR_GROUP_BITS]) // synopsys parallel_case
|
case (spr_addr[`OR1200_SPR_GROUP_BITS]) // synopsys parallel_case
|