VHDL 프로그래밍 시작하기 : 자신 만의 하드웨어 디자인

폭로: 귀하의 지원은 사이트 운영을 유지하는 데 도움이됩니다! 이 페이지에서 권장하는 일부 서비스에 대한 추천 수수료가 발생합니다.


VHDL은 하드웨어 설명 언어 (HDL)입니다. HDL은 프로그래밍 언어와 비슷하지만 목적이 다릅니다. HDL은 소프트웨어 설계에 사용되는 대신 컴퓨터 칩을 정의하는 데 사용됩니다. VHDL은 모든 유형의 회로를 설명하는 데 사용될 수 있으며 프로세서, CPU, 마더 보드, FPGA, ASIC 및 기타 여러 유형의 디지털 회로의 설계, 시뮬레이션 및 테스트에 자주 사용됩니다..

VHDL 역사

이름 VHDL은 중첩 된 약어입니다. VHSIC 하드웨어 설명 언어를 나타냅니다. VHSIC은 초고속 집적 회로를 나타냅니다. 고속 프로세서에 대한 설명 일뿐 아니라, 1980 년대 초고속 집적 회로 (고속 컴퓨터 칩) 분야에서 연구 개발을 수행 한 미 정부 프로그램의 이름이었습니다..

VHSIC는 재료 과학, 알고리즘, 칩 디자인, 리소그래피 및 기타 12 가지 관련 분야의 주요 발전과 함께 VHDL을 개발했습니다..

이 언어에 대한 최초의 공식 표준은 1987 년 IEEE에서 시작되었으며 IEEE 1076으로 알려져 있습니다. 그 이후로 2008 년에 최신 버전이 출시되었습니다. 1076 년에 지정된 “핵심”언어 외에도 다른 사양으로 코드화 된 확장의 수 :

  • IEEE 1076.1 VHDL 아날로그 및 혼합 신호 (VHDL-AMS)
  • IEEE 1076.1.1 VHDL-AMS 표준 패키지 (stdpkgs)
  • IEEE 1076.2 VHDL 수학 패키지
  • IEEE 1076.3 VHDL 합성 패키지 (vhdlsynth)
  • IEEE 1076.3 VHDL 합성 패키지 – 부동 소수점 (fphdl)
  • IEEE 1076.4 타이밍 (ASIC 라이브러리를 향한 VHDL 이니셔티브 : 필수)
  • IEEE 1076.6 VHDL 합성 상호 운용성
  • IEEE 1164 VHDL 다중 값 논리 (std_logic_1164) 패키지

VHDL 디자인 및 구문

VHDL은 Ada를 기반으로하며 구문과 개념 모두에서 광범위하게 차용되었습니다. 그런 다음 다중 값 논리, 물리적 병렬 처리 및 확장 된 부울 연산자 집합과 같은 하드웨어 관련 개념이 보완되었습니다. VHDL은 오름차순 및 내림차순으로 배열을 인덱싱 할 수있는 반면 Ada (및 대부분의 다른 프로그래밍 언어도)는 오름차순으로 만 인덱싱 할 수 있습니다..

대부분의 프로그래밍 언어는 핵심적으로 절차 적입니다. 컴퓨터는 순서대로 명령을 하나씩 실행합니다. VHDL이 다릅니다. (실제 또는 시뮬레이션 된) 물리적 구조를 설명하는 하드웨어 언어입니다. 이 구조는 많은 수의 모듈로 구성되며 각 모듈은 다른 모든 모듈과 동시에 작동합니다.

따라서 각 모듈에는 변수, 제어 흐름, 조건부, 루프가 포함 된 소규모의 자체 포함 된 소프트웨어 프로그램처럼 보이는 절차적인 명령 흐름이 있습니다. 각 모듈에는 하나 이상의 출력과 함께 하나 이상의 입력이 있습니다. 입력은 엔티티라는 구조 내에서 지정되며 자체 포함 논리는 아키텍처에서 정의됩니다..

두 개의 입력과 하나의 출력이있는“AND 게이트”라는 개념을 고려하십시오. 두 입력이 모두 “on”(true, 1)이면 출력이 “on”입니다. 그렇지 않으면 출력이 “꺼짐”입니다. 따라서 VHDL을 사용하여 두 개의 입력과 하나의 출력을 정의합니다. 입력 및 출력에 허용되는 값은 std_logic 모듈에 정의되어 있으며 일반 프로그래밍 언어의 라이브러리처럼 가져옵니다. 그런 다음 아키텍처는 방금 논의한대로 작동하도록 “AND 게이트”의 내부 작업을 정의합니다..

std_logic 모듈은 흥미로운 하드웨어 특정 유형의 값입니다. 프로그래밍 언어에있는 BOOLEAN 값 (1 비트 : true 또는 false)과 비슷하지만 실제 시스템의 실제 전기 임펄스를 나타 내기 때문에 값 범위를 가질 수 있습니다.

  • U : 초기화되지 않았습니다. 이 신호는 아직 설정되지 않았습니다.
  • X : 알 수 없습니다. 이 값 / 결과를 결정할 수 없습니다.
  • 0 : 논리 0
  • 1 : 논리 1
  • Z : 높은 임피던스
  • W : 신호가 약합니다. 0인지 1인지 알 수 없습니다.
  • L : 아마도 0으로 가야하는 약한 신호
  • H : 아마도 1로 가야하는 약한 신호
  • -: 상관 없음.

