data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/l2c/rtl/ct_l2c_tag_ecc.v
1: b"%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/l2c/rtl/ct_l2c_tag_ecc.v:202: Define or directive not defined: '`L2C_TAG_DATA_WIDTH'\nparameter TAG_TAG_LENTH    = `L2C_TAG_DATA_WIDTH;\n                             ^~~~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/l2c/rtl/ct_l2c_tag_ecc.v:202: syntax error, unexpected ';', expecting TYPE-IDENTIFIER\nparameter TAG_TAG_LENTH    = `L2C_TAG_DATA_WIDTH;\n                                                ^\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/l2c/rtl/ct_l2c_tag_ecc.v:203: Define or directive not defined: '`L2C_TAG_INDEX_WIDTH'\nparameter TAG_INDEX_LENTH  = `L2C_TAG_INDEX_WIDTH;\n                             ^~~~~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/l2c/rtl/ct_l2c_tag_ecc.v:203: syntax error, unexpected ';', expecting TYPE-IDENTIFIER\nparameter TAG_INDEX_LENTH  = `L2C_TAG_INDEX_WIDTH;\n                                                 ^\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/l2c/rtl/ct_l2c_tag_ecc.v:204: Define or directive not defined: '`L2C_DATA_INDEX_WIDTH'\nparameter DATA_INDEX_LENTH = `L2C_DATA_INDEX_WIDTH;\n                             ^~~~~~~~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/l2c/rtl/ct_l2c_tag_ecc.v:204: syntax error, unexpected ';', expecting TYPE-IDENTIFIER\nparameter DATA_INDEX_LENTH = `L2C_DATA_INDEX_WIDTH;\n                                                  ^\n%Error: Exiting due to 6 error(s)\n"
module ct_l2c_tag_ecc(
  cmp_stage_stall,
  fifo_dout_after_correct,
  forever_cpuclk,
  icc_dca_dirty_f,
  icc_dca_tag_f,
  icc_dca_way_sel,
  icc_tag_flop,
  l2c_dirty_dout,
  l2c_icg_en,
  l2c_tag_dirty_fatal_err,
  l2c_tag_dout,
  next_stage_stall,
  pad_yy_icg_scan_en,
  tag_stage_flop_vld,
  way0_dirty_dout_after_correct,
  way0_tag_dout_after_correct,
  way10_dirty_dout_after_correct,
  way10_tag_dout_after_correct,
  way11_dirty_dout_after_correct,
  way11_tag_dout_after_correct,
  way12_dirty_dout_after_correct,
  way12_tag_dout_after_correct,
  way13_dirty_dout_after_correct,
  way13_tag_dout_after_correct,
  way14_dirty_dout_after_correct,
  way14_tag_dout_after_correct,
  way15_dirty_dout_after_correct,
  way15_tag_dout_after_correct,
  way1_dirty_dout_after_correct,
  way1_tag_dout_after_correct,
  way2_dirty_dout_after_correct,
  way2_tag_dout_after_correct,
  way3_dirty_dout_after_correct,
  way3_tag_dout_after_correct,
  way4_dirty_dout_after_correct,
  way4_tag_dout_after_correct,
  way5_dirty_dout_after_correct,
  way5_tag_dout_after_correct,
  way6_dirty_dout_after_correct,
  way6_tag_dout_after_correct,
  way7_dirty_dout_after_correct,
  way7_tag_dout_after_correct,
  way8_dirty_dout_after_correct,
  way8_tag_dout_after_correct,
  way9_dirty_dout_after_correct,
  way9_tag_dout_after_correct
);


