Set_extra_pipeline, 144set extra pipeline, Set extra pipeline – Achronix ACE Version 5.0 User Manual
Page 375

set extra pipeline
Chapter 5. Tcl Command Reference
To add additional delays on any pin in
so:
1
<
p i n l i s t > : = ’ { ’ pin1 2 , pin2 3 , pin3 ’ } ’
The above directive requires the
command to insert 1 buffer delay for pin1, 2 delays
for pin2, and 3 delays for pin3. Buffer sharing is on by default. In the above example, only 3 buffers will be
inserted.
Note
It is important for the user that after opening curly braces
’’ there will be a space and
before closing curly braces ’
’ there will be also a space. It is also important for the user that if user
wants to infer certain number of buffers (e.g. 2), then in this case after 2 there will be a comma
’,
’ character
and the instance name:pin, there will not be any space between comma
’,
’ and instance name:pin.
If no sharing is desired, a separate user directive ”set extra delay” will be required for each pin. Example:
1
s e t e x t r a d e l a y { pin1 }
2
s e t e x t r a d e l a y { 2 , pin2 }
3
s e t e x t r a d e l a y { 3 , pin3 }
In the example above, 6 buffers will be inserted.
This command can be added to the ”Physical Design Constraints” file of the project (e.g.
constraints.pdc
).
Example
Consider a net with the following pins:
1
l u t 1 : i n a l u t 2 : i n c l u t 3 : i n c l u t 4 : ind l u t 5 : inb l u t 6 : i n a l u t 7 : inb o t h e r t a r g e t 1 o t h e r t a r g e t 2
Suppose the following directives are provided by the user:
1
s e t e x t r a d e l a y { l u t 1 : i n a l u t 2 : i n c }
2
s e t e x t r a d e l a y { 2 , l u t 3 : i n c 2 , l u t 4 : ind }
3
s e t e x t r a d e l a y { l u t 5 : inb 2 , l u t 6 : i n a 2 , l u t 7 : inb }
The above specifies that for the nets (in this example, all the pins have the same net) that drives the named
targets, a buffer tree should be created as follows:
1
2
−−−−− l u t 1 : i n a
3
/
4
buf1−−−−−−−−−−−−−−−−−−+
5
/
\
6
/
−−−−− l u t 2 : i n c
7
/
8
/
9
/
−−−−− l u t 3 : i n c
10
/
/
11
/ −−−− buf2−−−−−−−− buf5 −−−−+
12
/ /
\
13
/ /
−−−−− l u t 4 : ind
14
/ /
15
/ /
16
/ /
−−−−−−−−−−−−−−−−−−−− l u t 5 : inb
17
| /
/
18
| /
/
19
d r i v e r−−+−−−−−−−−−−− buf3 −−+
20
| \
\
−−−−− l u t 6 : i n a
21
| \
\
/
22
\
\
−−− buf4 −−−−+
23
\
\
\
24
\
\
−−−−− l u t 7 : inb
25
\
\
26
\
\
27
\
\
28
\ −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− o t h e r t a r g e t 1
29
\
30
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− o t h e r t a r g e t 2
set extra pipeline
set extra pipeline clock [-xp
<
arg
>
] [-cdc
<
arg
>
]
Set extra pipelining amount for clock domain
363
UG001 Rev. 5.0 - 5th December 2012