Hog v10.13.0
create_project.tcl File Reference

contains all functions needed to create a new project More...

Go to the source code of this file.

Namespaces

 globalSettings
 Namespace of all the project settings.
 

Functions

 InitProject ?vitis_only?
 
 AddProjectFiles
 
 CreateReportStrategy obj
 Set Vivado Report strategy for implementation. More...
 
 ConfigureSynthesis
 configure synthesis. More...
 
 ConfigureImplementation
 configure implementation. More...
 
 ConfigureSimulation
 configure simulation More...
 
 ConfigureProperties
 uses the content of globalSettings::PROPERTIES to set additional project properties More...
 
 ConfigurePlatforms ?xsa?
 
 CreatePlatform platform_name platform_conf ?xsa?
 
 ConfigureApps
 
 ConfigureApp app_name app_conf
 
 AddAppFiles
 
 ConfigureHlsComponents
 Configure HLS components defined in hog.conf [hls:*] sections. More...
 
 ManageIPs
 upgrade IPs in the project and copy them from HOG_IP_PATH if defined More...
 
 SetGlobalVar var ?default_value?
 
 CreateProject args
 

Detailed Description

contains all functions needed to create a new project

Todo:
This file will need to be fully documented

Definition in file create_project.tcl.

Function Documentation

◆ AddAppFiles()

AddAppFiles

Definition at line 1030 of file create_project.tcl.

◆ AddProjectFiles()

AddProjectFiles

Definition at line 181 of file create_project.tcl.

◆ ConfigureApp()

ConfigureApp   app_name app_conf  

Definition at line 920 of file create_project.tcl.

◆ ConfigureApps()

ConfigureApps

Definition at line 883 of file create_project.tcl.

◆ ConfigureHlsComponents()

ConfigureHlsComponents

Configure HLS components defined in hog.conf [hls:*] sections.

For each [hls:<component_name>] section, this proc:

  1. Reads the HLS_CONFIG path from hog.conf (mandatory, repo-relative)
  2. Validates that the hls_config.cfg file exists and is well-formed
  3. Creates a Vitis-compatible workspace so the project can be opened in the GUI

The hls_config.cfg is the single source of truth for HLS settings. It is committed to the repo and directly used/edited by Vitis.

Definition at line 1044 of file create_project.tcl.

◆ ConfigureImplementation()

ConfigureImplementation

configure implementation.

The configuration is based on the content of globalSettings::IMPL_FLOW and globalSettings::IMPL_STRATEGY The function also sets Hog specific pre- and- post implementation and, pre- and post- implementation scripts

Definition at line 420 of file create_project.tcl.

◆ ConfigurePlatforms()

ConfigurePlatforms   ?xsa?  

Definition at line 742 of file create_project.tcl.

◆ ConfigureProperties()

ConfigureProperties

uses the content of globalSettings::PROPERTIES to set additional project properties

Definition at line 569 of file create_project.tcl.

◆ ConfigureSimulation()

ConfigureSimulation

configure simulation

Definition at line 522 of file create_project.tcl.

◆ ConfigureSynthesis()

ConfigureSynthesis

configure synthesis.

The method uses the content of globalSettings::SYNTH_FLOW and globalSettings::SYNTH_STRATEGY to set the implementation strategy and flow. The function also sets Hog specific pre and post synthesis scripts

Definition at line 327 of file create_project.tcl.

◆ CreatePlatform()

CreatePlatform   platform_name platform_conf ?xsa?  

Definition at line 775 of file create_project.tcl.

◆ CreateProject()

CreateProject   args  

nagelfar ignore

Definition at line 1147 of file create_project.tcl.

◆ CreateReportStrategy()

CreateReportStrategy   obj  

Set Vivado Report strategy for implementation.

Parameters
[in]objthe project object

Definition at line 243 of file create_project.tcl.

◆ InitProject()

InitProject   ?vitis_only?  

Definition at line 80 of file create_project.tcl.

◆ ManageIPs()

ManageIPs

upgrade IPs in the project and copy them from HOG_IP_PATH if defined

Definition at line 1107 of file create_project.tcl.

◆ SetGlobalVar()

SetGlobalVar   var ?default_value?  

Definition at line 1130 of file create_project.tcl.