input            cmp_stage_stall;               
input            forever_cpuclk;                
input   [15 :0]  icc_dca_way_sel;               
input            icc_tag_flop;                  
input   [143:0]  l2c_dirty_dout;                
input            l2c_icg_en;                    
input   [383:0]  l2c_tag_dout;                  
input            pad_yy_icg_scan_en;            
input            tag_stage_flop_vld;            
output  [15 :0]  fifo_dout_after_correct;       
output  [7  :0]  icc_dca_dirty_f;               
output  [23 :0]  icc_dca_tag_f;                 
output  [15 :0]  l2c_tag_dirty_fatal_err;       
output           next_stage_stall;              
output  [7  :0]  way0_dirty_dout_after_correct; 
output  [23 :0]  way0_tag_dout_after_correct;   
output  [7  :0]  way10_dirty_dout_after_correct; 
output  [23 :0]  way10_tag_dout_after_correct;  
output  [7  :0]  way11_dirty_dout_after_correct; 
output  [23 :0]  way11_tag_dout_after_correct;  
output  [7  :0]  way12_dirty_dout_after_correct; 
output  [23 :0]  way12_tag_dout_after_correct;  
output  [7  :0]  way13_dirty_dout_after_correct; 
output  [23 :0]  way13_tag_dout_after_correct;  
output  [7  :0]  way14_dirty_dout_after_correct; 
output  [23 :0]  way14_tag_dout_after_correct;  
output  [7  :0]  way15_dirty_dout_after_correct; 
output  [23 :0]  way15_tag_dout_after_correct;  
output  [7  :0]  way1_dirty_dout_after_correct; 
output  [23 :0]  way1_tag_dout_after_correct;   
output  [7  :0]  way2_dirty_dout_after_correct; 
output  [23 :0]  way2_tag_dout_after_correct;   
output  [7  :0]  way3_dirty_dout_after_correct; 
output  [23 :0]  way3_tag_dout_after_correct;   
output  [7  :0]  way4_dirty_dout_after_correct; 
output  [23 :0]  way4_tag_dout_after_correct;   
output  [7  :0]  way5_dirty_dout_after_correct; 
output  [23 :0]  way5_tag_dout_after_correct;   
output  [7  :0]  way6_dirty_dout_after_correct; 
output  [23 :0]  way6_tag_dout_after_correct;   
output  [7  :0]  way7_dirty_dout_after_correct; 
output  [23 :0]  way7_tag_dout_after_correct;   
output  [7  :0]  way8_dirty_dout_after_correct; 
output  [23 :0]  way8_tag_dout_after_correct;   
output  [7  :0]  way9_dirty_dout_after_correct; 
output  [23 :0]  way9_tag_dout_after_correct;   


reg     [7  :0]  icc_dca_dirty_f;               
reg     [23 :0]  icc_dca_tag_f;                 


wire             cmp_stage_stall;               
wire    [15 :0]  fifo_dout;                     
wire    [15 :0]  fifo_dout_after_correct;       
wire             forever_cpuclk;                
wire    [7  :0]  icc_dca_dirty;                 
wire    [23 :0]  icc_dca_tag;                   
wire    [15 :0]  icc_dca_way_sel;               
wire             icc_tag_flop;                  
wire    [143:0]  l2c_dirty_dout;                
wire             l2c_icg_en;                    
wire    [15 :0]  l2c_tag_dirty_fatal_err;       
wire    [383:0]  l2c_tag_dout;                  
wire             next_stage_stall;              
wire             pad_yy_icg_scan_en;            
wire             tag_dout_clk;                  
wire             tag_dout_flop_vld;             
wire             tag_stage_flop_vld;            
wire    [7  :0]  way0_dirty_dout;               
wire    [7  :0]  way0_dirty_dout_after_correct; 
wire    [23 :0]  way0_tag_dout;                 
wire    [23 :0]  way0_tag_dout_after_correct;   
wire    [7  :0]  way10_dirty_dout;              
wire    [7  :0]  way10_dirty_dout_after_correct; 
wire    [23 :0]  way10_tag_dout;                
wire    [23 :0]  way10_tag_dout_after_correct;  
wire    [7  :0]  way11_dirty_dout;              
wire    [7  :0]  way11_dirty_dout_after_correct; 
wire    [23 :0]  way11_tag_dout;                
wire    [23 :0]  way11_tag_dout_after_correct;  
wire    [7  :0]  way12_dirty_dout;              
wire    [7  :0]  way12_dirty_dout_after_correct; 
wire    [23 :0]  way12_tag_dout;                
wire    [23 :0]  way12_tag_dout_after_correct;  
wire    [7  :0]  way13_dirty_dout;              
wire    [7  :0]  way13_dirty_dout_after_correct; 
wire    [23 :0]  way13_tag_dout;                
wire    [23 :0]  way13_tag_dout_after_correct;  
wire    [7  :0]  way14_dirty_dout;              
wire    [7  :0]  way14_dirty_dout_after_correct; 
wire    [23 :0]  way14_tag_dout;                
wire    [23 :0]  way14_tag_dout_after_correct;  
wire    [7  :0]  way15_dirty_dout;              
wire    [7  :0]  way15_dirty_dout_after_correct; 
wire    [23 :0]  way15_tag_dout;                
wire    [23 :0]  way15_tag_dout_after_correct;  
wire    [7  :0]  way1_dirty_dout;               
wire    [7  :0]  way1_dirty_dout_after_correct; 
wire    [23 :0]  way1_tag_dout;                 
wire    [23 :0]  way1_tag_dout_after_correct;   
wire    [7  :0]  way2_dirty_dout;               
wire    [7  :0]  way2_dirty_dout_after_correct; 
wire    [23 :0]  way2_tag_dout;                 
wire    [23 :0]  way2_tag_dout_after_correct;   
wire    [7  :0]  way3_dirty_dout;               
wire    [7  :0]  way3_dirty_dout_after_correct; 
wire    [23 :0]  way3_tag_dout;                 
wire    [23 :0]  way3_tag_dout_after_correct;   
wire    [7  :0]  way4_dirty_dout;               
wire    [7  :0]  way4_dirty_dout_after_correct; 
wire    [23 :0]  way4_tag_dout;                 
wire    [23 :0]  way4_tag_dout_after_correct;   
wire    [7  :0]  way5_dirty_dout;               
wire    [7  :0]  way5_dirty_dout_after_correct; 
wire    [23 :0]  way5_tag_dout;                 
wire    [23 :0]  way5_tag_dout_after_correct;   
wire    [7  :0]  way6_dirty_dout;               
wire    [7  :0]  way6_dirty_dout_after_correct; 
wire    [23 :0]  way6_tag_dout;                 
wire    [23 :0]  way6_tag_dout_after_correct;   
wire    [7  :0]  way7_dirty_dout;               
wire    [7  :0]  way7_dirty_dout_after_correct; 
wire    [23 :0]  way7_tag_dout;                 
wire    [23 :0]  way7_tag_dout_after_correct;   
wire    [7  :0]  way8_dirty_dout;               
wire    [7  :0]  way8_dirty_dout_after_correct; 
wire    [23 :0]  way8_tag_dout;                 
wire    [23 :0]  way8_tag_dout_after_correct;   
wire    [7  :0]  way9_dirty_dout;               
wire    [7  :0]  way9_dirty_dout_after_correct; 
wire    [23 :0]  way9_tag_dout;                 
wire    [23 :0]  way9_tag_dout_after_correct;   


