Verilog 모듈

(2024-09-06)

모듈


1. Verilog 모듈Verilog HDL에서 기본 설계 단위
     * 설계 중 여러 번 재사용 (인스턴스화)될 수 있는, 논리 회로 집단
        . 다른 설계자가 만들어 놓은 것도 사용 가능
     * 결국, 모듈들이 모여서 (서로 연결되고 계층화되어서), 복잡한 설계 결과물이 됨
        . 상위 레벨 모듈 또는 디지털 시스템을 구성하게 됨
     * 모듈 例) 레지스터,디코더,멀티플렉서 등
        . 하위 모듈들을 데이터패스,제어신호를 이용하여 서로 연결함으로써,
        . 디지털시스템을 완성해나감

  ㅇ 모듈 : module ~ endmodule


2. Verilog 모듈의 구조

  ㅇ module 모듈 이름 (포트 목록);   // 모듈 선언의 시작 (선언부)
     - (몸체부)
  ㅇ endmodule   // 모듈 선언의 종료


3. Verilog 모듈의 구성선언부  :  포트,파라미터,레지스터 등을 선언하는 부분
        . (포트 목록 상의, 포트들의 방향,비트폭,자료형 등을 선언)  :  port 선언
           .. 포트 목록 (port list) : 모듈과 그 외부 간의 인터페이스 역할을 하는 포트들
           .. 포트 모드 (port mode) : 포트의 방향 (입력 input, 출력 output, 양방향 inout)
           .. 포트 버스 폭
        . (파라미터 선언을 함)  :  parameter 선언
        . (레지스터 선언을 함)  :  reg 선언
        . (요소들 간의 연결을 위해, wire 선언을 함)  :  wire 선언

  ㅇ 몸체부  :  모듈의 기능(데이터흐름), 동작, 구조 들을 표현하는 부분
     - (기술하는 방법의 구분)
        . 구조적 기술 방법
           .. 게이트 수준 기술 (Gate level) 
        . 기능적 기술 방법
           .. 데이터흐름 기술 (Dataflow) : assign (연속적 할당)
           .. 동작적 기술 (Behavioral) : always, initial (절차적 할당) 

     - (주요 포함 가능 항목들)
        . aasign 문
        . 하위 모듈, 프리미티브의 인스턴트화
        . initial, always 문
        . function, task의 정의 및 호출
        . generate 문

  ㅇ 종료부 (endmodule)  :  종료를 선언하는 부분


4. Verilog 모듈의 특징
 
  ㅇ 가장 기본적인 설계 단위
  ㅇ 한 모듈이 다른 모듈을 포함토록 계층적 구성이 가능
     - 단, 모듈모듈을 내포시켜 선언하는 것은 안됨
  ㅇ 통상, 각 모듈이 하나의 파일이며, 파일명이 모듈명과 같으며, 파일확장자는 `.v`임


5. 테스트 벤치 모듈설계회로시뮬레이션하기 위한 모듈

[Verilog]1. Verilog   2. Verilog 모듈   3. Verilog 문법  


"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"
     [정보통신기술용어해설]       편집·운영 (차재복)          편집 후원          편집 이력
  1. Top (분류 펼침)      :     1,591개 분류    6,512건 해설