Interview Questions
Interview Questions
-------------------------------------------------------------------------------------------------0: Tell about yourself (I was not started with this question)
1: with one of your project explain complete flow
2: how did you start? (Expectation was to mention all inputs and from whom we get,
sanity checks and why we do it)
3: Floorplan (expectation was to explain wrt one block)
How floorplan was done for the design ?
Macro placement
o Deciding spacing between macros which has pins
o Do we need to keep spacing between macro if it doesnt have
pins facing each other.( expectation was to justify our answer)
In the flow there were many questions , like why macros were placed
only at the bottom
How do we Qualify floorplan
4: placement
Before starting placement what we do?
Congestion and solution
Checks after placement
Qualifying placement
5: CTS
Before starting cts what we need to do (analyze the quality of
placement)
Inputs to CTS
What we analyze after CTS
How we can tell CTS is build properly
Clock path (why do we set transition limit) If library has max tran limit
of 1ns and you are getting 900ps as transition value, can you take it
further (No as clock tree has a chain of buffer we will see min pulse width
violation clock absorption)
6: Routing
What you did in routing
Steps in routing
7: Physical verification for your block
Have you run caliber (inputs to DRC and LVS)
List some DRCs and LVS issues
-------------------------------------------------------------------------------------------------1: timing problem to calculate setup and hold slack
2: explain vth ( on what it depends )
3: explain latchup( how do you reduce )
4: why are fillers used
5: what are end cap cells ?
6: what are decap cells ?
-------------------------------------------------------------------------------------------------1. Face to Face became a conference call due to internal mis-communication.
2. Special Case: Tell me about your family (???), school, college, % of marks in engg.
3. What kind of project you worked?
4. Questions only on 1st page of ChipEdges FloorPlan. Nothing else. My questions were
such that I had to co-relate frontend Design/Verification and backend Physical Design!
5. How do you estimate die size?
6. How do you calculate Aspect Ratio?
AR = Hor Routing Res/Ver Routing Res theory will not help. He was
expecting how did you get/calc Horizontal and Vertical Resource estimation? I said as
we did in lab:
Sq_rt(die_area) = L, W. Nope. It isnt correct.
Later, he dug on. If DA=M + 0.6*S + IO + Blkg, then why std cell util=60%?
If I move from 45nm to 28nm or lower, will this value (60%) change? If yes, why? If no,
why? If so, Util = 65% or 55%? Numbers depend on what you answer.
7. How you place macros? For my exp, 10-15 Macros was not sufficient. He was
expecting 100/150+ M
Here when you say dataflow be specific(like power, pll, data, addr, ctrl,
etc). Thats what I learned from him. There are 10-15 ways of placing Macros!!!
8. Do you know test mode? How do you insert scan chains? How it is done?
What type of paths failing zero RC timing check cannot be fixed during
placement?
What is power aware CTS?
How do you minimize clock dynamic power ?
same path setup and hold
what all are the tweakings u did in the flow apart from normal flow
If two buffers are added in the common path (timing path ) ,then what will be the
effect on hold in PTSI
same path setup and hold
tie high and tie low cells
what is the purpose of via enclosure drc and thin fat wire drc
set_load , set_driving_cell, report_clock in PT what they do
in antenna fixing where to add diode.
softcheck errors in LVS
ERCs power and signal
CTS done with what all constraints.
cell nad net delay graph
how much cap. And tran values u shud specify in the design
what is the difference in the setup in OCV and best case /worst case
in uncertaininty how much is IR drop margin
how well tap prevents from latchup
why inverter is preffered in CTS over buffer
If typical is 1 volt , then what will be the corners for worst and best and why ?
No. of levels in CTS , can we specify in the clocktree file.
in hirarachical block , how will we do the I/O budgeting .
where to place the gater towards the flop or towards the root and why ?
test chip timingclosure from one block to another block
in CTS what is preffered first to fix .. logical drcs , skew ,ID
what are the disadvantages of having good skew.
if noise height is fix, does the width matter ..why and why not
What settings will you use for the cts on the hierarchical block P1, P2&
P3?
Should we build a clock tree with increasing order of drive strength of
buffers from root or decreasing order?
At the PLL, which drive strength should be used for clock buffer and why?
Which clock tree is better, the one with shielding on a single spacing or the one
with double spacing?
How will you set the constraints for the clock input pin in the SDC?
There is path from the launch clock at 2ns and capture clock at 3ns, where the
tool checks the setup and hold? Write the command for hold check in PT?
Given a path from clock port to two sink flops, one path is direct and other path
has clock divider circuit in between. In this case how do you build the clock, what
are the things to take care?
If you move a flop after the CTS, what effects do you find. If there are no setup
and hold issues what else timing issue do you find? (expecting clock gating
timing violations)
Given a flop to flop path with clock time period 2ns and 4ns respectively, what
are the things to take care, at what edges setup and hold checks done.
If you have a flop to flop path with asynchronous clocks, how do you handle it?
What are initial checks you do and what will happen if you have any
issues.Reasons for why design should not have these. example (What will
happen if you have floating input pins).
Is it ok to have floating output pins. And is it ok if you have a cell which is not
connected to input or output.
Before going to floorplan what will you check.
If you have a 1000 macros how will start floorplanning.
What you will do exactly in CTS. he is asking about scenarios like if you build a
clock tree whose frequency is 500Mhz. after postCTS clk freq is 1GHz, will you
continue with same clock tree or rebuild it.
How will you know that two clocks are synchronous?
Where we place ICG cell at the port or sink and why? you have 10 clocks in your
design frequency ranging from 100Mhz to 1GHz, for these clocks where you
place ICG?
What are the considerations and proper way to partition a multi-voltage design,
identifying proper power domains?
What all are the way to minimize STA corners in the top level for a hierarchical
design (one ans he is looking for to push pipeline flops inside blocks to reduce
top level timing paths)
SI Prevention in the flow from Placement to Routing .Steps need to take care
What is the difference between MMMC & normal flow.If a design is given to
implement what are the pros & cons of it .
What is temperature inversion corner? How do we come up with derate values
for a particular corner (factors deciding the derates like 6% or 10%)
What are the criterias for Scan stitching in synthesis .If we reorder scan chain
during P & R does it disturb the Testability vectors
What are DFM issues & how do we attack it during the flow .Can you name some
which was not there in 90nm but was seen in 45nm to great extent (He was
expecting well proximity check & Latch up )
How do we pick up MCMM corners during P & R for Setup & hold corners.
Factors deciding the corners
How do you debug LVS error?
What kind of LVS errors do you have seen.
Any significant change from 90nm to 65nm in terms of library configuration.
Discussion regarding nwell latch-up and hot nwell drc.
PTE-060:
When the variable timing_disable_clock_gating_checks is false, which is
the default behaviour, Primetime infers Clock Gating check in all
combinational clock tree cells. But in muxes and complex combinational
cells, it is not able to infer clock gating checks, due to the lack of
information. Hence it gives PTE-060 to these cells. When you see a PTE060 warning, check whether the output of this cell is consumed as a
clock, down stream. If no, we can ignore this warning. Else we need to
enable clock gating checks, with set_clock_gating_check command for
these cells.
Now within the flow only - it will start with what inputs you will give and why and their
contents ?
(What is HFNS, difference between LVT and HVT cells, contents of lef file, .lib file.)
2> As I reached Placement, and started about physical cells - boom ,there the question
was on What are filler cells and why are they used ?
3> Next After placement - how will you qualify your placement. How will you relive the
congestion at that time, what is the minimal number of congestion ?? Do you relive
congestion at placement ? What was the utilization number after placement ?
4> What are the inputs to CTS? How do you come to conclusion on using drive
strength of the clocks ? ( Like what is the decision you make on deciding the number of
clock buffers drive strength to be taken as 4, 8, 12, 16 or 32 - why we cannot take up
32X as the drive strength )
5> When does crosstalk occurs ? How can we make crosstalk occur in our design ?
( Like what is the criteria on which we can make crosstalk occur )
6> What are we trying to achieve during CTS or after CTS ? ( Basically he wanted to
ask what the targets of CTS step) ( What are NDR's, Why do we apply on clock nets )
7> Questions on latest project - how many corners, how w many instances in the
design, what was the target skew , target latency, insertion delay, clock frequency , no.
of clocks in design.
11> Have you done any IR drop analysis - put a answer "no "
12> What is skew balancing ?
13> One tricky question
Suppose we take one of the three paths - reg2reg, reg2out or in2reg. Next we take 10
paths, group them in any of the 3 groups and over constraint them. Suppose the timing
of the block to be met was 1.2ns but we over constraint only those paths and the timing
we have to achieve for only those particular path is 0.8ns.
Now, What will be the effect in physical design by trying to achieve the above.
**********************************************************************************
1.brief introduction.
2."RTL" to GDS flow.
3.What happens in synthesis?
4.What is synthesis output format?
5.Why should we do synthesis?
6.How can u differentiate RTL verilog file from Netlist Verilog file?
7.If you know the circuit hardware schematic, can u skip RTL and directly code for
netlist file?
8.Which libraries do you use in synthesis?
9.Constraint file used in synthesis? What if constraint file is unavailable during
synthesis?
10.typical description of AND gate in netlist file?
11.Contents of SDC file? What are all did u have in your file?
12.Asked about drive strength specification of gates is SDC file. (How this is useful
during synthesis)
13.Again flow from Netlist to GDS.
14.Sanity checks? commands used and appropriate description.
6) Inputs for physical design ,how do your load ur LEF's in to your design ?
7) what is positive skew and negative skew ?
8) Other than critical nets which nets you take care of and why ?
9) Do you accept larger skew if my insertion delay is met and i am ok with clk tree
power also ?
10) If in sdc ( from synthesis engineer) uncertainity and latency are mentioned why dont
you fix setup and hold at pre CTS stage ?
11) What is signal integrity and how does it effect the design ? (crosstalk )
12) Will you tapeout the design with setup violation (huge),hold violation,max tran and
huge max cap violation ?
13) One general question on thevenin equivalent (network theory )
14) why do we need horizontal and vertical power routing ?
15) Do you have any experience in partitioning ?
16) what are types of IR drop and its effects ?
17) what is global and detail routing ?
18) CTS inputs
other than pd
1) what is fibonacci series ?
2) based on archimedes principle (a tricky question )
1) explain .lib file and the contents ?
2) 7x7 lookup table in .lib and what is x axis and y axis ?
3) what does tool do if it exceeds those values?
4) how do you qualify placement ?
1) proj details ,values for utilization at the start and end ? why so much variation ?and
clk frequency ? technology ? tool used ?
2) question on icc ; what is command to find sink points from q pin of a flop.
3) command used for running CTS ?
4) difference between 2 commands psynopt and focal_opt ?
5) on what factors does setup time depend upon ? (exclusively from .lib file content)
6) ways to fix setup violations ?
7) If ur data path is optimized ( 2 flops and a combo logic) and have setup violation,what
option you use to fix setup violation ?