parameter TAG_TAG_LENTH    = `L2C_TAG_DATA_WIDTH;
parameter TAG_INDEX_LENTH  = `L2C_TAG_INDEX_WIDTH;
parameter DATA_INDEX_LENTH = `L2C_DATA_INDEX_WIDTH;
parameter L2C_ADDRW        = 33;
parameter DIRTY_WIDTH      = 8;













assign next_stage_stall = cmp_stage_stall;































































assign l2c_tag_dirty_fatal_err[7:0]  = 8'b0;

assign l2c_tag_dirty_fatal_err[15:8] = 8'b0;




assign way0_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[TAG_TAG_LENTH-1:0];
assign way1_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[2*TAG_TAG_LENTH-1:TAG_TAG_LENTH];
assign way2_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[3*TAG_TAG_LENTH-1:2*TAG_TAG_LENTH];
assign way3_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[4*TAG_TAG_LENTH-1:3*TAG_TAG_LENTH];
assign way4_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[5*TAG_TAG_LENTH-1:4*TAG_TAG_LENTH];
assign way5_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[6*TAG_TAG_LENTH-1:5*TAG_TAG_LENTH];
assign way6_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[7*TAG_TAG_LENTH-1:6*TAG_TAG_LENTH];
assign way7_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[8*TAG_TAG_LENTH-1:7*TAG_TAG_LENTH];
assign way8_tag_dout[TAG_TAG_LENTH-1:0]  = l2c_tag_dout[9*TAG_TAG_LENTH-1:8*TAG_TAG_LENTH];
assign way9_tag_dout[TAG_TAG_LENTH-1:0]  = l2c_tag_dout[10*TAG_TAG_LENTH-1:9*TAG_TAG_LENTH];
assign way10_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[11*TAG_TAG_LENTH-1:10*TAG_TAG_LENTH];
assign way11_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[12*TAG_TAG_LENTH-1:11*TAG_TAG_LENTH];
assign way12_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[13*TAG_TAG_LENTH-1:12*TAG_TAG_LENTH];
assign way13_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[14*TAG_TAG_LENTH-1:13*TAG_TAG_LENTH];
assign way14_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[15*TAG_TAG_LENTH-1:14*TAG_TAG_LENTH];
assign way15_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[16*TAG_TAG_LENTH-1:15*TAG_TAG_LENTH];

assign way0_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[DIRTY_WIDTH-1:0];
assign way1_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[2*DIRTY_WIDTH-1:DIRTY_WIDTH];
assign way2_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[3*DIRTY_WIDTH-1:2*DIRTY_WIDTH];
assign way3_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[4*DIRTY_WIDTH-1:3*DIRTY_WIDTH];
assign way4_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[5*DIRTY_WIDTH-1:4*DIRTY_WIDTH];
assign way5_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[6*DIRTY_WIDTH-1:5*DIRTY_WIDTH];
assign way6_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[7*DIRTY_WIDTH-1:6*DIRTY_WIDTH];
assign way7_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[8*DIRTY_WIDTH-1:7*DIRTY_WIDTH];
assign way8_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[9*DIRTY_WIDTH-1:8*DIRTY_WIDTH];
assign way9_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[10*DIRTY_WIDTH-1:9*DIRTY_WIDTH];
assign way10_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[11*DIRTY_WIDTH-1:10*DIRTY_WIDTH];
assign way11_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[12*DIRTY_WIDTH-1:11*DIRTY_WIDTH];
assign way12_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[13*DIRTY_WIDTH-1:12*DIRTY_WIDTH];
assign way13_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[14*DIRTY_WIDTH-1:13*DIRTY_WIDTH];
assign way14_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[15*DIRTY_WIDTH-1:14*DIRTY_WIDTH];
assign way15_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[16*DIRTY_WIDTH-1:15*DIRTY_WIDTH];




assign way0_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way0_tag_dout[TAG_TAG_LENTH-1:0];
assign way1_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way1_tag_dout[TAG_TAG_LENTH-1:0];
assign way2_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way2_tag_dout[TAG_TAG_LENTH-1:0];
assign way3_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way3_tag_dout[TAG_TAG_LENTH-1:0];
assign way4_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way4_tag_dout[TAG_TAG_LENTH-1:0];
assign way5_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way5_tag_dout[TAG_TAG_LENTH-1:0];
assign way6_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way6_tag_dout[TAG_TAG_LENTH-1:0];
assign way7_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way7_tag_dout[TAG_TAG_LENTH-1:0];
assign way8_tag_dout_after_correct[TAG_TAG_LENTH-1:0]  = way8_tag_dout[TAG_TAG_LENTH-1:0];
assign way9_tag_dout_after_correct[TAG_TAG_LENTH-1:0]  = way9_tag_dout[TAG_TAG_LENTH-1:0];
assign way10_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way10_tag_dout[TAG_TAG_LENTH-1:0];
assign way11_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way11_tag_dout[TAG_TAG_LENTH-1:0];
assign way12_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way12_tag_dout[TAG_TAG_LENTH-1:0];
assign way13_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way13_tag_dout[TAG_TAG_LENTH-1:0];
assign way14_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way14_tag_dout[TAG_TAG_LENTH-1:0];
assign way15_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way15_tag_dout[TAG_TAG_LENTH-1:0];
assign way0_dirty_dout_after_correct[7:0]  = way0_dirty_dout[7:0];
assign way1_dirty_dout_after_correct[7:0]  = way1_dirty_dout[7:0];
assign way2_dirty_dout_after_correct[7:0]  = way2_dirty_dout[7:0];
assign way3_dirty_dout_after_correct[7:0]  = way3_dirty_dout[7:0];
assign way4_dirty_dout_after_correct[7:0]  = way4_dirty_dout[7:0];
assign way5_dirty_dout_after_correct[7:0]  = way5_dirty_dout[7:0];
assign way6_dirty_dout_after_correct[7:0]  = way6_dirty_dout[7:0];
assign way7_dirty_dout_after_correct[7:0]  = way7_dirty_dout[7:0];
assign way8_dirty_dout_after_correct[7:0]  = way8_dirty_dout[7:0];
assign way9_dirty_dout_after_correct[7:0]  = way9_dirty_dout[7:0];
assign way10_dirty_dout_after_correct[7:0] = way10_dirty_dout[7:0];
assign way11_dirty_dout_after_correct[7:0] = way11_dirty_dout[7:0];
assign way12_dirty_dout_after_correct[7:0] = way12_dirty_dout[7:0];
assign way13_dirty_dout_after_correct[7:0] = way13_dirty_dout[7:0];
assign way14_dirty_dout_after_correct[7:0] = way14_dirty_dout[7:0];
assign way15_dirty_dout_after_correct[7:0] = way15_dirty_dout[7:0];

assign fifo_dout[15:0] = l2c_dirty_dout[143:128];
assign fifo_dout_after_correct[15:0] = fifo_dout[15:0];




assign icc_dca_tag[TAG_TAG_LENTH-1:0] = {TAG_TAG_LENTH{icc_dca_way_sel[15]}} & way15_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[14]}} & way14_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[13]}} & way13_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[12]}} & way12_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[11]}} & way11_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[10]}} & way10_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[9]}}  & way9_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[8]}}  & way8_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[7]}}  & way7_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[6]}}  & way6_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[5]}}  & way5_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[4]}}  & way4_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[3]}}  & way3_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[2]}}  & way2_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[1]}}  & way1_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[0]}}  & way0_tag_dout[TAG_TAG_LENTH-1:0];

assign icc_dca_dirty[7:0] = {8{icc_dca_way_sel[15]}} & way15_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[14]}} & way14_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[13]}} & way13_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[12]}} & way12_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[11]}} & way11_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[10]}} & way10_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[9]}}  & way9_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[8]}}  & way8_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[7]}} & way7_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[6]}} & way6_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[5]}} & way5_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[4]}} & way4_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[3]}} & way3_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[2]}} & way2_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[1]}} & way1_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[0]}} & way0_dirty_dout[7:0];



gated_clk_cell  x_l2c_tag_dout_gated_clk (
  .clk_in             (forever_cpuclk    ),
  .clk_out            (tag_dout_clk      ),
  .external_en        (1'b0              ),
  .global_en          (1'b1              ),
  .local_en           (tag_dout_flop_vld ),
  .module_en          (l2c_icg_en        ),
  .pad_yy_icg_scan_en (pad_yy_icg_scan_en)
);









assign tag_dout_flop_vld = (icc_tag_flop | tag_stage_flop_vld) & !next_stage_stall;

always@(posedge tag_dout_clk)
begin
  if (tag_dout_flop_vld)begin
     icc_dca_tag_f[TAG_TAG_LENTH-1:0] <= icc_dca_tag[TAG_TAG_LENTH-1:0];
     icc_dca_dirty_f[7:0]             <= icc_dca_dirty[7:0];
  end
end












endmodule
module ct_l2c_tag_ecc(
  cmp_stage_stall,
  fifo_dout_after_correct,
  forever_cpuclk,
  icc_dca_dirty_f,
  icc_dca_tag_f,
  icc_dca_way_sel,
  icc_tag_flop,
  l2c_dirty_dout,
  l2c_icg_en,
  l2c_tag_dirty_fatal_err,
  l2c_tag_dout,
  next_stage_stall,
  pad_yy_icg_scan_en,
  tag_stage_flop_vld,
  way0_dirty_dout_after_correct,
  way0_tag_dout_after_correct,
  way10_dirty_dout_after_correct,
  way10_tag_dout_after_correct,
  way11_dirty_dout_after_correct,
  way11_tag_dout_after_correct,
  way12_dirty_dout_after_correct,
  way12_tag_dout_after_correct,
  way13_dirty_dout_after_correct,
  way13_tag_dout_after_correct,
  way14_dirty_dout_after_correct,
  way14_tag_dout_after_correct,
  way15_dirty_dout_after_correct,
  way15_tag_dout_after_correct,
  way1_dirty_dout_after_correct,
  way1_tag_dout_after_correct,
  way2_dirty_dout_after_correct,
  way2_tag_dout_after_correct,
  way3_dirty_dout_after_correct,
  way3_tag_dout_after_correct,
  way4_dirty_dout_after_correct,
  way4_tag_dout_after_correct,
  way5_dirty_dout_after_correct,
  way5_tag_dout_after_correct,
  way6_dirty_dout_after_correct,
  way6_tag_dout_after_correct,
  way7_dirty_dout_after_correct,
  way7_tag_dout_after_correct,
  way8_dirty_dout_after_correct,
  way8_tag_dout_after_correct,
  way9_dirty_dout_after_correct,
  way9_tag_dout_after_correct
);



input            cmp_stage_stall;               
input            forever_cpuclk;                
input   [15 :0]  icc_dca_way_sel;               
input            icc_tag_flop;                  
input   [143:0]  l2c_dirty_dout;                
input            l2c_icg_en;                    
input   [383:0]  l2c_tag_dout;                  
input            pad_yy_icg_scan_en;            
input            tag_stage_flop_vld;            
output  [15 :0]  fifo_dout_after_correct;       
output  [7  :0]  icc_dca_dirty_f;               
output  [23 :0]  icc_dca_tag_f;                 
output  [15 :0]  l2c_tag_dirty_fatal_err;       
output           next_stage_stall;              
output  [7  :0]  way0_dirty_dout_after_correct; 
output  [23 :0]  way0_tag_dout_after_correct;   
output  [7  :0]  way10_dirty_dout_after_correct; 
output  [23 :0]  way10_tag_dout_after_correct;  
output  [7  :0]  way11_dirty_dout_after_correct; 
output  [23 :0]  way11_tag_dout_after_correct;  
output  [7  :0]  way12_dirty_dout_after_correct; 
output  [23 :0]  way12_tag_dout_after_correct;  
output  [7  :0]  way13_dirty_dout_after_correct; 
output  [23 :0]  way13_tag_dout_after_correct;  
output  [7  :0]  way14_dirty_dout_after_correct; 
output  [23 :0]  way14_tag_dout_after_correct;  
output  [7  :0]  way15_dirty_dout_after_correct; 
output  [23 :0]  way15_tag_dout_after_correct;  
output  [7  :0]  way1_dirty_dout_after_correct; 
output  [23 :0]  way1_tag_dout_after_correct;   
output  [7  :0]  way2_dirty_dout_after_correct; 
output  [23 :0]  way2_tag_dout_after_correct;   
output  [7  :0]  way3_dirty_dout_after_correct; 
output  [23 :0]  way3_tag_dout_after_correct;   
output  [7  :0]  way4_dirty_dout_after_correct; 
output  [23 :0]  way4_tag_dout_after_correct;   
output  [7  :0]  way5_dirty_dout_after_correct; 
output  [23 :0]  way5_tag_dout_after_correct;   
output  [7  :0]  way6_dirty_dout_after_correct; 
output  [23 :0]  way6_tag_dout_after_correct;   
output  [7  :0]  way7_dirty_dout_after_correct; 
output  [23 :0]  way7_tag_dout_after_correct;   
output  [7  :0]  way8_dirty_dout_after_correct; 
output  [23 :0]  way8_tag_dout_after_correct;   
output  [7  :0]  way9_dirty_dout_after_correct; 
output  [23 :0]  way9_tag_dout_after_correct;   


reg     [7  :0]  icc_dca_dirty_f;               
reg     [23 :0]  icc_dca_tag_f;                 


wire             cmp_stage_stall;               
wire    [15 :0]  fifo_dout;                     
wire    [15 :0]  fifo_dout_after_correct;       
wire             forever_cpuclk;                
wire    [7  :0]  icc_dca_dirty;                 
wire    [23 :0]  icc_dca_tag;                   
wire    [15 :0]  icc_dca_way_sel;               
wire             icc_tag_flop;                  
wire    [143:0]  l2c_dirty_dout;                
wire             l2c_icg_en;                    
wire    [15 :0]  l2c_tag_dirty_fatal_err;       
wire    [383:0]  l2c_tag_dout;                  
wire             next_stage_stall;              
wire             pad_yy_icg_scan_en;            
wire             tag_dout_clk;                  
wire             tag_dout_flop_vld;             
wire             tag_stage_flop_vld;            
wire    [7  :0]  way0_dirty_dout;               
wire    [7  :0]  way0_dirty_dout_after_correct; 
wire    [23 :0]  way0_tag_dout;                 
wire    [23 :0]  way0_tag_dout_after_correct;   
wire    [7  :0]  way10_dirty_dout;              
wire    [7  :0]  way10_dirty_dout_after_correct; 
wire    [23 :0]  way10_tag_dout;                
wire    [23 :0]  way10_tag_dout_after_correct;  
wire    [7  :0]  way11_dirty_dout;              
wire    [7  :0]  way11_dirty_dout_after_correct; 
wire    [23 :0]  way11_tag_dout;                
wire    [23 :0]  way11_tag_dout_after_correct;  
wire    [7  :0]  way12_dirty_dout;              
wire    [7  :0]  way12_dirty_dout_after_correct; 
wire    [23 :0]  way12_tag_dout;                
wire    [23 :0]  way12_tag_dout_after_correct;  
wire    [7  :0]  way13_dirty_dout;              
wire    [7  :0]  way13_dirty_dout_after_correct; 
wire    [23 :0]  way13_tag_dout;                
wire    [23 :0]  way13_tag_dout_after_correct;  
wire    [7  :0]  way14_dirty_dout;              
wire    [7  :0]  way14_dirty_dout_after_correct; 
wire    [23 :0]  way14_tag_dout;                
wire    [23 :0]  way14_tag_dout_after_correct;  
wire    [7  :0]  way15_dirty_dout;              
wire    [7  :0]  way15_dirty_dout_after_correct; 
wire    [23 :0]  way15_tag_dout;                
wire    [23 :0]  way15_tag_dout_after_correct;  
wire    [7  :0]  way1_dirty_dout;               
wire    [7  :0]  way1_dirty_dout_after_correct; 
wire    [23 :0]  way1_tag_dout;                 
wire    [23 :0]  way1_tag_dout_after_correct;   
wire    [7  :0]  way2_dirty_dout;               
wire    [7  :0]  way2_dirty_dout_after_correct; 
wire    [23 :0]  way2_tag_dout;                 
wire    [23 :0]  way2_tag_dout_after_correct;   
wire    [7  :0]  way3_dirty_dout;               
wire    [7  :0]  way3_dirty_dout_after_correct; 
wire    [23 :0]  way3_tag_dout;                 
wire    [23 :0]  way3_tag_dout_after_correct;   
wire    [7  :0]  way4_dirty_dout;               
wire    [7  :0]  way4_dirty_dout_after_correct; 
wire    [23 :0]  way4_tag_dout;                 
wire    [23 :0]  way4_tag_dout_after_correct;   
wire    [7  :0]  way5_dirty_dout;               
wire    [7  :0]  way5_dirty_dout_after_correct; 
wire    [23 :0]  way5_tag_dout;                 
wire    [23 :0]  way5_tag_dout_after_correct;   
wire    [7  :0]  way6_dirty_dout;               
wire    [7  :0]  way6_dirty_dout_after_correct; 
wire    [23 :0]  way6_tag_dout;                 
wire    [23 :0]  way6_tag_dout_after_correct;   
wire    [7  :0]  way7_dirty_dout;               
wire    [7  :0]  way7_dirty_dout_after_correct; 
wire    [23 :0]  way7_tag_dout;                 
wire    [23 :0]  way7_tag_dout_after_correct;   
wire    [7  :0]  way8_dirty_dout;               
wire    [7  :0]  way8_dirty_dout_after_correct; 
wire    [23 :0]  way8_tag_dout;                 
wire    [23 :0]  way8_tag_dout_after_correct;   
wire    [7  :0]  way9_dirty_dout;               
wire    [7  :0]  way9_dirty_dout_after_correct; 
wire    [23 :0]  way9_tag_dout;                 
wire    [23 :0]  way9_tag_dout_after_correct;   


parameter TAG_TAG_LENTH    = `L2C_TAG_DATA_WIDTH;
parameter TAG_INDEX_LENTH  = `L2C_TAG_INDEX_WIDTH;
parameter DATA_INDEX_LENTH = `L2C_DATA_INDEX_WIDTH;
parameter L2C_ADDRW        = 33;
parameter DIRTY_WIDTH      = 8;













