DIRECTORY CD, Commander, IFUAsm, IFUPW, Rope; IFUAsmXaForm: CEDAR PROGRAM IMPORTS Commander, IFUAsm, IFUPW EXPORTS IFUAsm = BEGIN GND: Rope.ROPE = IFUPW.GND; VDD: Rope.ROPE = IFUPW.VDD; xaFormRP: IFUPW.RowParams = IFUPW.IFUDataColNSeq; abgdAB: IFUPW.List = IFUPW.List4["AlphaAB.", "BetaAB.", "GammaAB.", "DeltaAB."]; opNILAB: IFUPW.List = IFUPW.List4["OpAB.", NIL, NIL, NIL]; phaseBPLAIO: IFUPW.List = LIST[ "OpAB.0", "OpAB.1", "OpAB.2", "OpAB.3", "OpAB.4", "OpAB.5", "OpAB.6", "OpAB.7", "AlphaAB.0", "AlphaAB.1", "AlphaAB.2", "AlphaAB.3", "AlphaAB.4", "AlphaAB.5", "AlphaAB.6", "AlphaAB.7", "BetaAB.0", "BetaAB.1", "BetaAB.2", "BetaAB.3", "BetaAB.4", "BetaAB.5", "BetaAB.6", "BetaAB.7"]; XaSwitchTop: LIST OF REF = IFUPW.LISTn[ NIL, "PCBus.", abgdAB, opNILAB ]; XaSwitch: PROC[design: CD.Design] RETURNS[cell: CD.Object] = { cell _ IFUPW.SwitchBoxRow[ design: design, name: "IFUAsmXaForm.XaSwitch", rowType: IFUPW.cmosMet2, topRP: xaFormRP, top: XaSwitchTop, left: NIL, right: phaseBPLAIO, bot: XaMux0Top, botRP: xaFormRP ]}; XaMux0Top: LIST OF REF = IFUPW.LISTn[ NIL, "PCBus.", abgdAB, IFUPW.LISTn["OpAB.", NIL, "AlphaAB.", "AlphaAB."], IFUPW.LISTn[NIL, NIL, NIL, "BetaAB."] ]; XaMux0: PROC[design: CD.Design] RETURNS[cell: CD.Object] = { cell _ IFUPW.IFUMuxRow[ design: design, name: "IFUAsmXaForm.XaMux0", top: XaMux0Top, rightCtl: LIST[ "X2ALitSourceNoneBA", "X2ALitSourceAlphaBA", "X2ALitSourceBetaBA", "X2ALitSourceAlphaBetaBA", "X2ALitSourceAlpBetGamDelBA"], in: IFUPW.LISTn[ IFUPW.LISTn[GND, GND, GND, GND], IFUPW.LISTn[GND, GND, GND, "AlphaAB."], IFUPW.LISTn[GND, GND, GND, "BetaAB."], IFUPW.LISTn[GND, GND, "AlphaAB.", "BetaAB."], IFUPW.LISTn["AlphaAB.", "BetaAB.", "GammaAB.", "DeltaAB."] ], out: IFUPW.LISTn["XaPipe0B."], bot: XaLatch0Top, rp: xaFormRP ]}; XaLatch0Top: LIST OF REF = IFUPW.LISTn[ NIL, "PCBus.", abgdAB, opNILAB, NIL, "XaPipe0B." ]; XaLatch0: PROC[design: CD.Design] RETURNS[cell: CD.Object] = { cell _ IFUPW.IFUGPCellRow[ design: design, name: "IFUAsmXaForm.XaLatch0", type: IFUPW.LISTn["GPLatch"], top: XaLatch0Top, leftCtl: LIST["NotPipe0CycBc", "VBB"], in: IFUPW.LISTn["XaPipe0B."], out: IFUPW.LISTn["XaPipe0BA."], bot: XaLatch1ATop, rp: xaFormRP ]}; XaLatch1ATop: LIST OF REF = IFUPW.LISTn[ NIL, "PCBus.", abgdAB, opNILAB, "XaPipe0BA." ]; XaLatch1A: PROC[design: CD.Design] RETURNS[cell: CD.Object] = { cell _ IFUPW.IFUGPCellRow[ design: design, name: "IFUAsmXaForm.XaLatch1A", type: IFUPW.LISTn["GPLatch"], top: XaLatch1ATop, leftCtl: LIST["PhA", "VBB"], in: IFUPW.LISTn["XaPipe0BA."], out: IFUPW.LISTn["XaPipe1AB."], bot: XaLatch1BTop, rp: xaFormRP ]}; XaLatch1BTop: LIST OF REF = IFUPW.LISTn[ NIL, "PCBus.", abgdAB, opNILAB, "XaPipe1AB." ]; XaLatch1B: PROC[design: CD.Design] RETURNS[cell: CD.Object] = { cell _ IFUPW.IFUGPCellRow[ design: design, name: "IFUAsmXaForm.XaLatch1B", type: IFUPW.LISTn["GPLatch"], top: XaLatch1BTop, leftCtl: LIST["NotPipe1CycBc", "VBB"], in: IFUPW.LISTn["XaPipe1AB."], out: IFUPW.LISTn["XaPipe1BA."], bot: XaDrive2Top, rp: xaFormRP ]}; XaDrive2Top: LIST OF REF = IFUPW.LISTn[ NIL, "PCBus.", abgdAB, opNILAB, "XaPipe1BA." ]; XaDrive2: PROC[design: CD.Design] RETURNS[cell: CD.Object] = { cell _ IFUPW.IFUGPCellRow[ design: design, name: "IFUAsmXaForm.XaDrive2", type: IFUPW.LISTn["GPTriDr"], top: XaDrive2Top, leftCtl: LIST["DrXaLev2Ac", "not.DrXaLev2Ac"], in: IFUPW.LISTn["XaPipe1BA."], out: IFUPW.LISTn["XBus."], bot: XaFormBot, rp: xaFormRP ]}; XaFormBot: LIST OF REF = IFUPW.LISTn[ "XBus.", "PCBus.", abgdAB, opNILAB ]; module: IFUPW.ROPE _ "IFUAsmXaForm"; XaForm: PUBLIC IFUPW.Frame _ IFUPW.NFSFUP[module, y, LIST[ XaSwitch, XaMux0, XaLatch0, XaLatch1A, XaLatch1B, XaDrive2 ] ]; XaFormCT: Commander.CommandProc = {IFUPW.AssembleFrame[IFUAsm.RefDesign[], XaForm, cmd ] }; Commander.Register [proc: XaFormCT, key: module]; END. ’IFUAsmXaForm.mesa Copyright c 1985 by Xerox Corporation. All rights reserved. Last Edited by Curry, December 16, 1985 4:57:34 pm PST ÊÙ˜šœ™Jšœ<™šœœ˜Jšœ˜Jšœ˜Jšœ œ ˜Jšœ˜Jšœ˜Jšœœ˜ Jšœ˜Jšœ˜Jšœ˜——J˜š œ œœœœ˜%Jšœ˜Jšœ ˜ Jšœ˜Jšœœ˜7Jšœœœœ˜0J˜—š žœœ œ œœ ˜<šœœ ˜Jšœ˜Jšœ˜Jšœ˜šœ œ˜Jšœ˜Jšœ˜Jšœ˜Jšœ˜Jšœ˜—šœœ˜Jš œœœœœ˜'Jšœœœœ˜.Jšœœœœ˜-Jšœœœ˜2Jšœ8˜=—Jšœœ˜Jšœ˜Jšœ˜—J˜—š œ œœœœ˜'Jšœ˜Jšœ ˜ Jšœ˜Jšœ˜Jšœ˜Jšœ˜—J˜š žœœ œ œœ ˜>šœœ˜Jšœ˜Jšœ˜Jšœœ˜Jšœ˜Jšœ œ˜&Jšœœ˜Jšœœ˜ Jšœ˜Jšœ˜——J˜š œœœœœ˜(Jšœ˜Jšœ ˜ Jšœ˜Jšœ˜Jšœ˜—J˜š ž œœ œ œœ ˜?šœœ˜Jšœ˜Jšœ ˜ Jšœœ˜Jšœ˜Jšœ œ˜Jšœœ˜ Jšœœ˜ Jšœ˜Jšœ˜——J˜š œœœœœ˜(Jšœ˜Jšœ ˜ Jšœ˜Jšœ˜Jšœ˜—J˜š ž œœ œ œœ ˜?šœœ˜Jšœ˜Jšœ ˜ Jšœœ˜Jšœ˜Jšœ œ˜&Jšœœ˜ Jšœœ˜ Jšœ˜Jšœ˜——J˜š œ œœœœ˜'Jšœ˜Jšœ ˜ Jšœ˜Jšœ˜Jšœ˜—J˜š žœœ œ œœ ˜>šœœ˜Jšœ˜Jšœ˜Jšœœ˜Jšœ˜Jšœ œ!˜.Jšœœ˜ Jšœœ˜Jšœ˜Jšœ˜——J˜š œ œœœœ˜%Jšœ˜Jšœ ˜ Jšœ˜Jšœ ˜ —J˜Jšœ œœ˜%J˜š œœœ œœ œ˜:Jšœ ˜ Jšœ˜Jšœ ˜ Jšœ ˜ Jšœ ˜ Jšœ ˜ J™—šœ!˜!Jšœœ3˜9—J˜Jšœ5˜5˜J˜—Jšœ˜—J™J™—…—dÏ