DIRECTORY CD, CStitching; Recognizer: CEDAR DEFINITIONS = BEGIN RegionList: TYPE = LIST OF REF CStitching.Region; InstAndForbidLayerRec: TYPE = RECORD [ instance: CD.Instance, forbidLayerList: LIST OF CD.Layer _ NIL --List of layers that cannot overlap the instance ]; InstAndForbidLayerList: TYPE = LIST OF REF InstAndForbidLayerRec; PossibleInstanceProc: TYPE = PROC [active1, active2: CD.Layer, coveredList: RegionList, possibleInstListPtr: REF InstAndForbidLayerList]; --Contains registered procedures that will guess possible instances RecognizeObjects: PROC [design: CD.Design, cellOb: CD.Object]; RegisterPossibleInstanceProc: PROC [technology: CD.Technology, rectCount: INT, instProc: PossibleInstanceProc]; RegisterLayerList: PROC [technology: CD.Technology, active1, active2: CD.Layer, layerList: LIST OF CD.Layer]; END. Recognizer.mesa Last Edited by: Gbier, July 11, 1985 10:17:42 am PDT Last Edited by: Gbier, July 26, 1985 1:30:18 pm PDT Jacobi, March 19, 1986 6:40:16 pm PST --Recognizes instances inside cellOb only -- layerlist should include 1) all forbidden layers 2) other layers generated by abstract -- diffusion layers ie pwell or nwell 3) layers needed by an object that will be guessed, for -- example: butting contacts are found by overlapping metal and cut and will also need planes -- of metal, poly, diffusion, and well. Κ€˜šœ™Jšœ4™4Jšœ3™3Icode™%—J˜šΟk ˜ Jšœ˜Jšœ ˜ —J˜JšΟb œœ œ˜Jš˜J˜Jš œ œœœœ˜2J˜šœœœ˜&Jšœ œ ˜Jš œœœœ œΟc1˜ZJ˜—J˜Jš œœœœœ˜AJ˜šœœœœ!˜XJšœœŸC˜v—J˜šΠbnœœ œœ ˜>Jšœ)™)J˜—Jš œœœœ"˜oJ˜š œœœœœœœ˜nJ™ZJ™]J™]J™'J™—Jšœ˜Jšœ˜—…—Pΰ