Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
config:layout [2021/10/31 12:06]
rajit [Metal layers]
config:layout [2022/06/30 09:07]
rajit [Vias]
Line 259: Line 259:
    * ''lef_width'': if this is specified, then the LEF drawing rules for the metal layer will use this as the drawing width for routing. If it doesn't exist, then this is set to the minimum width.    * ''lef_width'': if this is specified, then the LEF drawing rules for the metal layer will use this as the drawing width for routing. If it doesn't exist, then this is set to the minimum width.
    * ''pitch'': if this is specified, then all metal tracks are defined to snap to the specified pitch (left edge for vertical drawing, bottom edge for horizontal drawing). If unspecified, this is set to the ''lef_width'' plus minimum spacing.    * ''pitch'': if this is specified, then all metal tracks are defined to snap to the specified pitch (left edge for vertical drawing, bottom edge for horizontal drawing). If unspecified, this is set to the ''lef_width'' plus minimum spacing.
-   * The centerline for the routing tracks defined are spaced by the pitch, and the centerline is offset by ''lef_width''/2. Make sure that ''lef_width''/2 is a value that results in edges that lie on the manufacturing grid (defined in the [[config:netlist|LEF/DEF configuration section]]). Otherwise, the place and route tools will be very upset.+   * The centerline for the routing tracks defined are spaced by the pitch, and the centerline is offset by ''lef_width''/2. Make sure that ''lef_width''/2 is a value that results in edges that lie on the manufacturing grid (defined in the [[config:netlist#LEF/DEF_configuration_options|LEF/DEF configuration section]]). Otherwise, the place and route tools will be very upset.
  
 {{ :config:metal.svg?500 | Metal design rules}} {{ :config:metal.svg?500 | Metal design rules}}
Line 326: Line 326:
    
    * ''width'': the width of via (assumed to be square and fixed size)    * ''width'': the width of via (assumed to be square and fixed size)
 +   * ''lef_width'': this is the width used for LEF generation. If ''lef_width''/2 is not on the manufacturing grid, then the routing tools will be confused. The default value of this parameter is ''width''.
    * ''spacing'': the spacing between vias    * ''spacing'': the spacing between vias
    * ''surround'' section, containing    * ''surround'' section, containing
      * ''up'': minimum surround on the upper layer      * ''up'': minimum surround on the upper layer
-     * ''asym_up'': minimum surround on two opposite sides; if this is different (and larger) than ''up'', then this corresponds to having an asymmetric contact. If this is equal to ''up'', then it corresponds to a symmetric contact.+     * ''asym_up'': minimum surround on two opposite sides; if this is different (and larger) than ''up'', then this corresponds to having an asymmetric contact.
      * ''dn'': minimum surround on the lower layer      * ''dn'': minimum surround on the lower layer
      * ''asym_dn'': similar to ''asym_up'' for the lower layer      * ''asym_dn'': similar to ''asym_up'' for the lower layer
-     * Setting both ''asym_up'' and ''asym_dn'' to zero implies that the vias have symmetric surround.+     * Setting both ''asym_up'' and ''asym_dn'' to zero implies that the vias have symmetric surround. If either of these are non-zero, then we assume that we are using asymmetric vias.
   * ''antenna'' is a section that contains any of the following:   * ''antenna'' is a section that contains any of the following:
      * ''ratio'': antenna ratio for this layer (default is to omit this constraint)      * ''ratio'': antenna ratio for this layer (default is to omit this constraint)