LOCATE COMP "GPIO_0" SITE "J4" ;
IOBUF PORT "GPIO_0" IO_TYPE=LVCMOS33 PULLMODE=NONE ;
LOCATE COMP "TIMING_TEST" SITE "H1" ;
-IOBUF PORT "TIMING_TEST" IO_TYPE=LVCMOS33 PULLMODE=NONE ;
+IOBUF PORT "TIMING_TEST" IO_TYPE=LVCMOS33 PULLMODE=NONE DRIVE="8";
#################################################################
# LVDS interface
#################################################################
-LOCATE COMP "INTCOM_9" SITE "D18" ;
-IOBUF PORT "INTCOM_9" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
-LOCATE COMP "INTCOM_8" SITE "F17" ;
-IOBUF PORT "INTCOM_8" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
-LOCATE COMP "INTCOM_7" SITE "H18" ;
-IOBUF PORT "INTCOM_7" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
-LOCATE COMP "INTCOM_6" SITE "K16" ;
-IOBUF PORT "INTCOM_6" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
-LOCATE COMP "INTCOM_5" SITE "N19" ;
-IOBUF PORT "INTCOM_5" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
-LOCATE COMP "INTCOM_4" SITE "C20" ;
-IOBUF PORT "INTCOM_4" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
-LOCATE COMP "INTCOM_3" SITE "E20" ;
-IOBUF PORT "INTCOM_3" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
-LOCATE COMP "INTCOM_2" SITE "G19" ;
-IOBUF PORT "INTCOM_2" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
-LOCATE COMP "INTCOM_1" SITE "J19" ;
-IOBUF PORT "INTCOM_1" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
-LOCATE COMP "INTCOM_0" SITE "L20" ;
-IOBUF PORT "INTCOM_0" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+#LOCATE COMP "INTCOM_9" SITE "D18" ;
+#IOBUF PORT "INTCOM_9" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+#LOCATE COMP "INTCOM_8" SITE "F17" ;
+#IOBUF PORT "INTCOM_8" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+#LOCATE COMP "INTCOM_7" SITE "H18" ;
+#IOBUF PORT "INTCOM_7" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+#LOCATE COMP "INTCOM_6" SITE "K16" ;
+#IOBUF PORT "INTCOM_6" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+#LOCATE COMP "INTCOM_5" SITE "N19" ;
+#IOBUF PORT "INTCOM_5" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+#LOCATE COMP "INTCOM_4" SITE "C20" ;
+#IOBUF PORT "INTCOM_4" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+#LOCATE COMP "INTCOM_3" SITE "E20" ;
+#IOBUF PORT "INTCOM_3" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+#LOCATE COMP "INTCOM_2" SITE "G19" ;
+#IOBUF PORT "INTCOM_2" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+#LOCATE COMP "INTCOM_1" SITE "J19" ;
+#IOBUF PORT "INTCOM_1" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+#LOCATE COMP "INTCOM_0" SITE "L20" ;
+#IOBUF PORT "INTCOM_0" IO_TYPE=LVDS ; # DIFFRESISTOR="100" ;
+
+LOCATE COMP "INTCOM_19" SITE "D18" ;
+IOBUF PORT "INTCOM_19" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_18" SITE "E17" ;
+IOBUF PORT "INTCOM_18" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_17" SITE "F17" ;
+IOBUF PORT "INTCOM_17" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_16" SITE "G18" ;
+IOBUF PORT "INTCOM_16" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_15" SITE "H18" ;
+IOBUF PORT "INTCOM_15" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_14" SITE "H17" ;
+IOBUF PORT "INTCOM_14" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_13" SITE "K16" ;
+IOBUF PORT "INTCOM_13" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_12" SITE "K17" ;
+IOBUF PORT "INTCOM_12" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_11" SITE "N19" ;
+IOBUF PORT "INTCOM_11" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_10" SITE "N20" ;
+IOBUF PORT "INTCOM_10" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_9" SITE "C20" ;
+IOBUF PORT "INTCOM_9" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_8" SITE "D19" ;
+IOBUF PORT "INTCOM_8" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_7" SITE "E20" ;
+IOBUF PORT "INTCOM_7" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_6" SITE "F19" ;
+IOBUF PORT "INTCOM_6" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_5" SITE "G19" ;
+IOBUF PORT "INTCOM_5" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_4" SITE "H20" ;
+IOBUF PORT "INTCOM_4" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_3" SITE "J19" ;
+IOBUF PORT "INTCOM_3" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_2" SITE "K19" ;
+IOBUF PORT "INTCOM_2" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_1" SITE "L20" ;
+IOBUF PORT "INTCOM_1" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+LOCATE COMP "INTCOM_0" SITE "M20" ;
+IOBUF PORT "INTCOM_0" IO_TYPE=LVCMOS25 PULLMODE=NONE DRIVE="8" ;
+
+# 0_C = 0, 0_T = 1, 1_C = 2, 1_T = 3, ...
#################################################################
# LED
LED_SFP_GREEN : out std_logic;
LED_SFP_RED : out std_logic;
-- LVDS intercom
- INTCOM : inout std_logic_vector(9 downto 0);
+-- INTCOM : inout std_logic_vector(9 downto 0); -- LVDS
+ INTCOM : inout std_logic_vector(19 downto 0); -- LVCMOS
-- timing measurements
- TIMING_TEST : out std_logic;
+ TIMING_TEST : inout std_logic;
-- GPIO
GPIO : out std_logic_vector(15 downto 0)
);
-------------------------------------------------------------------------------
-------------------------------------------------------------------------------
-trigger_in_i <= INTCOM(0); -- BUG: we need a "timing trigger"
+--trigger_in_i <= INTCOM(0); -- BUG: we need a "timing trigger"
+trigger_in_i <= TIMING_TEST; -- BUG: we need a "timing trigger"
-- at least 100ns!
-INTCOM(9 downto 1) <= (others => '0');
+--INTCOM(9 downto 1) <= (others => '0');
-TIMING_TEST <= rx_dlm;
+--TIMING_TEST <= rx_dlm;
-------------------------------------------------------------------------------
-- Endpoint
GPIO(1) <= ep_debug(1); --'0'; -- reg.write
GPIO(0) <= ep_debug(0); --'0'; -- reg.read
+ INTCOM(19) <= '0';
+ INTCOM(18) <= '0';
+ INTCOM(17) <= '0';
+ INTCOM(16) <= int2med(0).data(3);
+ INTCOM(15) <= int2med(0).data(2);
+ INTCOM(14) <= int2med(0).data(1);
+ INTCOM(13) <= int2med(0).data(0);
+ INTCOM(12) <= med2int(0).data(3);
+ INTCOM(11) <= med2int(0).data(2);
+ INTCOM(10) <= med2int(0).data(1);
+ INTCOM(9) <= med2int(0).data(0);
+ INTCOM(8) <= int2med(0).dataready;
+ INTCOM(7) <= int2med(0).packet_num(2);
+ INTCOM(6) <= int2med(0).packet_num(1);
+ INTCOM(5) <= int2med(0).packet_num(0);
+ INTCOM(4) <= med2int(0).tx_read;
+ INTCOM(3) <= med2int(0).dataready;
+ INTCOM(2) <= med2int(0).packet_num(2);
+ INTCOM(1) <= med2int(0).packet_num(1);
+ INTCOM(0) <= med2int(0).packet_num(0);
+
-------------------------------------------------------------------------------
-- LED
-------------------------------------------------------------------------------