#
# pin constraints
#

NET GCLK LOC = "V10"  |  IOSTANDARD = "LVCMOS33";

NET Push_Buttons_4Bits_TRI_I[0] LOC = "A8"  |  IOSTANDARD = "LVCMOS33";
NET Push_Buttons_4Bits_TRI_I[1] LOC = "C4"  |  IOSTANDARD = "LVCMOS33";
NET Push_Buttons_4Bits_TRI_I[2] LOC = "C9"  |  IOSTANDARD = "LVCMOS33";
NET Push_Buttons_4Bits_TRI_I[3] LOC = "D9"  |  IOSTANDARD = "LVCMOS33";
NET RESET LOC = "B8"  |  IOSTANDARD = "LVCMOS33"  |  TIG;
NET RS232_Uart_1_sin LOC = "N17"  |  IOSTANDARD = "LVCMOS33";
NET RS232_Uart_1_sout LOC = "N18"  |  IOSTANDARD = "LVCMOS33";
#
# additional constraints
#

NET "GCLK" TNM_NET = sys_clk_pin;
TIMESPEC TS_sys_clk_pin = PERIOD sys_clk_pin 100000 kHz;

#User logic
#NET gpucore_0_rst_pin LOC = "B8"  |  IOSTANDARD = "LVCMOS33"  |  TIG;
NET gpucore_0_hs_pin LOC = N6 | IOSTANDARD = LVCMOS33;
NET gpucore_0_vs_pin LOC = P7 | IOSTANDARD = LVCMOS33;
NET gpucore_0_rgb_pin<7> LOC = U7 | IOSTANDARD = LVCMOS33;
NET gpucore_0_rgb_pin<6> LOC = V7 | IOSTANDARD = LVCMOS33;
NET gpucore_0_rgb_pin<5> LOC = N7 | IOSTANDARD = LVCMOS33;
NET gpucore_0_rgb_pin<4> LOC = P8 | IOSTANDARD = LVCMOS33;
NET gpucore_0_rgb_pin<3> LOC = T6 | IOSTANDARD = LVCMOS33;
NET gpucore_0_rgb_pin<2> LOC = V6 | IOSTANDARD = LVCMOS33;
NET gpucore_0_rgb_pin<1> LOC = R7 | IOSTANDARD = LVCMOS33;
NET gpucore_0_rgb_pin<0> LOC = T7 | IOSTANDARD = LVCMOS33;

#Sound Core
##JA
NET soundcore_0_JA_pin<0>          LOC = "T12" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L19P,                           Sch name = JA1
NET soundcore_0_JA_pin<1>          LOC = "V12" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L19N,                           Sch name = JA2  
NET soundcore_0_JA_pin<2>          LOC = "N10" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L20P,                           Sch name = JA3
NET soundcore_0_JA_pin<3>          LOC = "P11" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L20N,                           Sch name = JA4
#NET "JA<4>"          LOC = "M10" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L22P,                           Sch name = JA7
#NET "JA<5>"          LOC = "N9"  | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L22N,                           Sch name = JA8
#NET "JA<6>"          LOC = "U11" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L23P,                           Sch name = JA9
#NET "JA<7>"          LOC = "V11" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L23N, 

## Leds
NET soundcore_0_Test_pin<0>         LOC = "U16" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L2P_CMPCLK,                     Sch name = LD0
NET soundcore_0_Test_pin<1>          LOC = "V16" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L2N_CMPMOSI,                    Sch name = LD1
NET soundcore_0_Test_pin<2>          LOC = "U15" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L5P,                            Sch name = LD2
#NET soundcore_0_Test_pin<3>          LOC = "V15" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L5N,                            Sch name = LD3
#NET "Led<4>"         LOC = "M11" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L15P,                           Sch name = LD4
#NET "Led<5>"         LOC = "N11" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L15N,                           Sch name = LD5
#NET "Led<6>"         LOC = "R11" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L16P,                           Sch name = LD6
#NET "Led<7>"         LOC = "T11" | IOSTANDARD = "LVCMOS33";   #Bank = 2, Pin name = IO_L16N_VREF, 


#Keyboard
Net xps_ps2_0_PS2_1_DATA_pin LOC=J13  |  SLEW = SLOW  |  DRIVE = 2  |  IOSTANDARD = LVCMOS33  |  PULLUP;
Net xps_ps2_0_PS2_1_CLK_pin LOC=L12  |  SLEW = SLOW  |  DRIVE = 2  |  IOSTANDARD = LVCMOS33  |  PULLUP;