[Verilog] Procedural Assignment, Continuous Assignment

pikamon·2022년 4월 20일
0

Verilog

목록 보기
4/12

1. Procedural Assignment

Procedural Assignment은 절차적 할당이라고 하며, initial이나 always 등과 같은 event block 내에서 값을 할당하는 것을 말한다.

아래의 예제를 보자.

module continuous(
	input a,
	output reg b
	);

	always @ (*) begin
		b <= a;
	end

endmodule

always block에서 값을 할당한 것을 볼 수 있다.

event block 안에서는 reg에 값을 할당해야 한다.

2. Continuous Assignment

Procedural Assignment은 절차적 할당이라고 하며, assign 키워드를 이용하여 값을 할당하는 것을 말한다.

아래의 예제를 보자.

module procedural(
	input a,
	output b
	);

	assign b = a;

endmodule

assign 키워드를 통해 값을 할당한 것을 볼 수 있다.

assign으로 할당할 때는 wire에 값을 할당해야 한다.

3. 결론

괜히 용어만 번지르르하지, 크게 중요하지 않은 것 같다.

profile
개발자입니당 *^^* 깃허브 https://github.com/pikamonvvs

0개의 댓글