DIRECTORY CD USING [DesignNumber, ObPtr, lambda]; NMosTransistors: CEDAR DEFINITIONS = BEGIN Implant: TYPE = [0..4); enhancement: Implant = 0; zeroTresh: Implant = 1; weakDepletion: Implant = 2; strongDepletion: Implant = 3; wXExtension: CD.DesignNumber = 2*CD.lambda; lXExtension: CD.DesignNumber = 2*CD.lambda; TransistorPtr: TYPE = REF TransistorRec; TransistorRec: TYPE = RECORD [ width: CD.DesignNumber, length: CD.DesignNumber, wExt: CD.DesignNumber _ wXExtension, lExt: CD.DesignNumber _ lXExtension, implant: Implant_enhancement, angle: BOOL _ FALSE, pullup: BOOL _ FALSE -- pullup ==> NOT (angle OR implant) ]; CreateTransistor: PROC [w, l: CD.DesignNumber, implant: Implant_enhancement, wExt: CD.DesignNumber_wXExtension, lExt: CD.DesignNumber_lXExtension] RETURNS [CD.ObPtr]; CreatePullUp: PROC [w, l: CD.DesignNumber, wExt: CD.DesignNumber_wXExtension, lExt: CD.DesignNumber_lXExtension] RETURNS [CD.ObPtr]; CreateAngleTransistor: PROC [w, l: CD.DesignNumber, implant: Implant_enhancement, wExt: CD.DesignNumber_wXExtension, lExt: CD.DesignNumber_lXExtension, aExt: CD.DesignNumber_0] RETURNS [CD.ObPtr]; END. ØNMosTransistors.mesa (part of ChipNDale) Copyright c 1983, 1984 by Xerox Corporation. All rights reserved. by Christian Jacobi May 3, 1983 11:22 am last edited by Christian Jacobi September 26, 1983 11:15 am --Do not use wExt, lExt, it is included for compatibility only --Do not use wExt, lExt, it is included for compatibility only --Do not use wExt, lExt, it is included for compatibility only --All create procedures create in an orientation --w in direction of increasing x --l in direction of increasing y --All create procedures may (or may not) create references to --the same object. Therefore consider the transistor objects as --readonly. If a transistor needs to be modified create a new one! ÊN˜šœ/™/Jšœ Ïmœ7™BJšœ+™+Jšœ=™=—J˜šÏk ˜ Jšžœžœ˜'J˜—JšÏbœžœž œ˜$Jšž˜J˜šœ žœ ˜Jšœ˜Jšœ˜Jšœ˜Jšœ˜—J˜Jšœ žœžœ˜+Jšœ žœžœ˜+J˜Jšœžœžœ˜(šœžœžœ˜Jšœžœ˜Jšœžœ˜Jšœžœ˜$Jšœžœ˜$Jšœ˜Jšœžœžœ˜JšœžœžœÏc$˜9J˜J˜—šÏnœžœžœ˜0Jšœ˜Jšœžœ˜#Jšœžœ˜#šžœžœ˜Jšœ>™>—J˜—š¡ œžœžœ˜+Jšœžœ˜"Jšœžœ˜#šžœžœ˜Jšœ>™>—J˜—š¡œžœžœ˜5Jšœ˜Jšœžœ˜#Jšœžœ˜#Jšœžœ˜šžœžœ˜Jšœ>™>—J˜—Jšœ1™1Jšœ ™ Jšœ ™ J˜Jšœ=™=JšœA™AJšœC™CJ˜Jšžœ˜J˜—…—| ¢