@@ -433,7 +433,7 @@ module spatz_vfu
433433 vrf_data_t [$clog2 (N_FU )- 1 : 0 ] reduction_q, reduction_d;
434434 vrf_data_t reduction_vector_data, reduction_scalar_data;
435435 `FF (reduction_q, reduction_d, '0 )
436- elen_t reduction_useless_value ;
436+ elen_t reduction_neutral_value ;
437437
438438 // IPU results
439439 logic [N_FU * ELEN - 1 : 0 ] ipu_result;
@@ -616,62 +616,62 @@ module spatz_vfu
616616 logic [N_FU * ELEN - 1 : 0 ] v0_mask; // bit mask to select the valid elements in v0.t for reduction instructions
617617 logic [N_FU * ELEN - 1 : 0 ] mask; // bit mask
618618
619- always_comb begin : reduction_useless_value_selection
620- reduction_useless_value = '0 ;
619+ always_comb begin : reduction_neutral_value_selection
620+ reduction_neutral_value = '0 ;
621621 if (spatz_req.op_arith.is_reduction == 1'b1 ) begin
622622 case (spatz_req.op)
623623 VADD : // VREDSUM_VS, VFREDUSUM_VS, VFREDOSUM_VS
624- reduction_useless_value = '0 ;
624+ reduction_neutral_value = '0 ;
625625 VAND : // VREDAND_VS:
626- reduction_useless_value = '1 ;
626+ reduction_neutral_value = '1 ;
627627 VOR , // VREDOR_VS,
628628 VXOR : // VREDXOR_VS:
629- reduction_useless_value = '0 ;
629+ reduction_neutral_value = '0 ;
630630 VMINU : // VREDMINU_VS:
631- reduction_useless_value = '1 ;
631+ reduction_neutral_value = '1 ;
632632 VMIN : // VREDMIN_VS:
633633 unique case (spatz_req.vtype.vsew)
634- EW_8 : reduction_useless_value = { 1'b0 ,7'h7f } ;
635- EW_16 : reduction_useless_value = { 1'b0 ,15'h7fff } ;
636- EW_32 : reduction_useless_value = { 1'b0 ,31'h7fffffff } ;
634+ EW_8 : reduction_neutral_value = { 1'b0 ,7'h7f } ;
635+ EW_16 : reduction_neutral_value = { 1'b0 ,15'h7fff } ;
636+ EW_32 : reduction_neutral_value = { 1'b0 ,31'h7fffffff } ;
637637 default :
638- if (MAXEW == EW_64 ) reduction_useless_value = { 1'b0 ,63'h7fffffffffffffff } ;
638+ if (MAXEW == EW_64 ) reduction_neutral_value = { 1'b0 ,63'h7fffffffffffffff } ;
639639 endcase
640640 VMAXU : // VREDMAXU_VS
641- reduction_useless_value = '0 ;
641+ reduction_neutral_value = '0 ;
642642 VMAX : // VREDMAX_VS
643643 unique case (spatz_req.vtype.vsew)
644- EW_8 : reduction_useless_value = { 1'b1 ,7'h0 } ;
645- EW_16 : reduction_useless_value = { 1'b1 ,15'h0 } ;
646- EW_32 : reduction_useless_value = { 1'b1 ,31'h0 } ;
644+ EW_8 : reduction_neutral_value = { 1'b1 ,7'h0 } ;
645+ EW_16 : reduction_neutral_value = { 1'b1 ,15'h0 } ;
646+ EW_32 : reduction_neutral_value = { 1'b1 ,31'h0 } ;
647647 default :
648- if (MAXEW == EW_64 ) reduction_useless_value = { 1'b1 ,63'h0 } ;
648+ if (MAXEW == EW_64 ) reduction_neutral_value = { 1'b1 ,63'h0 } ;
649649 endcase
650650 VFMINMAX : begin
651651 if (spatz_req.rm == fpnew_pkg :: RNE ) begin // VFREDMIN_VS
652652 unique case (fpu_src_fmt)
653653 // + infinity
654- fpnew_pkg :: FP64 : reduction_useless_value = { 1'b0 ,11'h7ff ,52'h0 } ;
655- fpnew_pkg :: FP32 : reduction_useless_value = { 1'b0 ,8'hff ,23'h0 } ;
656- fpnew_pkg :: FP16 : reduction_useless_value = { 1'b0 ,5'h1f ,10'h0 } ;
657- fpnew_pkg :: FP16ALT : reduction_useless_value = { 1'b0 ,8'hff ,7'h0 } ;
658- fpnew_pkg :: FP8 : reduction_useless_value = { 1'b0 ,5'h1f ,2'h0 } ;
659- fpnew_pkg :: FP8ALT : reduction_useless_value = { 1'b0 ,4'hf ,3'h0 } ;
654+ fpnew_pkg :: FP64 : reduction_neutral_value = { 1'b0 ,11'h7ff ,52'h0 } ;
655+ fpnew_pkg :: FP32 : reduction_neutral_value = { 1'b0 ,8'hff ,23'h0 } ;
656+ fpnew_pkg :: FP16 : reduction_neutral_value = { 1'b0 ,5'h1f ,10'h0 } ;
657+ fpnew_pkg :: FP16ALT : reduction_neutral_value = { 1'b0 ,8'hff ,7'h0 } ;
658+ fpnew_pkg :: FP8 : reduction_neutral_value = { 1'b0 ,5'h1f ,2'h0 } ;
659+ fpnew_pkg :: FP8ALT : reduction_neutral_value = { 1'b0 ,4'hf ,3'h0 } ;
660660 endcase
661661 end
662662 if (spatz_req.rm == fpnew_pkg :: RTZ ) begin // VFREDMAX_VS
663663 unique case (fpu_src_fmt)
664664 // - infinity
665- fpnew_pkg :: FP64 : reduction_useless_value = { 1'b1 ,11'h7ff ,52'h0 } ;
666- fpnew_pkg :: FP32 : reduction_useless_value = { 1'b1 ,8'hff ,23'h0 } ;
667- fpnew_pkg :: FP16 : reduction_useless_value = { 1'b1 ,5'h1f ,10'h0 } ;
668- fpnew_pkg :: FP16ALT : reduction_useless_value = { 1'b1 ,8'hff ,7'h0 } ;
669- fpnew_pkg :: FP8 : reduction_useless_value = { 1'b1 ,5'h1f ,2'h0 } ;
670- fpnew_pkg :: FP8ALT : reduction_useless_value = { 1'b1 ,4'hf ,3'h0 } ;
665+ fpnew_pkg :: FP64 : reduction_neutral_value = { 1'b1 ,11'h7ff ,52'h0 } ;
666+ fpnew_pkg :: FP32 : reduction_neutral_value = { 1'b1 ,8'hff ,23'h0 } ;
667+ fpnew_pkg :: FP16 : reduction_neutral_value = { 1'b1 ,5'h1f ,10'h0 } ;
668+ fpnew_pkg :: FP16ALT : reduction_neutral_value = { 1'b1 ,8'hff ,7'h0 } ;
669+ fpnew_pkg :: FP8 : reduction_neutral_value = { 1'b1 ,5'h1f ,2'h0 } ;
670+ fpnew_pkg :: FP8ALT : reduction_neutral_value = { 1'b1 ,4'hf ,3'h0 } ;
671671 endcase
672672 end
673673 end
674- default : reduction_useless_value = '0 ;
674+ default : reduction_neutral_value = '0 ;
675675 endcase
676676 end
677677 end
@@ -757,14 +757,14 @@ module spatz_vfu
757757 // use of reduction useless value
758758 unique case (spatz_req.vtype.vsew)
759759 EW_8 :
760- reduction_vector_data = (vrf_rdata_i[1 ] & mask & v0_mask) | ({ N_FU * (ELEN / 8 ){ reduction_useless_value [7 : 0 ]}} & ~ (mask & v0_mask));
760+ reduction_vector_data = (vrf_rdata_i[1 ] & mask & v0_mask) | ({ N_FU * (ELEN / 8 ){ reduction_neutral_value [7 : 0 ]}} & ~ (mask & v0_mask));
761761 EW_16 :
762- reduction_vector_data = (vrf_rdata_i[1 ] & mask & v0_mask) | ({ N_FU * (ELEN / 16 ){ reduction_useless_value [15 : 0 ]}} & ~ (mask & v0_mask));
762+ reduction_vector_data = (vrf_rdata_i[1 ] & mask & v0_mask) | ({ N_FU * (ELEN / 16 ){ reduction_neutral_value [15 : 0 ]}} & ~ (mask & v0_mask));
763763 EW_32 :
764- reduction_vector_data = (vrf_rdata_i[1 ] & mask & v0_mask) | ({ N_FU * (ELEN / 32 ){ reduction_useless_value [31 : 0 ]}} & ~ (mask & v0_mask));
764+ reduction_vector_data = (vrf_rdata_i[1 ] & mask & v0_mask) | ({ N_FU * (ELEN / 32 ){ reduction_neutral_value [31 : 0 ]}} & ~ (mask & v0_mask));
765765 default :
766766 if (MAXEW == EW_64 )
767- reduction_vector_data = (vrf_rdata_i[1 ] & mask & v0_mask) | ({ N_FU { reduction_useless_value [63 : 0 ]}} & ~ (mask & v0_mask));
767+ reduction_vector_data = (vrf_rdata_i[1 ] & mask & v0_mask) | ({ N_FU { reduction_neutral_value [63 : 0 ]}} & ~ (mask & v0_mask));
768768 endcase
769769
770770 unique case (reduction_state_q)
0 commit comments