SoC Blockset

SoC 하드웨어 및 소프트웨어 아키텍처를 설계하고 평가하고 구현할 수 있습니다

 

SoC Blockset은 ASIC, FPGA 및 SoC(단일 칩 시스템)의 하드웨어와 소프트웨어 아키텍처를 모델링, 시뮬레이션 및 분석하기 위한 Simulink® 블록과 시각화 툴을 제공합니다. 메모리 모델, 버스 모델 및 I/O 모델을 사용하여 시스템 아키텍처를 구축하고 알고리즘과 함께 아키텍처를 시뮬레이션할 수 있습니다.

SoC Blockset을 사용하면 생성된 테스트 트래픽 또는 실제 I/O 데이터를 활용하여 메모리와 내부 및 외부 연결뿐만 아니라 스케줄링과 OS 효과를 시뮬레이션할 수 있습니다. 여러 시스템 아키텍처를 빠르게 살펴보고, 하드웨어 및 소프트웨어 파티셔닝을 위한 인터페이스 복잡성을 추정하며, 소프트웨어 성능과 하드웨어 활용도를 평가할 수 있습니다.

SoC Blockset은 Xilinx® 및 Intel® FPGA 기기와 Zynq®-7000, Ultrascale+™ 및 Intel SoC FPGA 등의 SoC 플랫폼에 대해 참조 설계를 내보낼 수 있습니다. 이러한 참조 설계는 Xilinx 및 Intel의 설계 툴에서 사용할 수 있습니다.

시작하기:

SoC 아키텍처 시뮬레이션 및 분석

소프트웨어 알고리즘, 하드웨어 로직, 메모리 시스템 및 I/O 기기를 개발하여 SoC 응용 분야에 결합할 수 있습니다. 하드웨어에 배포하기 전에 아키텍처 대안을 평가할 수 있습니다.

알고리즘 리소스 사용 분석

Simulink 모델 또는 MATLAB 함수를 분석하여 구현에 필요한 산술 연산자의 수를 요약한 리포트를 생성할 수 있습니다. 이러한 리포트를 활용하여 서로 다른 아키텍처를 비교하고, 설계 상충 분석을 수행하며, 하드웨어/소프트웨어 파티셔닝을 살펴볼 수 있습니다.

MATLAB 함수 또는 Simulink 모델 구현에 필요한 추정된 연산자 수 및 유형 보기.

메모리 트랜잭션

하드웨어 로직 및 임베디드 프로세서 간 공유 메모리 트랜잭션을 모델링하고 시뮬레이션할 수 있습니다. DMA 메모리 컨트롤러를 설정하여 메모리 트래픽을 조정할 수 있습니다. 시뮬레이션에서 메모리 대기 시간과 처리량을 고려할 수 있습니다.

작업 실행

운영 체제(OS)에서 관리하는 임베디드 프로세스에서 작업 실행을 모델링할 수 있습니다. 문맥 교환, 작업 선점 및 실행 기간을 고려한 정확한 타이밍으로 작업을 시뮬레이션할 수 있습니다. FPGA 패브릭에서 생성된 소프트웨어 인터럽트를 모델링할 수 있습니다. 통계량을 적용하여 비결정적 작업 실행 시간을 시뮬레이션하거나 하드웨어 테스트 중 기록된 작업 실행 시간을 적용할 수 있습니다.

타이밍 다이어그램으로 작업 선점, 문맥 교환 및 실행 시간의 시각화. 

SoC 모델 템플릿

단계별로 접근하여 처음부터 SoC 응용 분야의 전체 모델을 구축하거나, 비전 및 통신 응용 분야용 템플릿과 같은 하드웨어/소프트웨어 동시 처리용 사전 정의 템플릿에서 시작할 수 있습니다.

사전 정의된 모델 템플릿을 사용한 SoC 응용 분야용 모델 구축.

기록된 I/O 데이터를 사용한 시뮬레이션

RF 신호 또는 HDMI 데이터와 같은 하드웨어 주변기기 소스를 기록한 후, 이를 시뮬레이션이나 하드웨어 테스트에서 소스로 재생할 수 있습니다.

기록된 내용을 시뮬레이션의 소스로 재생합니다.

시스템 성능 분석

시뮬레이션을 통해 메모리 성능과 작업 실행을 평가하고 기기에서 프로파일링을 수행할 수 있습니다.

작업 실행 분석

타이머 기반 작업과 이벤트 기반 작업을 통합하는 Simulink 모델을 실행하여 SoC 응용 분야의 소프트웨어 시스템을 시뮬레이션할 수 있습니다. 작업 실행 타이밍, 선점, 레이트 초과, 샘플 드롭, 코어 사용 등을 시각화할 수 있습니다. 이전 시뮬레이션 또는 SoC 기기에서 직접 캡처한 작업 타이밍 데이터를 사용하여 시뮬레이션에서 작업 실행을 재생할 수 있습니다.

작업 실행 시간의 통계 분석을 수행합니다.

DDR 메모리 성능

시스템 설계의 메모리 대역폭을 분석할 수 있습니다. SoC 기기에 배포하기 전에 시뮬레이션 결과와 대역폭 메트릭을 시각화할 수 있습니다.

