
NET "clk" LOC = "AJ15" | IOSTANDARD = LVCMOS25;
NET "clk" TNM_NET = "clk";
TIMESPEC "TS_clk" = PERIOD "clk" 10.00 ns HIGH 50 %;

NET "sysace_clk" LOC = "AH15" | IOSTANDARD = LVCMOS25;
NET "sysace_clk" TNM_NET = "sysace_clk";
NET "sysace_clk" period = 29.000;

NET "clkm" 		TNM_NET = "clkm";
NET "clkml" 		TNM_NET = "clkml";
NET "clkvga" 		TNM_NET = "clkvga";
TIMESPEC "TS_clkm_clkml" = FROM "clkm" TO "clkml" TIG;
TIMESPEC "TS_clkml_clkm" = FROM "clkml" TO "clkm" TIG;
TIMESPEC "TS_clkm_clkvga" = FROM "clkm" TO "clkvga" TIG;
TIMESPEC "TS_clkvga" = PERIOD "clkvga" 15.00 ns HIGH 50 %;
NET "ddrlock"  TIG;
#NET ddr_clk_fb_out FEEDBACK = 1.0 NET ddr_clk_fb;
#NET "ddrsp0.ddr0/ddr_phy0/ddr_phy0/xc2v.ddr_phy0/rclk270b" TNM_NET = "rclk270b"; 
NET "ddrsp0.ddr0/ddr_phy0/ddr_phy0/xc2v.ddr_phy0/rclk90b" TNM_NET = "rclk90b"; 
#TIMEGRP "rclk270b_rise" = RISING "rclk270b";
TIMEGRP "rclk270b_rise" = FALLING "rclk90b";
TIMEGRP "clkml_rise" = RISING "clkml";
TIMESPEC "TS_rclk270b_clkml_rise" = FROM "rclk270b_rise" TO "clkml_rise" 4.300;

INST "ddrsp0.ddr0/ddr_phy0/ddr_phy0/xc2v.ddr_phy0/nops.read_dll" LOC = DCM_X1Y1;
INST "ddrsp0.ddr0/ddr_phy0/ddr_phy0/xc2v.ddr_phy0/ps.read_dll" LOC = DCM_X1Y1;
INST "ddrsp0.ddr0/ddr_phy0/ddr_phy0/xc2v.ddr_phy0/dll" LOC = DCM_X2Y1;

NET "ddr_clk_fb" TNM_NET = "ddr_clk_fb";
TIMESPEC "TS_ddr_clk_fb" = PERIOD "ddr_clk_fb" 8.00 ns HIGH 50 %;
NET "ddr_clk_fb" MAXDELAY = 1660 ps;
NET "*dqinl*" MAXDELAY = 1900 ps;
NET "ddrsp0.ddr0/ddrc/rbwdata*" MAXDELAY = 2100 ps;

NET erx_clk PERIOD = 40.000 ;
OFFSET = in : 10.000 : BEFORE erx_clk ;
NET etx_clk PERIOD = 40.000 ;
OFFSET = out : 20.000 : AFTER etx_clk ;
OFFSET = in : 10.000 : BEFORE etx_clk ;

NET "resetn" LOC = "AH5" | IOSTANDARD = LVTTL;

#NET "SW_0" LOC = "AC11" | IOSTANDARD = LVCMOS25;
NET "dsuen" LOC = "AC11" | IOSTANDARD = LVCMOS25;
#NET "SW_1" LOC = "AD11" | IOSTANDARD = LVCMOS25;
#NET "SW_2" LOC = "AF8" | IOSTANDARD = LVCMOS25;
#NET "SW_3" LOC = "AF9" | IOSTANDARD = LVCMOS25;

NET "txd" LOC = "AE7" | IOSTANDARD = LVCMOS25;
NET "rxd" LOC = "AJ8" | IOSTANDARD = LVCMOS25;
#NET "RS232_DSR_OUT" LOC = "AD10" | IOSTANDARD = LVCMOS25;
#NET "RS232_CTS_OUT" LOC = "AE8" | IOSTANDARD = LVCMOS25;
#NET "RS232_RTS_IN"  LOC = "AK8" | IOSTANDARD = LVCMOS25;

