nextpnr/gowin/constids.inc
YRabbit 5a76b3cb4d gowin: Add simplified IO cells processing
Some models have I/O cells that are IOBUFs, and other types (IBUFs and
OBUFs) are obtained by feeding 1 or 0 to the OEN input.  This is done
with general-purpose routing so it's best to do it here to avoid
conflicts.

For this purpose, in the new bases, these special cells are of type IOBS
(IOB Simplified).

The proposed changes are compatible with bases of previous versions of
Apycula and do not require changing .CST constraint files.

Signed-off-by: YRabbit <rabbit@yrabbit.cyou>
2021-12-20 15:48:38 +10:00

467 lines
3.6 KiB
PHP

X(A0)
X(B0)
X(C0)
X(D0)
X(A1)
X(B1)
X(C1)
X(D1)
X(A2)
X(B2)
X(C2)
X(D2)
X(A3)
X(B3)
X(C3)
X(D3)
X(A4)
X(B4)
X(C4)
X(D4)
X(A5)
X(B5)
X(C5)
X(D5)
X(A6)
X(B6)
X(C6)
X(D6)
X(A7)
X(B7)
X(C7)
X(D7)
X(F0)
X(F1)
X(F2)
X(F3)
X(F4)
X(F5)
X(F6)
X(F7)
X(Q0)
X(Q1)
X(Q2)
X(Q3)
X(Q4)
X(Q5)
X(Q6)
X(Q7)
X(OF0)
X(OF1)
X(OF2)
X(OF3)
X(OF4)
X(OF5)
X(OF6)
X(OF7)
X(X01)
X(X02)
X(X03)
X(X04)
X(X05)
X(X06)
X(X07)
X(X08)
X(N100)
X(SN10)
X(SN20)
X(N130)
X(S100)
X(S130)
X(E100)
X(EW10)
X(EW20)
X(E130)
X(W100)
X(W130)
X(N200)
X(N210)
X(N220)
X(N230)
X(N240)
X(N250)
X(N260)
X(N270)
X(S200)
X(S210)
X(S220)
X(S230)
X(S240)
X(S250)
X(S260)
X(S270)
X(E200)
X(E210)
X(E220)
X(E230)
X(E240)
X(E250)
X(E260)
X(E270)
X(W200)
X(W210)
X(W220)
X(W230)
X(W240)
X(W250)
X(W260)
X(W270)
X(N800)
X(N810)
X(N820)
X(N830)
X(S800)
X(S810)
X(S820)
X(S830)
X(E800)
X(E810)
X(E820)
X(E830)
X(W800)
X(W810)
X(W820)
X(W830)
X(CLK0)
X(CLK1)
X(CLK2)
X(LSR0)
X(LSR1)
X(LSR2)
X(CE0)
X(CE1)
X(CE2)
X(SEL0)
X(SEL1)
X(SEL2)
X(SEL3)
X(SEL4)
X(SEL5)
X(SEL6)
X(SEL7)
X(N101)
X(N131)
X(S101)
X(S131)
X(E101)
X(E131)
X(W101)
X(W131)
X(N201)
X(N211)
X(N221)
X(N231)
X(N241)
X(N251)
X(N261)
X(N271)
X(S201)
X(S211)
X(S221)
X(S231)
X(S241)
X(S251)
X(S261)
X(S271)
X(E201)
X(E211)
X(E221)
X(E231)
X(E241)
X(E251)
X(E261)
X(E271)
X(W201)
X(W211)
X(W221)
X(W231)
X(W241)
X(W251)
X(W261)
X(W271)
X(N202)
X(N212)
X(N222)
X(N232)
X(N242)
X(N252)
X(N262)
X(N272)
X(S202)
X(S212)
X(S222)
X(S232)
X(S242)
X(S252)
X(S262)
X(S272)
X(E202)
X(E212)
X(E222)
X(E232)
X(E242)
X(E252)
X(E262)
X(E272)
X(W202)
X(W212)
X(W222)
X(W232)
X(W242)
X(W252)
X(W262)
X(W272)
X(N804)
X(N814)
X(N824)
X(N834)
X(S804)
X(S814)
X(S824)
X(S834)
X(E804)
X(E814)
X(E824)
X(E834)
X(W804)
X(W814)
X(W824)
X(W834)
X(N808)
X(N818)
X(N828)
X(N838)
X(S808)
X(S818)
X(S828)
X(S838)
X(E808)
X(E818)
X(E828)
X(E838)
X(W808)
X(W818)
X(W828)
X(W838)
X(E110)
X(W110)
X(E120)
X(W120)
X(S110)
X(N110)
X(S120)
X(N120)
X(E111)
X(W111)
X(E121)
X(W121)
X(S111)
X(N111)
X(S121)
X(N121)
X(LB01)
X(LB11)
X(LB21)
X(LB31)
X(LB41)
X(LB51)
X(LB61)
X(LB71)
X(GB00)
X(GB10)
X(GB20)
X(GB30)
X(GB40)
X(GB50)
X(GB60)
X(GB70)
X(VCC)
X(VSS)
X(LT00)
X(LT10)
X(LT20)
X(LT30)
X(LT02)
X(LT13)
X(LT01)
X(LT04)
X(LBO0)
X(LBO1)
X(SS00)
X(SS40)
X(GT00)
X(GT10)
X(GBO0)
X(GBO1)
X(DI0)
X(DI1)
X(DI2)
X(DI3)
X(DI4)
X(DI5)
X(DI6)
X(DI7)
X(CIN0)
X(CIN1)
X(CIN2)
X(CIN3)
X(CIN4)
X(CIN5)
X(COUT0)
X(COUT1)
X(COUT2)
X(COUT3)
X(COUT4)
X(COUT5)
// slice items
X(SLICE)
X(CLK)
X(LSR)
X(CE)
X(Q)
X(F)
X(A)
X(B)
X(C)
X(D)
// iob items
X(IOB)
X(I)
X(O)
X(IO)
X(OE)
// bels
X(DFF0)
X(DFF1)
X(DFF2)
X(DFF3)
X(DFF4)
X(DFF5)
X(LUT0)
X(LUT1)
X(LUT2)
X(LUT3)
X(LUT4)
X(LUT5)
X(LUT6)
X(LUT7)
X(IOBA)
X(IOBB)
X(IOBC)
X(IOBD)
X(IOBE)
X(IOBF)
X(IOBG)
X(IOBH)
X(IOBI)
X(IOBJ)
// simplified iobs
X(IOBS)
X(IOBAS)
X(IOBBS)
X(IOBCS)
X(IOBDS)
X(IOBES)
X(IOBFS)
X(IOBGS)
X(IOBHS)
X(IOBIS)
X(IOBJS)
// Wide LUTs
X(MUX2_LUT5)
X(MUX2_LUT6)
X(MUX2_LUT7)
X(MUX2_LUT8)
X(GW_MUX2_LUT5)
X(GW_MUX2_LUT6)
X(GW_MUX2_LUT7)
X(GW_MUX2_LUT8)
// ALU
X(ALU)
X(GND)
X(ALU_MODE)
// DFF types
X(DFF)
X(DFFE)
X(DFFS)
X(DFFSE)
X(DFFR)
X(DFFRE)
X(DFFP)
X(DFFPE)
X(DFFC)
X(DFFCE)
X(DFFN)
X(DFFNE)
X(DFFNS)
X(DFFNSE)
X(DFFNR)
X(DFFNRE)
X(DFFNP)
X(DFFNPE)
X(DFFNC)
X(DFFNCE)
// IOB types
X(IBUF)
X(OBUF)
X(IOBUF)
X(TBUF)
// primitive attributes
X(INIT)
X(FF_USED)
X(FF_TYPE)
X(INPUT_USED)
X(OUTPUT_USED)
X(ENABLE_USED)
X(BEL)
// ports
X(EN)
X(E)
X(Y)
X(PAD)
X(RESET)
X(SET)
X(PRESET)
X(CLEAR)
X(I0)
X(I1)
X(I2)
X(I3)
X(OEN)
X(S0)
X(SEL)
X(SUM)
X(CIN)
X(COUT)
X(OF)
// timing
X(X0)
X(FX1)
X(X2)
X(X8)
X(PIO_CENT_PCLK)
X(CENT_SPINE_PCLK)
X(SPINE_TAP_PCLK)
X(TAP_BRANCH_PCLK)
X(BRANCH_PCLK)
X(clksetpos)
X(clkholdpos)
X(clk_qpos)
X(a_f)
X(b_f)
X(c_f)
X(d_f)
X(fx_ofx1)
X(I01)