summaryrefslogtreecommitdiff
path: root/playground/fizzbuzz.v
diff options
context:
space:
mode:
Diffstat (limited to 'playground/fizzbuzz.v')
-rw-r--r--playground/fizzbuzz.v20
1 files changed, 20 insertions, 0 deletions
diff --git a/playground/fizzbuzz.v b/playground/fizzbuzz.v
new file mode 100644
index 0000000..0e34c58
--- /dev/null
+++ b/playground/fizzbuzz.v
@@ -0,0 +1,20 @@
+`timescale 1us/1us
+
+module fizzbuzz (
+ input [7:0] num_i,
+ output [7:0] num_o,
+ output fizz_o,
+ output buzz_o,
+ output fizzbuzz_o
+);
+
+wire is_fizz, is_buzz;
+assign is_fizz = num_i % 3 == 0;
+assign is_buzz = num_i % 5 == 0;
+
+assign fizz_o = is_fizz && !is_buzz;
+assign buzz_o = !is_fizz && is_buzz;
+assign fizzbuzz_o = is_fizz && is_buzz;
+assign num_o = (is_fizz || is_buzz) ? 0 : num_i;
+
+endmodule