FPGA AI Suite Handbook

ID 863373
Date 11/21/2025
Public
Document Table of Contents

8.1. IP Generation Utility Execution Flows

The IP generation utility (dla_create_ip command) has the following flows:
Table 23.  IP Generation Flows
Flow Command Option Description
Create an IP Directory --flow create_ip Creates a new FPGA AI Suite IP library directory, generate an IP, and place it in the library.
Add an Architecture to an IP Directory --flow add_arch Generates an IP and place it in an existing FPGA AI Suite IP library directory.
List Architectures in an IP Directory --flow list Lists the IPs in an existing IP library directory.
Removing an Architecture from an IP Directory --flow remove_arch Removes an IP from an existing IP library directory.

Create an IP Directory

This flow is typically first flow that you use. It creates an FPGA AI Suite IP library directory and adds an architecture as follows:

  1. Creates the IP library directory and copies all contents from <ai_suite_root>/fpga/ip_template/ into the new directory. The copied folder (<ip_template>) contains some basic Tcl scripts and Platform Designer IP configurations.
  2. Creates a <ip_directory>/Verilog directory and copies over RTL files that are common to any generated FPGA AI Suite IP architecture.

    These files are listed in static_files.tcl, which is used to ensure that other flows (the Platform Designer flow and design assembly flows outside Platform Designer) have access to the list of RTL source files.

  3. Creates the following directory for each architecture-family pair to add to the IP library:

    <ip_directory>/Verilog/<architecture>_<family>

    This location stores architecture-specific files.

  4. Invokes an internal utility to read the architecture description file (.arch).

    Output files are architecture-specific and are copied to the <ip_directory>/Verilog/<architecture>_<family> directory.

  5. For the specific architecture, creates a generated_files.tcl file and a dla_ip.qsf file in the <ip_directory>/Verilog/<architecture>_<family> directory.

Add an Architecture to an Existing IP Directory

This flow adds a new architecture to an existing IP library directory as follows:
  1. Creates a <ip_directory >/Verilog directory and copies over RTL files that are common to any generated FPGA AI Suite IP architecture.

    These files are listed in static_files.tcl, which is used to ensure that other flows (the Platform Designer flow and design assembly flows outside Platform Designer) have access to the list of RTL source files.

  2. Creates the following directory for each architecture-family pair to add to the IP library:

    <ip_directory>/Verilog/<architecture>_<family>

    This location stores architecture-specific files.

  3. Invokes an internal utility to read the architecture description file (.arch).

    Output files are architecture-specific and are copied to the <ip_directory>/Verilog/<architecture>_<family> directory.

  4. For the specific architecture, creates a generated_files.tcl file and a dla_ip.qsf file in the <ip_directory>/Verilog/<architecture>_<family> directory.

List Architectures in an IP Directory

This flow lists all available architectures in the IP library directory. The utility looks for all <architecture_family> folders and displays them.

Remove an Architecture from an IP Directory

This flow removes an architecture from an IP library directory. The utility looks for a <architecture_family> folder and removes it.