Magic Mailing List |
|
From: R. Timothy Edwards (tim AT stravinsky DOT jhuapl.edu) Date: Wed Oct 22 2003 - 17:28:26 EDT
Dear Steve, > I have investigated your suggestion and deemed it an ugly kludge. It is > only to be surpassed by the horrible, ugly kludge that I would have to > put in place to clean it up. I rewrote the extraction methods in 7.2 mainly to get around the ugliness of the pseudo-resistor layer hack and similar things. To make use of the more sensible method requires magic 7.2 plus a statement in the technology file extract section "device resistor <name> <resistor_types> <terminal_types>" for which magic extracts an appropriate resistor device with length and width, or "device resistor None <resistor_types> <terminal_types>", which simply calculates the length and width and dumps a resistor with the appropriate resistance to the spice deck. Possibly it's the fact that SPICE has two ways of declaring resistors (using a model, with length and width, and model-less, with just connections and resistance) that magic didn't (originally) use the resistclass information to directly compute the resistance. > Is the pseudo-layer --really-- needed to identify the entire area which > needs to be lumped into the pseudo-fet? No, only because of the way the "fet" records are constructed in the technology file. The "device resistor" requires only a type name for the resistor (e.g., "rpoly") and a type name for the supposed ends of the resistor (e.g., "poly"). > Is this the reason why a sim file is needed before ;extres works? No, the reason that a .sim file is required prior to doing extres is that magic has no knowledge of the netlist connectivity of a circuit prior to extraction, and doesn't maintain any of this information in the database. So the extraction generates the netlist, and extresist uses the netlist to determine useful things like the direction of current flow, so that it can (more) accurately model networks of resistors. > Idle thoughts on how to accomplish this without breaking the technology > file, the ext file format, and everyone's designs... Note that the above method used in version 7.2 does indeed break both the technology file format (which I therefore advanced from version 27 to version 28) and also the .ext file format (which is probably safe because nobody uses the format other than magic, that I'm aware of). But I have run the version 7.2 extresist on layouts generated under 7.1 without everything collapsing. I don't really like the idea of depending on label tags for things that magic ought to figure out by itself; in particular, it should not be necessary to depend on "extresist" to pick out which resistors were planned in the design and which weren't. You seem to be pretty adept at using "extresist", though, so you may have motives other than just using it to get around the problem of declaring resistors in your layouts. Regards, Tim
|
|