Bound a register to specific type of flip-flop in Design Compiler

Status
Not open for further replies.

ebrahimi.khoy

Member level 3
Joined
Dec 4, 2010
Messages
64
Helped
2
Reputation
4
Reaction score
2
Trophy points
1,288
Activity points
1,736
Hi,

I have two types of DFF in my library. How could I force design compiler to use a specific type of flip-flops for some registers?
For example for program counter, I intend to you type 1.

Thanks in advance for your help.
 

Either set_dont_use on type 2, but then it can be used at all.

Or, instantiate the flip flop with a size_only attribute, rather than infer it.
 
First synthesize the program counter keeping only type 1 cells in the target library. Then synthesize the entire design by adding type 2 cells also to the target library and placing a don't touch on program counter.
 
not sure - but i may be confused RC or DC have an attribute / command such as map_to_register and the required seq will be mapped to the specific reg libcell
 

DC have special commands for such kind of bound:

1. You create libcell subset (with your preffered DFFs) with define_libcell_subset
2. You bound your registers to this subset with set_libcell_subset

Example:
define_libcell_subset -family_name my_FFs -libcell_list {DFF1 DFF2}
set_libcell_subset -family_name my_FFs -object_list [get_cells {my_reg}]
 

Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…