#NET "PB_ENTER" LOC = "AG5";
NET "dsubre" LOC = "AG5" | IOSTANDARD = LVTTL;
#NET "PB_UP" LOC = "AH4";
#NET "PB_DOWN" LOC = "AG3";
#NET "PB_LEFT" LOC = "AH1";
#NET "PB_RIGHT" LOC = "AH2";

NET "ps2clk(0)" LOC = "AG2" | IOSTANDARD = LVTTL;
NET "ps2data(0)" LOC = "AG1" | IOSTANDARD = LVTTL;
NET "ps2clk(1)" LOC = "AD6" | IOSTANDARD = LVTTL;
NET "ps2data(1)" LOC = "AD5" | IOSTANDARD = LVTTL;

#NET "LED_0" LOC = "AC4" | IOSTANDARD = LVTTL;
NET "dsuact" LOC = "AC4" | IOSTANDARD = LVTTL;
#NET "LED_1" LOC = "AC3" | IOSTANDARD = LVTTL;
NET "errorn" LOC = "AC3" | IOSTANDARD = LVTTL;
#NET "LED_2" LOC = "AA6" | IOSTANDARD = LVTTL;
NET "led_rx" LOC = "AA6" | IOSTANDARD = LVTTL;
#NET "LED_3" LOC = "AA5" | IOSTANDARD = LVTTL;
NET "led_tx" LOC = "AA5" | IOSTANDARD = LVTTL;


NET etx_slew(0)	LOC=B3 | IOSTANDARD = LVTTL;
NET etx_slew(1)	LOC=A3 | IOSTANDARD = LVTTL;
NET eresetn 	LOC=G6 | IOSTANDARD = LVTTL;
NET erx_crs 	LOC=C5 | IOSTANDARD = LVTTL;
NET etxd(3) 	LOC=C2 | IOSTANDARD = LVTTL;
NET etxd(2) 	LOC=C1 | IOSTANDARD = LVTTL;
NET etxd(1) 	LOC=J8 | IOSTANDARD = LVTTL;
NET etxd(0) 	LOC=J7 | IOSTANDARD = LVTTL;
NET etx_en 	LOC=C4 | IOSTANDARD = LVTTL;
NET etx_clk 	LOC=D3 | IOSTANDARD = LVTTL;
NET erx_er 	LOC=J2 | IOSTANDARD = LVTTL;
NET erx_clk 	LOC=M8 | IOSTANDARD = LVTTL;
NET erx_dv 	LOC=M7 | IOSTANDARD = LVTTL;
NET erxd(0) 	LOC=K6 | IOSTANDARD = LVTTL;
NET erxd(1) 	LOC=K5 | IOSTANDARD = LVTTL;
NET erxd(2) 	LOC=J1 | IOSTANDARD = LVTTL;
NET erxd(3) 	LOC=K1 | IOSTANDARD = LVTTL;
NET emdc 	LOC=M6 | IOSTANDARD = LVTTL;
NET emdio 	LOC=M5 | IOSTANDARD = LVTTL;
NET erx_col	LOC=D5 | IOSTANDARD = LVTTL;
NET etx_er 	LOC=H2 | IOSTANDARD = LVTTL;

NET "ddr_dq(*)"    IOSTANDARD = SSTL2_II;
#NET "SDRAM_CB(*)"    IOSTANDARD = SSTL2_II;
NET "ddr_dqs(*)"   IOSTANDARD = SSTL2_II;
NET "ddr_dm(*)"    IOSTANDARD = SSTL2_II;
NET "ddr_clk(*)"      IOSTANDARD = SSTL2_II;
NET "ddr_clkb(*)"    IOSTANDARD = SSTL2_II;
NET "ddr_ad(*)"     IOSTANDARD = SSTL2_II;
NET "ddr_ba*"      IOSTANDARD = SSTL2_II;
NET "ddr_rasb"    IOSTANDARD = SSTL2_II;
NET "ddr_casb"    IOSTANDARD = SSTL2_II;
NET "ddr_web"     IOSTANDARD = SSTL2_II;
NET "ddr_csb(*)"     IOSTANDARD = SSTL2_II;
NET "ddr_cke(*)"     IOSTANDARD = SSTL2_II;


