data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v
1: b"%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:103: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_0 (\n^~~~~~~~~~~~~~~\n        ... Looked in:\n             data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl,data/full_repos/permissive/418752214/ct_vfmau_lza_42\n             data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl,data/full_repos/permissive/418752214/ct_vfmau_lza_42.v\n             data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl,data/full_repos/permissive/418752214/ct_vfmau_lza_42.sv\n             ct_vfmau_lza_42\n             ct_vfmau_lza_42.v\n             ct_vfmau_lza_42.sv\n             obj_dir/ct_vfmau_lza_42\n             obj_dir/ct_vfmau_lza_42.v\n             obj_dir/ct_vfmau_lza_42.sv\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:116: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_1 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:129: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_2 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:142: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_3 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:155: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_4 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:168: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_5 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:181: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_6 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:194: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_7 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:207: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_8 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:220: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_9 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:233: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_10 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:246: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_11 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:259: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_12 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:272: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_13 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:285: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_14 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:298: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_15 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:312: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_16 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:325: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_17 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:338: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_18 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:351: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_19 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:425: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_20 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:460: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_21 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:473: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_22 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:486: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_23 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:499: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_24 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:512: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_25 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:525: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_26 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:538: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_27 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:551: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_28 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:564: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_29 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:577: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_30 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:590: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_31 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:605: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_32 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:618: Cannot find file containing module: 'ct_vfmau_lza_42'\nct_vfmau_lza_42  x_ct_vfmau_lza_42_33 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:631: Cannot find file containing module: 'ct_vfmau_lza_32'\nct_vfmau_lza_32  x_ct_vfmau_lza_32_0 (\n^~~~~~~~~~~~~~~\n%Error: data/full_repos/permissive/418752214/C910_RTL_FACTORY/gen_rtl/vfmau/rtl/ct_vfmau_lza.v:687: Cannot find file containing module: 'ct_vfmau_lza_32'\nct_vfmau_lza_32  x_ct_vfmau_lza_32_1 (\n^~~~~~~~~~~~~~~\n%Error: Exiting due to 36 error(s)\n"
module ct_vfmau_lza(
  addend,
  lza_result,
  sub_vld,
  summand
);


input   [107:0]  addend;            
input            sub_vld;           
input   [107:0]  summand;           
output  [6  :0]  lza_result;        


reg     [3  :0]  high_l2_set0_encod; 
reg     [3  :0]  high_l2_set1_encod; 
reg     [3  :0]  high_l2_set2_encod; 
reg     [3  :0]  high_l2_set3_encod; 
reg     [5  :0]  high_l3_set0_encod; 
reg     [3  :0]  low_l2_set0_encod; 
reg     [3  :0]  low_l2_set1_encod; 
reg     [3  :0]  low_l2_set2_encod; 
reg     [5  :0]  low_l3_set0_encod; 


wire    [107:0]  addend;            
wire    [107:0]  carry_d;           
wire    [107:0]  carry_g;           
wire    [107:0]  carry_p;           
wire    [31 :0]  high_l1_encod;     
wire    [15 :0]  high_l1_vld;       
wire    [7  :0]  high_l2_encod;     
wire    [3  :0]  high_l2_vld;       
wire    [1  :0]  high_l3_encod;     
wire             high_l3_vld;       
wire    [21 :0]  low_l1_encod;      
wire    [10 :0]  low_l1_vld;        
wire    [5  :0]  low_l2_encod;      
wire    [2  :0]  low_l2_vld;        
wire    [1  :0]  low_l3_encod;      
wire             low_l3_vld;        
wire    [6  :0]  lza_l4_encod;      
wire    [107:0]  lza_precod;        
wire    [6  :0]  lza_result;        
wire             lza_result_vld;    
wire             sub_vld;           
wire    [107:0]  summand;           











assign carry_p[107:0] = summand[107:0] ^ addend[107:0];
assign carry_g[107:0] = summand[107:0] & addend[107:0];
assign carry_d[107:0] = ~(summand[107:0] | addend[107:0]);




assign lza_precod[0] = 
    carry_p[1] && (carry_g[0] && sub_vld || carry_d[0])
 || !carry_p[1] && (carry_d[0] && sub_vld || carry_g[0]);

assign lza_precod[107] = 
    sub_vld && (carry_g[107] && !carry_d[106] || carry_d[107] && !carry_g[106])
 || !sub_vld && (carry_d[107] && !carry_d[106] || !carry_d[107]);

assign lza_precod[106:1] = 
    carry_p[107:2] & (carry_g[106:1] & ~carry_d[105:0] | carry_d[106:1] & ~carry_g[105:0])
 | ~carry_p[107:2] & (carry_g[106:1] & ~carry_g[105:0] | carry_d[106:1] & ~carry_d[105:0]);










