Summing of field elements with Pipline Vertical Summator.
Source field - INF, its size - INCAP, result goes to slice OUTS.
procedure SUMFPVS( refer slice outs, inf[ ]; index incap );
const
L = lg2 Slicelen;
index
i;{ PVS = Pipeline Vertical Summator }
begin
ADDCLR;
for i := 0 to incap-1 do
begin
COPY( Y, inf[ i ] );
ADDIN( Y );{ Load slices to PVS }
end;
for i := 0 to L do{ Clear pipline }
ADDIN( Y );
CLEAR( outs );{ Get result }
ADDOUT( outs );
end;{ End of SUMFPVS }
See also