공유 메모리 트랜잭션을 시뮬레이션하고 성능을 분석합니다.

기기에서의 메모리 성능 모니터링 및 작업 실행 프로파일링

SoC 기기에서 메모리 성능과 작업 실행을 측정한 후, 측정값을 시각화하고 분석하여 시스템 성능 요구 사항에 맞게 SoC 모델을 조정할 수 있습니다. MATLAB 또는 Simulink 테스트 벤치에서 SoC 기기와 실시간으로 상호 작용할 수 있습니다.

코드 계측 프로파일러를 사용하여 작업 실행을 측정합니다
.

SoC 및 FPGA 기기로의 배포

프로그래머블 로직을 위한 참조 설계와 RTL 코드를 생성할 수 있습니다. 프로세서 작업을 위한 C/C++ 코드를 생성할 수 있습니다. 완전한 하드웨어/소프트웨어 응용 프로그램을 개발 보드에 배포할 수 있습니다.

임베디드 소프트웨어 프로젝트 생성

Embedded Coder®를 함께 사용하면, SoC Blockset은 스케줄러, 소프트웨어 작업 및 I/O 기기 드라이버 통합이 포함된 완전한 임베디드 소프트웨어 프로젝트를 모델로부터 생성할 수 있습니다.

모델로부터 완전한 임베디드 소프트웨어 프로젝트를 생성합니다.

참조 설계 생성

프로그래머블 로직을 위한 참조 설계를 생성할 수 있습니다. 참조 설계는 외부 메모리와 소프트웨어 응용 프로그램에 연결될 수 있는 데이터 및 제어 경로를 포함하는 IP 코어 네트워크로 구성됩니다. SoC Blockset은 Xilinx 및 Intel 설계 툴과 연결하여 비트스트림을 생성한 후, FPGA와 SoC 보드를 프로그래밍할 수 있습니다.

HDL Coder를 사용하여 생성된 HDL 알고리즘 IP와 함께 사용할 참조 설계를 생성합니다.

COTS 보드 및 Customer 보드 타겟팅

Xilinx Zynq UltraScale+ MPSoCs, RFSoCs, Zynq-7000 SoCs, Intel Cyclone, Arria SoC FPGAs 등의 지원 하드웨어 키트에 하드웨어/소프트웨어 응용 프로그램을 구현할 수 있습니다. 하드웨어 지원 패키지를 사용하여 보드를 타겟팅하거나 사용자 지정 보드에 대한 지원을 구축할 수 있습니다.

갤러리 탐색 (이미지 4개)

마이크로컨트롤러 및 마이크로프로세서 시뮬레이션 및 배포

운영 시스템 및 하드웨어 구성요소의 효과를 고려해 소프트웨어 알고리즘을 개발하고 하드웨어에 배포할 수 있습니다.

주변기기 모델링

ADCs 및 PWM 등의 주변기기의 동작을 포함하는 폐루프 시뮬레이션을 실행할 수 있습니다. 모델은 ADC-PWM 동기화 및 대기 시간을 반영할 수 있습니다.

ADC, PWM 및 Task Manager 블록을 사용한 트리거 동작 모델링.

멀티프로세서 아키텍처 모델링

여러 프로세서 간 알고리즘 파티셔닝을 실행하여 설계 모듈성을 달성하고 성능을 개선할 수 있습니다. 멀티프로세서 실행 및 프로세서 간 데이터 통신을 모델링할 수 있습니다.

IPC 채널은 분리된 프로세서에서 실행되는 베어 메탈 프로세스 간 통신을 시뮬레이션합니다.

마이크로컨트롤러 및 마이크로프로세서 보드에 배포

Embedded Coder로 소프트웨어 응용 프로그램을 생성하여 하드웨어 보드에서 신속 프로토타이핑을 수행할 수 있습니다. 기기에서 프로파일링을 실행하여 응용 프로그램을 미세 조정할 수 있습니다.

TI Delfino F28379D LaunchPad로 소프트웨어 응용 프로그램을 배포합니다.

최신 기능

스트림 전송

Stream Write 블록을 사용하여 프로세서에서 하드웨어 로직으로 데이터 스트리밍

FPGA IP 코어 인터럽트

하드웨어 로직에서 소프트웨어 작업으로 인터럽트 요청 전송 및 Interrupt Channel 블록을 사용한 인터럽트 요청 중재

ADC 및 PWM 주변기기

아날로그-디지털 변환기 및 펄스 폭 변조기 주변기기 시뮬레이션

멀티프로세서 지원

프로세서 간의 통신으로 단일 SoC 기기 내에서 여러 프로세서 시뮬레이션

Texas Instruments C2000 지원

TI C2000 프로세서에서 임베디드 소프트웨어 시뮬레이션, 분석 및 프로토타이핑

위 기능과 관련 함수에 대한 자세한 내용은 릴리스 정보를 참조하십시오.

MATLAB을 사용한 FPGA, ASIC, SoC 개발

분야별 전문가 및 하드웨어 엔지니어들은 MATLAB® 및 Simulink® 을 사용하여 프로토타입 및 프로덕션 응용 프로그램을 개발하고  FPGA, ASIC, 및 SoC 기기에 배포합니다.