
HW Directory Structure

The HW directory is organized as shown below:

 HW
     |
     |----src
     |     |--- cfg
     |     |--- components
     |     |--- constraints
     |     |--- hdl
     |     |--- firmware
     |     |---1_create_design.tcl
     |     |---2_constrain_design.tcl
     |     |---4_implement_design.tcl
     |     |---5_program_design.tcl
     |
     |----common
     |      |----common.tcl
     |----script.tcl
     |----TCL_Scripts_readme.txt


HW Folders

HW\src folder contains the following folders:
*  cfg: contains RAM ,SNVM and spiflash configuration files.
*  components: contains core configuration TCLs, which are required to create the design.
*  constraints: contains IO, user timing, and floor planning constraints.
*  hdl: contains HDL files, if applicable.
*  firmware: contains the hex file for the particular application.
 

TCL Files

HW\src includes the following TCL files:
* 1_create_design.tcl: executes all the required core configuration TCLs with necessary user HDL files from src folder to create the design.
* 2_constraint_design.tcl: imports all the constraints which are required for the design.
* 4_implement_design.tcl: runs synthesis, place & route, and verify timing.
* 5_program_design.tcl: creates the programming job file.
* common.tcl: provides all the IP core versions required to create the design.
* script.tcl: this is the top-level script, which creates the Libero_Project directory, sets device, project name, and other tool profiles. It invokes all the above TCLs which are required to complete the Libero Design flow.

Running the TCL

The TCL scripts are validated for Libero v2025.1 and IP versions as specified in the common.tcl. To run the TCL, follow:
1. Launch the Libero software
2. Select Project > Execute Script....
3. Click Browse and select script.tcl from the downloaded HW directory.
4. Click Run.
After successful execution of TCL script, Libero project is created within HW directory.

Updating TCL for New Libero Versions and IP Versions

Update the IP Core versions in the common.tcl and run the TCL flow in the new Libero version. By default, the given TCL script should run for new Libero and IP releases.

If there are any mismatches in execution, check the following:
1. For Libero related errors, check Libero release notes for changes related to the design components/tools or changes to TCL commands.
2. For IP core related errors, check the IP handbook and release notes for changes in IP configuration parameters, ports and their functionality. If necessary, update the IP configuration parameters, ports and connections in the TCL.

Refer to Libero� SoC TCL Command Reference Guide for more details on TCL commands. Contact Techsupport if you run into any TCL related queries.