assign next_stage_stall = cmp_stage_stall;































































assign l2c_tag_dirty_fatal_err[7:0]  = 8'b0;

assign l2c_tag_dirty_fatal_err[15:8] = 8'b0;




assign way0_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[TAG_TAG_LENTH-1:0];
assign way1_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[2*TAG_TAG_LENTH-1:TAG_TAG_LENTH];
assign way2_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[3*TAG_TAG_LENTH-1:2*TAG_TAG_LENTH];
assign way3_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[4*TAG_TAG_LENTH-1:3*TAG_TAG_LENTH];
assign way4_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[5*TAG_TAG_LENTH-1:4*TAG_TAG_LENTH];
assign way5_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[6*TAG_TAG_LENTH-1:5*TAG_TAG_LENTH];
assign way6_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[7*TAG_TAG_LENTH-1:6*TAG_TAG_LENTH];
assign way7_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[8*TAG_TAG_LENTH-1:7*TAG_TAG_LENTH];
assign way8_tag_dout[TAG_TAG_LENTH-1:0]  = l2c_tag_dout[9*TAG_TAG_LENTH-1:8*TAG_TAG_LENTH];
assign way9_tag_dout[TAG_TAG_LENTH-1:0]  = l2c_tag_dout[10*TAG_TAG_LENTH-1:9*TAG_TAG_LENTH];
assign way10_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[11*TAG_TAG_LENTH-1:10*TAG_TAG_LENTH];
assign way11_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[12*TAG_TAG_LENTH-1:11*TAG_TAG_LENTH];
assign way12_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[13*TAG_TAG_LENTH-1:12*TAG_TAG_LENTH];
assign way13_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[14*TAG_TAG_LENTH-1:13*TAG_TAG_LENTH];
assign way14_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[15*TAG_TAG_LENTH-1:14*TAG_TAG_LENTH];
assign way15_tag_dout[TAG_TAG_LENTH-1:0] = l2c_tag_dout[16*TAG_TAG_LENTH-1:15*TAG_TAG_LENTH];

