반도체/FPGA - Verilog
[FPGA] Clock에 필요한 모듈 3) Decoder for 7 Segments Verilog Code
쑨야미
2021. 4. 1. 19:43
FND Switcher를 통해서 자리에 대한 Data가 나왔다면,
FND에 나타낼 숫자에 대한 Date가 필요하다.
Switcher에서 Hex_Value라는 숫자 Data가 생성이 되지만, 사실 UP_Down_counter에서
자리위치 뿐만아니라 숫자에 대한 정보가 Output으로 나온다.
FND Swicher에서 4bit 의 COM과 Hex_Value가 나온다. 4자리 자리수를 나타내기에는 4bit는 충분하지만,
1부터 10까지 나타내는데 있어서 7bit의 이진숫자가 존재한다.
따라서 4bit로 도출된 Hex_Value 를 7bit의 2진수로 풀어야하는데 이런 기능을 하는게 Decoder 이다.
따라서 다음은 7segment를 위한 Decoder의 코드이다.
module FND4digit_switcher(
input [3:0] value_1,
input [3:0] value_10,
input [3:0] value_100,
input [3:0] value_1000,
input clk_msec,
output reg [3:0] com,
output reg [3:0] hex_value
);
always @(negedge clk_msec) begin
case(com)
4'b0111: begin
com = 4'b1110;
hex_value = value_1;
end
4'b1110: begin
com = 4'b1101;
hex_value = value_10;
end
4'b1101: begin
com = 4'b1011;
hex_value = value_100;
end
4'b1011: begin
com = 4'b0111;
hex_value = value_1000;
end
default: begin
com = 4'b0111;
hex_value = value_1000;
end
endcase
end
endmodule
1. Prescaler
2021.04.01 - [반도체/FPGA - Verilog] - [FPGA] Clock에 필요한 모듈 1) Prescaler Verilog Code
2. FND Switcher
2021.04.01 - [분류 전체보기] - [FPGA] Clock에 필요한 모듈 2) FND 4digit switcher Verilog Code
4. UP/DOWN Counter
2021.04.01 - [분류 전체보기] - [FPGA] Clock에 필요한 모듈 4) Up/Down Counter Verilog Code