+ Post New Thread
Results 1 to 5 of 5
  1. #1
    Newbie level 2
    Points: 233, Level: 2

    Join Date
    Sep 2011
    Posts
    2
    Helped
    0 / 0
    Points
    233
    Level
    2

    What is the purpose of uniquify

    I had searched earlier and found the below thread

    https://www.edaboard.com/thread119329.html

    However the explanation given is - uniquify command is used to generate separate instances within the netlist... It is used before importing the list to place and route tool.

    But in the RTL don't we already do that. Whenever we instantiate a module we ensure that there is no other instantiation with the same name. During synthesis the tool always preserves the instance name. So what purpose does uniquify serve.

    •   AltAdvertisement

        
       

  2. #2
    Full Member level 3
    Points: 1,775, Level: 9

    Join Date
    Sep 2010
    Location
    Zelenograd
    Posts
    165
    Helped
    47 / 47
    Points
    1,775
    Level
    9

    Re: What is the purpose of uniquify

    Each instance of the the module can be implemented using different std.cells depends on timing/area/power requirments. So, one module can have different content after synthesis, but RTL had the same content.
    Uniquify makes copies for each instance of the module and make it possible to change module content independently.


    2 members found this post helpful.

    •   AltAdvertisement

        
       

  3. #3
    Newbie level 2
    Points: 1,093, Level: 7

    Join Date
    Sep 2011
    Posts
    2
    Helped
    0 / 0
    Points
    1,093
    Level
    7

    Re: What is the purpose of uniquify

    also, u can have different constraints on each duplicated instances~
    in terms of physical view, there are treated as 2 different designs.



    •   AltAdvertisement

        
       

  4. #4
    Newbie level 2
    Points: 233, Level: 2

    Join Date
    Sep 2011
    Posts
    2
    Helped
    0 / 0
    Points
    233
    Level
    2

    Re: What is the purpose of uniquify

    Thanks kornukhin for you reply. So uniquify allows for different implementation of same RTL.

    Question for kornukhin> Why do we need to uniquify to apply separate constraints on the instances. Even if they are instances of the same design we could still apply different constraints to each instance by specifying the instance name?



  5. #5
    Full Member level 3
    Points: 1,775, Level: 9

    Join Date
    Sep 2010
    Location
    Zelenograd
    Posts
    165
    Helped
    47 / 47
    Points
    1,775
    Level
    9

    Re: What is the purpose of uniquify

    For example, you have "adder" used in few places in your design.
    Requirments are: freq=100 MHz, Leakage=100 pW.
    Adder used in critical path should be optimized for timing (carry lookahead adder). Adder used in other places can be optimized for leakage power with increased delays (ripple carry adder).
    So, the same "adder", depends on design target, can be implemented differently in different parts of design.



--[[ ]]--