diff options
Diffstat (limited to 'nandgame/cond_check.sv')
| -rw-r--r-- | nandgame/cond_check.sv | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/nandgame/cond_check.sv b/nandgame/cond_check.sv new file mode 100644 index 0000000..dc9d334 --- /dev/null +++ b/nandgame/cond_check.sv @@ -0,0 +1,23 @@ +// nandgame condition checker + +`timescale 1us/1us + +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 |
