Test Engine FPGA IP User Guide: Agilex™ 3, Agilex™ 5, and Agilex™ 7 FPGAs

ID 817758
Date 7/07/2025
Public

Visible to Intel only — GUID: group__group__compiler

Ixiasoft

Document Table of Contents

Visible to Intel only — GUID: group__group__compiler

Ixiasoft

5.2. Python library

Compiler for Test Engine IP.

Contents

This library provides the software compiler for the Test Engine drivers.

The Test Engine is essentially a multi-processor system, where each "processor" (i.e. driver) requires its own software program.

Getting Started

Requirements

This library is compatible with the quartus_py executable provided with the Quartus(R) Prime software installations. quartus_py is a Python 3 compiler with access to Python libraries of the Quartus(R) Prime software.

Usage

The following is a sample of how to compile software programs:
# Import the Python library for Test Engine IP

from pyhydra.runtime import HydraRuntime

from pyhydra.ipkits import HydraIpkit



# List of filepaths of .qsys and .ip files for the design containing Test Engine IP

files = [...]



# Instantiate the compiler for a specific Test Engine IP configuration

compiler = HydraIpkit(config=HydraRuntime(files).get_config(), ip_name="my_test_engine")



# Get a list of available drivers

drivers = compiler.get_drivers()



# Define the programs for each driver

prog0 = ...

prog1 = ...



# Link the programs to the drivers

compiler.attach(prog=prog0, driver=drivers[0])

compiler.attach(prog=prog1, driver=drivers[1])



# Compile the programs and dump the binary

compiler.dump("bin")
Place the compiled binary folder in the following locations:
  • For simulation, place the folder in the same folder as the simulator script

  • For the Quartus(R) Prime software compilation, place the folder in the same folder as the .qpf project file

  • For System Console library, provide the binary folder path to the library APIs