교육/Verilog

Verilog HDL 개요 - HDL 기반 시스템 반도체 설계 과정

semicon_circuitdesigner 2024. 6. 30. 20:26
HDL 기반 시스템 반도체 설계 과정

HDL 기반 시스템 반도체 설계과정

1. 설계사양 결정

  • 회로의 기능, 성능 목표치, 동작 주파수, 칩 면적 및 전력소모 목표치, 테스트 커버리지, 설계기간, NRE(Non-Recurring Enginerring) 비용, 칩 단가 등의 설계 목표를 결정한다.
  • 설계될 시스템의 분할, 적용될 알고리즘 및 아키텍쳐, 입출력 신호의 이름 및 비트 폭, 데이터 입출력 및 제어신호의 타이밍 관계, 리셋 및 클록신호 정의 등이 포함된다.

2. 상위수준 모델링 및 검증

  • 상세설계 이전에 설계사양을 확인하도록 시스템의 전체 기능을 모델링, 검증하는 과정

3. RTL 설계와 테스트벤치 작성

  • 전체 시스템 구조와 분할 -> 상위수준 모델링 및 검증 -> 상세설계 진행
     - 상세설계는 합성 가능한 Verilog HDL 구문을 이용하여 RTL 모델링을 하고 테스트벤치를 작성하는 것이다.
  • RTL 설계에서는 최적의 하드웨어가 합성되도록 모델링해야 한다.
  • 회로의 목표 성능이 만족되는 최적의 레지스터 위치를 고려하여 모델링해야 한다.

4. RTL 기능 검증

  • RTL 설계가 완료된 Verilog HDL 모델의 회로 기능을 확인하기 위해 기능 검증을 수행한다.
  • 회로 합성 이전에 수행되는 기능 검증에서는 회로 내부의 지연은 고려하지 않고 단순히 기능 수준에서 이루어진다.

5. 회로 합성(Logic Synthesis)

  • RTL 모델링된 HDL 소스코드를 게이트 수준의 논리회로로 변환되는 과정
  • 합성 조건이 명시된 design constraint에는 목표 동작 주파수, 클록신호 사양, 입출력 신호 사양, 환경변수 및 설계 규칙, 면적 등의 조건이 명시되어 있다.

6. 합성 후 기능 및 타이밍 검증

  • 회로 합성이 완료되면 게이트 수준의 netlist가 생성된다.

Netlist란?

 Verilog 코드가 실제 하드웨어 회로로 변환되는 과정에서 생성되는 데이터 구조로, 다음의 정보를 포함한다
1. 회로에 사용된 논리 게이트, 플립플롭, 메모리 등의 하드웨어 구성 요소
2. 각 구성 요소들의 연결 관계
3. 입출력 포트 정보
4. 타이밍 정보


 

  • 회로의 동작 타이밍을 합성 이전의 RTL 검증보다 자세히 검증할 수 있다.

7. 레이아웃 설계

  • 회로 합성으로 생성된 게이트 수준 netlist를 마스크 제작에 사용될 레이아웃 도면으로 변환하는 과정
  • 최근의 시스템 IC 레이아웃 설계는 Auto P&R 툴에 의해 이루어진다.
  • Auto P&R에 의한 레이아웃 설계 과정은 다음과 같다.
    1. 설계자가 지정한 타이밍 제약조건 확인
    2. Floor Planning을 통해 전체적인 칩의 크기, 패드 영역, 코어 영역 등 지정하고 패드 셀 배치
    3. Power Ring 설계를 통해 전원(VDD, GND) 공급
    4. 타이밍 제약조건을 고려하여 셀 배치(Placement)
    5. 클록 트리 합성(Clock Tree Synthesis, CTS)을 통해 전체 칩에 클록 신호를 공급하는 클록 버퍼 삽입
    6. 배치된 셀들에 대한 배선과정

8. 레이아웃 후 검증

  • 레이아웃으로부터 셀과 배선에 의한 지연 특성과 게이트 수준 netlist 추출 후 타이밍 특성을 고려한 post-layout 검증 실시
  • 게이트 수준 타이밍 시뮬레이션, 레이아웃의 기생효과를 고려한 STA, 각종 설계규칙 검사 등을 통해 설계의 정확성 검증

'교육 > Verilog' 카테고리의 다른 글

Verilog HDL 모델링 방법 개요  (0) 2024.06.30
Verilog HDL의 어휘 토큰과 규칙  (1) 2024.06.30