NET "ddr_clk_fb_out" LOC = "G23" | IOSTANDARD = SSTL2_II;
NET "ddr_clk_fb" LOC = "C16" | IOSTANDARD = SSTL2_II;

NET "ddr_clk(2)"     LOC = "AB23" ;
NET "ddr_clkb(2)"   LOC = "AB24" ;
NET "ddr_clk(1)"     LOC = "AD29" ;
NET "ddr_clkb(1)"   LOC = "AD30" ;
NET "ddr_clk(0)"     LOC = "AC27" ;
NET "ddr_clkb(0)"   LOC = "AC28" ;
NET "ddr_cke(0)"    LOC = "R26" ;
NET "ddr_cke(1)"    LOC = "R25" ;
NET "ddr_csb(0)"    LOC = "R24" ;
NET "ddr_csb(1)"    LOC = "R23" ;
NET "ddr_rasb"   LOC = "N29" ;
NET "ddr_casb"   LOC = "L27" ;
NET "ddr_web"    LOC = "N26" ;
NET "ddr_ba(0)"     LOC = "M26" ;
NET "ddr_ba(1)"     LOC = "K26" ;

NET "ddr_ad(13)"   LOC = "M23" ;
NET "ddr_ad(12)"   LOC = "M24" ;
NET "ddr_ad(11)"   LOC = "F30" ;
NET "ddr_ad(10)"   LOC = "F28" ;
NET "ddr_ad(9)"    LOC = "K24" ;
NET "ddr_ad(8)"    LOC = "J24" ;
NET "ddr_ad(7)"    LOC = "D26" ;
NET "ddr_ad(6)"    LOC = "G26" ;
NET "ddr_ad(5)"    LOC = "G25" ;
NET "ddr_ad(4)"    LOC = "K30" ;
NET "ddr_ad(3)"    LOC = "M29" ;
NET "ddr_ad(2)"    LOC = "L26" ;
NET "ddr_ad(1)"    LOC = "N25" ;
NET "ddr_ad(0)"    LOC = "M25" ;

#############################################
# NET REQUIRED FOR XMIL IMPLEMENTATION
#############################################
#NET "RST_DQS_DIV"   LOC = "P27" ;
#NET "RST_DQS_DIV"   LOC = "P26" ;

NET "ddr_dqs(7)" LOC = "AH26" ;
NET "ddr_dm(7)"  LOC = "W25"  ;
NET "ddr_dq(63)" LOC = "AH29" ;
NET "ddr_dq(62)" LOC = "AH27" ;
NET "ddr_dq(61)" LOC = "AG28" ;
NET "ddr_dq(60)" LOC = "AD25" ;
NET "ddr_dq(59)" LOC = "AD26" ;
NET "ddr_dq(58)" LOC = "AG29" ;
NET "ddr_dq(57)" LOC = "AG30" ;
NET "ddr_dq(56)" LOC = "AF25" ;

NET "ddr_dqs(6)" LOC = "AC25" ;
NET "ddr_dm(6)"  LOC = "W26"  ;
NET "ddr_dq(55)" LOC = "AF29" ;
NET "ddr_dq(54)" LOC = "AF30" ;
NET "ddr_dq(53)" LOC = "AD27" ;
NET "ddr_dq(52)" LOC = "AD28" ;
NET "ddr_dq(51)" LOC = "AA23" ;
NET "ddr_dq(50)" LOC = "AA24" ;
NET "ddr_dq(49)" LOC = "AE29" ;
NET "ddr_dq(48)" LOC = "AB25" ;

