bl_log.v
914 Bytes
////////////////////////////////////////////////////////////////////////
//
// Project Reality
//
// module: bl_log
// description: Generate log (priority encode) for blend unit.
// Assumes input is a power of two.
//
// designer: Phil Gossett
// date: 8/14/94
//
////////////////////////////////////////////////////////////////////////
module bl_log (i, z);
input [15:0] i;
output [3:0] z;
or08d2 or0 ( .a1(i[ 1]), .a2(i[ 3]), .a3(i[ 5]), .a4(i[ 7]),
.a5(i[ 9]), .a6(i[11]), .a7(i[13]), .a8(i[15]), .z(z[0]));
or08d2 or1 ( .a1(i[ 2]), .a2(i[ 3]), .a3(i[ 6]), .a4(i[ 7]),
.a5(i[10]), .a6(i[11]), .a7(i[14]), .a8(i[15]), .z(z[1]));
or08d2 or2 ( .a1(i[ 4]), .a2(i[ 5]), .a3(i[ 6]), .a4(i[ 7]),
.a5(i[12]), .a6(i[13]), .a7(i[14]), .a8(i[15]), .z(z[2]));
or08d2 or3 ( .a1(i[ 8]), .a2(i[ 9]), .a3(i[10]), .a4(i[11]),
.a5(i[12]), .a6(i[13]), .a7(i[14]), .a8(i[15]), .z(z[3]));
endmodule // bl_log