ct_vfmau_lza_42  x_ct_vfmau_lza_42_0 (
  .lza_p0              (high_l1_encod[0]   ),
  .lza_p1              (high_l1_encod[1]   ),
  .lza_precod          (lza_precod[107:104]),
  .lza_vld             (high_l1_vld[15]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_1 (
  .lza_p0              (high_l1_encod[2]   ),
  .lza_p1              (high_l1_encod[3]   ),
  .lza_precod          (lza_precod[103:100]),
  .lza_vld             (high_l1_vld[14]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_2 (
  .lza_p0            (high_l1_encod[4] ),
  .lza_p1            (high_l1_encod[5] ),
  .lza_precod        (lza_precod[99:96]),
  .lza_vld           (high_l1_vld[13]  )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_3 (
  .lza_p0            (high_l1_encod[6] ),
  .lza_p1            (high_l1_encod[7] ),
  .lza_precod        (lza_precod[95:92]),
  .lza_vld           (high_l1_vld[12]  )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_4 (
  .lza_p0            (high_l1_encod[8] ),
  .lza_p1            (high_l1_encod[9] ),
  .lza_precod        (lza_precod[91:88]),
  .lza_vld           (high_l1_vld[11]  )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_5 (
  .lza_p0            (high_l1_encod[10]),
  .lza_p1            (high_l1_encod[11]),
  .lza_precod        (lza_precod[87:84]),
  .lza_vld           (high_l1_vld[10]  )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_6 (
  .lza_p0            (high_l1_encod[12]),
  .lza_p1            (high_l1_encod[13]),
  .lza_precod        (lza_precod[83:80]),
  .lza_vld           (high_l1_vld[9]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_7 (
  .lza_p0            (high_l1_encod[14]),
  .lza_p1            (high_l1_encod[15]),
  .lza_precod        (lza_precod[79:76]),
  .lza_vld           (high_l1_vld[8]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_8 (
  .lza_p0            (high_l1_encod[16]),
  .lza_p1            (high_l1_encod[17]),
  .lza_precod        (lza_precod[75:72]),
  .lza_vld           (high_l1_vld[7]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_9 (
  .lza_p0            (high_l1_encod[18]),
  .lza_p1            (high_l1_encod[19]),
  .lza_precod        (lza_precod[71:68]),
  .lza_vld           (high_l1_vld[6]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_10 (
  .lza_p0            (high_l1_encod[20]),
  .lza_p1            (high_l1_encod[21]),
  .lza_precod        (lza_precod[67:64]),
  .lza_vld           (high_l1_vld[5]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_11 (
  .lza_p0            (high_l1_encod[22]),
  .lza_p1            (high_l1_encod[23]),
  .lza_precod        (lza_precod[63:60]),
  .lza_vld           (high_l1_vld[4]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_12 (
  .lza_p0            (high_l1_encod[24]),
  .lza_p1            (high_l1_encod[25]),
  .lza_precod        (lza_precod[59:56]),
  .lza_vld           (high_l1_vld[3]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_13 (
  .lza_p0            (high_l1_encod[26]),
  .lza_p1            (high_l1_encod[27]),
  .lza_precod        (lza_precod[55:52]),
  .lza_vld           (high_l1_vld[2]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_14 (
  .lza_p0            (high_l1_encod[28]),
  .lza_p1            (high_l1_encod[29]),
  .lza_precod        (lza_precod[51:48]),
  .lza_vld           (high_l1_vld[1]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_15 (
  .lza_p0            (high_l1_encod[30]),
  .lza_p1            (high_l1_encod[31]),
  .lza_precod        (lza_precod[47:44]),
  .lza_vld           (high_l1_vld[0]   )
);








ct_vfmau_lza_42  x_ct_vfmau_lza_42_16 (
  .lza_p0             (high_l2_encod[0]  ),
  .lza_p1             (high_l2_encod[1]  ),
  .lza_precod         (high_l1_vld[15:12]),
  .lza_vld            (high_l2_vld[3]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_17 (
  .lza_p0            (high_l2_encod[2] ),
  .lza_p1            (high_l2_encod[3] ),
  .lza_precod        (high_l1_vld[11:8]),
  .lza_vld           (high_l2_vld[2]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_18 (
  .lza_p0           (high_l2_encod[4]),
  .lza_p1           (high_l2_encod[5]),
  .lza_precod       (high_l1_vld[7:4]),
  .lza_vld          (high_l2_vld[1]  )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_19 (
  .lza_p0           (high_l2_encod[6]),
  .lza_p1           (high_l2_encod[7]),
  .lza_precod       (high_l1_vld[3:0]),
  .lza_vld          (high_l2_vld[0]  )
);








always @( high_l1_encod[3:0]
       or high_l2_encod[1:0]
       or high_l1_encod[7:4])
begin
case(high_l2_encod[1:0])
  2'b00   :  high_l2_set0_encod[3:0] = {2'b00,high_l1_encod[1:0]};
  2'b01   :  high_l2_set0_encod[3:0] = {2'b01,high_l1_encod[3:2]};
  2'b10   :  high_l2_set0_encod[3:0] = {2'b10,high_l1_encod[5:4]};
  2'b11   :  high_l2_set0_encod[3:0] = {2'b11,high_l1_encod[7:6]};
  default :  high_l2_set0_encod[3:0] = {4{1'bx}};
  endcase

end


always @( high_l2_encod[3:2]
       or high_l1_encod[15:8])
begin
case(high_l2_encod[3:2])
  2'b00   :  high_l2_set1_encod[3:0] = {2'b00,high_l1_encod[9:8]};
  2'b01   :  high_l2_set1_encod[3:0] = {2'b01,high_l1_encod[11:10]};
  2'b10   :  high_l2_set1_encod[3:0] = {2'b10,high_l1_encod[13:12]};
  2'b11   :  high_l2_set1_encod[3:0] = {2'b11,high_l1_encod[15:14]};
  default :  high_l2_set1_encod[3:0] = {4{1'bx}};
  endcase

end


always @( high_l1_encod[23:18]
       or high_l1_encod[17:16]
       or high_l2_encod[5:4])
begin
case(high_l2_encod[5:4])
  2'b00   :  high_l2_set2_encod[3:0] = {2'b00,high_l1_encod[17:16]};
  2'b01   :  high_l2_set2_encod[3:0] = {2'b01,high_l1_encod[19:18]};
  2'b10   :  high_l2_set2_encod[3:0] = {2'b10,high_l1_encod[21:20]};
  2'b11   :  high_l2_set2_encod[3:0] = {2'b11,high_l1_encod[23:22]};
  default :  high_l2_set2_encod[3:0] = {4{1'bx}};
  endcase

end


always @( high_l1_encod[31:26]
       or high_l1_encod[25:24]
       or high_l2_encod[7:6])
begin
case(high_l2_encod[7:6])
  2'b00   :  high_l2_set3_encod[3:0] = {2'b00,high_l1_encod[25:24]};
  2'b01   :  high_l2_set3_encod[3:0] = {2'b01,high_l1_encod[27:26]};
  2'b10   :  high_l2_set3_encod[3:0] = {2'b10,high_l1_encod[29:28]};
  2'b11   :  high_l2_set3_encod[3:0] = {2'b11,high_l1_encod[31:30]};
  default :  high_l2_set3_encod[3:0] = {4{1'bx}};
  endcase

end



ct_vfmau_lza_42  x_ct_vfmau_lza_42_20 (
  .lza_p0           (high_l3_encod[0]),
  .lza_p1           (high_l3_encod[1]),
  .lza_precod       (high_l2_vld[3:0]),
  .lza_vld          (high_l3_vld     )
);







always @( high_l2_set2_encod[3:0]
       or high_l3_encod[1:0]
       or high_l2_set3_encod[3:0]
       or high_l2_set1_encod[3:0]
       or high_l2_set0_encod[3:0])
begin
case(high_l3_encod[1:0])
  2'b00   :  high_l3_set0_encod[5:0] = {2'b00,high_l2_set0_encod[3:0]};
  2'b01   :  high_l3_set0_encod[5:0] = {2'b01,high_l2_set1_encod[3:0]};
  2'b10   :  high_l3_set0_encod[5:0] = {2'b10,high_l2_set2_encod[3:0]};
  2'b11   :  high_l3_set0_encod[5:0] = {2'b11,high_l2_set3_encod[3:0]};
  default :  high_l3_set0_encod[5:0] = {6{1'bx}};
  endcase

end

   





ct_vfmau_lza_42  x_ct_vfmau_lza_42_21 (
  .lza_p0            (low_l1_encod[0]  ),
  .lza_p1            (low_l1_encod[1]  ),
  .lza_precod        (lza_precod[43:40]),
  .lza_vld           (low_l1_vld[10]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_22 (
  .lza_p0            (low_l1_encod[2]  ),
  .lza_p1            (low_l1_encod[3]  ),
  .lza_precod        (lza_precod[39:36]),
  .lza_vld           (low_l1_vld[9]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_23 (
  .lza_p0            (low_l1_encod[4]  ),
  .lza_p1            (low_l1_encod[5]  ),
  .lza_precod        (lza_precod[35:32]),
  .lza_vld           (low_l1_vld[8]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_24 (
  .lza_p0            (low_l1_encod[6]  ),
  .lza_p1            (low_l1_encod[7]  ),
  .lza_precod        (lza_precod[31:28]),
  .lza_vld           (low_l1_vld[7]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_25 (
  .lza_p0            (low_l1_encod[8]  ),
  .lza_p1            (low_l1_encod[9]  ),
  .lza_precod        (lza_precod[27:24]),
  .lza_vld           (low_l1_vld[6]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_26 (
  .lza_p0            (low_l1_encod[10] ),
  .lza_p1            (low_l1_encod[11] ),
  .lza_precod        (lza_precod[23:20]),
  .lza_vld           (low_l1_vld[5]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_27 (
  .lza_p0            (low_l1_encod[12] ),
  .lza_p1            (low_l1_encod[13] ),
  .lza_precod        (lza_precod[19:16]),
  .lza_vld           (low_l1_vld[4]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_28 (
  .lza_p0            (low_l1_encod[14] ),
  .lza_p1            (low_l1_encod[15] ),
  .lza_precod        (lza_precod[15:12]),
  .lza_vld           (low_l1_vld[3]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_29 (
  .lza_p0           (low_l1_encod[16]),
  .lza_p1           (low_l1_encod[17]),
  .lza_precod       (lza_precod[11:8]),
  .lza_vld          (low_l1_vld[2]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_30 (
  .lza_p0           (low_l1_encod[18]),
  .lza_p1           (low_l1_encod[19]),
  .lza_precod       (lza_precod[7:4] ),
  .lza_vld          (low_l1_vld[1]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_31 (
  .lza_p0           (low_l1_encod[20]),
  .lza_p1           (low_l1_encod[21]),
  .lza_precod       (lza_precod[3:0] ),
  .lza_vld          (low_l1_vld[0]   )
);









ct_vfmau_lza_42  x_ct_vfmau_lza_42_32 (
  .lza_p0           (low_l2_encod[0] ),
  .lza_p1           (low_l2_encod[1] ),
  .lza_precod       (low_l1_vld[10:7]),
  .lza_vld          (low_l2_vld[2]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_33 (
  .lza_p0          (low_l2_encod[2]),
  .lza_p1          (low_l2_encod[3]),
  .lza_precod      (low_l1_vld[6:3]),
  .lza_vld         (low_l2_vld[1]  )
);







ct_vfmau_lza_32  x_ct_vfmau_lza_32_0 (
  .lza_p0          (low_l2_encod[4]),
  .lza_p1          (low_l2_encod[5]),
  .lza_precod      (low_l1_vld[2:0]),
  .lza_vld         (low_l2_vld[0]  )
);







always @( low_l1_encod[1:0]
       or low_l2_encod[1:0]
       or low_l1_encod[7:2])
begin
case(low_l2_encod[1:0])
  2'b00   :  low_l2_set0_encod[3:0] = {2'b00,low_l1_encod[1:0]};
  2'b01   :  low_l2_set0_encod[3:0] = {2'b01,low_l1_encod[3:2]};
  2'b10   :  low_l2_set0_encod[3:0] = {2'b10,low_l1_encod[5:4]};
  2'b11   :  low_l2_set0_encod[3:0] = {2'b11,low_l1_encod[7:6]};
  default :  low_l2_set0_encod[3:0] = {4{1'bx}};
  endcase

end


always @( low_l2_encod[3:2]
       or low_l1_encod[15:8])
begin
case(low_l2_encod[3:2])
  2'b00   :  low_l2_set1_encod[3:0] = {2'b00,low_l1_encod[9:8]};
  2'b01   :  low_l2_set1_encod[3:0] = {2'b01,low_l1_encod[11:10]};
  2'b10   :  low_l2_set1_encod[3:0] = {2'b10,low_l1_encod[13:12]};
  2'b11   :  low_l2_set1_encod[3:0] = {2'b11,low_l1_encod[15:14]};
  default :  low_l2_set1_encod[3:0] = {4{1'bx}};
  endcase

end


always @( low_l2_encod[5:4]
       or low_l1_encod[21:16])
begin
case(low_l2_encod[5:4])
  2'b00   :  low_l2_set2_encod[3:0] = {2'b00,low_l1_encod[17:16]};
  2'b01   :  low_l2_set2_encod[3:0] = {2'b01,low_l1_encod[19:18]};
  2'b10   :  low_l2_set2_encod[3:0] = {2'b10,low_l1_encod[21:20]};
  default :  low_l2_set2_encod[3:0] = {4{1'bx}};
  endcase

end



ct_vfmau_lza_32  x_ct_vfmau_lza_32_1 (
  .lza_p0          (low_l3_encod[0]),
  .lza_p1          (low_l3_encod[1]),
  .lza_precod      (low_l2_vld[2:0]),
  .lza_vld         (low_l3_vld     )
);







always @( low_l3_encod[1:0]
       or low_l2_set2_encod[3:0]
       or low_l2_set1_encod[3:0]
       or low_l2_set0_encod[3:0])
begin
case(low_l3_encod[1:0])
  2'b00   :  low_l3_set0_encod[5:0] = {2'b00,low_l2_set0_encod[3:0]};
  2'b01   :  low_l3_set0_encod[5:0] = {2'b01,low_l2_set1_encod[3:0]};
  2'b10   :  low_l3_set0_encod[5:0] = {2'b10,low_l2_set2_encod[3:0]};
  default :  low_l3_set0_encod[5:0] = 6'b0;
  endcase

end




assign lza_l4_encod[6:0] = (high_l3_vld)
                           ? {1'b0,high_l3_set0_encod[5:0]}
                           : {1'b1,low_l3_set0_encod[5:0]};
assign lza_result_vld  = high_l3_vld || low_l3_vld;
assign lza_result[6:0] = (lza_result_vld)
                       ? lza_l4_encod[6:0]
                       : 7'd108;


endmodule
module ct_vfmau_lza(
  addend,
  lza_result,
  sub_vld,
  summand
);



input   [107:0]  addend;            
input            sub_vld;           
input   [107:0]  summand;           
output  [6  :0]  lza_result;        


reg     [3  :0]  high_l2_set0_encod; 
reg     [3  :0]  high_l2_set1_encod; 
reg     [3  :0]  high_l2_set2_encod; 
reg     [3  :0]  high_l2_set3_encod; 
reg     [5  :0]  high_l3_set0_encod; 
reg     [3  :0]  low_l2_set0_encod; 
reg     [3  :0]  low_l2_set1_encod; 
reg     [3  :0]  low_l2_set2_encod; 
reg     [5  :0]  low_l3_set0_encod; 


wire    [107:0]  addend;            
wire    [107:0]  carry_d;           
wire    [107:0]  carry_g;           
wire    [107:0]  carry_p;           
wire    [31 :0]  high_l1_encod;     
wire    [15 :0]  high_l1_vld;       
wire    [7  :0]  high_l2_encod;     
wire    [3  :0]  high_l2_vld;       
wire    [1  :0]  high_l3_encod;     
wire             high_l3_vld;       
wire    [21 :0]  low_l1_encod;      
wire    [10 :0]  low_l1_vld;        
wire    [5  :0]  low_l2_encod;      
wire    [2  :0]  low_l2_vld;        
wire    [1  :0]  low_l3_encod;      
wire             low_l3_vld;        
wire    [6  :0]  lza_l4_encod;      
wire    [107:0]  lza_precod;        
wire    [6  :0]  lza_result;        
wire             lza_result_vld;    
wire             sub_vld;           
wire    [107:0]  summand;           











assign carry_p[107:0] = summand[107:0] ^ addend[107:0];
assign carry_g[107:0] = summand[107:0] & addend[107:0];
assign carry_d[107:0] = ~(summand[107:0] | addend[107:0]);




assign lza_precod[0] = 
    carry_p[1] && (carry_g[0] && sub_vld || carry_d[0])
 || !carry_p[1] && (carry_d[0] && sub_vld || carry_g[0]);

assign lza_precod[107] = 
    sub_vld && (carry_g[107] && !carry_d[106] || carry_d[107] && !carry_g[106])
 || !sub_vld && (carry_d[107] && !carry_d[106] || !carry_d[107]);

assign lza_precod[106:1] = 
    carry_p[107:2] & (carry_g[106:1] & ~carry_d[105:0] | carry_d[106:1] & ~carry_g[105:0])
 | ~carry_p[107:2] & (carry_g[106:1] & ~carry_g[105:0] | carry_d[106:1] & ~carry_d[105:0]);










ct_vfmau_lza_42  x_ct_vfmau_lza_42_0 (
  .lza_p0              (high_l1_encod[0]   ),
  .lza_p1              (high_l1_encod[1]   ),
  .lza_precod          (lza_precod[107:104]),
  .lza_vld             (high_l1_vld[15]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_1 (
  .lza_p0              (high_l1_encod[2]   ),
  .lza_p1              (high_l1_encod[3]   ),
  .lza_precod          (lza_precod[103:100]),
  .lza_vld             (high_l1_vld[14]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_2 (
  .lza_p0            (high_l1_encod[4] ),
  .lza_p1            (high_l1_encod[5] ),
  .lza_precod        (lza_precod[99:96]),
  .lza_vld           (high_l1_vld[13]  )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_3 (
  .lza_p0            (high_l1_encod[6] ),
  .lza_p1            (high_l1_encod[7] ),
  .lza_precod        (lza_precod[95:92]),
  .lza_vld           (high_l1_vld[12]  )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_4 (
  .lza_p0            (high_l1_encod[8] ),
  .lza_p1            (high_l1_encod[9] ),
  .lza_precod        (lza_precod[91:88]),
  .lza_vld           (high_l1_vld[11]  )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_5 (
  .lza_p0            (high_l1_encod[10]),
  .lza_p1            (high_l1_encod[11]),
  .lza_precod        (lza_precod[87:84]),
  .lza_vld           (high_l1_vld[10]  )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_6 (
  .lza_p0            (high_l1_encod[12]),
  .lza_p1            (high_l1_encod[13]),
  .lza_precod        (lza_precod[83:80]),
  .lza_vld           (high_l1_vld[9]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_7 (
  .lza_p0            (high_l1_encod[14]),
  .lza_p1            (high_l1_encod[15]),
  .lza_precod        (lza_precod[79:76]),
  .lza_vld           (high_l1_vld[8]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_8 (
  .lza_p0            (high_l1_encod[16]),
  .lza_p1            (high_l1_encod[17]),
  .lza_precod        (lza_precod[75:72]),
  .lza_vld           (high_l1_vld[7]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_9 (
  .lza_p0            (high_l1_encod[18]),
  .lza_p1            (high_l1_encod[19]),
  .lza_precod        (lza_precod[71:68]),
  .lza_vld           (high_l1_vld[6]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_10 (
  .lza_p0            (high_l1_encod[20]),
  .lza_p1            (high_l1_encod[21]),
  .lza_precod        (lza_precod[67:64]),
  .lza_vld           (high_l1_vld[5]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_11 (
  .lza_p0            (high_l1_encod[22]),
  .lza_p1            (high_l1_encod[23]),
  .lza_precod        (lza_precod[63:60]),
  .lza_vld           (high_l1_vld[4]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_12 (
  .lza_p0            (high_l1_encod[24]),
  .lza_p1            (high_l1_encod[25]),
  .lza_precod        (lza_precod[59:56]),
  .lza_vld           (high_l1_vld[3]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_13 (
  .lza_p0            (high_l1_encod[26]),
  .lza_p1            (high_l1_encod[27]),
  .lza_precod        (lza_precod[55:52]),
  .lza_vld           (high_l1_vld[2]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_14 (
  .lza_p0            (high_l1_encod[28]),
  .lza_p1            (high_l1_encod[29]),
  .lza_precod        (lza_precod[51:48]),
  .lza_vld           (high_l1_vld[1]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_15 (
  .lza_p0            (high_l1_encod[30]),
  .lza_p1            (high_l1_encod[31]),
  .lza_precod        (lza_precod[47:44]),
  .lza_vld           (high_l1_vld[0]   )
);








ct_vfmau_lza_42  x_ct_vfmau_lza_42_16 (
  .lza_p0             (high_l2_encod[0]  ),
  .lza_p1             (high_l2_encod[1]  ),
  .lza_precod         (high_l1_vld[15:12]),
  .lza_vld            (high_l2_vld[3]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_17 (
  .lza_p0            (high_l2_encod[2] ),
  .lza_p1            (high_l2_encod[3] ),
  .lza_precod        (high_l1_vld[11:8]),
  .lza_vld           (high_l2_vld[2]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_18 (
  .lza_p0           (high_l2_encod[4]),
  .lza_p1           (high_l2_encod[5]),
  .lza_precod       (high_l1_vld[7:4]),
  .lza_vld          (high_l2_vld[1]  )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_19 (
  .lza_p0           (high_l2_encod[6]),
  .lza_p1           (high_l2_encod[7]),
  .lza_precod       (high_l1_vld[3:0]),
  .lza_vld          (high_l2_vld[0]  )
);








always @( high_l1_encod[3:0]
       or high_l2_encod[1:0]
       or high_l1_encod[7:4])
begin
case(high_l2_encod[1:0])
  2'b00   :  high_l2_set0_encod[3:0] = {2'b00,high_l1_encod[1:0]};
  2'b01   :  high_l2_set0_encod[3:0] = {2'b01,high_l1_encod[3:2]};
  2'b10   :  high_l2_set0_encod[3:0] = {2'b10,high_l1_encod[5:4]};
  2'b11   :  high_l2_set0_encod[3:0] = {2'b11,high_l1_encod[7:6]};
  default :  high_l2_set0_encod[3:0] = {4{1'bx}};
  endcase

end


always @( high_l2_encod[3:2]
       or high_l1_encod[15:8])
begin
case(high_l2_encod[3:2])
  2'b00   :  high_l2_set1_encod[3:0] = {2'b00,high_l1_encod[9:8]};
  2'b01   :  high_l2_set1_encod[3:0] = {2'b01,high_l1_encod[11:10]};
  2'b10   :  high_l2_set1_encod[3:0] = {2'b10,high_l1_encod[13:12]};
  2'b11   :  high_l2_set1_encod[3:0] = {2'b11,high_l1_encod[15:14]};
  default :  high_l2_set1_encod[3:0] = {4{1'bx}};
  endcase

end


always @( high_l1_encod[23:18]
       or high_l1_encod[17:16]
       or high_l2_encod[5:4])
begin
case(high_l2_encod[5:4])
  2'b00   :  high_l2_set2_encod[3:0] = {2'b00,high_l1_encod[17:16]};
  2'b01   :  high_l2_set2_encod[3:0] = {2'b01,high_l1_encod[19:18]};
  2'b10   :  high_l2_set2_encod[3:0] = {2'b10,high_l1_encod[21:20]};
  2'b11   :  high_l2_set2_encod[3:0] = {2'b11,high_l1_encod[23:22]};
  default :  high_l2_set2_encod[3:0] = {4{1'bx}};
  endcase

end


always @( high_l1_encod[31:26]
       or high_l1_encod[25:24]
       or high_l2_encod[7:6])
begin
case(high_l2_encod[7:6])
  2'b00   :  high_l2_set3_encod[3:0] = {2'b00,high_l1_encod[25:24]};
  2'b01   :  high_l2_set3_encod[3:0] = {2'b01,high_l1_encod[27:26]};
  2'b10   :  high_l2_set3_encod[3:0] = {2'b10,high_l1_encod[29:28]};
  2'b11   :  high_l2_set3_encod[3:0] = {2'b11,high_l1_encod[31:30]};
  default :  high_l2_set3_encod[3:0] = {4{1'bx}};
  endcase

end



ct_vfmau_lza_42  x_ct_vfmau_lza_42_20 (
  .lza_p0           (high_l3_encod[0]),
  .lza_p1           (high_l3_encod[1]),
  .lza_precod       (high_l2_vld[3:0]),
  .lza_vld          (high_l3_vld     )
);







always @( high_l2_set2_encod[3:0]
       or high_l3_encod[1:0]
       or high_l2_set3_encod[3:0]
       or high_l2_set1_encod[3:0]
       or high_l2_set0_encod[3:0])
begin
case(high_l3_encod[1:0])
  2'b00   :  high_l3_set0_encod[5:0] = {2'b00,high_l2_set0_encod[3:0]};
  2'b01   :  high_l3_set0_encod[5:0] = {2'b01,high_l2_set1_encod[3:0]};
  2'b10   :  high_l3_set0_encod[5:0] = {2'b10,high_l2_set2_encod[3:0]};
  2'b11   :  high_l3_set0_encod[5:0] = {2'b11,high_l2_set3_encod[3:0]};
  default :  high_l3_set0_encod[5:0] = {6{1'bx}};
  endcase

end

   





ct_vfmau_lza_42  x_ct_vfmau_lza_42_21 (
  .lza_p0            (low_l1_encod[0]  ),
  .lza_p1            (low_l1_encod[1]  ),
  .lza_precod        (lza_precod[43:40]),
  .lza_vld           (low_l1_vld[10]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_22 (
  .lza_p0            (low_l1_encod[2]  ),
  .lza_p1            (low_l1_encod[3]  ),
  .lza_precod        (lza_precod[39:36]),
  .lza_vld           (low_l1_vld[9]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_23 (
  .lza_p0            (low_l1_encod[4]  ),
  .lza_p1            (low_l1_encod[5]  ),
  .lza_precod        (lza_precod[35:32]),
  .lza_vld           (low_l1_vld[8]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_24 (
  .lza_p0            (low_l1_encod[6]  ),
  .lza_p1            (low_l1_encod[7]  ),
  .lza_precod        (lza_precod[31:28]),
  .lza_vld           (low_l1_vld[7]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_25 (
  .lza_p0            (low_l1_encod[8]  ),
  .lza_p1            (low_l1_encod[9]  ),
  .lza_precod        (lza_precod[27:24]),
  .lza_vld           (low_l1_vld[6]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_26 (
  .lza_p0            (low_l1_encod[10] ),
  .lza_p1            (low_l1_encod[11] ),
  .lza_precod        (lza_precod[23:20]),
  .lza_vld           (low_l1_vld[5]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_27 (
  .lza_p0            (low_l1_encod[12] ),
  .lza_p1            (low_l1_encod[13] ),
  .lza_precod        (lza_precod[19:16]),
  .lza_vld           (low_l1_vld[4]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_28 (
  .lza_p0            (low_l1_encod[14] ),
  .lza_p1            (low_l1_encod[15] ),
  .lza_precod        (lza_precod[15:12]),
  .lza_vld           (low_l1_vld[3]    )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_29 (
  .lza_p0           (low_l1_encod[16]),
  .lza_p1           (low_l1_encod[17]),
  .lza_precod       (lza_precod[11:8]),
  .lza_vld          (low_l1_vld[2]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_30 (
  .lza_p0           (low_l1_encod[18]),
  .lza_p1           (low_l1_encod[19]),
  .lza_precod       (lza_precod[7:4] ),
  .lza_vld          (low_l1_vld[1]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_31 (
  .lza_p0           (low_l1_encod[20]),
  .lza_p1           (low_l1_encod[21]),
  .lza_precod       (lza_precod[3:0] ),
  .lza_vld          (low_l1_vld[0]   )
);









ct_vfmau_lza_42  x_ct_vfmau_lza_42_32 (
  .lza_p0           (low_l2_encod[0] ),
  .lza_p1           (low_l2_encod[1] ),
  .lza_precod       (low_l1_vld[10:7]),
  .lza_vld          (low_l2_vld[2]   )
);







ct_vfmau_lza_42  x_ct_vfmau_lza_42_33 (
  .lza_p0          (low_l2_encod[2]),
  .lza_p1          (low_l2_encod[3]),
  .lza_precod      (low_l1_vld[6:3]),
  .lza_vld         (low_l2_vld[1]  )
);







ct_vfmau_lza_32  x_ct_vfmau_lza_32_0 (
  .lza_p0          (low_l2_encod[4]),
  .lza_p1          (low_l2_encod[5]),
  .lza_precod      (low_l1_vld[2:0]),
  .lza_vld         (low_l2_vld[0]  )
);







always @( low_l1_encod[1:0]
       or low_l2_encod[1:0]
       or low_l1_encod[7:2])
begin
case(low_l2_encod[1:0])
  2'b00   :  low_l2_set0_encod[3:0] = {2'b00,low_l1_encod[1:0]};
  2'b01   :  low_l2_set0_encod[3:0] = {2'b01,low_l1_encod[3:2]};
  2'b10   :  low_l2_set0_encod[3:0] = {2'b10,low_l1_encod[5:4]};
  2'b11   :  low_l2_set0_encod[3:0] = {2'b11,low_l1_encod[7:6]};
  default :  low_l2_set0_encod[3:0] = {4{1'bx}};
  endcase

end


always @( low_l2_encod[3:2]
       or low_l1_encod[15:8])
begin
case(low_l2_encod[3:2])
  2'b00   :  low_l2_set1_encod[3:0] = {2'b00,low_l1_encod[9:8]};
  2'b01   :  low_l2_set1_encod[3:0] = {2'b01,low_l1_encod[11:10]};
  2'b10   :  low_l2_set1_encod[3:0] = {2'b10,low_l1_encod[13:12]};
  2'b11   :  low_l2_set1_encod[3:0] = {2'b11,low_l1_encod[15:14]};
  default :  low_l2_set1_encod[3:0] = {4{1'bx}};
  endcase

end


always @( low_l2_encod[5:4]
       or low_l1_encod[21:16])
begin
case(low_l2_encod[5:4])
  2'b00   :  low_l2_set2_encod[3:0] = {2'b00,low_l1_encod[17:16]};
  2'b01   :  low_l2_set2_encod[3:0] = {2'b01,low_l1_encod[19:18]};
  2'b10   :  low_l2_set2_encod[3:0] = {2'b10,low_l1_encod[21:20]};
  default :  low_l2_set2_encod[3:0] = {4{1'bx}};
  endcase

end



ct_vfmau_lza_32  x_ct_vfmau_lza_32_1 (
  .lza_p0          (low_l3_encod[0]),
  .lza_p1          (low_l3_encod[1]),
  .lza_precod      (low_l2_vld[2:0]),
  .lza_vld         (low_l3_vld     )
);







always @( low_l3_encod[1:0]
       or low_l2_set2_encod[3:0]
       or low_l2_set1_encod[3:0]
       or low_l2_set0_encod[3:0])
begin
case(low_l3_encod[1:0])
  2'b00   :  low_l3_set0_encod[5:0] = {2'b00,low_l2_set0_encod[3:0]};
  2'b01   :  low_l3_set0_encod[5:0] = {2'b01,low_l2_set1_encod[3:0]};
  2'b10   :  low_l3_set0_encod[5:0] = {2'b10,low_l2_set2_encod[3:0]};
  default :  low_l3_set0_encod[5:0] = 6'b0;
  endcase

end




assign lza_l4_encod[6:0] = (high_l3_vld)
                           ? {1'b0,high_l3_set0_encod[5:0]}
                           : {1'b1,low_l3_set0_encod[5:0]};
assign lza_result_vld  = high_l3_vld || low_l3_vld;
assign lza_result[6:0] = (lza_result_vld)
                       ? lza_l4_encod[6:0]
                       : 7'd108;


endmodule