DIRECTORY CD USING [DesignNumber, ObPtr, Layer, combined, lambda]; CMosTransistors: CEDAR DEFINITIONS = BEGIN 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, angle: BOOL _ FALSE ]; undef: PRIVATE CD.Layer=CD.combined; -- will force ordinary diffusion CreateTransistor: PROC [w, l: CD.DesignNumber, wExt: CD.DesignNumber_wXExtension, lExt: CD.DesignNumber_lXExtension, difLev: CD.Layer_undef] RETURNS [CD.ObPtr]; CreateAngleTransistor: PROC [w, l: CD.DesignNumber, wExt: CD.DesignNumber_wXExtension, lExt: CD.DesignNumber_lXExtension, aExt: CD.DesignNumber_0, difLev: CD.Layer_undef] RETURNS [CD.ObPtr]; END. ”CMosTransistors.mesa (part of ChipNDale) Copyright c 1983 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 --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! Ê阚œ/™/Jšœ Ïmœ1™™>—J˜—š¡œžœžœ˜5Jšœžœ˜#Jšœžœ˜#Jšœžœ˜Jšœžœ˜šžœžœ˜Jšœ>™>—J˜—Jšœ1™1Jšœ ™ Jšœ ™ J˜Jšœ=™=JšœA™AJšœC™CJ˜Jšžœ˜J˜—…—bß