HDL   Hardware Description Language   하드웨어 기술 언어, 하드웨어 표현 언어

(2020-08-29)

하드웨어 서술 언어

1. 하드웨어 기술 언어 (HDL, Hardware Description Language)디지털시스템(논리회로)의 `구조` 및 `동작`을 기술(표현)하는 언어
     - 하드웨어적인 구조와 동작을 텍스트 기반으로 표현 가능
     - 계산 보다는 모델링을 위한 언어디지털시스템의 표현,설계,구현(합성)하는 상위수준 하드웨어 기술 언어[존산]
     - 디지털시스템이 게이트와 플립플롭 등의 실제 회로로 구현되기 전에,
     - 상위레벨에서 하드웨어 기능을 설계(논리합성)하고 오류의 정정(시뮬레이션) 등을 가능케 함

  ㅇ 초기에는, 논리 회로 시뮬레이션 정도 만 가능하던 것이,
     - 오늘날은, 디지털시스템설계(Design),시뮬레이션(Simulation),검증(Verification),구현 등
                 모든 용도로 사용되고 있음


2. HDL 특징

  ㅇ 기존 프로그래밍 언어와 달리, 
     - 하드웨어 상에서 동작하는 시간(Time)과 동시성(Concurrency) 표현이 가능

  ㅇ 주요 특성
     - 동시성/병행성 (Concurrency)
     - 병렬성 (Parallel)
     - 추상화 (Abstraction)


3. HDL에 의한 주요 설계 흐름, 단계, 방향

  ㅇ 주요 설계 흐름 (Design Flow)
     - 설계 엔트리(Design Entry) 또는 설계 캡슐화(Design Encapsulation)
        . 하드웨어 기능을 HDL 언어 기반으로 표현하는 것
     - 논리 시뮬레이션 (Logic Simulation)
        . 하드웨어가 어떻게 동작하는지를 컴퓨터 디스플레이로 보여주는 것
           .. 시간 순서, 신호 파형 등 출력
        . 회로 기능 테스트의 논리 입력값(stimulus)을 테스트 벤치(test bench)라고 함
           .. 테스트 벤치도 HDL로 작성됨
        . 올바른 동작 증명을 위해 직접 확인 검증,수학적인 방법 등을 사용하게 됨
     - 논리 합성 (Logic Synthesis)
        . HDL 표현에 의한 구성요소,상호연결을 최적화(논리식의 간략화,최소화 등)시킨 결과물을
          넷리스트로 얻어내는 과정
        . 이 과정에서 요소 및 구조를 표현하는 데이터베이스를 생성하게 됨
        . 실제 구현될 IC 형태는, ASIC,PLD,FPGA 등
     - 타이밍 검증 (Timing Verification)
        . 합성된 결과물이 규정 속도에서 동작 가능한지를 검증
        . 게이트 전파 지연 등에 의한 영향으로 올바른 동작 여부를 검증
     - 결함 시뮬레이션 (Fault Simulation)
        . 결함 회로와 무 결함 회로 간의 차이를 확인할 수 있는 테스트 패턴을 인가함으로써 검증

  ㅇ 설계계층적 구분 및 방향(하향식)
     - 행위 레벨 (Behavioral)
     - 레지스터 전달 레벨 (RTL)
     - 게이트 레벨 (Gate)
     - 트랜지스터 레벨 (Tr)
     - 배치 및 배선

  ㅇ 컴파일 단계 (레지스터 전달 레벨 -> 게이트 레벨)
     - 논리 동작을 기술하는 HDL 포멧의 파일 생성
     - 산업 표준인 EDF 포멧으로 변환
     - JEDEC 포멧으로 변환


4. 대표적 HDLVHDLVerilog HDL : IEEE 1364 (1995,2001,2005 등)
  ㅇ AHDL (Altera社의 하드웨어기술언어) 등


[하드웨어 기술(記述)] 1. HDL(하드웨어 기술 언어) 2. 레지스터 전달 레벨 (RTL) 3. Verilog 4. VHDL

 
        요약목록     참고문헌