Main Content


Set up system environment to access High-Level Synthesis (HLS) software

Since R2022a



hdlsetuphlstoolpath('ToolName',ToolName,'ToolPath',ToolPath,'SimulationToolPath',SimulationToolPath) adds a third-party HLS tool to your system path. It sets up the system environment variables for the synthesis tool. To configure one or more supported third-party HLS tools to use with HDL Coder™, use the hdlsetuphlstoolpath function. You cannot set up third-party HLS tools in Simulink® Online™.

Before opening the HDL Workflow Advisor, add the tool to your system path. If you already have the HDL Workflow Advisor open, see Add Synthesis Tool for Current HDL Workflow Advisor Session. HDL Workflow Advisor is not available in Simulink Online.


hdlsetuphlstoolpath('ToolName','SystemC','SystemCIncludePath',SystemCIncludePath,'SystemCLibraryPath',SystemCLibraryPath) creates system environmental variables to setup the SystemC™ library. These environmental variables are used by MATLAB® to simulate the generated HLS code.


Set up Cadence Stratus as Synthesis Tool

The following command sets the synthesis tool path to point to an installed Cadence Stratus executable file. You must have already installed Cadence Stratus version 21.2 or above.

hdlsetuphlstoolpath('ToolName','Cadence Stratus','ToolPath','/usr/cadence/stratus/bin/',...
 'SimulationToolPath', '/usr/cadence/xcel/tools/bin');

Check Synthesis Tool Setup

To check your Cadence Stratus synthesis tool setup in MATLAB, try launching the tool with the following command:


Set up MATLAB Desktop as Simulation Tool

You must have SystemC 2.3.3 installed.

To setup SystemC library in your Linux® platform, use this command in the MATLAB command window.


Alternatively, use this command in Windows® to set up the SystemC library.

hdlsetuphlstoolpath('ToolName', 'SystemC','SystemCIncludePath','C:\systemc-2.3.3\include',...

Input Arguments

collapse all

Synthesis tool name, specified as a character vector.

Example: 'Cadence Stratus'


Cadence Stratus is the only supported synthesis tool for High-Level Synthesis (HLS).

Full path to the synthesis tool executable or batch file, specified as a character vector.

Example: '/usr/cadence/stratus/bin/'

Full path to the simulation tool executable, specified as a character vector.

Example: '/usr/cadence/xcelium/tools/bin'


For Cadence Stratus supported simulation tool is Xcelium™.

Full path to the SystemC include file, specified as a character vector. The systemc.h header file must be present in the specified SystemC include directory.

Example: '/usr/local/systemc-2.3.3/include'

Full path to the SystemC library file, specified as a character vector. The libsystemc.a in Linux or systemc.lib in Windows header file must be present in the specified SystemC library directory.

Example: '/usr/local/systemc-2.3.3/lib-linux64' (In Linux)

Example: 'C:\systemc-2.3.3\lib\win64\Release' (In Windows)


You can change the include and library file paths as per your installed location.


  • The hdlsetuphlstoolpath function changes the system path and system environment variables for only the current MATLAB session. To execute hdlsetuphlstoolpath programmatically when MATLAB starts, add hdlsetuphlstoolpath to your startup.m script.

Version History

Introduced in R2022a

expand all