🤍 전 강의 25% 할인 중 🤍

2024년 상반기를 돌아보고 하반기에도 함께 성장해요!
인프런이 준비한 25% 할인 받으러 가기 >>

  • 카테고리

    질문 & 답변
  • 세부 분야

    반도체

  • 해결 여부

    미해결

D 플립플롭 실습 질문 있습니다.

21.12.20 21:49 작성 조회수 159

1

맨 처음 DUT 모듈에서 터미널 리스트로 input/output port를 다 선언하시고 괄호까지 닫으신다음 reg 타입으로 내부 선언을  해주신 이유가 궁금합니다. 내부에서 선언은 무엇 때문에 하는건가요?

답변 1

답변을 작성해보세요.

0

안녕하세요 :)

input/output port 선언시 wire / reg 를 별도로 선언하지 않는다면, Default 로 wire 입니다.

즉, port list 의 

input A;

output B;

input wire A;

output wire B;

와 같습니다.

======================================================

위의 내용을 연장해서,

port 선언 이후에,

reg B;

를 사용하는 것은

port 선언시,

output reg B;

와 같습니다.

======================================================

내부에서 선언은 무엇 때문에 하는건가요?

선언한 변수를 필요에 의해 사용하려고 선언합니다. (당연한 이야기지만)

Reg 로 사용의 의미는 

case 1. Combinational logic 사용 always (*)

case 2. Clock Synchronous 저장소자 사용 (설계독학에서는 D F/F 으로 사용합니다)

D F/F 리셋 실습코드를 보시고 질문을 하신 것 같은데, (맞죠?)

위 case 1,2번 중에서는 2번에 해당하겠습니다.

즐공하세요 :)

 

ps. 혹시 문법 자체를 여쭤보신거라면,

맨 처음 DUT 모듈에서 터미널 리스트로 input/output port를 다 선언하시고 괄호까지 닫으신다음 reg 타입으로 내부 선언을  해주신 이유가 궁금합니다.

다음 링크가 이해에 도움이 되실 것 같아요.

https://www.chipverify.com/verilog/verilog-ports

 

채널톡 아이콘