Main Content

Multicore Processor Targets

Model concurrent execution for systems designed for deployment on a multicore or FPGA system

Multicore programming, or modeling for concurrent execution, helps you to create concurrent systems for deployment on multicore processor and multiprocessor systems. Examples of such systems are signal-processing and plant-control systems. Simulink®partitioning and mapping techniques help you to overcome common challenges in designing systems for concurrent execution.

The figure shows a sample system with multiple functions designed to execute on a CPU- and FPGA-based multiprocessor system. The system is partitioned into multiple components that are mapped to the CPU task scheduler or the FPGA.

To learn the fundamentals of multicore programming, seeConcepts in Multicore Programming. For information on how to design systems for concurrent execution in Simulink, seeMulticore Programming with Simulink.

Functions

Simulink.architecture.config Create or convert configuration for concurrent execution
Simulink.architecture.add Add tasks or triggers to selected architecture of model
Simulink.architecture.delete Delete triggers and tasks from selected architecture of model
Simulink.architecture.find_system Find objects under architecture object
Simulink.architecture.get_param Get configuration parameters of architecture objects
Simulink.architecture.importAndSelect Import and select target architecture for concurrent execution environment for model
Simulink.architecture.profile Generate profile report for model configured for concurrent execution
Simulink.architecture.register Add custom target architecture to concurrent execution target architecture selector
Simulink.architecture.set_param Set architecture object properties

Classes

Simulink.GlobalDataTransfer Configure concurrent execution data transfers

Examples and How To

Configure Your Model for Concurrent Execution

Learn how to configure your Simulink model to take advantage of concurrent execution.

Specify a Target Architecture

Choose or define a target architecture for a model configured for concurrent execution.

Partition Your Model Using Explicit Partitioning

Add tasks, create partitions, and map individual tasks to partitions using explicit partitioning.

Configure Data Transfer Settings Between Concurrent Tasks

Specify options for handling data transfers between concurrently executing partitions.

Optimize and Deploy on a Multicore Target

Configure a model for concurrent execution using explicit partitioning and deploy it to a target.

Implement Data Parallelism in Simulink

This example shows how to implement data parallelism for a system in a Simulink model.

Implement Task Parallelism in Simulink

Learn how to implement task parallelism for a system in a Simulink model.

Implement Pipelining in Simulink

This example shows how to implement pipelining for a system in a Simulink model.

Assigning Tasks to Cores for Multicore Programming

This example shows how to take advantage of executing code on a multicore processor by graphical partitioning.

Implement an FFT on a Multicore Processor and an FPGA

This example shows you how to take advantage of a multicore processor target with FPGA acceleration by graphically partitioning a model.

Multicore Deployment of a Plant Model

This example illustrates how to take advantage of executing multithreaded code on a multicore processor using graphical partitioning.

Concepts

Concepts in Multicore Programming

并发executi理论与建模on.

Multicore Programming with Simulink

Modeling for concurrent execution using Simulink.

Implicit and Explicit Partitioning of Models

Learn about the key differences between implicit and explicit partitioning.

Concurrent Execution Window: Main Pane

Parameters for configuring tasks for concurrent execution

Data Transfer Options for Concurrent Execution

This tab displays the data transfer options for configuring models for targets with multicore processors.

Supported Targets For Multicore Programming

Deploy concurrent execution models to supported multicore targets.

Limitations with Multicore Programming in Simulink

Limitations and considerations when partitioning a model for concurrent execution.

Featured Examples