Forum Discussion

Bala-Mookkiah's avatar
Bala-Mookkiah
Icon for New Contributor rankNew Contributor
4 months ago

Modifying internal components Parameters in a Sub-System Package (QCP)

Hi I followed the instructions in online documents and youtube videos on how to add run_system_script for modifying internal components Parameters of a Sub-System Package (QCP) but so far I am not able to successfully modify it. I m hitting two main issues

1. "No Parameter Found" error when loading the QCP in QSYS. I am using internal parameter name but the system is not able to find it

2. load_component and save_component commands in the script is making the component fail to load in qsys.

Any help will be appreciated

Here is the subsystem package script

package require -exact qsys 25.1

set_package_property NAME "rpss_ssd"

set_package_property DISPLAY_NAME "rpss_ssd"

set_package_property VERSION "1.5"

set_package_property GROUP ""

set_package_property DESCRIPTION ""

set_package_property ELABORATION_CALLBACK elaboration_callback

set_package_property EXTRACTION_CALLBACK extraction_callback

set_package_property UNLOCKABLE true

add_fileset synth_fileset QUARTUS_SYNTH fileset_callback "Quartus Synthesis Fileset"

add_fileset sim_verilog_fileset SIM_VERILOG fileset_callback "Simulation Verilog Fileset"

proc elaboration_callback {} {

enable_all_instances

run_system_script TEXT {

package require -exact qsys 25.1

set args $__run_system_script_args_list__

set args_len [llength $args]

for {set i 0} {$i < $args_len} {incr i} {

set param [lindex $args $i]

set val [lindex $args [incr i]]

send_message "Info" "val: $val"

load_component rpss_0

set_component_parameter_value QUEUE_MEM_BASE_ADDRESS $val

save_component

}

auto_assign_system_base_addresses

sync_sysinfo_parameters

save_system

} [ list ADDR 0x10000 ]

# disable_instance clock_in

# disable_instance reset_in

# disable_instance rpss_0

# disable_instance rtile_dummy_0

}

proc extraction_callback {} {

extract_modules

}

proc fileset_callback { output_name } {

generate_all_instances

}

16 Replies