diff options
| author | Fuwn <[email protected]> | 2023-11-13 17:44:12 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2023-11-13 17:44:12 -0800 |
| commit | e4f904587bf05dadc615f60d1f0b1519442451e4 (patch) | |
| tree | ba4e9658dbbaa6e0b9875ae38401200b6c7331f9 /bcd_to_seven.v | |
| download | iverilog-test-bench-main.tar.xz iverilog-test-bench-main.zip | |
Diffstat (limited to 'bcd_to_seven.v')
| -rw-r--r-- | bcd_to_seven.v | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/bcd_to_seven.v b/bcd_to_seven.v new file mode 100644 index 0000000..072ee8f --- /dev/null +++ b/bcd_to_seven.v @@ -0,0 +1,26 @@ +module bcd_to_seven( + input wire [3:0] bin_in, + output reg [7:0] sseg_out +); + always @* begin + case(bin_in) + 4'b0000: sseg_out = 8'b11000000; // 0 + 4'b0001: sseg_out = 8'b11111001; // 1 + 4'b0010: sseg_out = 8'b10100100; // 2 + 4'b0011: sseg_out = 8'b10110000; // 3 + 4'b0100: sseg_out = 8'b10011001; // 4 + 4'b0101: sseg_out = 8'b10010010; // 5 + 4'b0110: sseg_out = 8'b10000010; // 6 + 4'b0111: sseg_out = 8'b11111000; // 7 + 4'b1000: sseg_out = 8'b10000000; // 8 + 4'b1001: sseg_out = 8'b10010000; // 9 + 4'b1010: sseg_out = 8'b10001000; // A + 4'b1011: sseg_out = 8'b10000011; // B + 4'b1100: sseg_out = 8'b11000110; // C + 4'b1101: sseg_out = 8'b10100001; // D + 4'b1110: sseg_out = 8'b10000110; // E + 4'b1111: sseg_out = 8'b10001110; // F + default: sseg_out = 8'b11111111; // Off + endcase + end +endmodule |