/* Copyright (C) 1987 by Bryan Preas and Ken Roberts.       */
/*                All rights reserved.                      */
/*                                                          */
/* Library: SCLib.yal                                       */
/*                                                          */
/* Technology: Standard cell, 2-metal routing.              */
/*                                                          */
/* Design rules: Metal width, 4u, both levels.              */
/*               Via size = 4u.                             */
/*               Via oversize = 1u                          */
/*               Metal spacing = 5u (both levels).          */
/*                                                          */
/* Routing grid: 10u on both levels. Horizontally and       */
/*               vertically adjacent vias NOT allowed,      */
/*               but diagonally adjacent vias OK.           */
/*                                                          */
/* Cell characteristics:                                    */
/*                     Cell placements can abut, but not    */
/*                     overlap.  The legal orientations for */
/*                     internal cell placements are normal  */
/*                     (RFLNONE ROT0) and reflected about Y */
/*                     (RFLY ROT0).                         */
/*                                                          */
/*                     Over-cell feedthru paths are provided*/
/*                     in the cell definitions.  You should */
/*                     indicate in your results whether or  */
/*                     not your system can make use of them.*/
/*                                                          */
/*                     Feedthrus external to cells must be  */
/*                     centered at least 5u from the near-  */
/*                     cell boundary.  A feedthru cell,     */
/*                     which can be abutted to cells is     */
/*                     provided in case your system re-     */
/*                     quires it.                           */
/*                                                          */
/*                     Pad cells are placed at 300u         */
/*                     increments.  Pad cell orientations   */
/*                     are: right side - RFLNONE ROT0       */
/*                          left side  - RFLY ROT0          */
/*                          top        - RFLY ROT270        */
/*                          bottom     - RFLNONE ROT270     */
/*                                                          */
/*                                                          */
/*                                                          */
/* Cell FEED.  Feedthrough cell.                            */
/*                                                          */
MODULE FEED;
 TYPE FEEDTHROUGH;
 WIDTH 10;
 HEIGHT 120;
 IOLIST;
  F1  F  BOTTOM  5 4 METAL2;
  F1  F  TOP     5 4 METAL2;
 ENDIOLIST;
ENDMODULE;

/*                                                           */
/*  Module name = vdd                                     */
/*  Width = 10 microns, Height = 160 microns                 */
/*                                                           */
MODULE vdd;
 TYPE STANDARD;
 WIDTH 10;
 HEIGHT 160;
/*                                                           */
/*  Define the external connection: vdd                       */
/*                                                           */
 IOLIST;
/* <signalname> <terminaltype><side><position><width><layer> */
   vdd           F             TOP    5.0      3.0    METAL2;
   vdd           F             BOTTOM 5.0      3.0    METAL2;
 ENDIOLIST;
 ENDMODULE;
 
/*                                                           */
/*  Module name = gnd                                     */
/*  Width = 10 microns, Height = 160 microns                 */
/*                                                           */
MODULE gnd;
 TYPE STANDARD;
 WIDTH 10;
 HEIGHT 160;
/*                                                           */
/*  Define the external connection: gnd                       */
/*                                                           */
 IOLIST;
/* <signalname> <terminaltype><side><position><width><layer> */
   gnd           F             TOP    5.0      3.0    METAL2;
   gnd           F             BOTTOM 5.0      3.0    METAL2;
 ENDIOLIST;
 ENDMODULE;
 
/*                                                          */
/*                                                          */
/* Cell G11.  Combinational gate, 1 input, 1 output.        */
/*                                                          */
MODULE G11;
 TYPE STANDARD;
 WIDTH 30;
 HEIGHT 150;
 IOLIST;
  I1  I  BOTTOM  5 4 METAL2;
  I1  I  TOP     5 4 METAL2;
  O1  O  BOTTOM 15 4 METAL2;
  O1  O  TOP    15 4 METAL2;
  F1  F  BOTTOM 25 4 METAL2;
  F1  F  TOP    25 4 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell G21.  Combinational gate, 2 inputs, 1 output.       */