assign way0_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[DIRTY_WIDTH-1:0];
assign way1_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[2*DIRTY_WIDTH-1:DIRTY_WIDTH];
assign way2_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[3*DIRTY_WIDTH-1:2*DIRTY_WIDTH];
assign way3_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[4*DIRTY_WIDTH-1:3*DIRTY_WIDTH];
assign way4_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[5*DIRTY_WIDTH-1:4*DIRTY_WIDTH];
assign way5_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[6*DIRTY_WIDTH-1:5*DIRTY_WIDTH];
assign way6_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[7*DIRTY_WIDTH-1:6*DIRTY_WIDTH];
assign way7_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[8*DIRTY_WIDTH-1:7*DIRTY_WIDTH];
assign way8_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[9*DIRTY_WIDTH-1:8*DIRTY_WIDTH];
assign way9_dirty_dout[DIRTY_WIDTH-1:0]  = l2c_dirty_dout[10*DIRTY_WIDTH-1:9*DIRTY_WIDTH];
assign way10_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[11*DIRTY_WIDTH-1:10*DIRTY_WIDTH];
assign way11_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[12*DIRTY_WIDTH-1:11*DIRTY_WIDTH];
assign way12_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[13*DIRTY_WIDTH-1:12*DIRTY_WIDTH];
assign way13_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[14*DIRTY_WIDTH-1:13*DIRTY_WIDTH];
assign way14_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[15*DIRTY_WIDTH-1:14*DIRTY_WIDTH];
assign way15_dirty_dout[DIRTY_WIDTH-1:0] = l2c_dirty_dout[16*DIRTY_WIDTH-1:15*DIRTY_WIDTH];




