[VerilogHDL] 16_CombinationalLogicExample_DEMUX
1. DEMUX
Verilog HDL에서 DEMUX(De-multiplexer)는 하나의 입력을 다수의 출력으로 분배하는 조합 논리 회로입니다. DEMUX는 선택 비트에 따라 입력을 여러 출력 중 하나로 전달하는 역할을 합니다.
2. 예제 코드
module demux1to2(input wire i, select, output reg o0, o1);
always @(select) begin
case (select)
1'b0: begin
o0 = i;
o1 = 1'b0;
end
1'b1: begin
o0 = 1'b0;
o1 = i;
end
endcase
end
endmodule
위의 예제는 1:2 DEMUX를 구현한 Verilog HDL 코드입니다. i
는 입력 신호를 나타내고, select
는 선택 비트를 나타냅니다. o0
와 o1
은 분배된 출력 신호를 나타내는 레지스터형 출력입니다.
always
블록 내부에서 select
의 변화를 감지하여 선택된 출력 신호를 결정합니다. select
의 값에 따라 case
문을 통해 입력을 분배하고, o0
와 o1
에 할당합니다.
이 코드를 사용하여 1:2 DEMUX를 구현하면, i
입력이 select
값에 따라 o0
또는 o1
중 하나로 분배됩니다. 예를 들어, select
가 0인 경우 i
가 o0
로 전달되고, 1인 경우 i
가 o1
로 전달됩니다.
이와 같이 DEMUX를 사용하여 하나의 입력을 다수의 출력으로 분배하는 조합 논리 회로를 구현할 수 있습니다. DEMUX의 출력 개수와 크기는 필요에 따라 다양하게 조정할 수 있습니다.
0 댓글