/*                                                          */
MODULE G21;
 TYPE STANDARD;
 WIDTH 50;
 HEIGHT 150;
 IOLIST;
  I1  I  BOTTOM  5 4 METAL2;
  I1  I  TOP     5 4 METAL2;
  I2  I  BOTTOM 25 4 METAL2;
  I2  I  TOP    25 4 METAL2;
  O1  O  BOTTOM 35 4 METAL2;
  O1  O  TOP    35 4 METAL2;
  F2  F  BOTTOM 15 4 METAL2;
  F2  F  TOP    15 4 METAL2;
  F3  F  BOTTOM 45 4 METAL2;
  F3  F  TOP    45 4 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell G31.  Combinational gate, 3 inputs, 1 output.       */
/*                                                          */
MODULE G31;
 TYPE STANDARD;
 WIDTH 60;
 HEIGHT 150;
 IOLIST;
  I1  I  BOTTOM  5 4 METAL2;
  I1  I  TOP     5 4 METAL2;
  I2  I  BOTTOM 15 4 METAL2;
  I2  I  TOP    15 4 METAL2;
  I3  I  BOTTOM 35 4 METAL2;
  I3  I  TOP    35 4 METAL2;
  O1  O  BOTTOM 45 4 METAL2;
  O1  O  TOP    45 4 METAL2;
  F2  F  BOTTOM 55 4 METAL2;
  F2  F  TOP    55 4 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell G41.  Combinational gate, 4 inputs, 1 output.       */
/*                                                          */
MODULE G41;
 TYPE STANDARD;
 WIDTH  70;
 HEIGHT 150;
 IOLIST;
  I1  I  BOTTOM  5 4 METAL2;
  I1  I  TOP     5 4 METAL2;
  I2  I  BOTTOM 15 4 METAL2;
  I2  I  TOP    15 4 METAL2;
  I3  I  BOTTOM 35 4 METAL2;
  I3  I  TOP    35 4 METAL2;
  I4  I  BOTTOM 45 4 METAL2;
  I4  I  TOP    45 4 METAL2;
  O1  O  BOTTOM 55 4 METAL2;
  O1  O  TOP    55 4 METAL2;
  F2  F  BOTTOM 65 4 METAL2;
  F2  F  TOP    65 4 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell G61.  Combinational gate, 6 inputs, 1 output.       */
/*                                                          */
MODULE G61;
 TYPE STANDARD;
 WIDTH 100;
 HEIGHT 150;
 IOLIST;
  I1  I  BOTTOM  5 4 METAL2;
  I1  I  TOP     5 4 METAL2;
  I2  I  BOTTOM 15 4 METAL2;
  I2  I  TOP    15 4 METAL2;
  I3  I  BOTTOM 35 4 METAL2;
  I3  I  TOP    35 4 METAL2;
  I4  I  BOTTOM 45 4 METAL2;
  I4  I  TOP    45 4 METAL2;
  I5  I  BOTTOM 65 4 METAL2;
  I5  I  TOP    65 4 METAL2;
  I6  I  BOTTOM 75 4 METAL2;
  I6  I  TOP    75 4 METAL2;
  O1  O  BOTTOM 85 4 METAL2;
  O1  O  TOP    85 4 METAL2;
  F1  F  BOTTOM 25 4 METAL2;
  F1  F  TOP    25 4 METAL2;
  F2  F  BOTTOM 95 4 METAL2;
  F2  F  TOP    95 4 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell G81.  Combinational gate, 8 inputs, 1 output.       */
