SoC Blockset™은 ASIC, FPGA, 프로그램 가능 SoC(단일 칩 시스템), 멀티코어 마이크로컨트롤러/마이크로프로세서의 하드웨어 및 소프트웨어 아키텍처를 모델링, 시뮬레이션 및 분석할 수 있는 Simulink® 블록과 시각화 툴을 제공합니다.
SoC Blockset을 통해 생성된 테스트 트래픽 또는 실제 I/O 데이터를 사용하여 메모리, 내외부 연결뿐만 아니라 스케줄링과 OS 효과까지 시뮬레이션할 수 있습니다. 여러 시스템 아키텍처를 빠르게 살펴보고, 하드웨어 및 소프트웨어 파티셔닝의 인터페이스 복잡성을 추정하며, 소프트웨어 성능과 하드웨어 사용량을 평가할 수 있습니다.
SoC Blockset을 Embedded Coder 및 HDL Coder와 함께 사용하면 Xilinx® 및 Intel® FPGA, Xilinx UltraScale+™ MPSoC 및 RFSoC 소자 같은 프로그램 가능 SoC, Texas Instruments C2000™ MCU 등의 멀티코어 마이크로컨트롤러/마이크로프로세서를 위한 응용 프로그램을 구현할 수 있습니다.
시작하기:
사양으로부터 SoC 아키텍처 개발
System Composer™에서 응용 프로그램의 기능 아키텍처로 시작하여 기능적 구성요소를 SoC 하드웨어 아키텍처(프로세서), FPGA(프로그램 가능 논리 소자) 및 메모리에 할당할 수 있습니다. 전체 응용 프로그램의 거동을 시뮬레이션하고 기능적 정확성을 검증할 수 있습니다. 그런 다음 구현을 평가하여 기능적 구성요소를 하드웨어와 소프트웨어에 어떻게 할당할지 결정할 수 있습니다.
알고리즘 리소스 사용 분석
Simulink 모델 또는 MATLAB® 함수를 분석하여 구현에 필요한 산술 연산자의 수를 요약한 리포트를 생성할 수 있습니다. 이러한 리포트를 활용하여 FPGA, ASIC 및 SoC 소자의 다양한 아키텍처를 비교하고, 설계의 상충관계 연구를 수행하며, 하드웨어/소프트웨어 파티셔닝을 살펴볼 수 있습니다.
메모리 트랜잭션
DDR 메모리를 모델링하고 하드웨어 논리 소자 및 임베디드 프로세서 간의 공유 메모리 트랜잭션을 시뮬레이션할 수 있습니다. DMA 메모리 컨트롤러를 구성하여 메모리 트래픽을 조정할 수 있습니다. 시뮬레이션에서 메모리 지연과 처리량을 반영할 수 있습니다.
작업 실행
OS(운영 체제)에서 관리하는 임베디드 소프트웨어의 작업 실행을 모델링할 수 있습니다. 문맥 교환, 작업 선점 및 실행 시간을 반영한 정확한 타이밍으로 작업을 시뮬레이션할 수 있습니다. FPGA 패브릭에서 생성된 소프트웨어 인터럽트를 모델링할 수 있습니다. 통계량을 적용하여 비결정적 작업 실행 시간을 시뮬레이션하거나 하드웨어 테스트 중 기록된 작업 실행 시간을 적용할 수 있습니다.
SoC 모델 템플릿
단계별로 접근을 통해 처음부터 SoC 응용 사례의 전체 모델을 구축하거나, 비전 및 통신 응용 사례 템플릿과 같은 하드웨어/소프트웨어 동시 처리를 위한 사전 정의 템플릿을 통해 시작할 수 있습니다.
기록된 I/O 데이터를 사용한 시뮬레이션
RF 신호 또는 HDMI 데이터와 같은 하드웨어 주변기기 소스를 기록한 후, 이를 시뮬레이션이나 하드웨어 테스트에서 소스로 재생할 수 있습니다.
작업 실행 분석
타이머 기반 작업과 이벤트 기반 작업을 통합하는 Simulink 모델을 실행하여 SoC 응용 사례의 소프트웨어 시스템을 시뮬레이션할 수 있습니다. 작업 실행 타이밍, 선점, 레이트 초과, 드롭, 코어 사용 등을 시각화할 수 있습니다. 이전 시뮬레이션 또는 SoC 소자에서 직접 얻은 작업 타이밍 데이터를 사용하여 시뮬레이션에서 작업 실행을 재생할 수 있습니다.
DDR 메모리 성능
시스템 설계의 메모리 대역폭을 분석할 수 있습니다. SoC 소자로 배포하기 전에 시뮬레이션 결과와 대역폭 메트릭을 시각화할 수 있습니다.
소자에서의 메모리 성능 모니터링 및 작업 실행 프로파일링
SoC 소자에서 메모리 성능과 작업 실행을 측정한 후, 측정값을 시각화하고 분석하여 시스템 성능 요구사항에 맞게 SoC 모델을 조정할 수 있습니다. MATLAB 또는 Simulink 테스트 벤치에서 SoC 소자와 실시간으로 상호 작용할 수 있습니다.
임베디드 소프트웨어 프로젝트 생성
Embedded Coder®와 함께 사용하면 SoC Blockset으로 스케줄러, 소프트웨어 작업 및 I/O 소자 드라이버 통합 등의 완전한 임베디드 소프트웨어 프로젝트를 모델로부터 생성할 수 있습니다.
참조 설계 생성
프로그램 가능 논리 소자의 참조 설계를 생성할 수 있습니다. 참조 설계는 외부 메모리와 소프트웨어 응용 프로그램에 연결될 수 있는 데이터 및 제어 경로를 갖는 IP 코어의 네트워크로 구성됩니다. SoC Blockset은 Xilinx 및 Intel 설계 툴과 연결하여 비트스트림을 생성한 후, FPGA 및 SoC 보드를 프로그램할 수 있습니다.
COTS 보드 및 Customer 보드 타겟팅
Xilinx Zynq UltraScale+ MPSoC 및 RFSoC, Zynq-7000 SoC, Intel Cyclone, Arria SoC FPGA 등의 지원 하드웨어 키트에 하드웨어/소프트웨어 응용 프로그램을 구현할 수 있습니다. 하드웨어 지원 패키지를 사용하여 보드를 타겟팅하거나 사용자 지정 보드에 대한 지원을 구축할 수 있습니다.
무선 통신 및 레이다
프로세서, FPGA 및 DDR 메모리 서브시스템의 효과를 반영하면서 무선 통신 및 레이다 응용 사례를 평가할 수 있습니다. Xilinx Zynq UltraScale+ MPSoC 및 RFSoC 소자의 사전 정의된 모델을 사용하여 하드웨어/소프트웨어 응용 사례를 시뮬레이션한 다음 개발 보드에 배포하고 RFSoC 소자의 데이터 변환기를 구성할 수 있습니다.
비디오 및 영상 처리
데이터 집약적인 비디오 및 영상 처리 응용 사례에서 설계자는 응용 사례의 프레임 속도 및 프레임 크기 요구사항을 충족하는지 메모리 대역폭 요구사항을 평가하여 확인해야 합니다. SoC Blockset을 사용하여 외부 DDR 메모리를 모델링하고 시뮬레이션을 통해 메모리 대역폭을 동적으로 평가할 수 있습니다. 그런 다음 HDL Coder™를 사용하여 AXI4를 완전 준수하는 인터페이스 IP를 생성할 수 있습니다.
모터 및 전력 제어
제어 작업을 여러 연산 장치로 분할함으로써 멀티코어 마이크로컨트롤러 또는 SoC에 대한 실시간 모터 및 전력 전자 제어를 구현할 수 있습니다. 플랜트와의 ADC/PWM 주변기기/프로세서 간 통신을 시뮬레이션하고 프로토타입 시스템에 배포할 수 있습니다.
주변기기 모델링
ADC 및 PWM 같은 주변기기의 거동을 포함하는 폐루프 시뮬레이션을 실행할 수 있습니다. 모델은 ADC-PWM 동기화와 지연을 반영할 수 있습니다.
멀티프로세서 아키텍처 모델링
여러 프로세서로 알고리즘을 분할해 설계 모듈성을 달성하고 성능을 개선할 수 있습니다. 멀티프로세서 실행 및 프로세서 간 데이터 통신을 모델링할 수 있습니다.
마이크로컨트롤러 및 마이크로프로세서 보드로의 배포
Embedded Coder로 소프트웨어 응용 프로그램을 생성하여 하드웨어 보드에서 신속 프로토타이핑을 수행할 수 있습니다. 소자에서 프로파일링을 수행하여 응용 프로그램을 미세 조정할 수 있습니다.