( ESNUG 385 Item 5 ) --------------------------------------------- [12/19/01]
From: Michael Krause <mkrause@synopsys.com>
Subject: PhysOpt set_ideal_net & "set_auto_ideal_net -scan true" Has Changed
Hi, John,
The PhysOpt behavior of "set_ideal_net" command has changed in the 2001.08
release (which affects flows using "insert_dft -physical".) An AC in Korea
ran into this issue, and I thought your readers might be interested in what
he found out.
Typically customers coming into PhysOpt with already scan-stitched netlists
use either "set_ideal_net" on the scan enable net or "set_auto_ideal_net
-scan true" prior to reordering their scan path. Customers who did this in
the 2000.11 base release (or its succeeding service packs) need to be aware
that in 2001.08, these commands result in the addition of a dont_touch
attribute that interferes with reordering.
For example, in 2000.11-SP2, "report_net" on the TEST_SE net would show
the following Attributes:
i - ideal
Net Fanout Fanin Load Resistance Pins Attributes
--------------------------------------------------------------------------
TEST_SE 380 1 6.49 0.00 381 i
--------------------------------------------------------------------------
Here is the same report run in the 2001.08 version. Notice the addition of
the dont_touch attribute:
Information: set_ideal_net disables DRC, sets dont_touch on the net and
makes its timing ideal. (UID-406)
Attributes:
d - dont_touch
i - ideal_net
Net Fanout Fanin Load Resistance Pins Attributes
--------------------------------------------------------------------------
TEST_SE 380 1 0.00 0.00 381 d, i
--------------------------------------------------------------------------
The dont_touch attribute interferes with reordering. When you attempt to run
"insert_dft -physical", you will see the following message:
Warning: Cannot use port 'TEST_SE' as a 'test_scan_enable'.
It's net has a dont_touch attribute. (TEST-358)
This causes DFT Compiler ("under the hood" of Physical Compiler) to add a new
scan enable port, test_se, but since this port has no placement information,
it causes further problems:
Error: Cannot inherit location from pad pin 'I_ALU/Zro_Flag_reg/SE' to
port 'test_se' because this cell I_ALU/Zro_Flag_reg is not a
real pad cell.
Please check the library.. (PSYN-117)
Error: Port test_se has no location. (PSYN-007)
Error: Command 'physopt' had an error while executing.
Discontinuing. (PSYN-003)
Error: physopt has abnormally terminated. (OPT-100)
The solution is to use "set_auto_disable_drc_nets -scan true" in 2001.08.
This command is new in 2001.08 and is used to disable DRC checking on nets
like clocks, scan signals, and constants. It replaces "set_auto_ideal_net".
With the new command, you will see the following "report_net" output:
Attributes:
dr - drc disabled
Net Fanout Fanin Load Resistance Pins Attributes
--------------------------------------------------------------------------
TEST_SE 380 1 6.49 0.00 381 dr
--------------------------------------------------------------------------
Now, you can apply "insert_dft -physical" and complete scan reordering.
- Mike Krause
Synopsys, Inc. Schaumburg, IL
|
|