Commit ea627d79 authored by Denia Bouhired-Ferrag's avatar Denia Bouhired-Ferrag

Golden: added ucf files and modified gw version num

parent d373a166
#==============================================================================
# CERN (BE-CO-HT)
# UCF defintions file for CONV-TTL-RS485 gateware
#==============================================================================
#
# author: Theodor Stana (t.stana@cern.ch)
#
# date of creation: 2014-07-24
#
# version: 1.0
#
# description:
# This file contains the pin definitions for the CONV-TTL-RS485 FPGA.
#
# references:
# [1] CONV-TTL-RS485 schematics from latest version of project at:
# https://edms.cern.ch/nav/EDA-02541
#
#==============================================================================
# GNU LESSER GENERAL PUBLIC LICENSE
#==============================================================================
# This source file is free software; you can redistribute it and/or modify it
# under the terms of the GNU Lesser General Public License as published by the
# Free Software Foundation; either version 2.1 of the License, or (at your
# option) any later version. This source is distributed in the hope that it
# will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
# See the GNU Lesser General Public License for more details. You should have
# received a copy of the GNU Lesser General Public License along with this
# source; if not, download it from http://www.gnu.org/licenses/lgpl-2.1.html
#==============================================================================
# last changes:
# 2014-07-24 Theodor Stana t.stana@cern.ch File created
#==============================================================================
# TODO: -
#==============================================================================
#=============================================================================
# CLOCKS
#=============================================================================
NET "clk_20_i" LOC = E16;
NET "clk_20_i" TNM_NET = "clk_20";
TIMESPEC TSCLK20 = PERIOD "clk_20" 20 MHz HIGH 50 %;
NET "clk_125_p_i" LOC = H12;
NET "clk_125_n_i" LOC = G11;
NET "clk_125_p_i" TNM_NET = "clk_125";
TIMESPEC TSCLK125 = PERIOD "clk_125" 125 MHz HIGH 50 %;
#==============================================================================
# FRONT PANEL
#==============================================================================
#-----------------------------------------------------------------------------
# TTL I/O
#-----------------------------------------------------------------------------
NET "ttl_n_i[0]" LOC = T3;
NET "ttl_n_i[0]" IOSTANDARD = LVCMOS33;
NET "ttl_n_i[1]" LOC = U4;
NET "ttl_n_i[1]" IOSTANDARD = LVCMOS33;
NET "ttl_n_i[2]" LOC = W3;
NET "ttl_n_i[2]" IOSTANDARD = LVCMOS33;
NET "ttl_n_i[3]" LOC = W4;
NET "ttl_n_i[3]" IOSTANDARD = LVCMOS33;
NET "ttl_n_i[4]" LOC = V3;
NET "ttl_n_i[4]" IOSTANDARD = LVCMOS33;
NET "ttl_n_i[5]" LOC = U3;
NET "ttl_n_i[5]" IOSTANDARD = LVCMOS33;
NET "ttl_o[0]" LOC = D1;
NET "ttl_o[0]" IOSTANDARD = LVCMOS33;
NET "ttl_o[1]" LOC = E1;
NET "ttl_o[1]" IOSTANDARD = LVCMOS33;
NET "ttl_o[2]" LOC = F2;
NET "ttl_o[2]" IOSTANDARD = LVCMOS33;
NET "ttl_o[3]" LOC = F1;
NET "ttl_o[3]" IOSTANDARD = LVCMOS33;
NET "ttl_o[4]" LOC = G1;
NET "ttl_o[4]" IOSTANDARD = LVCMOS33;
NET "ttl_o[5]" LOC = H2;
NET "ttl_o[5]" IOSTANDARD = LVCMOS33;
#-----------------------------------------------------------------------------
# INV-TTL I/O
#-----------------------------------------------------------------------------
NET "inv_n_i[0]" LOC = Y1;
NET "inv_n_i[0]" IOSTANDARD = LVCMOS33;
NET "inv_n_i[1]" LOC = Y2;
NET "inv_n_i[1]" IOSTANDARD = LVCMOS33;
NET "inv_n_i[2]" LOC = AA1;
NET "inv_n_i[2]" IOSTANDARD = LVCMOS33;
NET "inv_n_i[3]" LOC = AA2;
NET "inv_n_i[3]" IOSTANDARD = LVCMOS33;
NET "inv_o[0]" LOC = H1;
NET "inv_o[0]" IOSTANDARD = LVCMOS33;
NET "inv_o[1]" LOC = J1;
NET "inv_o[1]" IOSTANDARD = LVCMOS33;
NET "inv_o[2]" LOC = K2;
NET "inv_o[2]" IOSTANDARD = LVCMOS33;
NET "inv_o[3]" LOC = K1;
NET "inv_o[3]" IOSTANDARD = LVCMOS33;
#------------------------------------------------------------------------------
# Channel LEDs
#------------------------------------------------------------------------------
NET "led_front_n_o[0]" LOC = H3;
NET "led_front_n_o[0]" IOSTANDARD = LVCMOS33;
NET "led_front_n_o[1]" LOC = J4;
NET "led_front_n_o[1]" IOSTANDARD = LVCMOS33;
NET "led_front_n_o[2]" LOC = J3;
NET "led_front_n_o[2]" IOSTANDARD = LVCMOS33;
NET "led_front_n_o[3]" LOC = K3;
NET "led_front_n_o[3]" IOSTANDARD = LVCMOS33;
NET "led_front_n_o[4]" LOC = L4;
NET "led_front_n_o[4]" IOSTANDARD = LVCMOS33;
NET "led_front_n_o[5]" LOC = L3;
NET "led_front_n_o[5]" IOSTANDARD = LVCMOS33;
NET "led_front_inv_n_o[0]" LOC = AA4;
NET "led_front_inv_n_o[0]" IOSTANDARD = LVCMOS33;
NET "led_front_inv_n_o[1]" LOC = AB4;
NET "led_front_inv_n_o[1]" IOSTANDARD = LVCMOS33;
NET "led_front_inv_n_o[2]" LOC = AB5;
NET "led_front_inv_n_o[2]" IOSTANDARD = LVCMOS33;
NET "led_front_inv_n_o[3]" LOC = Y5;
NET "led_front_inv_n_o[3]" IOSTANDARD = LVCMOS33;
#------------------------------------------------------------------------------
# Status LEDs
#------------------------------------------------------------------------------
NET "led_ctrl0_o" LOC = M5;
NET "led_ctrl0_o" IOSTANDARD = LVCMOS33;
NET "led_ctrl0_oen_o" LOC = M4;
NET "led_ctrl0_oen_o" IOSTANDARD = LVCMOS33;
NET "led_ctrl1_o" LOC = K6;
NET "led_ctrl1_o" IOSTANDARD = LVCMOS33;
NET "led_ctrl1_oen_o" LOC = K5;
NET "led_ctrl1_oen_o" IOSTANDARD = LVCMOS33;
NET "led_gp_2_4_o" LOC = F9;
NET "led_gp_2_4_o" IOSTANDARD = LVCMOS33;
NET "led_gp_1_3_o" LOC = F10;
NET "led_gp_1_3_o" IOSTANDARD = LVCMOS33;
NET "led_oterm_wr_o" LOC = E5;
NET "led_oterm_wr_o" IOSTANDARD = LVCMOS33;
NET "led_iterm_syserror_o" LOC = F7;
NET "led_iterm_syserror_o" IOSTANDARD = LVCMOS33;
NET "led_gf_syspw_o" LOC = F8;
NET "led_gf_syspw_o" IOSTANDARD = LVCMOS33;
NET "led_ttl_i2c_o" LOC = E6;
NET "led_ttl_i2c_o" IOSTANDARD = LVCMOS33;
#------------------------------------------------------------------------------
# PCB version pins
#------------------------------------------------------------------------------
NET "pcbrev_i[0]" LOC = A3;
NET "pcbrev_i[0]" IOSTANDARD = LVCMOS33;
NET "pcbrev_i[1]" LOC = A4;
NET "pcbrev_i[1]" IOSTANDARD = LVCMOS33;
NET "pcbrev_i[2]" LOC = R4;
NET "pcbrev_i[2]" IOSTANDARD = LVCMOS33;
NET "pcbrev_i[3]" LOC = P4;
NET "pcbrev_i[3]" IOSTANDARD = LVCMOS33;
NET "pcbrev_i[4]" LOC = V5;
NET "pcbrev_i[4]" IOSTANDARD = LVCMOS33;
NET "pcbrev_i[5]" LOC = Y3;
NET "pcbrev_i[5]" IOSTANDARD = LVCMOS33;
#=============================================================================
# Rear panel signals
#=============================================================================
#-----------------------------------------------------------------------------
# RS-485 I/O (fs = failsafe)
#-----------------------------------------------------------------------------
NET "rs485_n_i[0]" LOC = Y12;
NET "rs485_n_i[0]" IOSTANDARD = LVCMOS33;
NET "rs485_n_i[1]" LOC = AB12;
NET "rs485_n_i[1]" IOSTANDARD = LVCMOS33;
NET "rs485_n_i[2]" LOC = AB11;
NET "rs485_n_i[2]" IOSTANDARD = LVCMOS33;
NET "rs485_n_i[3]" LOC = AB10;
NET "rs485_n_i[3]" IOSTANDARD = LVCMOS33;
NET "rs485_n_i[4]" LOC = AB9;
NET "rs485_n_i[4]" IOSTANDARD = LVCMOS33;
NET "rs485_n_i[5]" LOC = AA8;
NET "rs485_n_i[5]" IOSTANDARD = LVCMOS33;
NET "rs485_o[0]" LOC = W18;
NET "rs485_o[0]" IOSTANDARD = LVCMOS33;
NET "rs485_o[1]" LOC = Y18;
NET "rs485_o[1]" IOSTANDARD = LVCMOS33;
NET "rs485_o[2]" LOC = W17;
NET "rs485_o[2]" IOSTANDARD = LVCMOS33;
NET "rs485_o[3]" LOC = Y17;
NET "rs485_o[3]" IOSTANDARD = LVCMOS33;
NET "rs485_o[4]" LOC = Y16;
NET "rs485_o[4]" IOSTANDARD = LVCMOS33;
NET "rs485_o[5]" LOC = Y15;
NET "rs485_o[5]" IOSTANDARD = LVCMOS33;
NET "rs485_fs_n_i[0]" LOC = AA12;
NET "rs485_fs_n_i[0]" IOSTANDARD = LVCMOS33;
NET "rs485_fs_n_i[1]" LOC = Y11;
NET "rs485_fs_n_i[1]" IOSTANDARD = LVCMOS33;
NET "rs485_fs_n_i[2]" LOC = Y10;
NET "rs485_fs_n_i[2]" IOSTANDARD = LVCMOS33;
NET "rs485_fs_n_i[3]" LOC = AA10;
NET "rs485_fs_n_i[3]" IOSTANDARD = LVCMOS33;
NET "rs485_fs_n_i[4]" LOC = AB8;
NET "rs485_fs_n_i[4]" IOSTANDARD = LVCMOS33;
NET "rs485_fs_n_i[5]" LOC = AB7;
NET "rs485_fs_n_i[5]" IOSTANDARD = LVCMOS33;
#------------------------------------------------------------------------------
# Input and output termination enable lines
#------------------------------------------------------------------------------
NET "iterm_en_o[0]" LOC = W14;
NET "iterm_en_o[0]" IOSTANDARD = LVCMOS33;
NET "iterm_en_o[1]" LOC = W13;
NET "iterm_en_o[1]" IOSTANDARD = LVCMOS33;
NET "iterm_en_o[2]" LOC = W12;
NET "iterm_en_o[2]" IOSTANDARD = LVCMOS33;
NET "iterm_en_o[3]" LOC = W11;
NET "iterm_en_o[3]" IOSTANDARD = LVCMOS33;
NET "iterm_en_o[4]" LOC = W10;
NET "iterm_en_o[4]" IOSTANDARD = LVCMOS33;
NET "iterm_en_o[5]" LOC = W9;
NET "iterm_en_o[5]" IOSTANDARD = LVCMOS33;
NET "oterm_en_o[0]" LOC = T22;
NET "oterm_en_o[0]" IOSTANDARD = LVCMOS33;
NET "oterm_en_o[1]" LOC = T21;
NET "oterm_en_o[1]" IOSTANDARD = LVCMOS33;
NET "oterm_en_o[2]" LOC = T20;
NET "oterm_en_o[2]" IOSTANDARD = LVCMOS33;
NET "oterm_en_o[3]" LOC = U20;
NET "oterm_en_o[3]" IOSTANDARD = LVCMOS33;
NET "oterm_en_o[4]" LOC = V20;
NET "oterm_en_o[4]" IOSTANDARD = LVCMOS33;
NET "oterm_en_o[5]" LOC = W20;
NET "oterm_en_o[5]" IOSTANDARD = LVCMOS33;
#------------------------------------------------------------------------------
# Channel LEDs
#------------------------------------------------------------------------------
NET "led_rear_n_o[0]" LOC = AB17;
NET "led_rear_n_o[0]" IOSTANDARD = LVCMOS33;
NET "led_rear_n_o[1]" LOC = AB19;
NET "led_rear_n_o[1]" IOSTANDARD = LVCMOS33;
NET "led_rear_n_o[2]" LOC = AA16;
NET "led_rear_n_o[2]" IOSTANDARD = LVCMOS33;
NET "led_rear_n_o[3]" LOC = AA18;
NET "led_rear_n_o[3]" IOSTANDARD = LVCMOS33;
NET "led_rear_n_o[4]" LOC = AB16;
NET "led_rear_n_o[4]" IOSTANDARD = LVCMOS33;
NET "led_rear_n_o[5]" LOC = AB18;
NET "led_rear_n_o[5]" IOSTANDARD = LVCMOS33;
#=============================================================================
# Channel enable signals
#=============================================================================
NET "global_oen_o" LOC = N3;
NET "global_oen_o" IOSTANDARD = LVCMOS33;
NET "ttl_oen_o" LOC = M3;
NET "ttl_oen_o" IOSTANDARD = LVCMOS33;
NET "inv_oen_o" LOC = N4;
NET "inv_oen_o" IOSTANDARD = LVCMOS33;
NET "rs485_oen_o" LOC = AB6;
NET "rs485_oen_o" IOSTANDARD = LVCMOS33;
#=============================================================================
# VME CONNECTOR SIGNALS
#=============================================================================
#-----------------------------------------------------------------------------
# I2C lines
#-----------------------------------------------------------------------------
NET "scl_i" LOC = F19;
NET "scl_i" IOSTANDARD = LVCMOS33;
NET "scl_o" LOC = E20;
NET "scl_o" IOSTANDARD = LVCMOS33;
NET "scl_o" DRIVE = 4;
NET "scl_en_o" LOC = H18;
NET "scl_en_o" IOSTANDARD = LVCMOS33;
NET "scl_en_o" DRIVE = 4;
NET "sda_i" LOC = G20;
NET "sda_i" IOSTANDARD = LVCMOS33;
NET "sda_o" LOC = F20;
NET "sda_o" IOSTANDARD = LVCMOS33;
NET "sda_o" SLEW = FAST;
NET "sda_o" DRIVE = 4;
NET "sda_en_o" LOC = J19;
NET "sda_en_o" IOSTANDARD = LVCMOS33;
NET "sda_en_o" SLEW = FAST;
NET "sda_en_o" DRIVE = 4;
#-----------------------------------------------------------------------------
# System reset line
#-----------------------------------------------------------------------------
NET "vme_sysreset_n_i" LOC = L20;
NET "vme_sysreset_n_i" IOSTANDARD = LVCMOS33;
#-----------------------------------------------------------------------------
# Geographical addressing lines
#-----------------------------------------------------------------------------
NET "vme_gap_i" LOC = H19;
NET "vme_gap_i" IOSTANDARD = LVCMOS33;
NET "vme_ga_i[0]" LOC = H20;
NET "vme_ga_i[0]" IOSTANDARD = LVCMOS33;
NET "vme_ga_i[1]" LOC = J20;
NET "vme_ga_i[1]" IOSTANDARD = LVCMOS33;
NET "vme_ga_i[2]" LOC = K19;
NET "vme_ga_i[2]" IOSTANDARD = LVCMOS33;
NET "vme_ga_i[3]" LOC = K20;
NET "vme_ga_i[3]" IOSTANDARD = LVCMOS33;
NET "vme_ga_i[4]" LOC = L19;
NET "vme_ga_i[4]" IOSTANDARD = LVCMOS33;
#=============================================================================
# WHITE RABBIT
#=============================================================================
#-----------------------------------------------------------------------------
# DAC control
#-----------------------------------------------------------------------------
NET "dac20_sclk_o" LOC = Y13;
NET "dac20_sclk_o" IOSTANDARD = LVCMOS33;
NET "dac20_din_o" LOC = AB13;
NET "dac20_din_o" IOSTANDARD = LVCMOS33;
NET "dac20_sync_n_o" LOC = AB14;
NET "dac20_sync_n_o" IOSTANDARD = LVCMOS33;
NET "dac125_sclk_o" LOC = AA14;
NET "dac125_sclk_o" IOSTANDARD = LVCMOS33;
NET "dac125_din_o" LOC = Y14;
NET "dac125_din_o" IOSTANDARD = LVCMOS33;
NET "dac125_sync_n_o" LOC = AB15;
NET "dac125_sync_n_o" IOSTANDARD = LVCMOS33;
#-----------------------------------------------------------------------------
# SFP connection
#-----------------------------------------------------------------------------
NET "sfp_los_i" LOC = G3;
NET "sfp_los_i" IOSTANDARD = LVCMOS33;
NET "sfp_present_i" LOC = G4;
NET "sfp_present_i" IOSTANDARD = LVCMOS33;
NET "sfp_rate_select_o" LOC = C4;
NET "sfp_rate_select_o" IOSTANDARD = LVCMOS33;
NET "sfp_scl_b" LOC = F3;
NET "sfp_scl_b" IOSTANDARD = LVCMOS33;
NET "sfp_sda_b" LOC = E3;
NET "sfp_sda_b" IOSTANDARD = LVCMOS33;
NET "sfp_tx_disable_o" LOC = E4;
NET "sfp_tx_disable_o" IOSTANDARD = LVCMOS33;
NET "sfp_tx_fault_i" LOC = D2;
NET "sfp_tx_fault_i" IOSTANDARD = LVCMOS33;
#=============================================================================
# OTHER SIGNALS
#=============================================================================
#-----------------------------------------------------------------------------
# One-wire thermometer data signal
#-----------------------------------------------------------------------------
NET "thermometer_b" LOC = B1;
NET "thermometer_b" IOSTANDARD = LVCMOS33;
#-----------------------------------------------------------------------------
# General-purpose switches
#-----------------------------------------------------------------------------
NET "sw_gp_n_i[0]" LOC = F22;
NET "sw_gp_n_i[0]" IOSTANDARD = LVCMOS33;
NET "sw_gp_n_i[1]" LOC = G22;
NET "sw_gp_n_i[1]" IOSTANDARD = LVCMOS33;
NET "sw_gp_n_i[2]" LOC = H21;
NET "sw_gp_n_i[2]" IOSTANDARD = LVCMOS33;
NET "sw_gp_n_i[3]" LOC = H22;
NET "sw_gp_n_i[3]" IOSTANDARD = LVCMOS33;
NET "sw_gp_n_i[4]" LOC = J22;
NET "sw_gp_n_i[4]" IOSTANDARD = LVCMOS33;
NET "sw_gp_n_i[5]" LOC = K21;
NET "sw_gp_n_i[5]" IOSTANDARD = LVCMOS33;
NET "sw_gp_n_i[6]" LOC = K22;
NET "sw_gp_n_i[6]" IOSTANDARD = LVCMOS33;
NET "sw_gp_n_i[7]" LOC = L22;
NET "sw_gp_n_i[7]" IOSTANDARD = LVCMOS33;
#-----------------------------------------------------------------------------
# Multicast switches
#-----------------------------------------------------------------------------
NET "sw_multicast_n_i[0]" LOC = D21;
NET "sw_multicast_n_i[0]" IOSTANDARD = LVCMOS33;
NET "sw_multicast_n_i[1]" LOC = C22;
NET "sw_multicast_n_i[1]" IOSTANDARD = LVCMOS33;
NET "sw_multicast_n_i[2]" LOC = B22;
NET "sw_multicast_n_i[2]" IOSTANDARD = LVCMOS33;
NET "sw_multicast_n_i[3]" LOC = B21;
NET "sw_multicast_n_i[3]" IOSTANDARD = LVCMOS33;
#-----------------------------------------------------------------------------
# RTM detection lines
#-----------------------------------------------------------------------------
NET "rtmm_i[0]" LOC = V21;
NET "rtmm_i[0]" IOSTANDARD = LVCMOS33;
NET "rtmm_i[1]" LOC = V22;
NET "rtmm_i[1]" IOSTANDARD = LVCMOS33;
NET "rtmm_i[2]" LOC = U22;
NET "rtmm_i[2]" IOSTANDARD = LVCMOS33;
NET "rtmp_i[0]" LOC = W22;
NET "rtmp_i[0]" IOSTANDARD = LVCMOS33;
NET "rtmp_i[1]" LOC = Y22;
NET "rtmp_i[1]" IOSTANDARD = LVCMOS33;
NET "rtmp_i[2]" LOC = Y21;
NET "rtmp_i[2]" IOSTANDARD = LVCMOS33;
#-----------------------------------------------------------------------------
# Flash memory
#-----------------------------------------------------------------------------
NET "flash_sclk_o" LOC = Y20;
NET "flash_sclk_o" IOSTANDARD = LVCMOS33;
NET "flash_cs_n_o" LOC = AA3;
NET "flash_cs_n_o" IOSTANDARD = LVCMOS33;
NET "flash_miso_i" LOC = AA20;
NET "flash_miso_i" IOSTANDARD = LVCMOS33;
NET "flash_mosi_o" LOC = AB20;
NET "flash_mosi_o" IOSTANDARD = LVCMOS33;
...@@ -162,7 +162,7 @@ architecture arch of conv_ttl_rs485 is ...@@ -162,7 +162,7 @@ architecture arch of conv_ttl_rs485 is
constant c_BOARD_ID : std_logic_vector(31 downto 0) := x"54343835"; constant c_BOARD_ID : std_logic_vector(31 downto 0) := x"54343835";
-- Gateware version -- Gateware version
constant c_GWVERS : std_logic_vector(7 downto 0) := x"20"; constant c_GWVERS : std_logic_vector(7 downto 0) := x"01";
--============================================================================ --============================================================================
-- Type declarations -- Type declarations
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment