Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
16 years ago

Incremental Compilation PARTITION_HIERARCHY

Hello all, I am trying to get some sanity with regards to the incremental compilation TCL commands.

The first command, PARTITION_HIERARCHY has the following form

set_instance_assignment -name PARTITION_HIERARCHY <file name> -to <destination>

-section_id <partition name>

The field <file name> has no apparent meaning. I see automatically generated commands that will that command filled with something like this.

set_instance_assignment -name PARTITION_HIERARCHY uhnwm_b310f9c04033cc46dfd01164df9e352e1 -to "myEnt1:umyEnt1|myEnt2:uMyEnt2"

-section_id "myEnt2:uMyEnt2"

uhnwm_b310f9c04033cc46dfd01164df9e352e1 appears to be some mess from the database.

Ive also seen it with set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top

root_partition seems to make a bit more sense, but still is undocumented.

The documentation only half way explains whats going on here.

Any help is appreciated.

3 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    Hello all, I am trying to get some sanity with regards to the incremental compilation TCL commands.

    The first command, PARTITION_HIERARCHY has the following form

    set_instance_assignment -name PARTITION_HIERARCHY <file name> -to <destination>

    -section_id <partition name>

    The field <file name> has no apparent meaning. I see automatically generated commands that will that command filled with something like this.

    set_instance_assignment -name PARTITION_HIERARCHY uhnwm_b310f9c04033cc46dfd01164df9e352e1 -to "myEnt1:umyEnt1|myEnt2:uMyEnt2"

    -section_id "myEnt2:uMyEnt2"

    uhnwm_b310f9c04033cc46dfd01164df9e352e1 appears to be some mess from the database.

    Ive also seen it with set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top

    root_partition seems to make a bit more sense, but still is undocumented.

    The documentation only half way explains whats going on here.

    Any help is appreciated.

    --- Quote End ---

    Hi,

    can you explain a little more about what you like to know ? How to setup a team-based flow ?

    Kind regards

    GPK
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    Dragging one up from the past here.

    I too was trying to understand the details of this PARTITION_HIERARCHY assignment.

    set_instance_assignment -name PARTITION_HIERARCHY ifcem_8171dcf896056342699db8429bb7c41 -to blabla

    what is the relevence of the name fcem_8171dcf896056342699db8429bb7c41

    Thanks.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    The "filename" part of the assignment is used to construct the names of the Quartus database files for that partition. The short answer is that the value doesn't matter as long as:

    i) it is unique across all partitions

    ii) it consists of legal characters for a filename

    In general using the default value is recommended. If you change the filename Quartus will think no results exist for that partition on disk and so you'll have to recompile everything from source again.

    The default filename that gets generated includes 4 characters from the instance name and a MD5 hash of the full hierarchy path. We truncated the MD5 to the first 4 characters of the MD5 starting in QII 10.0 so the names are a bit nicer.

    One final suggestion is to look into the ::quartus::incremental_compilation TCL package - it provides nicer APIs to create and edit your partitions instead of working directly with the individual QSF settings.