logo

Verilog 튜토리얼

Verilog는 HDL(하드웨어 설명 언어)입니다. 네트워크 스위치, 마이크로프로세서, 메모리, 플립플롭 등의 디지털 시스템을 기술하는 데 사용되는 언어이다. 모든 수준에서 HDL을 사용하여 모든 디지털 하드웨어를 설명할 수 있습니다. HDL에 설명된 설계는 기술에 독립적이며 설계 및 디버깅이 매우 쉽고 일반적으로 특히 대형 회로의 경우 회로도보다 더 유용합니다.

Verilog 란 무엇입니까?

Verilog는 네트워크 스위치, 마이크로프로세서, 메모리, 플립플롭과 같은 디지털 시스템을 설명하는 데 사용되는 HDL(하드웨어 설명 언어)입니다.

Verilog 튜토리얼

Verilog 프로세스를 단순화하고 HDL을 더욱 강력하고 유연하게 만들기 위해 개발되었습니다. 오늘날 Verilog는 반도체 산업 전반에 걸쳐 사용되고 실행되는 가장 인기 있는 HDL입니다.

HDL 엔지니어가 원하는 하드웨어의 기능을 설명하고 자동화 도구를 통해 해당 동작을 조합 게이트 및 순차 논리와 같은 실제 하드웨어 요소로 변환할 수 있도록 하여 설계 프로세스를 향상시키기 위해 개발되었습니다.

Verilog는 다른 하드웨어 설명 언어와 같습니다. 이를 통해 설계자는 상향식 또는 하향식 방법론으로 설계를 설계할 수 있습니다.

    상향식 디자인:전자 설계의 전통적인 방법은 상향식입니다. 각 설계는 표준 게이트를 사용하여 게이트 수준에서 수행됩니다. 이 설계는 새로운 구조적, 계층적 설계 방법을 설계하는 방법을 제공합니다.하향식 디자인:이를 통해 조기 테스트, 다양한 기술의 손쉬운 변경, 구조화된 시스템 설계가 가능하며 기타 많은 이점을 제공합니다.

Verilog 추상화 수준

Verilog는 다음과 같은 다양한 추상화 수준에서 설계를 지원합니다.

  • 행동 수준
  • 등록 이전 수준
  • 게이트 레벨

행동 수준

행동 수준은 동시 알고리즘 행동을 통해 시스템을 설명합니다. 모든 알고리즘은 순차적입니다. 즉, 하나씩 실행되는 명령어 세트로 구성됩니다. 함수, 태스크, 블록이 주요 요소입니다. 디자인의 구조적 구현에 대한 고려가 없습니다.

등록-이전 수준

레지스터 전송 레벨을 사용하는 설계는 레지스터 간 데이터 전송과 연산을 사용하여 회로의 특성을 지정합니다.

RTL 코드의 현대적인 정의는 '합성 가능한 모든 코드를 RTL 코드라고 합니다'입니다.

게이트 레벨

시스템의 특성은 논리적 링크와 논리적 수준 내의 타이밍 속성으로 설명됩니다. 모든 신호는 이산 신호입니다. 이는 명확한 논리값(`0', `1', `X', `Z`)만 가질 수 있습니다.

사용 가능한 연산은 미리 정의된 논리 프리미티브(기본 게이트)입니다. 게이트 레벨 모델링은 논리 설계에 적합한 아이디어가 아닐 수 있습니다. 게이트 레벨 코드는 합성 도구와 같은 도구를 사용하여 생성되며 그의 넷리스트는 게이트 레벨 시뮬레이션 및 백엔드에 사용됩니다.

Verilog의 역사

  • Verilog HDL의 역사는 Gateway Design Automation이라는 회사가 로직 시뮬레이터인 Verilog-XL과 하드웨어 설명 언어를 개발했던 1980년대로 거슬러 올라갑니다.
  • Cadence Design Systems는 1989년에 Gateway를 인수하여 언어 및 시뮬레이터에 대한 권리를 얻었습니다. 1990년에 Cadence는 이 언어를 표준적이고 비독점적인 언어로 만들려는 의도로 공개 도메인에 넣었습니다.
  • Verilog HDL은 현재 OVI(Open Verilog International)와 VHDL International의 합병으로 형성된 비영리 조직인 Accellera에 의해 유지관리되고 있습니다. OVI는 IEEE 표준화 절차를 통해 언어를 채택하는 임무를 맡았습니다.
  • 1995년 12월 Verilog HDL은 IEEE Std가 되었습니다. 1364-1995. 크게 개정된 버전이 2001년에 출판되었습니다: IEEE Std. 1364-2001. 2005년에 추가 개정이 있었지만 이는 단지 몇 가지 사소한 변경 사항만 추가했을 뿐입니다.
  • Accellera는 Verilog를 확장한 새로운 표준인 SystemVerilog도 개발했습니다.
  • SystemVerilog는 2005년에 IEEE 표준(1800-2005)이 되었습니다.

Verilog는 어떻게 유용합니까?

Verilog는 구현 및 기술의 세부 사항을 숨기는 데 도움이 되는 추상화 수준을 만듭니다.

예를 들어, D 플립플롭 설계에는 포지티브 에지 트리거 FF를 달성하기 위해 트랜지스터를 배열하는 방법과 값을 플롭에 래치하는 데 필요한 상승, 하강 및 CLK-Q 시간에 대한 지식이 필요합니다. 기타 기술 지향적인 세부 사항.

전력 소모, 타이밍, 네트 및 기타 플롭을 구동하는 능력을 갖추려면 트랜지스터의 물리적 특성을 더욱 철저하게 이해해야 합니다.

Verilog는 우리가 행동에 집중하고 나머지는 나중에 정리하도록 돕습니다.

전제조건

Verilog를 배우기 전에 VLSI 디자인 언어에 대한 기본 지식이 있어야 합니다.

  • 논리 다이어그램의 작동 방식, 부울 대수, 논리 게이트, 조합 및 순차 회로, 연산자 등을 알아야 합니다.
  • 설정 시간, 유지 시간, 중요 경로, 클럭 주파수 제한 등과 같은 정적 타이밍 분석 개념에 대해 알아야 합니다.
  • ASIC 및 FPGA 기본 사항과 합성 및 시뮬레이션 개념.

청중

Verilog 튜토리얼은 자동 합성을 위해 Verilog HDL에서 디지털 시스템을 모델링하는 방법을 배우려는 초보자, 설계 엔지니어 및 검증 엔지니어를 돕기 위해 설계되었습니다. 이 튜토리얼이 끝나면 Verilog에 대한 중급 수준의 전문 지식을 얻게 될 것입니다.

문제

Verilog Tutorial에서 어떤 문제도 발견하지 못할 것이라고 확신합니다. 하지만, 틀린 부분이 있다면 문의 양식에 질문을 올려주세요.