HDL과 검증

SystemVerilog의 always_ff나 always_comb를 Verilog의 always 대신 사용하는 장점으로 올바른 것은?

  1. Aalways_ff를 사용하면 회로의 속도가 반드시 2배가 된다
  2. Balways_comb를 사용하면 시뮬레이션이 필요 없어진다
  3. C설계자의 의도(플립플롭인지 조합 회로인지)를 도구가 알 수 있어, 의도와 다른 회로(래치 등)가 되면 경고할 수 있다
정답과 해설 보기

정답: C. 설계자의 의도(플립플롭인지 조합 회로인지)를 도구가 알 수 있어, 의도와 다른 회로(래치 등)가 되면 경고할 수 있다

Verilog의 always는 플립플롭에도 조합 회로에도 래치에도 사용할 수 있으므로 도구는 설계자의 의도를 알지 못합니다. always_ff라고 쓰면 플립플롭을 의도했고, always_comb라고 쓰면 조합 회로를 의도했다고 명시할 수 있어, 조건 누락으로 래치가 만들어졌을 때 등에 도구가 경고나 오류를 낼 수 있습니다. always_comb는 안에서 읽는 신호로부터 자동으로 감지 목록을 정합니다.

  • A. 속도와는 관계가 없습니다.
  • B. 시뮬레이션은 계속 필요합니다.
  • C. 올바릅니다. always_comb는 감지 목록도 자동으로 정해집니다.
이 분야 연습하기 분야로 돌아가기

HDL과 검증의 다른 문제

  1. 위와 같이 parameter를 사용하여 module을 작성하는 장점으로 올바른 것은?
  2. 위 generate문의 동작으로 올바른 것은?
  3. HDL 검증에서 사용되는 Lint 도구의 역할로 올바른 것은?
  4. 논리 합성이나 배치 배선 후의 회로(게이트 레벨 넷리스트)에서 지연 정보를 넣어 시뮬레이션하는 주된 목적은?
  5. 위 기술처럼 플립플롭을 거치지 않고 조합 회로의 출력이 자신의 입력으로 되돌아오는 형태를 무엇이라 하며, 왜 피해야 하는가?

이 분야의 비교