cc_abs16n.v 1.15 KB
////////////////////////////////////////////////////////////////////////
//
// Project Reality
//
// module:	cc_abs16n
// description:	S.16 bit nagative absolute value.
//
// designer:	Phil Gossett
// date:	6/26/94
//
////////////////////////////////////////////////////////////////////////

module cc_abs16n (a, sn);

input [16:0] a;

output [15:0] sn;

in01d5  cinb (.i(a[16]), .zn(sgn));
xo02d1h ans0 (.a1(sgn), .a2(a[0]), .z(sn[0]));
xo02d1h ans1 (.a1(sgn), .a2(a[1]), .z(sn[1]));
xo02d1h ans2 (.a1(sgn), .a2(a[2]), .z(sn[2]));
xo02d1h ans3 (.a1(sgn), .a2(a[3]), .z(sn[3]));
xo02d1h ans4 (.a1(sgn), .a2(a[4]), .z(sn[4]));
xo02d1h ans5 (.a1(sgn), .a2(a[5]), .z(sn[5]));
xo02d1h ans6 (.a1(sgn), .a2(a[6]), .z(sn[6]));
xo02d1h ans7 (.a1(sgn), .a2(a[7]), .z(sn[7]));
xo02d1h ans8 (.a1(sgn), .a2(a[8]), .z(sn[8]));
xo02d1h ans9 (.a1(sgn), .a2(a[9]), .z(sn[9]));
xo02d1h ansa (.a1(sgn), .a2(a[10]),.z(sn[10]));
xo02d1h ansb (.a1(sgn), .a2(a[11]),.z(sn[11]));
xo02d1h ansc (.a1(sgn), .a2(a[12]),.z(sn[12]));
xo02d1h ansd (.a1(sgn), .a2(a[13]),.z(sn[13]));
xo02d1h anse (.a1(sgn), .a2(a[14]),.z(sn[14]));
xo02d1h ansf (.a1(sgn), .a2(a[15]),.z(sn[15]));

endmodule // cc_abs16n