산업 제조
산업용 사물 인터넷 | 산업자재 | 장비 유지 보수 및 수리 | 산업 프로그래밍 |
home  MfgRobots >> 산업 제조 >  >> Industrial programming >> VHDL

첫 VHDL 프로그램: 단계별 Hello World 튜토리얼

새로운 언어를 배울 때 간단한 메시지 출력은 고전적인 검증 방법입니다. "Hello World!" 출력을 마스터하면 환경이 올바르게 설정되었는지 확인하고 언어의 핵심 문법을 엿볼 수 있습니다.

VHDL은 전통적인 소프트웨어 언어가 아닌 하드웨어 기술 언어이므로, 텍스트를 어떻게 표시할지 의아할 수 있습니다. 비결은 VHDL 코드가 시뮬레이터 내부에서 실행되며, 시뮬레이터가 디지털 회로를 에뮬레이트하고 진단 메시지를 화면에 출력할 수 있다는 점입니다. 이 튜토리얼은 FPGA나 ASIC 하드웨어가 아닌 언어 자체에만 초점을 맞춥니다.

이 기사는 기본 VHDL 튜토리얼 시리즈의 일부입니다.

VHDL을 병렬 프로그래밍 언어로 생각하세요: 회로의 동작을 기술하면 시뮬레이터가 가상 환경에서 그 설명을 실행합니다. 그 환경에서 콘솔 출력을 쉽게 생성할 수 있어 "Hello World!"가 이상적인 출발점입니다.

무료 VHDL 시뮬레이터 및 에디터 설치 방법

실습

이 비디오 튜토리얼은 여러분의 첫 VHDL 프로그램 생성을 안내합니다:

우리가 작성한 최종 코드:

entity T01_HelloWorldTb is end entity;
architecture sim of T01_HelloWorldTb is
begin
  process is
  begin
    report "Hello World!";
    wait;
  end process;
end architecture;

ModelSim에서 실행 버튼을 눌렀을 때 시뮬레이터 콘솔 출력:

VSIM 2> run
# ** Note: Hello World!
# Time: 0 ns Iteration: 0 Instance: /t01_helloworld

분석

가장 처음에 엔티티(entity)를 선언합니다. 엔티티는 모듈의 인터페이스(입력과 출력)를 정의합니다. 메시지만 출력하는 간단한 테스트벤치의 경우 포트가 필요 없으므로 엔티티를 의도적으로 비워둡니다.

다음으로 아키텍처(architecture)를 지정합니다. 아키텍처는 모듈의 내부 구현을 나타냅니다. 실제 로직이 존재하는 곳이며, 단일 엔티티는 여러 아키텍처를 가질 수 있지만 이는 나중에 다룰 고급 기능입니다.

아키텍처 내부에서 프로세스(process)를 정의합니다. VHDL에서 프로세스는 스레드처럼 동작하여 문을 순차적으로 실행합니다. 여기에는 두 문장이 있습니다:

ModelSim에서 설계를 시뮬레이션하면 콘솔에 즉시 "Hello World!" 메시지가 표시되어 코드가 문법적으로 올바르고 시뮬레이터가 작동함을 확인합니다.

첫 VHDL 프로그램: 단계별 Hello World 튜토리얼

핵심 요약

다음 튜토리얼로 이동 »

VHDL

  1. 첫 FPGA 프로젝트: LED 블링크 튜토리얼 (VHDL & Verilog)
  2. C# Hello World – 첫 C# 애플리케이션 만들기
  3. Java Hello World: 첫 프로그램 작성하기
  4. VHDL 문자열 리스트 구현: 모범 사례와 예제
  5. Tcl 기반 VHDL 코드락 모듈 테스트벤치 만들기
  6. VHDL PWM 컨트롤러 구현: 설계, 시뮬레이션, FPGA 데모
  7. 블록 RAM에서 견고한 VHDL 링 버퍼 FIFO 설계하기
  8. VHDL에서 보호 타입과 액세스 포인터로 동적 링크드 리스트 구현하기
  9. 프로세스 내 프로시저로 VHDL FSM 설계 깔끔하게 만들기
  10. 생산 가속화: 시제품 제작이 제조 공정을 향상시키는 방법