/*                                                          */
MODULE G81;
 TYPE STANDARD;
 WIDTH 160;
 HEIGHT 150;
 IOLIST;
  I1  I  BOTTOM  5 4 METAL2;
  I1  I  TOP     5 4 METAL2;
  I2  I  BOTTOM 15 4 METAL2;
  I2  I  TOP    15 4 METAL2;
  I3  I  BOTTOM 25 4 METAL2;
  I3  I  TOP    25 4 METAL2;
  I4  I  BOTTOM 35 4 METAL2;
  I4  I  TOP    35 4 METAL2;
  I5  I  BOTTOM 115 4 METAL2;
  I5  I  TOP    115 4 METAL2;
  I6  I  BOTTOM 125 4 METAL2;
  I6  I  TOP    125 4 METAL2;
  I7  I  BOTTOM 135 4 METAL2;
  I7  I  TOP    135 4 METAL2;
  I8  I  BOTTOM 145 4 METAL2;
  I8  I  TOP    145 4 METAL2;
  O1  O  BOTTOM 75  4 METAL2;
  O1  O  TOP    75  4 METAL2;
  F1  F  BOTTOM 45 4 METAL2;
  F1  F  TOP    45 4 METAL2;
  F2  F  BOTTOM 55 4 METAL2;
  F2  F  TOP    55 4 METAL2;
  F3  F  BOTTOM 85 4 METAL2;
  F3  F  TOP    85 4 METAL2;
  F4  F  BOTTOM 155 4 METAL2;
  F4  F  TOP    155 4 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell G12.  Combinational gate, 1 input, 2 outputs.       */
/*                                                          */
MODULE G12;
 TYPE STANDARD;
 WIDTH  60;
 HEIGHT 150;
 IOLIST;
  I1  I  BOTTOM  5 4 METAL2;
  I1  I  TOP     5 4 METAL2;
  O1  O  BOTTOM 35 4 METAL2;
  O1  O  TOP    35 4 METAL2;
  O2  O  BOTTOM 45 4 METAL2;
  O2  O  TOP    45 4 METAL2;
  F1  F  BOTTOM 15 4 METAL2;
  F1  F  TOP    15 4 METAL2;
  F2  F  BOTTOM 55 4 METAL2;
  F2  F  TOP    55 4 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell F22.  Sequential function 2 inputs, 2 outputs.      */
/*                                                          */
MODULE F22;
 TYPE STANDARD;
 WIDTH  140;
 HEIGHT 150;
 IOLIST;
  I1  I  BOTTOM 15 4 METAL2;
  I1  I  TOP    15 4 METAL2;
  I2  I  BOTTOM 45 4 METAL2;
  I2  I  TOP    45 4 METAL2;
  O1  O  BOTTOM 105 4 METAL2;
  O1  O  TOP    105 4 METAL2;
  O2  O  BOTTOM 125 4 METAL2;
  O2  O  TOP    125 4 METAL2;
  F1  F  BOTTOM  5 4 METAL2;
  F1  F  TOP     5 4 METAL2;
  F2  F  BOTTOM 35 4 METAL2;
  F2  F  TOP    35 4 METAL2;
  F3  F  BOTTOM 75 4 METAL2;
  F3  F  TOP    75 4 METAL2;
  F4  F  BOTTOM 95 4 METAL2;
  F4  F  TOP    95 4 METAL2;
  F5  F  BOTTOM 115 4 METAL2;
  F5  F  TOP    115 4 METAL2;
  F6  F  BOTTOM 135 4 METAL2;
  F6  F  TOP    135 4 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell F32.  Sequential function 3 inputs, 2 outputs.      */
/*                                                          */
MODULE F32;
 TYPE STANDARD;
 WIDTH  200;
 HEIGHT 150;
 IOLIST;
  I1  I  BOTTOM 15 4 METAL2;
  I1  I  TOP    15 4 METAL2;
  I2  I  BOTTOM 55 4 METAL2;
  I2  I  TOP    55 4 METAL2;
  I3  I  BOTTOM 95  4 METAL2;
  I3  I  TOP    95  4 METAL2;
  O1  O  BOTTOM 155 4 METAL2;
  O1  O  TOP    155 4 METAL2;
  O2  O  BOTTOM 175 4 METAL2;
  O2  O  TOP    175 4 METAL2;
  F1  F  BOTTOM  5 4 METAL2;
  F1  F  TOP     5 4 METAL2;
  F2  F  BOTTOM 35 4 METAL2;
  F2  F  TOP    35 4 METAL2;
  F3  F  BOTTOM 65 4 METAL2;
  F3  F  TOP    65 4 METAL2;
  F4  F  BOTTOM 85 4 METAL2;
  F4  F  TOP    85 4 METAL2;
  F5  F  BOTTOM 115 4 METAL2;
  F5  F  TOP    115 4 METAL2;
  F6  F  BOTTOM 135 4 METAL2;
  F6  F  TOP    135 4 METAL2;
  F7  F  BOTTOM 195 4 METAL2;
  F7  F  TOP    195 4 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell F42.  Sequential function 4 inputs, 2 outputs.      */
