MATLAB 및 Simulink 교육

교육과정 세부 정보

본 2일 과정의 모듈에서는 MathWorks 툴을 사용하여 HDL 설계를 검증하고 디버그하는 워크플로를 소개합니다. 이 모듈은 HDL 검증만을 원하는 MATLAB 및 Simulink 사용자, 하드웨어에서의 검증 및 디버그를 원하는 사용자, 그리고 HDL 코드를 생성하고자 하는 사용자 모두를 대상으로 제작되었습니다.

본 교육과정에서 다루는 주요 내용은 다음과 같습니다.
  • 테스트벤치 생성
  • 연동 시뮬레이션
  • FPGA-in-the-Loop
  • FPGA Data Capture
  • AXI Manager

1일차


FPGA 및 ASIC 설계에 대한 검증 및 디버그 워크플로

학습목표: MathWorks 툴을 사용한 검증 및 디버그 워크플로를 개략적으로 살펴봅니다.

  • 강인한 테스트벤치의 중요성 복습.
  • 생성된 HDL 코드 및 손으로 작성된 HDL 코드의 검증 워크플로 탐색.
  • 하드웨어 디버그 및 프로토타이핑 옵션에 대해 알아보기.
  • 필수 애드온 및 하드웨어 지원 패키지 설치.

테스트벤치 생성

학습목표: 모델 기반 설계, 시뮬레이션, 코드 커버리지 및 자동화된 테스트벤치 생성을 사용한 전체 HDL 검증을 위한 고급 기법을 소개합니다.

  • 철저한 검증을 위해 모델 커버리지를 활용하면서 테스트 계획에 기반한 테스트 자극 개발.
  • HDL 시뮬레이터와 생성된 테스트벤치를 사용해, 생성된 HDL 코드에 대한 검증 수행.
  • 코드 커버리지를 사용해 코드에서 테스트되지 않은 부분 식별 및 테스트의 완전성 개선.
  • 연동 시뮬레이션을 통해 생성된 HDL 코드를 Simulink에서 검증.
  • 전체 Simulink 모델에서 SystemVerilog DPI 테스트벤치를 자동으로 생성한 후 검증을 위해 실행.

연동 시뮬레이션

학습목표: MATLAB 및 Simulink를 연동 시뮬레이션 워크플로에 통합해 HDL 코드를 검증하고 분석하여, HDL과 Simulink 모델에 대한 통합 시뮬레이션이 가능해집니다.

  • MATLAB 및 Simulink를 사용한 연동 시뮬레이션을 통해 기존 HDL 코드 검증.
  • Simulink Test를 사용해 시뮬레이션 기반 테스트 환경에 연동 시뮬레이션 모델 통합.
  • HDL 시뮬레이터에서 직접 MATLAB 함수 호출.
  • 연동 시뮬레이션 블록을 사용해 Simulink 블록과 함께 HDL 코드 시뮬레이션.

2일차


FPGA-in-the-Loop

학습목표: FPGA 보드에서 설계를 검증하기 위해 필요한 툴을 준비합니다. 생성된 HDL 코드 또는 손으로 작성된 HDL 코드로 구현된 설계를 FPGA-in-the-Loop를 사용해 검증합니다.

  • FIL(FPGA-in-the-Loop) 시뮬레이션에 적합한 활용 사례 식별.
  • FIL을 위한 하드웨어 및 소프트웨어 환경 설정.
  • 자동 생성된 HDL 코드에 대해 HDL Workflow Advisor를 사용해 FIL 검증 수행.
  • FPGA-in-the-Loop Wizard를 사용해 FIL 블록 생성 및 MATLAB 또는 Simulink에서 사용.
  • 프레임 처리를 통해 FIL 시뮬레이션 시간 가속화.
  • 보드에서 실행되는 설계를 “골든 레퍼런스 모델”과 비교.

FPGA Data Capture

학습목표: 내부 신호를 확인하고 디버그하기 위해 실행 중인 FPGA 설계에서 실시간 데이터를 수집합니다. 종합적인 디버그 및 분석을 위해 수집된 데이터를 MATLAB 또는 Simulink로 가져옵니다.

  • 데이터 수집 기능을 HDL IP에 통합 및 FPGA 하드웨어에 배포.
  • FPGA Data Capture 앱을 사용해 FPGA 보드에서 실시간 데이터 수집 및 분석.
  • 데이터 수집을 최적화하도록 트리거 및 수집 조건 구성.
  • MATLAB을 사용해 FPGA 데이터 수집 워크플로 자동화.
  • 기존 HDL 설계에 대한 FPGA Data Capture IP 코어 생성 및 구성.
  • Simulink에서 FPGA Data Reader 블록을 사용해 FPGA의 데이터 수집 및 시각화.

MATLAB 및 Simulink를 사용해 FPGA의 AXI 레지스터에 액세스하기

학습목표: AXI Manager를 사용해 MATLAB 또는 Simulink에서 FPGA의 온칩 메모리 위치에 액세스하여 읽기 및 쓰기 작업을 수행합니다.

  • 읽기 및 쓰기 목적으로 AXI Manager를 사용해 MATLAB 또는 Simulink에서 FPGA 온칩 메모리 위치에 액세스.
  • AXI Manager 및 AXI Subordinate의 역할과 응용 사례 구분.
  • FPGA 설계 내에서 AXI Manager IP 코어 생성 및 배포.
  • MATLAB에서 AXI Manager 객체를 사용해 FPGA 온칩 메모리에 읽기 및 쓰기 작업 수행.

수준: 고급

수강자 필수조건:

MATLAB 및 Simulink에 대한 기초 지식

기간: 2 일

일정 예약 문의