blob: d5344bae9e19ab1741a55efc6763fd52b1949b69 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
// nandgame condition checker
`timescale 1us/1us
`ifndef NANDGAME_CONDC
`define NANDGAME_CONDC
module cond_check #(
parameter DATA_WIDTH = 16
) (
input [(DATA_WIDTH-1):0] X,
input wire ltz,
input wire eqz,
input wire gtz,
output wire res
);
wire ltr, eqr, gtr, greater_zero;
assign greater_zero = X[(DATA_WIDTH - 1)] == 0;
assign ltr = ltz && !greater_zero;
assign gtr = gtz && greater_zero && !(X == 0);
assign eqr = eqz && (X == 0);
assign res = ltr || gtr || eqr;
endmodule
`endif
|