Expansion Connector
Opal Kelly Pins is an interactive online reference for the expansion connectors on all Opal Kelly FPGA integration modules. It provides additional information on pin capabilities, pin characteristics, and PCB routing.
Pins can also generate constraint files (XDC) and help you map your HDL net names to FPGA pin locations automatically.
The Pins reference for the XEM7350 may be found at the link to the right.
FMC Expansion Connector
FMC (FPGA Mezzanine Connector) is the common name for the VITA 57 specification which describes a common connector design to interface large pin-counts to devices with configurable I/O such as an FPGA. The specification is available for purchase through the VITA website:
The XEM7350 specifically supports the HPC (high pin-count) version of the specification (Note: the -K70T does not have a fully-populated HPC connector). For details on supported FMC features, please see the FMC Feature Support section. FMC connectors are manufactured by Samtec. The FMC connector on the XEM7350 is the Samtec ASP-134486-01. The mating connector which would appear on an FMC peripheral is the Samtec ASP-134488-01. These are both surface-mount pin-field-array style connectors. The connectors ship with a solder plug on each connector which melts during reflow to the solder paste spread on the bare board for assembly. Connector contact is solid and insertion and removal forces are relatively small. High frequency performance is up to 9.5 GHz in single-ended operation and to 10.5 GHz in differential operation.
FMC-HPC
A single FMC-HPC (high pin count) connector provides direct access to I/O pins and Gigabit transceiver on the FPGA. The tables below illustrate the number of pins that are available on an FMC-HPC connector and the number that are routed to available sites on the FPGA.
GROUP | I/O VOLTAGE | Bank | Bank Type | FMC-HPC I/O Count | -70T I/O Count | -160T/-410T I/O Count |
---|---|---|---|---|---|---|
LA | Vadj | 15 & 16 | HR | 68 (34 Pairs) | 68 of 68 | 68 of 68 |
HA | Vadj | 12 | HR | 48 (24 Pairs) | 0 of 48 | 24 of 48 |
HB | Vio | 32 | HP | 44 (22 Pairs) | 0 of 44 | 44 of 44 |
DP (GBT) | 115 & 116 | GTX | 10 Lane Pairs | 8 of 10 | 8 of 10 |
FMC Vadj I/O Voltage (LA and HA Groups)
FMC specifies a single adjustable voltage (Vadj) for the two LA groups and the one HA group. A high-efficiency switching regulator on the XEM7350 controls this voltage. See the Device Settings page for information on how to control this I/O voltage.
IPMI EEPROM
FMC / VITA 57.1 specifies that an I2C EEPROM shall be provided on the peripheral to store information about the peripheral module. The carrier (XEM7350) will read this information on boot and can set the Vadj settings above accordingly. Furthermore, this EEPROM shall be connected so that it recognizes the geographical address provided by the carrier for proper addressing of the EEPROM.
The implications of these requirements on your peripheral design are rather simple:
- Install an EEPROM on your board. We suggest using the Microchip 24LC64-I/SN or equivalent.
- Connect it according to the table below. Note the order of the EEPROM pin numbers and the geographical address as it is reversed from what you may expect.
FMC PIN | FUNCTION | EEPROM PIN |
---|---|---|
– | DGND | A2 |
C34 | GA0 | A1 |
D35 | GA1 | A0 |
C30 | SCL | SCL |
C31 | SDA | SDA |
Opal Kelly has provided an online tool to generate the contents of this EEPROM. Simply enter the details of your product into the online form to generate a binary file that can be stored on your EEPROM. The FrontPanel application can be used to program the generated binary file into the EEPROM.
FMC Vio I/O Voltage (HB Group)
I/O voltage for FMC HB group is connected to FMC_VIO_B_M2C which is a voltage provided by the mezzanine (peripheral) to the carrier (XEM7350). This group uses Bank 32 which is an HP bank that supports a 1.2V to 1.8V I/O voltage.
FMC 12P0V Supply Pins
The XEM7350 does not supply the +12 VDC to the FMC expansion connector. If this is required for the peripheral, you may provide +12VDC through TP3 on the XEM7350. If you do this, please confirm that R48 is not inserted. Per the power supply diagram, this resistor connects the 12P0V pins on the FMC connector (C35 and C37) to the +5VDC input. This is not typically desired. By default, R48 is not inserted at the factory.
Clock Pins
Clock pins are given special attribution within the FMC specification. Available clock pins are illustrated in the table below.
GROUP | I/O VOLTAGE | Bank | Bank Type | FMC-HPC Pairs | -70T Pairs | -160T/-410T Pairs |
---|---|---|---|---|---|---|
LA | Vadj | 15 & 16 | HR | 2 Clock Pairs | 2 of 2 | 2 of 2 |
HA | Vadj | 12 | HR | 1 Clock Pairs | 1 of 1 | 1 of 1 |
HB | Vio | 32 | HP | 1 Clock Pairs | 0 of 1 | 1 of 1 |
GBT | 115 & 116 | GTX | 2 Clock Pairs | 2 of 2 | 2 of 2 |
XADC (Optional)
The Xilinx Kintex-7 XADC feature is routed through two resistors to the FMC connector. In the factory configuration, these two resistors are not inserted. In the FMC specification, B24 and B25 locations are transceiver pin locations. These pins are otherwise not used on the XEM7350.
FPGA FUNCTION | FPGA PIN | FMC | RESISTOR REFDES |
---|---|---|---|
ADC_VN_0 | P11 | B24 | R75 |
ADC_VP_0 | N12 | B25 | R74 |
Considerations for Differential Signals
The XEM7350 PCB layout and routing has been designed with several applications in mind, including applications requiring the use of differential (LVDS) pairs. Please refer to the Xilinx Kintex-7 datasheet for details on using differential I/O standards with the Kintex-7 FPGA.
FPGA I/O Bank Voltages
In order to use differential I/O standards with the Kintex-7, you must set the appropriate I/O voltages for the bank type. FPGA bank connections for the different FMC groups are listed in the table above. A few common differential I/O standard voltages are listed here. For more information see AMD’s SelectIO Resources documentation.
Bank TYpe | LVDS Standard | I/O Voltage | XEM7350 Voltage Rail |
---|---|---|---|
HR | LVDS_25 | 2.5V | Vadj |
HP | LVDS | 1.8V | Vio |
See above for information on controlling the Vadj and Vio voltages.
Characteristic Impedance
The characteristic impedance of all routes from the FPGA to the expansion connector is approximately 50Ω.
Differential Pair Lengths
In many cases, it is desirable that the route lengths of a differential pair be matched within some specification. Care has been taken to route differential pairs on the FPGA to adjacent pins on the expansion connectors whenever possible. We have also included the lengths of the board routes for these connections in the Pins sheet to help you equalize lengths in your final application. Due to space constraints, some pairs are better matched than others.
Fan Power Supply
A small 2-pin connector (Molex 53398-0271) at JP1 provides power to an optional fan for FPGA cooling. This fan is under direct or temperature-proportional control of a digital fan controller. Please see the Device Settings section for details on controlling the fan.
PIN | SIGNAL |
---|---|
1 | GND |
2 | +5VDC |
Reference Voltage Pins (Vref)
The Xilinx Kintex-7 supports both internal and externally-applied input voltage thresholds for some input signal standards. The XEM7350 supports these Vref applications for banks 12, 15, 16, and 32. Please see the Xilinx Kintex 7 documentation for more details. In summary,
For banks 15 and 16, the four Vref pins are routed to the FMC connector pin VREF_A_M2C at location H1. Internal Vref may also be used.
For bank 12, internal Vref may be used. Vref pins are also available on the FMC connector pins HA18_N (J19) and HA22_N (J22) if external Vref is required. Doing so prevents the use of HA18_N and HA22_N for I/O.
For bank 32, internal Vref may be used. Vref pins are also available on the FMC connector pin VREF_B_M2C (K1). For external Vref you must install 0 Ω resistors (0402 dimension) at R105 and R106. Doing so prevents the use of HB01_N (J25) for I/O.
I/O State at Power On
Xilinx Kintex-7 FPGAs support a weak pull-up state on SelectIO pins after power-up and during configuration. This behavior is controlled by the PUDC_B pin.
The default PUDC_B configuration on the XEM7350 depends on the PCB revision.
- On PCB revisions FXX and later, the PUDC_B pin is pulled high by default to disable internal pull-up resistors at startup.
- On PCB revisions EXX and earlier, the PUDC_B pin is pulled low by default to enable internal pull-up resistors at startup.
To change the default behavior of your module, see the PUDC_B Configuration support page.