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Ï