Magic Mailing List |
|
From: R. Timothy Edwards (tim AT stravinsky DOT jhuapl.edu) Date: Tue Feb 25 2003 - 10:50:01 EST
Dear Thiago, > Another thing, I'm doing a large layout and I wanna know if there is > any way of saving a cell into a block. For example, an inverter into > a block with only the Vdd, Vss, In and Out available. I've been coding new features into magic to deal with "standard cells", so you're in luck, although the feature I will tell you about is largely undocumented. You will need some placeholder for the inverter cell (to use your example). This can be the entire cell read in via cif or just an empty block with a boundary layer to give it the exact size of the standard cell. Edit the cell and paint a rectangle with "paint subcircuit". This will create a boundary around the cell. Place labels for Vdd, Vss, In, and Out where you want to attach to the outside world. The labels must coincide with the subcircuit boundary. With the "subcircuit" layer in place, use of "extract" and "exttospice" will not attempt to extract any devices or nets inside the "subcircuit" boundary. Instead, "exttospice" will write a subcircuit call "X<#> <Vdd> <Vss> <In> <Out> <cellname>" to the SPICE deck. Shortly, I will implement a method which will allow magic to substitute a precompiled CIF or GDS file for that block when writing layout output. This will allow magic to use vendor-supplied standard cells without risking the possibility of writing bad output due to tech file manipulations when reading/writing CIF or GDS. Regards, Tim
|
|