VHDL
VHDL![]() |
패러다임 | 동시, 사후 대응, 데이터 흐름 |
---|---|
처음 등장한 | 1980년대 |
안정된 릴리스 | IEEE 1076-2019 / 2019년 12월 , 전( |
타이핑 분야 | 강한. |
파일 이름 확장자 | .disclosed(비활성화) |
웹 사이트 | IEEE VASG |
사투리 | |
VHDL-AMS | |
영향을 받다 | |
아다,[1] 파스칼 | |
|

VHSIC Hardware Description Language(VHDL; 하드웨어 기술 언어)는 설계 엔트리, 문서화 및 검증을 위해 시스템레벨에서 로직게이트 레벨까지 다양한 추상화 수준에서 디지털 시스템의 동작과 구조를 모델링할 수 있는 하드웨어 기술 언어(HDL)입니다.1987년부터 VHDL은 IEEE(Institute of Electrical and Electronics Engineers)에 의해 IEEE 규격 1076-2019로 표준화되었습니다.아날로그 및 혼합 신호 시스템을 모델링하기 위해 VHDL-AMS(공식 IEEE 1076.1)라고 하는 VHDL 기반의 IEEE 표준 HDL이 개발되었습니다.
VHDL은 VHSIC(Very-Speed Integrated Circuits Program)를 작성한 미국 국방부 프로그램의 이름을 따서 명명되었습니다.1980년대 초, VHSIC 프로그램은 개발을 목표로 한 집적회로 설계에 사용할 새로운 HDL을 모색했습니다.이 노력의 성과물은 1985년에 출시된 VHDL 버전 7.2입니다.IEEE 표준으로 표준화하려는 노력은 다음 해에 시작되었습니다.
역사
1983년 VHDL은 공급업체 기업이 장비에 포함시킨 ASIC의 동작을 문서화하기 위해 미국 국방부의 요청에 따라 개발되었습니다.섹션 4.5.1 "VHDL의 ASIC 문서"의 Requirement 64에 있는 표준 MIL-STD-454N에는[2] VHDL의 "마이크로일렉트로닉스 디바이스" 문서가 명시적으로 필요합니다.
이 문서의 정보를 바탕으로 ASIC를 시뮬레이트할 수 있다는 아이디어는 매우 매력적이어서 VHDL 파일을 읽을 수 있는 논리 시뮬레이터가 개발되었습니다.다음 단계는 VHDL을 읽고 회로의 물리적 구현에 대한 정의를 출력하는 논리 합성 도구의 개발이었습니다.
국방부는 Ada를 기반으로 가능한 많은 구문을 요구하기 때문에 Ada [citation needed]개발에서 이미 철저히 테스트된 개념을 재창조하지 않기 위해 VHDL은 개념과 구문 모두에서 Ada 프로그래밍 언어를 많이 차용했습니다.
IEEE 표준 IEEE 1076-1987에 [3]따라 설계된 VHDL의 초기 버전에는 수치(정수 및 실수), 논리(비트 및 부울), 문자 및 시간, 어레이 등 다양한 데이터 유형이 포함되어 있습니다.bit
불렀다bit_vector
및 의character
착신측 문자열
그러나 이 에디션에서는 해결되지 않은 문제는 신호의 드라이브 강도(없음, 약함 또는 강함)와 알 수 없는 값도 고려되는 "다중값 논리"였습니다.이를 위해서는 IEEE 표준 1164가 필요했습니다.이 표준에서는 9개의 값 로직유형: 스칼라std_logic
그리고 그 벡터 버전std_logic_vector
. 해결된 서브타입이 되는 것std_Ulogic
부모 유형,std_logic
-signals 신호는 버스 구조를 모델링하기 위한 다중 구동을 허용하며, 연결된 해상도 함수는 충돌하는 할당을 적절하게 처리합니다.
1993년에 갱신된 IEEE 1076은 구문의 일관성을 향상시키고, 보다 유연하게 명명할 수 있도록 했으며,character
ISO-8859-1 인쇄 가능 문자를 허용하도록 입력하고xnor
오퍼레이터 [specify]등
표준(2000 및 2002)의 사소한 변경에 의해 보호유형의 개념(C++의 클래스 개념과 유사)이 추가되어 포트 매핑 규칙에서 몇 가지 제한이 없어졌습니다.
IEEE 표준 1164 이외에도 언어의 기능을 확장하기 위해 몇 가지 하위 표준이 도입되었습니다.IEEE 규격 1076.2에서는 실제 데이터 타입과 복잡한 데이터 타입의 처리가 향상되었습니다.IEEE 표준 1076.3은 벡터에 대한 산술 연산을 용이하게 하기 위해 부호 있는 유형과 부호 없는 유형을 도입했습니다.IEEE 표준 1076.1(VHDL-AMS)은 아날로그 및 혼합 신호 회로 설계 확장을 제공했습니다.
VHDL의 폭넓은 사용을 지원하는 표준도 있습니다.특히 VITAL(VHDL Initiative Towed ASIC Libraries) 및 마이크로파 회선 설계 확장입니다.
2006년 6월, Accellera의 VHDL 기술 위원회(IEEE가 표준의 다음 업데이트 작업을 위임)는 이른바 VHDL-2006 드래프트 3.0을 승인했습니다.이 제안된 표준은 이전 버전과의 완벽한 호환성을 유지하면서 VHDL 코드를 쉽게 작성하고 관리할 수 있는 수많은 확장 기능을 제공합니다.주요 변경사항으로는 주요 1076 표준으로의 하위 표준(1164, 1076.2, 1076.3), 확장된 연산자 세트, 보다 유연한 대소문자 구문 및 문장 생성, VHPI(VHDL Procedural Interface) 통합(C/C++ 언어 인터페이스) 및 PSL(속성 사양 언어) 하위 집합이 포함됩니다.이러한 변경으로 인해 합성 가능한 VHDL 코드의 품질이 향상되고 테스트 벤치가 더욱 유연해지며 시스템 수준 설명에 VHDL을 더 폭넓게 사용할 수 있게 됩니다.
2008년 2월에 Accellera는 VHDL 4.0(비공식적으로 VHDL 2008이라고도 함)을 승인했습니다.VHDL 4.0은 버전 3.0의 평가 기간 동안 발견된 90개 이상의 문제를 해결하고 향상된 범용 유형을 포함합니다.2008년에 Accellera는 IEEE 1076-2008에 포함시키기 위한 투표를 위해 VHDL 4.0을 IEEE에 릴리스했습니다.VHDL 표준 IEEE 1076-2008은[4] 2009년1월에 공개되었습니다.
표준화
IEEE Standard 1076에서는 VHSIC Hardware Description Language(VHDL)가 정의되어 있습니다.원래는 1983년 미국 공군이 Intermetrics, Inc.의 팀에게 언어 전문가 및 주요 계약업체로, Texas Instruments는 칩 설계 전문가로, IBM은 컴퓨터 시스템 설계 전문가로 각각 수여한 F33615-83-C-1003 계약에 따라 개발되었습니다.이 언어는 수많은 개정을 거쳤으며 중요한 방식으로 언어를 증가시키거나 확장하는 다양한 하위 표준을 가지고 있습니다.
1076은 전자 [citation needed]시스템 설계에서 과거에도 그랬고 앞으로도 그럴 것입니다.
리비전
- IEEE 1076-1987[3] 미국 공군의 언어 버전 7.2의 최초 표준 개정판.
- IEEE 1076-1993[5](또한 와 함께 공개) ISBN1-55937-376-8).다년간의 피드백에 의한 대폭적인 개선.아마도 가장 널리 사용되는 버전이며, 가장 뛰어난 벤더 툴을 지원합니다.
- IEEE [6]1076-2000마이너 리비전보호된 유형의 사용을 소개합니다.
- IEEE [7]1076-20021076-2000의 마이너리비전버퍼 포트에 관한 규칙은 완화됩니다.
- IEC 61691-1:2004.[8] IEEE 1076-2002의 IEC 채택.
- IEEE [9]1076c-2007VHDL 프로시저 인터페이스인 VHPI가 도입되었습니다.이 인터페이스는 소프트웨어에 VHDL 모델에 액세스하기 위한 수단을 제공합니다.VHDL 언어에서는 VHPI를 수용하기 위해 약간의 수정이 필요했습니다.
- IEEE 1076-2008(이전의 1076-200x).주요 개정판은 2009년 1월 26일에 발표되었습니다.다른 변경 사항들 중에서, 이 표준은 PSL의 기본 서브셋을 통합하고, 패키지 및 하위 프로그램에 대한 제네릭을 허용하며, 외부 이름의 사용을 도입한다.
- IEC 61691-1:2011.[10] IEEE 1076-2008의 IEC 채택.
- IEEE 1076-2019메이저 리비전
관련 기준
- 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 통합 상호 운용성(2010년 [11]폐지)
- IEEE 1164 VHDL 멀티값 로직(std_logic_1164) 패키지
설계.
VHDL은 일반적으로 논리회로를 기술하는 텍스트모델 작성에 사용됩니다.이러한 모델은 논리설계의 일부인 경우에만 합성 프로그램에 의해 처리된다.시뮬레이션 프로그램은 설계에 인터페이스하는 논리회로를 나타내는 시뮬레이션 모델을 사용하여 논리설계를 테스트하기 위해 사용된다.이러한 시뮬레이션 모델의 컬렉션은 일반적으로 테스트벤치라고 불립니다.
VHDL 시뮬레이터는 일반적으로 이벤트 구동 [12]시뮬레이터입니다.즉, 각 트랜잭션이 일정된 특정 시간 동안 이벤트 큐에 추가됩니다.예를 들어 신호 할당이 1나노초 후에 발생할 경우 이벤트는 시간 +1ns 동안 큐에 추가됩니다.제로 지연도 허용되지만 여전히 스케줄이 필요합니다.이러한 경우 델타 지연이 사용됩니다.델타 지연은 무한히 짧은 시간 스텝을 나타냅니다.시뮬레이션은 트리거된 스테이트먼트가 평가되는 스테이트먼트 실행 모드와 큐 내의 이벤트가 처리되는 이벤트 처리 모드 두 가지 모드로 변경됩니다.
VHDL에는 하드웨어 설계에 내재된 병렬 처리를 위한 구조가 있지만 이러한 구조(프로세스)는 Ada(태스크)의 병렬 구조와는 구문이 다릅니다.Ada와 마찬가지로 VHDL은 강력한 유형으로 대소문자를 구분하지 않습니다.하드웨어에서 흔히 볼 수 있는 작업을 직접 표현하기 위해 nand 및 nor를 포함한 확장 부울 연산자 집합과 같이 Ada에는 없는 VHDL의 많은 기능이 있습니다.
VHDL에는 파일 입력 및 출력 기능이 있어 텍스트 처리를 위한 범용 언어로 사용할 수 있지만 시뮬레이션 테스트벤치에서는 자극 또는 검증 데이터를 위해 파일이 더 일반적으로 사용됩니다.실행 가능한 바이너리를 구축하는 VHDL 컴파일러가 있습니다.이 경우 VHDL을 사용하여 테스트벤치를 작성하여 호스트 컴퓨터의 파일을 사용하여 자극 정의, 사용자와의 상호 작용 및 예상 결과와 비교함으로써 설계의 기능을 확인할 수 있습니다.그러나 대부분의 디자이너는 이 작업을 시뮬레이터에 맡깁니다.
경험이 부족한 개발자는 시뮬레이션에 성공했지만 실제 기기로 합성할 수 없거나 너무 커서 실용적이지 못한 코드를 만드는 것이 비교적 쉽다.한 가지 특별한 단점은 스토리지 요소로 [13]D형 플립 플랍이 아닌 투명 래치가 우연히 생성되는 것입니다.
VHDL IDE(Xilinx ISE, Altera Quartus, Synopsys Synplify 또는 Mentor Graphics HDL Designer 등의 FPGA 구현용)에서 하드웨어를 설계하여 원하는 회로의 RTL 도식을 생성할 수 있습니다.그 후 생성된 도식은 적절한 테스트벤치를 생성한 후 회로의 입출력 파형을 나타내는 시뮬레이션 소프트웨어를 사용하여 검증할 수 있다.특정 회로 또는 VHDL 코드에 적합한 테스트벤치를 생성하려면 입력을 올바르게 정의해야 합니다.예를 들어 클럭 입력에는 루프 프로세스 또는 반복문이 필요합니다.[14]
마지막으로 VHDL 모델이 CPLD나 FPGA 등의 프로그래머블 로직 디바이스에 매핑된 "게이트 및 와이어"로 변환되면 VHDL 코드가 프로세서칩의 어떤 형태로 "실행"되는 것이 아니라 실제 하드웨어가 구성된다는 것입니다.
이점
VHDL의 주요 장점은 시스템 설계에 사용되는 경우 합성 도구가 설계를 실제 하드웨어(게이트 및 와이어)로 변환하기 전에 필요한 시스템의 동작을 설명하고 검증(시뮬레이션)할 수 있다는 것입니다.
또 다른 이점은 VHDL을 통해 동시 시스템을 설명할 수 있다는 것입니다.VHDL은 BASIC, C 및 어셈블리 코드와 같은 절차 컴퓨팅 언어와 달리 모든 문이 동시에 실행되도록 고려되는 데이터 흐름 언어입니다.
VHDL 프로젝트는 다목적입니다.계산 블록은 한 번 생성되므로 다른 많은 프로젝트에서 사용할 수 있습니다.그러나 많은 형태 및 기능 블록 파라미터(용량 파라미터, 메모리사이즈, 요소베이스, 블록구성 및 상호접속구조)를 조정할 수 있습니다.
VHDL 프로젝트는 이식 가능합니다.컴퓨팅 디바이스 프로젝트는 한 요소 기반용으로 생성되므로 다른 요소 기반(예: 다양한 기술을 사용한 VLSI)에 이식할 수 있습니다.
VHDL은 기존 Verilog에 비해 풀 타입의 시스템을 갖추고 있다는 점이 큰 장점입니다.설계자는 유형 시스템을 사용하여 훨씬 더 구조화된 코드를 작성할 수 있습니다(특히 레코드 [15]유형을 선언함).
설계 예시
![]() |
VHDL에서 설계는 인터페이스를 설명하는 최소 엔티티와 실제 구현을 포함하는 아키텍처로 구성됩니다.또한 대부분의 디자인은 라이브러리 모듈을 Import합니다.일부 설계에는 여러 아키텍처와 구성이 포함되어 있습니다.
VHDL의 심플한 AND 게이트는
-- (이것은 VHDL 코멘트입니다) /* 이것. 이 a 블록 댓글 (VHDL-2008) */ -- IEEE 라이브러리에서 std_logic을 Import합니다. 도서관 IEEE; 사용하다 IEEE.std_logic_1164.모든.; -- 이것은 엔티티입니다. 독립체 게이트 이 항구 ( I1 : 에 표준 논리; I2 : 에 표준 논리; O : 나가. 표준 논리); 끝. 독립체 게이트; --이것은 아키텍처입니다. 아키텍처 RTL 의 게이트 이 시작한다. O <=> I1 그리고. I2; 끝. 아키텍처 RTL;
(알려주세요)RTL
는 Register transfer level design의 약자입니다).위의 예는 HDL 초보자에게는 장황하게 보일 수 있지만 많은 부분이 옵션이거나 한 번만 작성해야 합니다.일반적으로 이와 같은 단순한 기능은 단순한 것을 위한 별도의 모듈을 갖는 대신 더 큰 동작 모듈의 일부입니다.또한 다음과 같은 요소의 사용std_logic
처음엔 과잉 살상으로 보일 수도 있어요빌트인을 쉽게 사용할 수 있습니다.bit
를 입력하고 처음에 라이브러리 가져오기를 피하십시오.단, 다치 논리, 구체적으로는 9치 논리 형식을 사용합니다.U
,X
,0
,1
,Z
,W
,H
,L
,-
단순한 비트(0,1) 대신 현재 다른 HDL에는 없는 매우 강력한 시뮬레이션 및 디버깅 도구를 설계자에게 제공합니다.
다음 예에서는 VHDL 코드를 매우 컴팩트한 형식으로 작성할 수 있음을 알 수 있습니다.그러나 경험이 풍부한 설계자는 일반적으로 이러한 콤팩트한 형식을 피하고 가독성과 유지보수를 위해 보다 상세한 코딩 스타일을 사용합니다.
합성 가능한 구조 및 VHDL 템플릿
VHDL은 전자 설계의 시뮬레이션과 그러한 설계의 통합이라는 두 가지 다른 목표에 자주 사용됩니다.합성은 VHDL을 컴파일하여 FPGA나 ASIC 등의 구현 테크놀로지에 매핑하는 프로세스입니다.
VHDL의 모든 구조가 합성에 적합한 것은 아닙니다.예를 들어, 대부분의 구조는 다음과 같은 타이밍을 명시적으로 취급합니다.wait for 10 ns;
시뮬레이션에 유효함에도 불구하고 합성할 수 없습니다.합성 도구마다 기능이 다르지만, 공통 합성 가능한 VHDL 서브셋이 존재하며, 이 서브셋은 언어 구성 및 관용어가 많은 합성 도구에 공통 하드웨어에 매핑되는 것을 정의합니다.IEEE 1076.6은 공식 합성 서브셋으로 간주되는 언어의 서브셋을 정의합니다.결과가 부정확하거나 표준이 아닌 구조물에 대해 최적화되지 않을 수 있으므로 합성하기 위해 매우 관용적인 코드를 작성하는 것이 일반적으로 "베스트 프랙티스"로 간주됩니다.
MUX 템플릿
멀티플렉서 또는 보통 'MUX'는 하드웨어 설계에서 매우 일반적인 단순한 구조입니다.다음 예시는 입력이 포함된 간단한 2대 1 MUX를 보여줍니다.A
그리고.B
, 셀렉터S
및 출력X
같은 MUX를 VHDL로 [16]표현하는 방법은 여러 가지가 있습니다.
X <=> A 언제 S = '1' 또 다른 B;
래치 템플릿
트랜스페어런트래치는 기본적으로 활성화 신호가 발생하면 갱신되는1비트의 메모리입니다.VHDL로 표현할 수 있는 방법은 여러 가지가 있습니다.
-- 래치 템플릿1 : Q <=> D 언제 가능하게 하다 = '1' 또 다른 Q; -- 래치 템플릿2: 과정(모든.) 시작한다. Q <=> D 언제(가능하게 하다); 끝. 과정;
D형 플립 플랍스
D형 플립 플랍은 클럭의 상승(또는 하강) 에지에서 착신 신호를 샘플링합니다.이 예에서는 비동기, 액티브-하이 리셋 및 상승 클럭에지 샘플이 설정되어 있습니다.
DFF : 과정(모든.) 이 시작한다. 한다면 RST 그리고나서 Q <=> '0'; 엘시프 상승 엣지(CLK) 그리고나서 Q <=> D; 끝. 한다면; 끝. 과정 DFF;
VHDL에서 에지 트리거 동작을 쓰는 또 다른 일반적인 방법은 '이벤트' 신호 속성을 사용하는 것입니다.신호명과 Atribute 이름 사이에는 1개의 아포스트로피를 써야 합니다.
DFF : 과정(RST, CLK) 이 시작한다. 한다면 RST 그리고나서 Q <=> '0'; 엘시프 CLK'이벤트 그리고. CLK = '1' 그리고나서 Q <=> D; 끝. 한다면; 끝. 과정 DFF;
VHDL은 다음과 같은 '한 줄'에도 적합합니다.
DFF : Q <=> '0' 언제 RST = '1' 또 다른 D 언제 상승 엣지(째깍째깍 소리를 내다);
또는
DFF : 과정(모든.) 이 시작한다. 한다면 상승 엣지(CLK) 그리고나서 Q <=> D; 문제 2 <=> 문제 1; 끝. 한다면; 한다면 RST 그리고나서 Q <=> '0'; 끝. 한다면; 끝. 과정 DFF;
이 프로세스에 의해 구동되는 모든 신호(레지스터)가 리셋되지 않는 경우 유용합니다.
예: 카운터
다음 예시는 비동기 리셋, 병렬 부하 및 설정 가능한 폭을 가진 업카운터입니다.이 예에서는 'unsigned'와 'std_logic_vector' 사이의 'unsigned' 유형, 유형 변환 및 VHDL 제네릭의 사용을 보여 줍니다.제네릭은 C++와 같은 다른 전통적인 프로그래밍 언어의 인수나 템플릿에 매우 가깝습니다.
도서관 IEEE; 사용하다 IEEE.std_logic_1164.모든.; 사용하다 IEEE.numeric_std.모든.; -- 서명되지 않은 유형의 경우 독립체 계산대 이 포괄적인 ( 폭 : 에 자연의 := 32); 항구 ( RST : 에 표준 논리; CLK : 에 표준 논리; 로드 : 에 표준 논리; 데이터. : 에 std_logic_module(폭-1 까지 0); Q : 나가. std_logic_module(폭-1 까지 0)); 끝. 독립체 계산대; 아키텍처 RTL 의 계산대 이 시작한다. 과정(모든.) 이 시작한다. 한다면 RST 그리고나서 Q <=> (다른이들 => '0'); 엘시프 상승 엣지(CLK) 그리고나서 한다면 로드 그리고나서 Q <=> 데이터.; 또 다른 Q <=> std_logic_module(서명되어 있지 않다(Q) + 1); --부호 없이 std_logic_vector로 변환됩니다. 끝. 한다면; 끝. 한다면; 끝. 과정; 끝. 아키텍처 RTL;
카운터가 복잡할수록 if/then/else 문이 추가될 수 있습니다.rising_edge(CLK) elsif
카운트 활성화, 특정 카운트 값으로 정지 또는 롤오버, 터미널 카운트 신호와 같은 출력 신호 생성 등과 같은 다른 기능을 추가합니다.이러한 제어장치를 함께 사용할 경우 원하는 우선순위를 생성하고 필요한 논리 수준의 수를 최소화하기 위해 이러한 제어장치의 순서와 중첩에 주의해야 한다.
시뮬레이션 전용 구성
VHDL의 큰 서브셋은 하드웨어로 변환할 수 없습니다.이 서브셋은 VHDL의 동기화 불가능 또는 시뮬레이션 전용 서브셋으로 알려져 있으며 프로토타이핑, 시뮬레이션 및 디버깅에만 사용할 수 있습니다.예를 들어, 다음 코드는 50MHz의 주파수를 가진 클럭을 생성합니다.예를 들어 시뮬레이션 중에 설계에서 클럭 입력을 구동하는 데 사용할 수 있습니다.그러나 이는 시뮬레이션 전용 구조이며 하드웨어에 구현할 수 없습니다.실제 하드웨어에서는 클럭은 외부에서 생성됩니다.사용자 논리 또는 전용 하드웨어에 의해 내부적으로 축소할 수 있습니다.
과정 시작한다. CLK <=> '1'; 잠깐만요. 위해서 10 NS; CLK <=> '0'; 잠깐만요. 위해서 10 NS; 끝. 과정;
시뮬레이션 전용 구성을 사용하여 매우 짧은 시간에 복잡한 파형을 구축할 수 있습니다.이러한 파형은 예를 들어 복잡한 설계의 테스트 벡터 또는 미래에 구현될 일부 신시사이저 로직의 프로토타입으로 사용될 수 있습니다.
과정 시작한다. 잠깐만요. 까지 기동 = '1'; -- START가 높을 때까지 기다립니다. 위해서 i 에 1 로. 10 고리 --그리고 몇 시간 동안 기다립니다. 잠깐만요. 까지 상승 엣지(CLK); 끝. 고리; 위해서 i 에 1 로. 10 고리 -- DATA에 1~10, 사이클마다 1개씩 숫자를 씁니다. 데이터. <=> 행선지(i, 8); 잠깐만요. 까지 상승 엣지(CLK); 끝. 고리; -- 출력이 바뀔 때까지 기다립니다. 잠깐만요. 에 결과; -- 클럭 주기의 ACK를 올립니다. ACK <=> '1'; 잠깐만요. 까지 상승 엣지(CLK); ACK <=> '0'; --등등... 끝. 과정;
표준 라이브러리
표준 패키지라고도 합니다.
IEEE 표준 패키지
IEEE 표준 패키지에는 다음이 포함됩니다.[17]
- 숫자_std
- 표준_logic_1164
- 표준 논리 연산
- std_logic_resigned
- std_logic_signed
- std_logic_misc
VHDL 시뮬레이터
상용:
- Aldec Active-HDL
- 케이던스 예리한
- 멘토 그래픽 모델 심
- 멘토 그래픽스 Questa Advanced Simulator
- Synopsys VCS-MX[18]
- Xilinx Vivado Design Suite (Vivado 시뮬레이터 탑재)
기타:
- EDA Playground - 무료 웹 브라우저 기반 VHDL IDE (VHDL 시뮬레이션에 Synopsys VCS, Cadence Inciplicate, Aldec Riviera-PRO 및 GHDL 사용)
- GHDL은 VHDL 프로그램을 실행할 수 있는 오픈 소스[19] VHDL 컴파일러입니다.GitHub에서의 GHDL
- Boot by freerangefactory.org은 GHDL 및 GTKWave 기반의 VHDL 컴파일러 및 시뮬레이터입니다.
- Symphony EDA의 VHDL Simili는 무료 상용 VHDL 시뮬레이터입니다.
- Nick Gasson의 nvc는 오픈 소스 VHDL[20] 컴파일러입니다.
- Edwin Naroska의 freehdl은 2001년 이후 폐기된 오픈 소스 VHDL [21]시뮬레이터입니다.
「 」를 참조해 주세요.
- Altera 하드웨어 기술 언어(AHDL)
- 끌
- 게젤
- numeric std - 벡터의 산술 함수를 제공하는 표준 패키지
- 시스템 C
- 시스템 Verilog
- 베릴로그
레퍼런스
- ^ David R. Coelho (30 June 1989). The VHDL Handbook. Springer Science & Business Media. ISBN 978-0-7923-9031-2.
- ^ Department of Defense (1992). Military Standard, Standard general requirements for electronic equipment. Retrieved November 15, 2017.
- ^ a b 1076-1987 – IEEE Standard VHDL Language Reference Manual. 1988. doi:10.1109/IEEESTD.1988.122645. ISBN 0-7381-4324-3.
- ^ 1076-2008 – IEEE Standard VHDL Language Reference Manual. 2009. doi:10.1109/IEEESTD.2009.4772740. ISBN 978-0-7381-6854-8.
- ^ 1076-1993 – IEEE Standard VHDL Language Reference Manual. 1994. doi:10.1109/IEEESTD.1994.121433. ISBN 0-7381-0986-X.
- ^ 1076-2000 – IEEE Standard VHDL Language Reference Manual. 2000. doi:10.1109/IEEESTD.2000.92297. ISBN 0-7381-1948-2.
- ^ 1076-2002 – IEEE Standard VHDL Language Reference Manual. 2002. doi:10.1109/IEEESTD.2002.93614. ISBN 0-7381-3247-0.
- ^ IEC 61691-1-1 First edition 2004-10; IEEE 1076 — IEC/IEEE Behavioural Languages – Part 1-1: VHDL Language Reference Manual (Adoption of IEEE Std 1076-2002). 2004. doi:10.1109/IEEESTD.2004.95752. ISBN 2-8318-7691-5.
- ^ 1076c-2007 – IEEE Standard VHDL Language Reference Manual Amendment 1: Procedural Language Application Interface. 2007. doi:10.1109/IEEESTD.2007.4299594. ISBN 978-0-7381-5523-4.
- ^ 61691-1-1-2011 — Behavioural languages – Part 1-1: VHDL Language Reference Manual. 2011. doi:10.1109/IEEESTD.2011.5967868. ISBN 978-0-7381-6605-6.
- ^ "IEEE 1076.6-2004 - IEEE Standard for VHDL Register Transfer Level (RTL) Synthesis".
- ^ "ELEC3017 - Simulation" (PDF). University of Southampton. Retrieved 23 February 2017.
- ^ "Why should I care about Transparent Latches?". Doulos. Retrieved 22 December 2012.
- ^ "Clock Generation". Doulos. Retrieved 22 December 2012.
- ^ Jiri Gaisler. "A structured VHDL Design Method" (PDF). Retrieved 15 November 2017.
- ^ "VHDL Logical Operators and Signal Assignments for Combinatorial Logic". FPGAtutorial. 16 May 2020. Retrieved 2020-08-23.
- ^ Chiusano, Silvia (April 5, 2011). "VHDL Data types and Operators available in the IEEE Standard Packages" (PDF). Polytechnic University of Turin.
{{cite web}}
: CS1 maint :url-status (링크) - ^ "VCS: Industry's Highest Performance Simulation Solution". synopsis.com.
- ^ "Copyrights Licenses". GHDL Documentation -- GHDL 0.36-dev documentation. readthedocs.io.
- ^ Gasson, Nick (November 5, 2011). "Writing a VHDL compiler".
- ^ "freehdl: By Thread". Archived from the original on February 10, 2002.
- 메모들
- 1076/INT-1991 – IEEE Standards Interpretations: IEEE Std 1076-1987, IEEE Standard VHDL Language Reference Manual. 1992. doi:10.1109/IEEESTD.1992.101084. ISBN 0-7381-0987-8.
추가 정보
- Peter J. Ashenden, "The Designer's Guide to VHDL, Third Edition (Systems on Silicon)", 2008, ISBN 0-1208-8785-1. (언어 개발 책임자 중 한 명이 작성한 VHDL 참조서)
- Bryan Maley, Fabrizio Tappero(2012년 2월).[1] 디지털 구현에 적합한 강력한 VHDL 코드를 기술하기 위한 무료 가이드입니다.2015-02-13에 원래 Free Range VHDL에서 아카이브되었습니다.
- Johan Sandstrom (October 1995). "Comparing Verilog to VHDL Syntactically and Semantically". Integrated System Design. EE Times. Sandstrom은 VHDL 구조와 Verilog 구조에 관련된 표를 제공합니다.
- Qualis Design Corporation (2000-07-20). "VHDL quick reference card" (PDF). 1.1. Qualis Design Corporation. Archived from the original (PDF) on 2003-12-10.
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말) - Qualis Design Corporation (2000-07-20). "1164 packages quick reference card" (PDF). 1.0. Qualis Design Corporation. Archived from the original (PDF) on 2016-03-14.
{{cite journal}}
:Cite 저널 요구 사항journal=
(도움말) - Janick Bergeron, "쓰기 테스트 벤치:HDL 모델의 기능 검증", 2000, ISBN 0-7923-7766-4. (HDL Testbench 성경)
외부 링크

