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 모듈   4. Verilog 구문   5. Verilog 타이밍 제어   6. Verilog 화면  
용어해설 종합 (단일 페이지 형태)

"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"
     [정보통신기술용어해설]