이것은 풀 VHDL 디자인이 구축되는 방식입니다. 논리적으로 자체 포함 된 I / O 활동 모듈은 서로 다른 유형의 작업을 수행 할 수있는 계산 기계를 형성하기 위해 서로 구축 및 연결됩니다. VHDL 디자인은 모든 기능을 갖춘 범용 컴퓨터를 설명하거나 비트 코인 채굴에 사용되는 무차별 작업 증명과 같은 단일 알고리즘을 인코딩 할 수 있습니다..

VHDL 디자인은 프로그램이 아니라 실행되거나 실행되지 않는다는 것을 인식해야합니다. 청사진과 마찬가지로 아키텍처를 정의합니다. 설계가 완료되면 일반적으로 소프트웨어 테스트 벤치에서 테스트를 위해 시뮬레이션 된 다음 합성됩니다. 즉, 실제 칩 또는 회로 보드에서 구현할 수있는 실제 설계로 변환됩니다..

VHDL 학습을위한 리소스

VHDL을 배우기위한 많은 자료가 있습니다. 우리는 최고 중 일부를 모았습니다.

온라인 자료

  • VHDL 입문서 : University of Pennsylvania의 VHDL에 대한 튜토리얼.
  • Wikipedia의 VHDL : Wikipedia의 VHDL 적용 범위는 깊이 있고 명쾌하며 언어 전체에 대한 훌륭한 소개를 제공합니다..
  • VHDL 요리 책 : 무료 온라인 책, 대학 과정 교과서의 길이와 형식.
  • VHDL 튜토리얼 : 예제로 배우기 :이 훌륭한 튜토리얼은보기에 좋지 않지만 정보는 훌륭하고 잘 정리되어 있습니다..
  • VHDL 언어 안내서 :이 문서는 매우 쉬운 탐색을 위해 문서 내 링크를 통해 언어를 엄청나게 자세하게 설명하는 (400 페이지) PDF입니다. 이것은 훌륭한 참조입니다.
  • VHDL 디자이너 안내서 : 리소스, 자습서 및 링크 모음. 비디오 및 온라인 인증 과정 포함.
  • 프로그래밍 가능한 로직 / VHDL 모듈 구조
  • VHDL 기초 — 온라인 코스
  • VHDL 핸드북
  • VHDL 스타터 안내서

서적

이 모든 책들은 VHDL에 중점을 둡니다.

  • VHDL 디자이너 안내서, 제 3 판
  • VHDL을 사용한 회로 설계 및 시뮬레이션
  • 예를 들어 Vhdl
  • VHDL : 프로그래밍 기초
  • 엔지니어를위한 VHDL
  • VHDL 예제 : 디지털 디자인의 기초
  • VHDL을 사용한 회로 설계
  • VHDL을 사용한 디지털 디자인 : 시스템 접근

VHDL & Verilog Books

VHDL의 주요“경쟁”은 Verilog입니다. 두 언어 모두 하드웨어 설계에 사용되므로 기본 설계 및 엔지니어링 개념에 중점을두고 VHDL과 Verilog를 모두 사용하는 많은 책이 있습니다..

  • RTL 디자인, VHDL 및 Verilog를 사용한 디지털 디자인
  • Hdl 칩 디자인 : 디자인, 합성을위한 실용 가이드 & 아식스 시뮬레이션 & Vhdl 또는 Verilog를 사용한 Fpgas
  • FPGA를위한 레시피 디자인, 2 판 : Verilog 및 VHDL 사용
  • HDL 프로그래밍 기초 : VHDL 및 Verilog

다른 중요한 VHDL 링크

구현 및 시뮬레이터

  • 무료 / 오픈 소스
    • GHDL
    • NVC
    • 무료 HDL 프로젝트
  • 상업 / 독점
    • VHDL 실 밀리
    • 액티브 -HDL
    • 치열한 엔터프라이즈 시뮬레이터
    • ModelSim

도구

  • EDA 유틸리티 : Verilog 및 기타 HDL뿐만 아니라 VHDL 작업을위한 대규모 유틸리티 모음.
  • EDA Playground : VHDL 디자인 테스트를위한 온라인 샌드 박스.
  • 에디터 패키지
    • 이맥스 VHDL 모드
    • vim 용 VHDL 플러그인
    • 숭고한 텍스트를위한 VHDL 패키지
    • 원자를위한 VHDL
    • 메모장 용 VHDL++

당신도 알아야합니다…

VHDL은 두 가지 주요 하드웨어 설명 언어 중 하나입니다. 다른 하나는 Verilog입니다. 대부분의 하드웨어 디자이너는 Cand C와 같은 저수준 운영 체제 언어뿐만 아니라 두 가지 모두에 익숙합니다.++.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map