Author Topic: Quartus tcl LogicLock member  (Read 1075 times)

0 Members and 1 Guest are viewing this topic.

Offline WiljanTopic starter

  • Regular Contributor
  • *
  • Posts: 230
  • Country: dk
Quartus tcl LogicLock member
« on: July 28, 2020, 01:09:32 pm »
When using the Quartus and having a lot of identical blocks running in parallel and pipelined then the place & fitter does not place the design element in a nice way like if you did a PCB layout where you would keep tracks short and logic symmetrical

So it's then possible to use the LogicLock and create logic lock partitions and assigning design elements to a fixed region
Doing this makes the Chipplan looking nice and symmetrical and if for sure rise fmax and even decrease compile time

In the Gui of the Chipplan it works but are pretty slow and you need to use quite some time clicking around so I was looking into tcl script where it's  pretty simple to create regionlock and make them fixed and placed whee I like them to be and in the right size.

Code: [Select]
set_global_assignment -name LL_ENABLED ON -section_id "test:round_01"
set_global_assignment -name LL_AUTO_SIZE OFF -section_id "test:round_01"
set_global_assignment -name LL_STATE LOCKED -section_id "test:round_01"
set_global_assignment -name LL_RESERVED OFF -section_id "test:round_01"
set_global_assignment -name LL_CORE_ONLY OFF -section_id "test:round_01"
set_global_assignment -name LL_WIDTH 10 -section_id "test:round_01"
set_global_assignment -name LL_HEIGHT 1 -section_id "test:round_01"
set_global_assignment -name LL_ORIGIN X29_Y01 -section_id "test:round_01"

This works fine but I need to add a members as well and try to do it with

set_global_assignment -name LL_MEMBER_OF "chk_calc_32:chk_high" -section_id "test:round_01"

The tcl are accepted not the member are still "none" in the Chipplanner if I go to the Project navigator and select the actually chk_calc_32:chk_high and right click and add to existing LogicLock Region it pop's up fine in the Chipplan and I can then click on test:round_01 and do a edit and get the member design member "chk_calc_32:chk_high"

So what are I'm doing wrong to get the tcl script to do the same thing?

I need to place over hundred's elements so I for sure would like to use the tcl  :o
 

Offline WiljanTopic starter

  • Regular Contributor
  • *
  • Posts: 230
  • Country: dk
Re: Quartus tcl LogicLock member
« Reply #1 on: July 28, 2020, 07:01:46 pm »
Ok Quite some search and found the solution it has to use "set_instance_assignment" and not "set_global_assignment"

This does work

Code: [Select]
set_instance_assignment -name LL_MEMBER_OF "test:round_01" -to "chk_calc_32:chk_high" -section_id "test:round_01"

https://community.intel.com/t5/Intel-Quartus-Prime-Software/How-to-manually-place-a-component-with-Quartus-II/td-p/183335

 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf