분야별 전문가와 하드웨어 엔지니어는 MATLAB 및 Simulink를 사용하여 AMD® FPGA, Zynq®-7000 SoC, Zynq UltraScale+ RFSoC/MPSoC, Versal® Adaptive SoC에 배포할 프로토타입 및 프로덕션 응용 프로그램을 개발합니다.
MATLAB 및 Simulink를 사용하여 다음과 같은 작업을 수행할 수 있습니다.
- 시스템 수준에서 하드웨어 아키텍처 모델링
- 코드 작성 없이 FPGA 또는 SoC 프로그래밍
- MATLAB 및 Simulink 제품을 사용하여 FPGA 또는 SoC 시뮬레이션 및 디버그
- 프로덕션 HDL 및 C 코드를 생성하여 FPGA 또는 SoC에 통합
AMD FPGA 및 Zynq SoC에 MATLAB 사용하기
모델링 및 시뮬레이션
모델 기반 설계에 Simulink를 사용하면 상위 수준에서 하드웨어 구현을 모델링하고 시스템 맥락에서 시뮬레이션함으로써 AMD FPGA와 Zynq SoC 응용 프로그램의 개발 시간을 단축할 수 있습니다. 또한 더 효율적인 리소스 사용을 위해 고정소수점 (30:45)으로 양자화하거나 합성 가능한 네이티브 부동소수점 (9:19) HDL을 생성하여 더 쉽게 FPGA를 프로그래밍할 수 있습니다.
HDL Coder를 통해 HDL과 호환되는 Simulink 및 MATLAB 함수 블록으로부터 합성 가능한 VHDL® 또는 Verilog®를 직접 생성하여 신호 처리, 무선 통신, 모터 및 전력 제어, 영상/비디오 처리 등의 응용 분야에 사용할 수 있습니다.
AMD System Generator for DSP와 AMD Model Composer를 통해 AMD 특정 블록을 Simulink에 추가하여 시스템 수준 시뮬레이션 및 하드웨어 배포가 가능합니다. System Generator 블록과 네이티브 Simulink 블록을 통합하여 HDL 코드를 생성할 수 있습니다.
SoC Blockset을 사용하면 메모리 사용 및 스케줄링/OS 영향과 같은 Zynq UltraScale+ MPSoC 및 RFSoC 기기의 하드웨어-소프트웨어 상호작용 성능을 분석할 수 있습니다.
MATLAB 및 Simulink에서 이루어지는 실시간 분석과 함께 AMD Zynq SoC 소프트웨어 정의 무선 통신 플랫폼에서 실행되는 무선 응용 프로그램의 프로토타입.
FPGA 및 Zynq SoC 기반 플랫폼에서 프로토타이핑
프로토타이핑을 시작하려면 실시간 무선 소프트웨어 정의 무선 통신, BLDC 모터 제어, 실시간 카메라 입력을 통한 비디오 및 영상 처리, 또는 딥러닝 추론 처리를 위해 사전 구성된 AMD FPGA 및 Zynq SoC 기반 평가 플랫폼을 타겟팅하는 지원 패키지를 다운로드할 수 있습니다. 이후 HDL Coder를 통해 Simulink에서 HDL 코드를 작성하지 않고도 직접 FPGA나 SoC를 프로그래밍하는 단계를 안내받을 수 있습니다.
다양한 기법 중에서 선택하여 MATLAB 및 Simulink에서 직접 FPGA 프로토타입을 디버그할 수 있습니다. IP를 삽입하여 AXI 레지스터를 읽거나 쓰고 (5:40) MATLAB과 온보드 메모리 위치 간에 대량 신호 또는 영상 파일을 전송할 수 있으며 FPGA 내부 신호에서 데이터를 캡처하여 MATLAB에서 분석하거나, MATLAB 또는 Simulink 테스트벤치로 FPGA-in-the-loop (2:52)를 실행하는 평가 키트에서 알고리즘을 테스트할 수 있습니다.
프로덕션 통합을 위한 HDL 및 IP 코어 생성
HDL 코드 생성 기능을 지원하는 대부분의 블록에는 파이프라인 삽입, 리소스 공유, RAM 매핑 등의 직접 사용자 지정 하드웨어 구현 옵션을 지정할 수 있는 HDL 블록 속성이 있습니다. HDL 코드 생성 설정을 통해 최적화, 리셋 스타일, 클록 활성화, 명명 규칙 등을 사용자가 전역적으로 사용자 지정할 수 있습니다. Simulink에서 구현 아키텍처를 설계할 수 있을 뿐만 아니라 AMD FPGA 및 Zynq SoC 기기의 속도 및 영역 최적화에 대한 완전한 제어가 가능합니다.
가독성이 좋은 합성 가능한 RTL을 생성하여 Vivado®의 비알고리즘적 콘텐츠와 통합할 수 있습니다. Zynq용 HDL Coder 지원 패키지를 설치하면 Arm® 프로세서 및 기타 기기 IP와의 통신에 다양한 AXI 프로토콜을 사용하는 IP 코어 래퍼를 생성할 수 있습니다. Zynq용 Embedded Coder 지원 패키지를 사용하여 Arm 애플리케이션 프로세서를 프로그래밍하기 위한 드라이버와 응용 프로그램 소프트웨어를 생성할 수 있습니다.
타겟 플랫폼 지원 확장
MathWorks에서 제공하는 지원 패키지에 포함되지 않은 FPGA 기반 플랫폼이나 SoC 기반 플랫폼에 배포해야 할 경우, 참조 설계를 생성하거나 다운로드하여 HDL Coder에 추가할 수 있습니다. 참조 설계는 SoC Blockset 또는 Vivado를 사용하여 개발할 수 있습니다. Analog Devices®, Avnet®, Speedgoat, Trenz Electronics 등의 공급 업체의 AMD FPGA 또는 SoC 기반 플랫폼을 위한 타사 참조 설계는 File Exchange에서 찾아볼 수 있습니다.