output reg rsout, isout,
output reg [7:0] obail, ocuriter);
- wire [14:0] r2, i2, ri, diff;
+ wire [13:0] r2, i2;
+ wire [14:0] ri, diff;
wire [15:0] twocdiff;
wire r2sign, i2sign, risign, dsign;
- wire [15:0] bigsum;
- wire bigsum_ovf, rin_ovf, iin_ovf, throwaway;
+ wire [13:0] bigsum;
+ wire bigsum_ovf;
reg [12:0] xd, yd;
reg ineedbaild;
Multiplier i2m(clk, i[12:0], i[12:0], isign, isign, i2[12:0], i2sign, i2[13]);
Multiplier rim(clk, r[12:0], i[12:0], rsign, isign, ri[13:1], risign, ri[14]);
- assign bigsum = r2 + i2;
- assign bigsum_ovf = bigsum[15] | bigsum[14];
+ assign bigsum = r2[12:0] + i2[12:0];
+ assign bigsum_ovf = bigsum[13] | r2[13] | i2[13];
assign twocdiff = r2 - i2;
assign diff = twocdiff[15] ? -twocdiff : twocdiff;