NET "ddr_dqs(5)" LOC = "AA25"  ;
NET "ddr_dm(5)"  LOC = "W27"  ;
NET "ddr_dq(47)" LOC = "AC29" ;
NET "ddr_dq(46)" LOC = "AB27" ;
NET "ddr_dq(45)" LOC = "AB28" ;
NET "ddr_dq(44)" LOC = "W23"  ;
NET "ddr_dq(43)" LOC = "W24"  ;
NET "ddr_dq(42)" LOC = "AA27" ;
NET "ddr_dq(41)" LOC = "AA28" ;
NET "ddr_dq(40)" LOC = "Y26"  ;

NET "ddr_dqs(4)" LOC = "V23"  ;
NET "ddr_dm(4)"  LOC = "W28"  ;
NET "ddr_dq(39)" LOC = "AA29" ;
NET "ddr_dq(38)" LOC = "Y29"  ;
NET "ddr_dq(37)" LOC = "V25"  ;
NET "ddr_dq(36)" LOC = "V26"  ;
NET "ddr_dq(35)" LOC = "U23"  ;
NET "ddr_dq(34)" LOC = "U24"  ;
NET "ddr_dq(33)" LOC = "Y30"  ;
NET "ddr_dq(32)" LOC = "V27"  ;

#NET "ddr_dqs(8)" LOC = "T23" ;
#NET "ddr_dm(8)"  LOC = "U22" ;
#NET "SDRAM_CB(7)"  LOC = "U28" ;
#NET "SDRAM_CB(6)"  LOC = "T27" ;
#NET "SDRAM_CB(5)"  LOC = "T28" ;
#NET "SDRAM_CB(4)"  LOC = "T25" ;
#NET "SDRAM_CB(3)"  LOC = "T26" ;
#NET "SDRAM_CB(2)"  LOC = "V30" ;
#NET "SDRAM_CB(1)"  LOC = "U30" ;
#NET "SDRAM_CB(0)"  LOC = "R28" ;

NET "ddr_dqs(3)" LOC = "P29" ;
NET "ddr_dm(3)"  LOC = "T22" ;
NET "ddr_dq(31)" LOC = "N28" ;
NET "ddr_dq(30)" LOC = "N27" ;
NET "ddr_dq(29)" LOC = "P24" ;
NET "ddr_dq(28)" LOC = "P23" ;
NET "ddr_dq(27)" LOC = "P30" ;
NET "ddr_dq(26)" LOC = "M28" ;
NET "ddr_dq(25)" LOC = "M27" ;
NET "ddr_dq(24)" LOC = "R22" ;

NET "ddr_dqs(2)" LOC = "M30" ;
NET "ddr_dm(2)"  LOC = "W29" ;
NET "ddr_dq(23)" LOC = "K28" ;
NET "ddr_dq(22)" LOC = "K27" ;
NET "ddr_dq(21)" LOC = "N24" ;
NET "ddr_dq(20)" LOC = "N23" ;
NET "ddr_dq(19)" LOC = "L29" ;
NET "ddr_dq(18)" LOC = "K29" ;
NET "ddr_dq(17)" LOC = "J28" ;
NET "ddr_dq(16)" LOC = "J27" ;

NET "ddr_dqs(1)" LOC = "J29" ;
NET "ddr_dm(1)"  LOC = "V29" ;
NET "ddr_dq(15)" LOC = "H28" ;
NET "ddr_dq(14)" LOC = "H27" ;
NET "ddr_dq(13)" LOC = "L24" ;
NET "ddr_dq(12)" LOC = "L23" ;
NET "ddr_dq(11)" LOC = "G30" ;
NET "ddr_dq(10)" LOC = "G28" ;
NET "ddr_dq(9)"  LOC = "G27" ;
NET "ddr_dq(8)"  LOC = "J26" ;