/*                                                          */
MODULE F42;
 TYPE STANDARD;
 WIDTH  200;
 HEIGHT 150;
 IOLIST;
  I1  I  BOTTOM 15 4 METAL2;
  I1  I  TOP    15 4 METAL2;
  I2  I  BOTTOM 55 4 METAL2;
  I2  I  TOP    55 4 METAL2;
  I3  I  BOTTOM 95  4 METAL2;
  I3  I  TOP    95  4 METAL2;
  I4  I  BOTTOM 125 4 METAL2;
  I4  I  TOP    125 4 METAL2;
  O1  O  BOTTOM 155 4 METAL2;
  O1  O  TOP    155 4 METAL2;
  O2  O  BOTTOM 175 4 METAL2;
  O2  O  TOP    175 4 METAL2;
  F1  F  BOTTOM  5 4 METAL2;
  F1  F  TOP     5 4 METAL2;
  F2  F  BOTTOM 35 4 METAL2;
  F2  F  TOP    35 4 METAL2;
  F3  F  BOTTOM 85 4 METAL2;
  F3  F  TOP    85 4 METAL2;
  F4  F  BOTTOM 115 4 METAL2;
  F4  F  TOP    115 4 METAL2;
  F5  F  BOTTOM 135 4 METAL2;
  F5  F  TOP    135 4 METAL2;
  F6  F  BOTTOM 165 4 METAL2;
  F6  F  TOP    165 4 METAL2;
  F7  F  BOTTOM 195 4 METAL2;
  F7  F  TOP    195 4 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell I1.  Input pad cell, 1 output.                      */
/*                                                          */
MODULE I1;
 TYPE PAD;
 WIDTH 600;
 HEIGHT 300;
 IOLIST;
  I1  PI RIGHT 150 0 METAL2;
  O1  O  LEFT  155 4 METAL1;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell I2.  Input pad cell, 2 outputs.                     */
/*                                                          */
MODULE I2;
 TYPE PAD;
 WIDTH 600;
 HEIGHT 300;
 IOLIST;
  I1  PI RIGHT 150 0 METAL2;
  O1  O  LEFT  145 4 METAL1;
  O2  O  LEFT  165 4 METAL1;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell O1.  Output pad cell, 1 input.                      */
/*                                                          */
MODULE O1;
 TYPE PAD;
 WIDTH 600;
 HEIGHT 300;
 IOLIST;
  I1  I  LEFT  155 4 METAL1;
  O1  PO RIGHT 150 0 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell O2.  Output pad cell, 2 inputs.                     */
/*                                                          */
MODULE O2;
 TYPE PAD;
 WIDTH 600;
 HEIGHT 300;
 IOLIST;
  I1  I  LEFT  145 4 METAL1;
  I2  I  LEFT  165 4 METAL1;
  O1  PO RIGHT 150 0 METAL2;
 ENDIOLIST;
ENDMODULE;
/*                                                          */
/*                                                          */
/* Cell B21.  Bidirectional pad cell, 2 inputs, 1 output.   */
/*                                                          */
MODULE B21;
 TYPE PAD;
 WIDTH 600;
 HEIGHT 300;
 IOLIST;
  I1  I  LEFT  145 4 METAL1;
  I2  I  LEFT  155 4 METAL1;
  O1  O  LEFT  165 4 METAL1;
  B1  PB RIGHT 150 0 METAL2;
 ENDIOLIST;
ENDMODULE;