summaryrefslogtreecommitdiff
path: root/cad/magic/patches
AgeCommit message (Collapse)AuthorFilesLines
2010-03-03Update to magic-7.5.188. There have been many changes since this packagedmcmahill29-804/+205
was last updated. Besides the upstream changes listed below, also add DESTDIR support (which is enabled by better upstream support for it). 4. Version 7.5 Release Notes: --------------------------------- Version 7.5 is the development branch. Version 7.5.0 is the same as 7.4.2, which is essentially the same as 7.3.123, plus some documentation updates. Intended development is as follows: 1) Use a finely spaced grid for the database, but keep the concept of "lambda" for layout. Keep backwards compatibility, and resolve issues with layout that does not work well on the lambda grid. Item #1 implemented in 7.5.1 by allowing a DRC "scalefactor" line, which declares that all DRC rules are in units of (lambda / scalefactor). Rules "in use" are scaled to lambda and rounded to the nearest integer. The original value is retained, however, so that any call to "scalegrid" will recompute the DRC distances based on the current internal grid. Thus, we can define DRC rules in fractional lambda and therefore match vendor DRC rule distances while still maintaining magic's concept of "lambda". This means that users working entirely within magic have scalable CMOS rules, but if a "vendor cell" (3rd party GDS or CIF) is loaded, the DRC rules will be correct with respect to it. 2) Create tile-based DRC functions that work like cifoutput: perform tile operations, for which the resulting plane, instead of being output as a file like CIF or GDS, simply becomes an error result plane. This will become an extra built-in plane. Try to keep the plane numbers down by removing the built-in routing planes when they are not used. Basically, this means that the top of the DRC section defines a set of "templayer" blocks just like "cifinput" and "cifoutput" (but at the same scaling as the layout (thus the main reason for item #1 above)), where the templayer types can be used in the DRC section. 3) Add "cifoutput" operators as needed to form a complete DRC. Add DRC rule types as needed to form a complete DRC (for example, it needs a "copy" function that declares that the templayer itself represents the error condition). 4. Version 7.4 Release Notes: --------------------------------- Version 7.4 is the new stable distribution version of magic. Apart from changes to the release notes, it is identical to the last revision (123) of development version 7.3. Revisions of 7.4 will be made as necessary to fix bugs in the code. All new additions and major changes will be done to the new development distribution, version 7.5. Therefore there will not be a "What's new in 7.4" section, as there is not supposed to be anything new in version 7.4. 5. Version 7.3 Release Notes: --------------------------------- Magic release 7.3 incorporates a stacked contact model which is, for the most part, backwardly compatible with Magic releases 7.2 and earlier. Information about this developmental release can be found at: http://opencircuitdesign.com/magic/magic7_3.html What's new in 7.3: ------------------ Provided by Tim Edwards (MultiGiG, Inc.): 1) Stacked contact model allowing arbitrary stacking of contact types. 2) A separate "undo/redo" method for network selection, to remove the memory overhead associated with selecting and unselecting large networks. Also removes some time overhead as well, especially when unselecting networks. 3) Much improved "plot pnm" function. 4) Improved transistor and resistor extraction. 5) LEF format reader; improved LEF/DEF input/output handling 6) New style and colormap file formats 7) Vendor GDS read/write capability 8) "wire segment" drawing function 9) Handling of path records in CIF and GDS input 10) Handling of cell scaling in GDS input 11) Pi-network device extraction for resistors 12) Option to write contacts as cell arrays in GDS output 13) New "widespacing" and "maxwidth" DRC algorithms. 14) "polygon" command 15) New cifoutput operator "bloat-all" 16) Backing-store for 24-bit and OpenGL graphics 17) New "pick" tool for interactive selection move and copy 18) New interactive "wire" tool 19) Crosshair 20) New cifoutput operator "slots" 21) New fcntl-based file locking mechanism 22) "angstroms" units supported in cifinput/cifoutput 23) Non-Manhattan device extraction support 24) New "feedback" mechanism 25) Proper support for > 32 planes (up to 64) 26) Fixed array interaction CIF/GDS generation 27) Added executable "magicdnull" for streamlined batch-mode use 28) New method for crash backups, including restore with "magic -r" 29) A number of other technology file additions and enhancements 6. Version 7.2 Release Notes: --------------------------------- Magic release 7.2 incorporates the capability to run magic from the Tcl interpreter with graphics handled by Tk. Instructions for compiling and installing this version are in README.Tcl. Information about this release can be found at: http://opencircuitdesign.com/magic/magic7_2.html What's new in 7.2: ------------------ Provided by Tim Edwards (MultiGiG, Inc., and JHU Applied Physics Lab): 1) Tcl interpreter extension option 2) Cygwin compile option 3) Memory resources cleaned up 4) GUI interface to Tcl version of Magic 5) Readline update to version 4.3 6) OpenGL fixes and refinements 7) Nonmanhattan geometry fixes and extensions 8) Threaded graphics in non-Tcl environments 9) Inductance extraction 10) CIF and GDS input/output support for deep submicron technologies 11) Different internal and lambda grids, including automatic or induced ("scalegrid" command) grid subdivision and expansion. "snap" and "grid" functions and extensions aid layout when lambda and internal units differ. 12) Removed commands "list", "listall", "parent", and "child", replacing them with the more general-purpose "cellname" and "instance" commands. 13) Added command "tech", and re-loadable technologies. 14) Revamped the "dstyle" files and updated the dstyle version 15) Added "element" types for layout annotation. 16) Extended extract section of techfile to include "device" keyword and devices "mosfet", "bjt", "capacitor", and "resistor". New model resistor and mosfet use width/length instead of area/ perimeter. 17) Added 3D rendering window invoked by command "specialopen wind3d", for the Tcl version compiled with OpenGL graphics. 18) Added "height" keyword to tech file for height/thickness values 19) Added "windowname" command for managing multiple wrapper windows under Tcl. 20) Added extraction extension for annular (ring) MOSFETs. 21) Added "widespacing" DRC rule. 22) Added GNU autoconf compile 23) New command "property" for setting key:value pair properties in cell definitions that can be interpreted by other routines (such as LEF/DEF). 24) General-purpose subcircuit method using the "port" command to declare a cell to be a subcircuit and to mark the position and orientation of connections into the subcell. This replaces a method previously built into version 7.2 using a "subcircuit" layer; that method is now considered obsolete. 25) LEF and DEF format readers, LEF format writer. 26) Improved techfile format with asterisk-notation and DRC "surround", "overhang", and "rect_only" statements.
2006-02-16Fix build on -current, and add missing -Wl,-R (should fix bulk build problem).wiz5-6/+54
2006-02-03Fixed pkglint warnings.rillig8-17/+17
2006-01-13Always include string.h, strdup works better that way.joerg1-0/+14
2006-01-06Fix errno. Fix implicit prototype mismatches. Add DragnFly support.joerg12-17/+175
On DragonFly, just fetch using the macros, e.g. using the slow path. Use pkgsrc readline instead of local version. Bump revision.
2005-09-24repair compilation on netbsd/alpha (and probably others too)dmcmahill1-3/+3
2005-09-22Use endian.mk to build on more platforms.minskim2-15/+19
2004-09-17Bring this a tiny step closer to building by patching a missing semicolonhe1-0/+13
in one of the source files of the built-in readline library.
2004-01-23Use stdarg rather than varargs.agc16-15/+496
This code is old - it's been ages since I've seen definitions for sunview and X10...
2002-07-14in the config script that comes with magic, check for /usr/libexec/cppdmcmahill1-5/+24
and if that doesn't exist look for /usr/libexec/cpp0. While here, use ${X11BASE}/include instead of /usr/X11R6/include. Should fix recently noted bulk build problems on 1.6 systems.
2002-04-06import of magic-7.1dmcmahill2-0/+90
Magic is an interactive system for creating and modifying VLSI circuit layouts. With Magic, you use a color graphics display and a mouse or graphics tablet to design basic cells and to combine them hierarchically into large structures. Magic is different from other layout editors you may have used. The most important difference is that Magic is more than just a color painting tool: it understands quite a bit about the nature of circuits and uses this information to provide you with additional operations. For example, Magic has built-in knowledge of layout rules; as you are editing, it continuously checks for rule violations. Magic also knows about connectivity and transistors, and contains a built-in hierarchical circuit extractor. Magic also has a plow operation that you can use to stretch or compact cells. Lastly, Magic has routing tools that you can use to make the global interconnections in your circuits. Magic is based on the Mead-Conway style of design. This means that it uses simplified design rules and circuit structures. The simplifications make it easier for you to design circuits and permit Magic to provide powerful assistance that would not be possible otherwise. However, they result in slightly less dense circuits than you could get with more complex rules and structures. For example, Magic permits only Manhattan designs (those whose edges are vertical or horizontal).