EEC 116 - The Magic and IRSIM CAD Tools
Are things not working? Try these first
- Check circuit
- Check transistor-level schematic (if you don't have one,
draw one now).
- Check stick diagram, make sure the circuit matches the
schematic (if you don't have one, draw one now).
- Check that magic layout matches stick diagram.
- Verify magic connections and node names.
- Select all important nodes one at a time, by
pressing s two or three times in magic. Check
power and ground nodes also. Verify that all connections
are as you expect and that there are no shorts or
opens.
- Type 'getnode' to get the "real" node name.
This is the name that IRSIM will know about.
- Fix any DRC errors in the circuit. You can find the
cause of an error by placing the box around the white
dotted paint and using 'drc why'
or ?.
- Check extraction
- If magic gives warnings when you extract your
layout,
- Put a box around white warning paint and type
'feedback why'.
- Fix cause of warning(s).
- Type 'feedback clear' to clear
warnings.
- Re-extract
- Debug circuit
- Select important nodes (including inputs and outputs
of gates connected to cell inputs and outputs) one at a time,
using s in magic. Check power and ground nodes
also.
- Type 'getnode' to get the "real" node name.
- Type 'analyzer nodename' in IRSIM to see
the signal inside your simulation.
- Debugging rule: start at inputs, move a node at a time
toward the outputs.
- Check block inputs are correct
- Check outputs of gates which have block inputs
as the gates' inputs
- [repeat.] You will find the bug(s).
- If nothing is working right
Copy your top-level .mag file to temp.mag and remove layout from
temp.mag until it works.
Using IRSIM to find slow circuit paths
- To speed up a circuit, use a small step size to determine
the slowest path in a simulation. Then type
'path nodename' to see the transitions in that node
all the way back to the input. The slow nodes in that path
are the ones to speed up!
IRSIM freezing
- If the IRSIM analyzer window freezes, doesn't redraw, and
doesn't allow you to change anything, type s until
it unfreezes. You normally shouldn't have to type more than 2
or 3 s characters.
Links
Updates:
2004/04/08 Written
2004/05/20 Added more magic tips and irsim section
2004/05/24 Schematic tips
2004/05/27 Irsim path command
2005/05/23 Updated for spring 05
2005/05/31 Added area calculation thanks to Jeremy Webb
2006/04/11 Updated for Spring 2006
2006/06/05 Added top-level power node hint
2008/04/30 Touched up magic error messages
2009/06/01 Touched up debugging notes
2010/10/19 Touched up and moved portions to magic.tips.html
2012/12/09 Added suggestion to copy cell and remove layout