NET "ddr_dqs(0)" LOC = "E30" ;
NET "ddr_dm(0)"  LOC = "U26" ;
NET "ddr_dq(7)"  LOC = "E28" ;
NET "ddr_dq(6)"  LOC = "E27" ;
NET "ddr_dq(5)"  LOC = "H26" ;
NET "ddr_dq(4)"  LOC = "H25" ;
NET "ddr_dq(3)"  LOC = "D30" ;
NET "ddr_dq(2)"  LOC = "D29" ;
NET "ddr_dq(1)"  LOC = "D28" ;
NET "ddr_dq(0)"  LOC = "C27" ;

#NET "SDRAM_SDA" LOC = "AF23";
#NET "SDRAM_SCL" LOC = "AF22";

#NET "SDRAM_SDA" IOSTANDARD = LVCMOS25;
#NET "SDRAM_SCL" IOSTANDARD = LVCMOS25;


NET "vid_vsync" LOC = "D11";
NET "vid_hsync" LOC = "B8";
NET "vid_blankn" LOC = "A8";
NET "vid_syncn" LOC = "G12";
NET "vid_clock" LOC = "H12";

NET "vid_r(7)" LOC = "H10";
NET "vid_r(6)" LOC = "C7";
NET "vid_r(5)" LOC = "D7";
NET "vid_r(4)" LOC = "F10";
NET "vid_r(3)" LOC = "F9";
NET "vid_r(2)" LOC = "G9";
NET "vid_r(1)" LOC = "H9";
NET "vid_r(0)" LOC = "G8";

NET "vid_g(7)" LOC = "E11";
NET "vid_g(6)" LOC = "G11";
NET "vid_g(5)" LOC = "H11";
NET "vid_g(4)" LOC = "C8";
NET "vid_g(3)" LOC = "D8";
NET "vid_g(2)" LOC = "D10";
NET "vid_g(1)" LOC = "E10";
NET "vid_g(0)" LOC = "G10";

NET "vid_b(7)" LOC = "E14";
NET "vid_b(6)" LOC = "D14";
NET "vid_b(5)" LOC = "D13";
NET "vid_b(4)" LOC = "C13";
NET "vid_b(3)" LOC = "J15";
NET "vid_b(2)" LOC = "H15";
NET "vid_b(1)" LOC = "E15";
NET "vid_b(0)" LOC = "D15";

NET "cf_mpa(0)" LOC = "AF21";
NET "cf_mpa(1)" LOC = "AG21";
NET "cf_mpa(2)" LOC = "AC19";
NET "cf_mpa(3)" LOC = "AD19";
NET "cf_mpa(4)" LOC = "AE22";
NET "cf_mpa(5)" LOC = "AE21";
NET "cf_mpa(6)" LOC = "AH22";
NET "cf_mpd(0)" LOC = "AE15";
NET "cf_mpd(1)" LOC = "AD15";
NET "cf_mpd(2)" LOC = "AG14";
NET "cf_mpd(3)" LOC = "AF14";
NET "cf_mpd(4)" LOC = "AE14";
NET "cf_mpd(5)" LOC = "AD14";
NET "cf_mpd(6)" LOC = "AC15";
NET "cf_mpd(7)" LOC = "AB15";
NET "cf_mpd(8)" LOC = "AJ9";
NET "cf_mpd(9)" LOC = "AH9";
NET "cf_mpd(10)" LOC = "AE10";
NET "cf_mpd(11)" LOC = "AE9";
NET "cf_mpd(12)" LOC = "AD12";
NET "cf_mpd(13)" LOC = "AC12";
NET "cf_mpd(14)" LOC = "AG10";
NET "cf_mpd(15)" LOC = "AF10";
NET "cf_mp_ce_z" LOC = "AB16";
NET "cf_mp_oe_z" LOC = "AD17";
NET "cf_mp_we_z" LOC = "AC16";
NET "cf_mpirq" LOC = "AD16";
#NET "cf_mpbrdy" LOC = "AE16";