assign way0_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way0_tag_dout[TAG_TAG_LENTH-1:0];
assign way1_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way1_tag_dout[TAG_TAG_LENTH-1:0];
assign way2_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way2_tag_dout[TAG_TAG_LENTH-1:0];
assign way3_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way3_tag_dout[TAG_TAG_LENTH-1:0];
assign way4_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way4_tag_dout[TAG_TAG_LENTH-1:0];
assign way5_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way5_tag_dout[TAG_TAG_LENTH-1:0];
assign way6_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way6_tag_dout[TAG_TAG_LENTH-1:0];
assign way7_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way7_tag_dout[TAG_TAG_LENTH-1:0];
assign way8_tag_dout_after_correct[TAG_TAG_LENTH-1:0]  = way8_tag_dout[TAG_TAG_LENTH-1:0];
assign way9_tag_dout_after_correct[TAG_TAG_LENTH-1:0]  = way9_tag_dout[TAG_TAG_LENTH-1:0];
assign way10_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way10_tag_dout[TAG_TAG_LENTH-1:0];
assign way11_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way11_tag_dout[TAG_TAG_LENTH-1:0];
assign way12_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way12_tag_dout[TAG_TAG_LENTH-1:0];
assign way13_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way13_tag_dout[TAG_TAG_LENTH-1:0];
assign way14_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way14_tag_dout[TAG_TAG_LENTH-1:0];
assign way15_tag_dout_after_correct[TAG_TAG_LENTH-1:0] = way15_tag_dout[TAG_TAG_LENTH-1:0];
assign way0_dirty_dout_after_correct[7:0]  = way0_dirty_dout[7:0];
assign way1_dirty_dout_after_correct[7:0]  = way1_dirty_dout[7:0];
assign way2_dirty_dout_after_correct[7:0]  = way2_dirty_dout[7:0];
assign way3_dirty_dout_after_correct[7:0]  = way3_dirty_dout[7:0];
assign way4_dirty_dout_after_correct[7:0]  = way4_dirty_dout[7:0];
assign way5_dirty_dout_after_correct[7:0]  = way5_dirty_dout[7:0];
assign way6_dirty_dout_after_correct[7:0]  = way6_dirty_dout[7:0];
assign way7_dirty_dout_after_correct[7:0]  = way7_dirty_dout[7:0];
assign way8_dirty_dout_after_correct[7:0]  = way8_dirty_dout[7:0];
assign way9_dirty_dout_after_correct[7:0]  = way9_dirty_dout[7:0];
assign way10_dirty_dout_after_correct[7:0] = way10_dirty_dout[7:0];
assign way11_dirty_dout_after_correct[7:0] = way11_dirty_dout[7:0];
assign way12_dirty_dout_after_correct[7:0] = way12_dirty_dout[7:0];
assign way13_dirty_dout_after_correct[7:0] = way13_dirty_dout[7:0];
assign way14_dirty_dout_after_correct[7:0] = way14_dirty_dout[7:0];
assign way15_dirty_dout_after_correct[7:0] = way15_dirty_dout[7:0];

