ASITIC Documentation: Editing
| Command Reference | Environmental Variables | Installation | Technology File | Quickstart | Sample Sessions | FAQ |
Aliases: befriend,friend
Example:
CP A B M2 # create a spiral on M3to layer M2Two `friends' always move together. This is a useful way to create a transformer out of two separate spirals or to keep two spirals separated by a fixed distance as you move them about the layout.
Aliases: copy,cp,duplicate,dup
Summary: Make a copy of a spiral and optionally place it on a new metal layer.
Example:
Copy A B # Simply make a duplicate of A and name it BCopy will make a new copy of <spiral> and place it in memory. You must give the new spiral a unique name. The next argument can optionally place the new spiral on a different metal layer. Note that if <spiral> resides on multiple metal layers, the new spiral will only resize on the new specified metal layer. You may also optionally place the new spiral at a new origin.
Aliases: erase,del,delete,rm
This command will remove a spiral from memory. Once deleted, spirals cannot be undeleted. You can save spirals (save) to disk for later retrieval.
Aliases: findi,intersect
Summary: Examine a spiral for any metal overlap.
A properly constructed structure should consists of a series interconnection of one or more shunt segments. Adjacent segments should have zero area of intersect, and thus connections can only occur along the edges. If these conditions are not satisfied, then the results of ASITIC may not be correct.For instance, if two segments overlap, the area of intersection will contribute more capacitance than is physical. Also, if non-adjacent segments intersect, then there are multiple paths from the input of the spiral to the exit, and ASITIC only considers the path determined by the order of the segments.
This command checks for a subset of these conditions, namely the non-intersection of segments.
Aliases: flip,reverse,rev,reorder
Summary: This command will reverse the list of segments of a spiral.
Reverse the list of segments of a spiral. Normally, the outermost segment of a spiral is the first segment and the innermost segment is the last segment of a spiral. By issuing this command one can reorder the list of spirals. You can see a list of segments that constitute a spiral with the listsegscommand.
This command is important as ASITIC assumes that current flows from one consecutive segment to the next and hence the relative order of segments is important for ASITIC as opposed to the geometric arrangement. Thus, ASITIC stores structures with a dual electric and geometric description. Furthermore, for a given segment, ASITIC assumes that current flows from one edge to the opposite edge where the direction is determined by the phase of the segment (see flipphase). To see this direction visually, issue the showdir command. This information is also given by the listsegs command.
Note: Contrast this command with flipv and fliph which operate on the geometry of the spiral.
Aliases: fliph,fliphorz,hflip,horzflip
You can reflect a spiral about the horizontal axis (x-axis) by issuing this command. The axis is defined by the center of the structure in question. Note that you cannot achieve the effect by rotation alone. See also the rotatecommand.
Note: Contrast this command with flip command which operates on the electrical properties of a spiral but not on the geometry.
Aliases: flipphase,fph,fphase,flipph
The phase of a spiral indicates the direction of current flow within the spiral segments. A +1 phase indicates that current flows into the first segment edge of a spiral and exits from the last segment edge of a spiral. The order of segments is also important and can be viewed with the listsegscommand. A phase of -1 indicates that current flows in the opposite direction.
For wires the current flows from the left to the right by default but "left" and "right" can change if the wire is rotated or flipped. Use the showdir to be sure of the assumed current flow direction.
The phase of a spiral is only important in relation to the phase of other spirals. For instance, the coupling factor depends on the direction of the currents as magnetic fields can add or subtract depending on the relative direction of the currents. Phase is also important when joining spirals (join).
Aliases: flipv,flipvert,vflip,vertflip
You can reflect a spiral about the vertical axis (y-axis) by issuing this command. The axis is defined by the center of the structure in question. Note that you cannot achieve the effect by rotation alone. See also the rotatecommand.
Note: Contrast this command with flip command which operates on the electrical properties of a spiral but not on the geometry.
Aliases: geom,geometry,info,finger
Display the data structure of a spiral. This will usually display the geometric dimensions of a spiral and its location. This command displays only geometric data whereas electric parameters can be obtained from other commands.Aliases: hide,ghost
Summary: Hide, but do not delete, a spiral from the display.
This command helps to avoid cluttering the display by hiding spirals not currently under examination. The spiral will be listed with the whocommand and will remain hidden until this command is re-invoked with the given spiral.
Aliases: join,add,mate,couple
You can use the Join command to interconnect multiple spirals in series. Series connections lengthen the structure whereas shunt connections increase the effective thickness of the structure (see joinshunt). Be sure that the phase of the spirals match so that current flows continuously from one spiral to the next (see flipphase, flip, listsegs, and showdir).
Calls to Join and joinshunt can be used to build relatively arbitrary structures with as many segments as memory permits.
Note: The mmsquare structure can automatically create series joined Multi-Metal structures.
Aliases: joinshunt,addshunt,mateshunt,shunt
Whereas the joincommand joins spirals in series, from segment end to segment head, join places spiral segments in shunt, at least electrically. Note you should not include vias in the join process as ASITIC assumes, quite magically, that the spiral ends are connected, even if no such connection or metal overlap exists. Thus, you must use this command with caution.
Note that metal segments are not connected continuously but only at the ends. To simulate the effect of multiple via connections, break the segment into smaller parts. This is in fact done automatically if you use pix and set the cell size smaller than the length of the longest segment.
Aliases: metalarea,areametal,metarea,areamet
Summary: Calculate the area occupied by the metal of a spiral structure in microns squared.
Aliases: move,mv
Example:
Move A 3 4 # Displace A by 3 microns east and by 4 microns northMove a spiral to a new position offset by <delta_x> and <delta_y> from its current position. The offset parameters can be positive or negative. To move a spiral using absolute coordinates, use the moveto
`Newton Version' command. Also see the movex and movey commands.
Aliases: moveto,mvto,setorig,setorigin
Move a spiral to a new position specified by <x> and <y>. These coordinates are absolute coordinates relative only to the chip origin. You can use the `Einstein Version' movecommand for relative shifts. See also the movex and movey commands.
Aliases: movex,mvx
Displace a spiral in the x-direction by <delta_x> relative to the current position.Aliases: movey,mvy
Displace a spiral in the y-direction by <delta_y> relative to the current position.Aliases: rename,ren,newname,name
Rename a spiral named <spiral> to <new_name>. The spiral name must be unique and not conflict with other existing spirals. You can use the Who command to see a list of currently living spirals, including hidden spirals (hide).
Aliases: rotate,rot,turn
Rotate a spiral about its origin the specified number of degrees counter-clockwise. For clockwise rotations specify negative degrees. You can also flip a spiral vertically or horizontally (fliph, fliph).
Aliases: select,highlight,choose,favorite
Selecting a Spiral is usually performed by simply left-clicking on a spiral.Aliases: sptowire,demolish,sp2wire,breakup
Summary: Completely `break' a spiral into its component parts.
To break a spiral at a specified boundary, use the unjoincommand. To completely convert all spiral segments into individual wires, use this command. Each segment will be named numerically according to its location in the spiral.
Aliases: stretch,str,lengthen,expand
Summary: Extend or Shorten Length of Segments.
Arguments:Aliases: unfriend,defriend
This command will remove any association between two spirals. See befriendcommand for more details.
Aliases: unjoin,split,break,cut
Example:
SPLIT A 0 B # split a spiral down the middleYou can use the Split command to break a spiral into two separate spirals. The <index> argument specifies the location of the break. If <index> is equal to 0, then the spiral is split down the middle. If n = <index> is negative, then the n'th segment counting from the last is the point of fracture.
See the stretch command for resizing individual segments of a spiral.
Aliases: unselect,unhighlight,unchoose,unfavorite
Unselecting of a spiral can also be performed by clicking anywhere on the display not occupied by the currently selected spiral.