Академический Документы
Профессиональный Документы
Культура Документы
complex ECOs originating from RTL. It interfaces with RTL Compiler and
EDI System to perform the logical and physical ECOs while leveraging
Conformal's logical equivalency abilities to ensure the ECO was
successful for both the front-end and back-end signoff.
4. How does EDI System identify spare cells in a post-mask
ECO flow?
Spare cells should have a unique string in their instance name to
identify them. Then the command specifySpareGate or ecoDesign
-useSpareCells patternName is run to identify the spare instances.
For example, if all spare cells have _spare_ in their name then they are
identified using:
specifySpareGate -inst *_spare_*
OR
ecoDesign -spareCells *_spare_* ...
Note if you are making manual ECO changes to a netlist and
converting a spare cell to a logical instance, it's important to change
the instance name. Otherwise, the instance may be identified as a
spare cell if a future ECO is performed because it still has the spare cell
instance name.
5. How does EDI System identify the changes in the design?
During the ecoDefin step the existing netlist (new netlist) is compared
against the original placed and routed design. A summary of
differences is output to the log file and a detailed report file is output
to the local directory. You can review the report file to see a list of all
the differences.
6. How do I use spare cells or gate array cells during
placement?
Spare cells are identified using specifySpareGate. Then use the useSpareCells true option when running ecoPlace to instruct it to
swap the unplaced cells with spare cells of the same cell type:
specifySpareGate -inst *_spare_*
ecoPlace -useSpareCells true
Gate array style filler cells can be programmed with metal layers so
the poly/diffusion and lower layers are not changed, and only the metal
and via layer masks need to be modified. If you are using gate array
spare cells the flow depends on the SITE type used by the gate array
cells.
If your design has GA Cells which utilize a SITE type (i.e. GACORE)
different from normal standard cells (i.e. CORE) then use:
ecoPlace -useGACells GACORE
If your design has GA cells which utilize the same SITE type as
standard cells: ecoPlace -useGAFillerCells {List of
GAFillerCells}
Reference the User Guide for the complete flow.
7. Is ecoPlace -useSpareCells true timing driven?
ecoPlace will choose the spare cells to minimize wire length but is not
timing driven. After ecoPlace you can run ecoSwapSpareCell to
relocate an instance to the location of another spare cell of the same
type. Alternatively, you can run ecoRemap in place
of ecoPlace. ecoRemap is timing driven and automatically analyzes the
functionality of the newly added cells and remaps them to available
spare cells. The software analyzes the logic and performs changes to
improve timing and minimize DRVs.
8. How do I freeze certain metal layers during routing?
In a post-mask ECO Flow run ecoRoute with the modifyOnlyLayers option to specify which layers it is allowed to
modify. For example, to route using only Metal1 through Metal3:
ecoRoute -modifyOnlyLayers 1:3
9. How does ECO routing deal with metal fill?
When performing a post-mask ECO flow, ecoRoute will ignore the metal
fill while routing. This will likely cause DRC violations between the ECO
routes and metal fill. To fix these violations,
run verifyGeometry followed by the the trimMetalFill command.
This will cut back the metal fill from the ECO routing to fix the
violations.
10. Does EDI System support interactive (maual) ECOs?
Yes, EDI System provides a number of interactive commands to both
evaluate and commit ECO changes. See the Interactive ECO chapter of
the EDI System User Guide for details.
When performing interactive ECOs make sure setEcoMode is set as
desired. Here are some specific options to pay attention to and tips to
speed up run time when implementing a series of ECOs:
setEcoMode -updateTiming - Default is false allowing you to wait
until all ECOs are performed to run timing analysis. If set to true, timing
analysis is run after each ECO command.
setEcoMode -honorDontTouch, -honorDontUse,
-honorFixedStatus - The default for all of these is true. So if you find
you cannot make a change, check if any of these apply.
2.
972
Helped
79 / 79
Points
6,706
Level
19
3.
Member level 3
Achievements:
Join Date
Nov 2007
Posts
64
Helped
16 / 16
Points
2,111
Level
10
4.
Join Date
Feb 2008
Location
Bangalore, India, India
Posts
133
Helped
48 / 48
Points
2,577
Level
11
For this analysis you need to have certain inputs depending on the design stage you are in.
General inputs are techfile (Avanti flow) itf (synopsys flow) tech lef (cadence/magma flow)
standard cell /hard macros gdsii
.libs for std cells and sub blocks
timing constraints
design def
design verilog netlist
power budget if its estimates are known else provide activity factor of 0.3 which is definitely
pessimistic number
saif or some simulation file for running dynamic analysis.
Signal spefs
and some other optional inputs like sub ckts for decap's and wellcap subckts for standard
cells
After providing all these info you can perform static (resistive drop) or dynamic
(instantaneous drop) analysis. Then you can analyze the drop numbers either in gui or in
textual report.
If you are doing IR drop analysis for the first time, then you will be much more interested in
the grid connectivity.A tool from sequence called coolcheck which can be used to analyze
grid connectivity even you can invoke the cooltime tool if you have cool check licence. As in
some places even the grid connectivity is not proper it might be masked by IR product, for
such cases coolcheck tool will be much more useful.
If you are using magma quartz rail you need not provide all the inputs I had provided, you
can just provide the volcano DB with constraints as it has inbuit extractor.
Thanks
Teja
1 members found this post helpful.
2.
3.
Member level 2
Join Date
Aug 2005
Location
china
Posts
48
Helped
1/1
Points
2,108
Level
10
4.
Newbie level 6
Join Date
Sep 2006
Posts
13
Helped
4/4
Points
1,206
Level
7
3.
rajkumaru
Member level 5
Achievements:
Join Date
Jul 2006
Location
Bangalore(INDIA)
Posts
83
Helped
7/7
Points
2,034
Level
10
Re: IR drop
Hi,
In my view, Voltage Drop V=IR
Here given thatI= 100uA, So, we need to know the value of R. For that we check in design
manual/foundary_provided_document that what is the value of metal resistance for unit
area. Then we can use formula R_metal = metal length*metal width*metal per unit area
resistance.
Suppose it is given that R=5uohm/um*um then R_metal=5um*20um*5= 500uohm
So, Now V=IR=100uA*500ohm= 50000uV=0.05V
If, I am wrong then please viewers let me correct. Thanks in advance!
Raj
o
4.
MSSN
35 / 35
Points
3,222
Level
13
Re: IR drop
So, we need to know the value of R. For that we check in design
manual/foundary_provided_document that what is the value of metal resistance for unit
area. Then we can use formula R_metal = metal length*metal width*metal per unit area
resistance.
I think the more common in the foundaries' documents is the resistance per square(square
resistance) and what u do then is that u simply divide the length by the width to get the
number of squares and then calculate the total resistance by multiplying the number of
squares by the square resistance.
o
5.
srieda
Re: IR drop
I agree. You will usually find the Rs (Sheet Resistance) given in terms of ohms/square.
So R = Rs * L / W
6.
pvnk
Member level 1
Join Date
Aug 2006
Posts
40
Helped
7/7
Points
1,545
Level
8
Re: IR drop
Originally Posted by rajkumaru
Hi,
In my view, Voltage Drop V=IR
Here given thatI= 100uA, So, we need to know the value of R. For that we check in design
manual/foundary_provided_document that what is the value of metal resistance for unit
area. Then we can use formula R_metal = metal length*metal width*metal per unit area
resistance.
Suppose it is given that R=5uohm/um*um then R_metal=5um*20um*5= 500uohm
So, Now V=IR=100uA*500ohm= 50000uV=0.05V
If, I am wrong then please viewers let me correct. Thanks in advance!
Raj
Here is the calculation,
suppose R is the ohm/square for your metal layer ( refer FAB electrical specs.)
L is the length if your rout
W is the width of your rout,
I is the current flowing ( take slightle higher than your avg I )
Now to calculate no. of sqrs, N = L/W
total resistance Rtot = N * R
IR dorp = Rtot*I volts ( if I is in amps )
Hop it's clear. it's ok if you have a 10mV drop for digital lines and 1mV for analog generally.
for analog, always ensure that your disigner knows what is the drop on important nets.
thanks
if you are working on a Cadence platform, you can get this ohms/square by dumping your
technology file ( provided your tech file contains this info) go to icfb > tools > technology
file manager ( something similar ) > dump > select electrical rules and give file path to
dump > click ok.
i
or mail your FAB and they will be happy to give you this info.