assign fifo_dout[15:0] = l2c_dirty_dout[143:128];
assign fifo_dout_after_correct[15:0] = fifo_dout[15:0];




assign icc_dca_tag[TAG_TAG_LENTH-1:0] = {TAG_TAG_LENTH{icc_dca_way_sel[15]}} & way15_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[14]}} & way14_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[13]}} & way13_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[12]}} & way12_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[11]}} & way11_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[10]}} & way10_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[9]}}  & way9_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[8]}}  & way8_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[7]}}  & way7_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[6]}}  & way6_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[5]}}  & way5_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[4]}}  & way4_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[3]}}  & way3_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[2]}}  & way2_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[1]}}  & way1_tag_dout[TAG_TAG_LENTH-1:0] |
                                        {TAG_TAG_LENTH{icc_dca_way_sel[0]}}  & way0_tag_dout[TAG_TAG_LENTH-1:0];

assign icc_dca_dirty[7:0] = {8{icc_dca_way_sel[15]}} & way15_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[14]}} & way14_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[13]}} & way13_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[12]}} & way12_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[11]}} & way11_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[10]}} & way10_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[9]}}  & way9_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[8]}}  & way8_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[7]}} & way7_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[6]}} & way6_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[5]}} & way5_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[4]}} & way4_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[3]}} & way3_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[2]}} & way2_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[1]}} & way1_dirty_dout[7:0] |
                            {8{icc_dca_way_sel[0]}} & way0_dirty_dout[7:0];



gated_clk_cell  x_l2c_tag_dout_gated_clk (
  .clk_in             (forever_cpuclk    ),
  .clk_out            (tag_dout_clk      ),
  .external_en        (1'b0              ),
  .global_en          (1'b1              ),
  .local_en           (tag_dout_flop_vld ),
  .module_en          (l2c_icg_en        ),
  .pad_yy_icg_scan_en (pad_yy_icg_scan_en)
);









assign tag_dout_flop_vld = (icc_tag_flop | tag_stage_flop_vld) & !next_stage_stall;

always@(posedge tag_dout_clk)
begin
  if (tag_dout_flop_vld)begin
     icc_dca_tag_f[TAG_TAG_LENTH-1:0] <= icc_dca_tag[TAG_TAG_LENTH-1:0];
     icc_dca_dirty_f[7:0]             <= icc_dca_dirty[7:0];
  end
end












endmodule