데이터 플로우 수준은 게이트 수준보다 한 단계 더 추상화된 수준의 모델링 기법이다.
(근데 나는 아직 공부를 별로 안해서 그런지 게이트 수준이랑 엄청나게 큰 차이는 못느끼겠다.... 어쨌든 데이터 플로우 수준도 회로를 먼저 그려야 하는 건 똑같지 않나.... 내가 C나 C++에 더 익숙해서 그렇게 느끼는 듯..)
+) 완전다름!! 이땐 왜 그렇게 생각했을까
연속 할당문은 어떤 값을 넷에 할당하기 위해 사용된다.
wire out;
assign out = in1 & in2;
//또는 다음의 방식도 가능하다.
wire out = in1 & in2;
연속 할당문의 특징은 다음과 같다.
- 연속 할당문의 왼쪽은 항상 넷이어야 한다.(스칼라, 벡터 모두 가능)
- 연속 할당문은 항상 능동적으로, 오른쪽 피연산자들의 값이 바뀜과 동시에 왼쪽에 값을 할당한다.
- 연산자의 오른쪽에는 넷, 레지스터, 함수 호출문이 올 수 있다.
- 지연값은 할당문 안에서 단위 시간으로 지정되며, 넷에 값을 할당할 때 걸리는 시간을 제어하기 위해 사용된다.
assign 문을 통해 지연을 지정할 때에는 다음과 같이 작성한다.
//방법 1
wire out;
assign #10 out = in1 & in2;
//방법 2
wire #10 out = in1 & in2;
//방법 3
wire #10 out;
assign out = in1 & in2;
Reference: Samir Palnitkar - Verilog HDL 2판
'EE > Verilog' 카테고리의 다른 글
[Verilog] initial과 always 구문 (0) | 2023.01.16 |
---|---|
[Verilog] 연산자 정리 (0) | 2023.01.11 |
[Verilog] 게이트 지연 (0) | 2023.01.06 |
[Verilog] 게이트 수준 모델링 (0) | 2023.01.06 |
[Verilog] 포트(Ports)와 포트 연결 규칙 (0) | 2023.01.05 |