프로그래밍 가능한 로직에 대한 배경 지식이 전혀 없으며 프로젝트에서 주로 마이크로 컨트롤러를 사용하지만 최근에는 비디오 작업이 필요했고 마이크로 컨트롤러가 너무 느려서 CPLD로 게임을 시작했습니다.
CPLD 만 회로도 설계를 사용하여 좋은 결과를 얻을 수 있었지만 CPLD에 대한 정보를 검색 할 때 VHDL과 Verilog를 사용하여 많은 예제를 보았습니다. 이 언어 중 하나로 내 장치를 정의하고 싶은 것이 무엇인지 궁금합니다. 회로도 설계가 할 수없는 것은 무엇입니까? 그들은 주로 기능에 사용됩니까?
지금까지 CPLD 만 사용 했으므로 FPGA 디자인은 이러한 언어를 사용함으로써 CPLD보다 더 많은 이점을 얻습니까?
답변
회로도 디자인은 상용 모듈 (카운터, 가산기, 메모리 등)을 함께 묶을 때만 유용합니다. 그러나 실제 알고리즘 (예 : 암호화 해싱 알고리즘)을 구현하는 것은 HDL (VHDL 또는 Verilog와 같은) 없이는 거의 불가능합니다. 왜냐하면 회로도 기호가있는 행동 수준에서 시스템을 설명 할 방법이 없기 때문입니다.
대부분의 프로젝트는 손으로 합성하기가 너무 복잡하여 로직 프리미티브를 개략적으로 사용하기 때문에 행동 스타일 HDL로 수행됩니다.
CPLD는 일반적으로 글루 로직에 사용되며 처리에는 덜 사용되며 일반적으로 로직은 개략적으로 구현하기 쉬우므로 FPGA 기반 디자인이 HDL을 사용하면 더 많은 이점을 얻을 수 있다고 제안 할 때 적절하다고 생각합니다.
답변
Jay의 탁월한 답변 외에도 몇 가지 실용적인 측면 :
- 버그. 회로도 도구는 나머지 도구 세트보다 버그가 많은 * 경향이 있습니다. 이는 업계의 회로도보다 Verilog / VHDL을 선호하기 때문일 수 있으므로 소프트웨어 개발자는 회로도 입력에 덜 관심을 기울입니다.
- 속도. 회로도를 합성 도구로 전달하기 전에 먼저 HDL로 변환해야합니다. 이는 빌드 시간에 부정적인 영향을 줄 수 있습니다. 어떤 이유로 검사해야 할 경우 생성 된 HDL을 읽을 수 없을 수도 있습니다.
- 이식성. 사용 된 공급 업체 특정 프리미티브의 양에 따라 Verilog 및 VHDL은 장치간에 어느 정도 이식성이 있습니다. 포팅 회로도는 모든 것을 다시 그리거나 제공된 가져 오기 / 내보내기 기능 (있는 경우)에 의존해야합니다.
Xilinx ISE에서 가장 좋아하는 버그는 수직 와이어를 선택할 수 없다는 점입니다.
답변
Entry 디자인 입력 표준으로서 HDL (하드웨어 설명 언어)의 많은 장점이 있습니다.
기능에 대한 설명은 더 높은 수준에있을 수 있으며, HDL 기반 디자인은 선택한 기술에 대한 게이트 수준 설명으로 합성 될 수 있으며, HDL 디자인은 게이트 수준 넷 목록 또는 회로도 설명 및 HDL보다 이해하기 쉽습니다. 강력한 유형 검사로 인한 오류를 줄입니다.
하드웨어 설명 언어 VHDL 및 Verilog는 동시성, 타이밍, 계층 구조, 구성 요소 재사용, 상태 동작, 동기 동작, 비동기 동작, 동기화 및 고유 병렬 처리와 같은 기능을 포함하여 더 높은 추상화 레벨에서 모델링 할 의도로 하드웨어를 모델링하기 위해 설계되었습니다. .
설계 설명을 특정 프로세스 및 게이트 구현에 매핑하여 합성하는 동안 문제가 발생합니다. 이를 위해서는 HDL의 고급 기능을 사용할 수 없어야합니다. “합성 가능한 Verilog / VHDL”을 생성해야합니다.
따라서 합성을위한 HDL과 시뮬레이션을위한 HDL이 있으며 합성 가능한 서브셋은 도구마다 다릅니다.
동작 설계 설명에서 넷리스트 / 레이아웃으로 이동할 수 없습니다. 그러나 서로 비교할 수있는 합성 가능한 측면을 가진 동작 구성 요소를 갖도록 디자인을 구성 할 수 있습니다. 동작으로 시작한 다음 일단 작동하면 합성을 위해 다시 작성합니다 (일부 항목 임). 당신은 일반에서 특정으로 이동하고 그 과정에서 테스트 벤치를 구축합니다.
답변
또 하나의 장점은 HDL이 표준 버전 제어 시스템에서 사용될 수 있고 변경 사항을 검사하기 위해 다른 점에서 일반 프로그래밍 언어와 동일한 이점을 모두 얻을 수 있다는 것입니다.
답변
이미 언급 한 것 외에도 텍스트 표현은 특히 대규모 프로젝트에서 훨씬 더 관리하기 쉽습니다. 합성 할 수있는 HDL을 회로도로 변환 할 수는 있지만 수백 가지의 도식 요소보다 수백 줄의 일반 텍스트 작업이 더 쉽습니다.