#ifndef _xc2s150_fg256_h_
#define _xc2s150_fg256_h_
class CP_XC2S150_FG256 : public TPart {
public:
port TCK;
port TMS;
port TDI;
port TDO;
port PROGRAM_N;
port CCLK;
port DIN;
port DOUT;
port INIT_N;
port DONE;
port M0;
port M1;
port M2;
port GCLK0;
port GCLK1;
port GCLK2;
port GCLK3;
port BANK7;
port BANK6;
port BANK5;
port BANK4;
port BANK3;
port BANK2;
port BANK1;
port BANK0;
port GND;
port VCCINT;
port VCCO0;
port VCCO1;
port VCCO2;
port VCCO3;
port VCCO4;
port VCCO5;
port VCCO6;
port VCCO7;
port NC;
CP_XC2S150_FG256() {
SetPackage( "FG256", 256 );
SetReferencePrefix( "U" );
}
virtual void Register() {
reg( TCK );
TCK.SetPin( "C4" );
reg( TMS );
TMS.SetPin( "D3" );
reg( TDI );
TDI.SetPin( "A15" );
reg( TDO );
TDO.SetPin( "B14" );
reg( PROGRAM_N );
PROGRAM_N.SetPin( "P15" );
reg( CCLK );
CCLK.SetPin( "D15" );
reg( DIN );
DIN.SetPin( "D14" );
reg( DOUT );
DOUT.SetPin( "C15" );
reg( INIT_N );
INIT_N.SetPin( "N15" );
reg( DONE );
DONE.SetPin( "R14" );
reg( M0 );
M0.SetPin( "N3" );
reg( M1 );
M1.SetPin( "P2" );
reg( M2 );
M2.SetPin( "R3" );
reg( GCLK0 );
GCLK0.SetPin( "N8" );
reg( GCLK1 );
GCLK1.SetPin( "R8" );
reg( GCLK2 );
GCLK2.SetPin( "C9" );
reg( GCLK3 );
GCLK3.SetPin( "B8" );
regb( BANK7, 22, 0 );
BANK7.AddPin( 22, "G1" );
BANK7.AddPin( 21, "H4" );
BANK7.AddPin( 20, "G5" );
BANK7.AddPin( 19, "H2" );
BANK7.AddPin( 18, "G4" );
BANK7.AddPin( 17, "H3" );
BANK7.AddPin( 16, "G2" );
BANK7.AddPin( 15, "F5" );
BANK7.AddPin( 14, "F4" );
BANK7.AddPin( 13, "F1" );
BANK7.AddPin( 12, "G3" );
BANK7.AddPin( 11, "F2" );
BANK7.AddPin( 10, "E1" );
BANK7.AddPin( 9, "D1" );
BANK7.AddPin( 8, "E4" );
BANK7.AddPin( 7, "E2" );
BANK7.AddPin( 6, "F3" );
BANK7.AddPin( 5, "C1" );
BANK7.AddPin( 4, "D2" );
BANK7.AddPin( 3, "E3" );
BANK7.AddPin( 2, "B1" );
BANK7.AddPin( 1, "A2" );
BANK7.AddPin( 0, "C2" );
regb( BANK6, 22, 0 );
BANK6.AddPin( 22, "M3" );
BANK6.AddPin( 21, "R1" );
BANK6.AddPin( 20, "M4" );
BANK6.AddPin( 19, "N2" );
BANK6.AddPin( 18, "L5" );
BANK6.AddPin( 17, "P1" );
BANK6.AddPin( 16, "N1" );
BANK6.AddPin( 15, "L3" );
BANK6.AddPin( 14, "M2" );
BANK6.AddPin( 13, "L4" );
BANK6.AddPin( 12, "M1" );
BANK6.AddPin( 11, "K4" );
BANK6.AddPin( 10, "L2" );
BANK6.AddPin( 9, "L1" );
BANK6.AddPin( 8, "K3" );
BANK6.AddPin( 7, "K1" );
BANK6.AddPin( 6, "K2" );
BANK6.AddPin( 5, "K5" );
BANK6.AddPin( 4, "J3" );
BANK6.AddPin( 3, "J1" );
BANK6.AddPin( 2, "J4" );
BANK6.AddPin( 1, "H1" );
BANK6.AddPin( 0, "J2" );
regb( BANK5, 18, 0 );
BANK5.AddPin( 18, "T8" );
BANK5.AddPin( 17, "T7" );
BANK5.AddPin( 16, "R7" );
BANK5.AddPin( 15, "P8" );
BANK5.AddPin( 14, "P7" );
BANK5.AddPin( 13, "T6" );
BANK5.AddPin( 12, "N7" );
BANK5.AddPin( 11, "M7" );
BANK5.AddPin( 10, "R6" );
BANK5.AddPin( 9, "P6" );
BANK5.AddPin( 8, "R5" );
BANK5.AddPin( 7, "N6" );
BANK5.AddPin( 6, "T5" );
BANK5.AddPin( 5, "M6" );
BANK5.AddPin( 4, "T4" );
BANK5.AddPin( 3, "T3" );
BANK5.AddPin( 2, "P5" );
BANK5.AddPin( 1, "T2" );
BANK5.AddPin( 0, "N5" );
regb( BANK4, 21, 0 );
BANK4.AddPin( 21, "T14" );
BANK4.AddPin( 20, "P13" );
BANK4.AddPin( 19, "P12" );
BANK4.AddPin( 18, "R13" );
BANK4.AddPin( 17, "N12" );
BANK4.AddPin( 16, "T13" );
BANK4.AddPin( 15, "T12" );
BANK4.AddPin( 14, "P11" );
BANK4.AddPin( 13, "R12" );
BANK4.AddPin( 12, "N11" );
BANK4.AddPin( 11, "T11" );
BANK4.AddPin( 10, "M11" );
BANK4.AddPin( 9, "R11" );
BANK4.AddPin( 8, "T10" );
BANK4.AddPin( 7, "P10" );
BANK4.AddPin( 6, "R10" );
BANK4.AddPin( 5, "M10" );
BANK4.AddPin( 4, "P9" );
BANK4.AddPin( 3, "T9" );
BANK4.AddPin( 2, "N10" );
BANK4.AddPin( 1, "R9" );
BANK4.AddPin( 0, "N9" );
regb( BANK3, 21, 0 );
BANK3.AddPin( 21, "J15" );
BANK3.AddPin( 20, "K15" );
BANK3.AddPin( 19, "J14" );
BANK3.AddPin( 18, "J16" );
BANK3.AddPin( 17, "K16" );
BANK3.AddPin( 16, "K12" );
BANK3.AddPin( 15, "L15" );
BANK3.AddPin( 14, "K13" );
BANK3.AddPin( 13, "L16" );
BANK3.AddPin( 12, "K14" );
BANK3.AddPin( 11, "M16" );
BANK3.AddPin( 10, "N16" );
BANK3.AddPin( 9, "L13" );
BANK3.AddPin( 8, "P16" );
BANK3.AddPin( 7, "L12" );
BANK3.AddPin( 6, "M15" );
BANK3.AddPin( 5, "L14" );
BANK3.AddPin( 4, "M14" );
BANK3.AddPin( 3, "R16" );
BANK3.AddPin( 2, "M13" );
BANK3.AddPin( 1, "T15" );
BANK3.AddPin( 0, "N14" );
regb( BANK2, 21, 0 );
BANK2.AddPin( 21, "B16" );
BANK2.AddPin( 20, "E13" );
BANK2.AddPin( 19, "C16" );
BANK2.AddPin( 18, "E14" );
BANK2.AddPin( 17, "F13" );
BANK2.AddPin( 16, "E15" );
BANK2.AddPin( 15, "F12" );
BANK2.AddPin( 14, "D16" );
BANK2.AddPin( 13, "F14" );
BANK2.AddPin( 12, "E16" );
BANK2.AddPin( 11, "F15" );
BANK2.AddPin( 10, "G13" );
BANK2.AddPin( 9, "F16" );
BANK2.AddPin( 8, "G12" );
BANK2.AddPin( 7, "G15" );
BANK2.AddPin( 6, "G14" );
BANK2.AddPin( 5, "H13" );
BANK2.AddPin( 4, "G16" );
BANK2.AddPin( 3, "J13" );
BANK2.AddPin( 2, "H15" );
BANK2.AddPin( 1, "H14" );
BANK2.AddPin( 0, "H16" );
regb( BANK1, 21, 0 );
BANK1.AddPin( 21, "A8" );
BANK1.AddPin( 20, "D9" );
BANK1.AddPin( 19, "A9" );
BANK1.AddPin( 18, "E10" );
BANK1.AddPin( 17, "B9" );
BANK1.AddPin( 16, "A10" );
BANK1.AddPin( 15, "D10" );
BANK1.AddPin( 14, "B10" );
BANK1.AddPin( 13, "C10" );
BANK1.AddPin( 12, "A11" );
BANK1.AddPin( 11, "B11" );
BANK1.AddPin( 10, "E11" );
BANK1.AddPin( 9, "A12" );
BANK1.AddPin( 8, "D11" );
BANK1.AddPin( 7, "A13" );
BANK1.AddPin( 6, "C11" );
BANK1.AddPin( 5, "B12" );
BANK1.AddPin( 4, "D12" );
BANK1.AddPin( 3, "A14" );
BANK1.AddPin( 2, "C12" );
BANK1.AddPin( 1, "C13" );
BANK1.AddPin( 0, "B13" );
regb( BANK0, 19, 0 );
BANK0.AddPin( 19, "B3" );
BANK0.AddPin( 18, "C5" );
BANK0.AddPin( 17, "A3" );
BANK0.AddPin( 16, "D5" );
BANK0.AddPin( 15, "E6" );
BANK0.AddPin( 14, "B4" );
BANK0.AddPin( 13, "A4" );
BANK0.AddPin( 12, "D6" );
BANK0.AddPin( 11, "B5" );
BANK0.AddPin( 10, "C6" );
BANK0.AddPin( 9, "A5" );
BANK0.AddPin( 8, "B6" );
BANK0.AddPin( 7, "C7" );
BANK0.AddPin( 6, "E7" );
BANK0.AddPin( 5, "D7" );
BANK0.AddPin( 4, "C8" );
BANK0.AddPin( 3, "B7" );
BANK0.AddPin( 2, "A6" );
BANK0.AddPin( 1, "D8" );
BANK0.AddPin( 0, "A7" );
reg( GND );
GND.AddPin( "A1" );
GND.AddPin( "A16" );
GND.AddPin( "B2" );
GND.AddPin( "B15" );
GND.AddPin( "F6" );
GND.AddPin( "F7" );
GND.AddPin( "F10" );
GND.AddPin( "F11" );
GND.AddPin( "G6" );
GND.AddPin( "G7" );
GND.AddPin( "G8" );
GND.AddPin( "G9" );
GND.AddPin( "G10" );
GND.AddPin( "G11" );
GND.AddPin( "H7" );
GND.AddPin( "H8" );
GND.AddPin( "H9" );
GND.AddPin( "H10" );
GND.AddPin( "J7" );
GND.AddPin( "J8" );
GND.AddPin( "J9" );
GND.AddPin( "J10" );
GND.AddPin( "K6" );
GND.AddPin( "K7" );
GND.AddPin( "K8" );
GND.AddPin( "K9" );
GND.AddPin( "K10" );
GND.AddPin( "K11" );
GND.AddPin( "L6" );
GND.AddPin( "L7" );
GND.AddPin( "L10" );
GND.AddPin( "L11" );
GND.AddPin( "R2" );
GND.AddPin( "R15" );
GND.AddPin( "T1" );
GND.AddPin( "T16" );
reg( VCCINT );
VCCINT.AddPin( "C3" );
VCCINT.AddPin( "C14" );
VCCINT.AddPin( "D4" );
VCCINT.AddPin( "D13" );
VCCINT.AddPin( "E5" );
VCCINT.AddPin( "E12" );
VCCINT.AddPin( "M5" );
VCCINT.AddPin( "M12" );
VCCINT.AddPin( "N4" );
VCCINT.AddPin( "N13" );
VCCINT.AddPin( "P3" );
VCCINT.AddPin( "P14" );
reg( VCCO0 );
VCCO0.AddPin( "E8" );
VCCO0.AddPin( "F8" );
reg( VCCO1 );
VCCO1.AddPin( "E9" );
VCCO1.AddPin( "F9" );
reg( VCCO2 );
VCCO2.AddPin( "H11" );
VCCO2.AddPin( "H12" );
reg( VCCO3 );
VCCO3.AddPin( "J11" );
VCCO3.AddPin( "J12" );
reg( VCCO4 );
VCCO4.AddPin( "L9" );
VCCO4.AddPin( "M9" );
reg( VCCO5 );
VCCO5.AddPin( "L8" );
VCCO5.AddPin( "M8" );
reg( VCCO6 );
VCCO6.AddPin( "J5" );
VCCO6.AddPin( "J6" );
reg( VCCO7 );
VCCO7.AddPin( "H5" );
VCCO7.AddPin( "H6" );
reg( NC );
NC.AddPin( "P4" );
NC.AddPin( "R4" );
}
};
#endif