Line 956... |
Line 956... |
`MOD: ResultA = wModulus2N_ResultA[31:0];
|
`MOD: ResultA = wModulus2N_ResultA[31:0];
|
`FRAC: ResultA = iChannel_Ax & (`WIDTH'hFFFFFFFF >> (`WIDTH - `SCALE));
|
`FRAC: ResultA = iChannel_Ax & (`WIDTH'hFFFFFFFF >> (`WIDTH - `SCALE));
|
`MULP: ResultA = iChannel_Ax;
|
`MULP: ResultA = iChannel_Ax;
|
`NEG: ResultA = ~iChannel_Ax + 1'b1;
|
`NEG: ResultA = ~iChannel_Ax + 1'b1;
|
`XCHANGEX: ResultA = iChannel_Bx;
|
`XCHANGEX: ResultA = iChannel_Bx;
|
|
`XCHANGEY: ResultA = iChannel_Ax;
|
|
`XCHANGEZ: ResultA = iChannel_Ax;
|
|
|
|
|
default:
|
default:
|
begin
|
begin
|
`ifdef DEBUG
|
`ifdef DEBUG
|
// $display("%dns ALU: Error Unknown Operation: %d",$time,iOperation);
|
// $display("%dns ALU: Error Unknown Operation: %d",$time,iOperation);
|
Line 1002... |
Line 1005... |
`MOD: ResultB = wModulus2N_ResultB[31:0];
|
`MOD: ResultB = wModulus2N_ResultB[31:0];
|
`FRAC: ResultB = iChannel_Ay & (`WIDTH'hFFFFFFFF >> (`WIDTH - `SCALE));
|
`FRAC: ResultB = iChannel_Ay & (`WIDTH'hFFFFFFFF >> (`WIDTH - `SCALE));
|
`MULP: ResultB = iChannel_Ay;
|
`MULP: ResultB = iChannel_Ay;
|
`NEG: ResultB = ~iChannel_Ay + 1'b1;
|
`NEG: ResultB = ~iChannel_Ay + 1'b1;
|
`XCHANGEX: ResultB = iChannel_Ay;
|
`XCHANGEX: ResultB = iChannel_Ay;
|
|
`XCHANGEY: ResultB = iChannel_By;
|
|
`XCHANGEZ: ResultB = iChannel_Ay;
|
|
|
default:
|
default:
|
begin
|
begin
|
`ifdef DEBUG
|
`ifdef DEBUG
|
//$display("%dns ALU: Error Unknown Operation: %d",$time,iOperation);
|
//$display("%dns ALU: Error Unknown Operation: %d",$time,iOperation);
|
Line 1048... |
Line 1053... |
`MOD: ResultC = wModulus2N_ResultC[31:0];
|
`MOD: ResultC = wModulus2N_ResultC[31:0];
|
`FRAC: ResultC = iChannel_Az & (`WIDTH'hFFFFFFFF >> (`WIDTH - `SCALE));
|
`FRAC: ResultC = iChannel_Az & (`WIDTH'hFFFFFFFF >> (`WIDTH - `SCALE));
|
`MULP: ResultC = wMultiplicationA_Result[31:0];
|
`MULP: ResultC = wMultiplicationA_Result[31:0];
|
`NEG: ResultC = ~iChannel_Az + 1'b1;
|
`NEG: ResultC = ~iChannel_Az + 1'b1;
|
`XCHANGEX: ResultC = iChannel_Az;
|
`XCHANGEX: ResultC = iChannel_Az;
|
|
`XCHANGEY: ResultC = iChannel_Az;
|
|
`XCHANGEZ: ResultC = iChannel_Bz;
|
default:
|
default:
|
begin
|
begin
|
`ifdef DEBUG
|
`ifdef DEBUG
|
//$display("%dns ALU: Error Unknown Operation: %d",$time,iOperation);
|
//$display("%dns ALU: Error Unknown Operation: %d",$time,iOperation);
|
//$stop();
|
//$stop();
|
Line 1301... |
Line 1308... |
|
|
`MOD: OutputReady = wAddSubAOutputReady && //TODO: wait 1 more cycle
|
`MOD: OutputReady = wAddSubAOutputReady && //TODO: wait 1 more cycle
|
wAddSubBOutputReady &&
|
wAddSubBOutputReady &&
|
wAddSubCOutputReady;
|
wAddSubCOutputReady;
|
|
|
`XCHANGEX: OutputReady = wOutputDelay1Cycle;
|
`XCHANGEX,`XCHANGEY,`XCHANGEZ: OutputReady = wOutputDelay1Cycle;
|
|
|
|
|
default:
|
default:
|
begin
|
begin
|
OutputReady = 1'b0;
|
OutputReady = 1'b0;
|