Forum Discussion

AGroz1's avatar
AGroz1
Icon for New Contributor rankNew Contributor
7 years ago

Methods for auto-assigning parameters when adding an IP to a system

I'm using Quartus 18.0

I want to add some info parameters in my IP (e.g., technology, family variant, speed grade, voltage, etc). The IP is generated with a _hw.tcl.

Commands like "set_parameter_property <param> SYSTEM_INFO DEVICE_FAMILY" are not enough.

These parameters will be used to select FPGA primitives and populate some read-only values(encoded) in the register map.

The parameter values will be encoded (e.g., {Cyclone 10}=11, {Arria 10}= 12 ) to be compliant with a register; to help users understand the selected option, I will prefer to keep the values as pairs (ALLOWED_RANGES {Cyclone 10:11}).

I want this values to be automatically set when adding the IP in a system, and user-editable if the method is not 100% reliable for all parameters and all FPGA devices.

Is there a similar package like device(Quartus) in qsys to determine device characteristics?

Any suggestions for IP level operations?

Thanks,

Andrei

1 Reply

  • AGroz1's avatar
    AGroz1
    Icon for New Contributor rankNew Contributor

    I solved my problems:

    • I used the VALIDATION_CALLBACK
    • to access the device package "package require quartus::device". e.g., "set dev_speed_grade [quartus::device::get_part_info -speed_grade $device]"

    Andrei