[VerilogHDL] 20_레지스터(Register)

20_레지스터

verilogHDL

[VerilogHDL] 20_레지스터(Register)

1. 레지스터(Register)

Verilog HDL에서 레지스터(Register)는 순차 논리(Sequential Logic) 구성 요소 중 하나로, 데이터를 기억하고 전달하는 역할을 수행합니다. 레지스터는 현재 상태를 저장하고, 클럭 신호에 의해 동기적으로 업데이트됩니다.

레지스터는 일반적으로 클럭 신호와 데이터(D) 입력을 가지며, 클럭의 상승(edge)에 따라 데이터를 입력 받아 저장합니다. 저장된 데이터는 다음 클럭 주기에서 출력으로 전달됩니다. 레지스터는 순차적인 동작을 수행하기 위해 주로 순차 논리 회로에서 사용됩니다.

2. 예제 코드

module register(input wire D, input wire clk, output reg Q);
   always @(posedge clk)
   begin
      Q <= D;
   end
endmodule

위의 예제 코드에서 D는 데이터 입력, clk는 클럭 입력, Q는 출력 레지스터입니다. always 블록은 클럭의 상승 에지(posedge clk)에서 실행되며, D의 값을 Q에 복사합니다.

레지스터는 디지털 시스템에서 상태 기억, 데이터 버퍼링, 데이터 전달 등 다양한 용도로 사용됩니다. 여러 개의 레지스터를 조합하여 더 복잡한 순차 논리 회로를 구성할 수 있습니다.

댓글 쓰기

0 댓글