Template Revision 1.8 - on construction

Design Name always "TE Series Name" + optional CPLD Name + "CPLD"


<!-- tables have all same width (web max 1200px and pdf full page(640px), flexible width or fix width on menu for single column can be used as before) -->
<style>
.wrapped{
  width: 100% !important;
  max-width: 1200px !important;
 }
</style>


Online version of this manual and other related documents can be found at https://wiki.trenz-electronic.de/display/PD/SC-CPLD-Firmware


Table of contents

Overview

Firmware for system controller with designator U41: 10M08SAU169C8G

Feature Summary

Firmware Revision and supported PCB Revision

See Document Change History

Product Specification

Port Description

Name / opt. VHD NameDirectionPinBank PowerDescription
BOOTSEL2 / BOOTSEL2outL10+3.3VBoot Select Bit 2
JTAGSEL0 / JTAGSEL0inF9+3.3V_MAX10Select JTAG Connection
JTAGSEL1 / JTAGSEL1inE9+3.3V_MAX10Select JTAG Connection
FTDI_JTAG_TC/SK / FTDI_TCKinG2+3.3V_MAX10FTDI JTAG TCK
FTDI_JTAG_TDO/DI / FTDI_TDIinF6+3.3V_MAX10FTDI JTAG TDI
FTDI_JTAG_TMS/CS / FTDI_TMSinG1+3.3V_MAX10FTDI JTAG TCK
HPS_TDO / HPS_TDOinJ6+3.3VHPS JTAG TDO
FPGA_TDI / FPGA_TDOinJ1+3.3VFPGA JTAG TDO
FMC_TDO / FMC_TDOinM10+3.3VFMC JTAG TDO
FTDI_JTAG_TDI/DO / FTDI_TDOoutF5+3.3V_MAX10

FTDI JTAG TDO

HPS_TCK / HPS_TCKoutK1+3.3VHPS JTAG TCK
HPS_TDI / HPS_TDIoutM4+3.3VHPS JTAG TDI
HPS_TMS / HPS_TMSoutM7+3.3VHPS JTAG TMS
FPGA_TCK / FPGA_TCKoutK2+3.3VHPS JTAG TCK
FPGA_TDO / FPGA_TDIoutL2+3.3VFPGA JTAG TDI
FPGA_TMS / FPGA_TMSoutJ2+3.3VFPGA JTAG TMS
FMC_TCK/ FMC_TCKoutM8+3.3VFMC JTAG TCK
FMC_TDI / FMC_TDIoutM9+3.3VFMC JTAG TDI
FMC_TMS / FMC_TMSoutM11+3.3VFMC JTAG TMS
HPS_RST#_SW / HPS_RSTn_SWinJ5+3.3VReset Button
HPS_RST#_BO / HPS_RSTn_BOinK6+3.3VBrown Out Detection
HPS_WARM_RST#_SW / HPS_WARM_RSTn_SWinK5+3.3VWarm Reset Button
FPGA_RST#_SW / FPGA_RSTn_SWinB4+3.3V_MAX10FPGA Reset Button
HPS_RST# / HPS_RSTnoutL11+3.3VHPS Reset
HPS_WARM_RST# / HPS_WARM_RSTnoutM3+3.3VHPS Warm Reset
FPGA_RST# / FPGA_RSTnoutL13VDD_DDR_FPGAFPGA Reset
VID0_SW / VID0_SWinF8+3.3V_MAX10Power Selection Pin 0 for FMC Voltage
VID1_SW / VID1_SWinE8+3.3V_MAX10Power Selection Pin 1 for FMC Voltage
VID2_SW / VID2_SWinD8+3.3V_MAX10Power Selection Pin 2 for FMC Voltage
CPU_GPIO_0 / CPU_GPIO0inN10+3.3VCPU GPIO 0 (used for automatic power selection for FMC Voltage)
CPU_GPIO_1 / CPU_GPIO1inN9+3.3VCPU GPIO 1 (used for automatic power selection for FMC Voltage)
CPU_GPIO_2 / CPU_GPIO2inN11+3.3VCPU GPIO 2 (used for automatic power selection for FMC Voltage)
VID0 / VID0outB2+3.3V_MAX10Power Selection Pin 0 for FMC Voltage at U43
VID1 / VID1outC2+3.3V_MAX10Power Selection Pin 1 for FMC Voltage at U43
VID2 / VID2outF4+3.3V_MAX10Power Selection Pin 2 for FMC Voltage at U43
PWR_SEL / PWR_SELoutE4+3.3V_MAX10Power Selection for Cyclone V FMC VCCPD at U37
USER_BTN_SW / USER_BTN_SWinB3+3.3V_MAX10User Button
USER_BTN_FPGA / USER_BTN_FPGAoutG12VDD_DDR_FPGAFPGA User Button
BDBUS0 / FTDI_RXDinD1+3.3V_MAX10FTDI UART RXD
FPGA_GPIO_1 / FPGA_IO1inJ10VDD_DDR_FPGAFPGA IO 1
FPGA_GPIO_0 / FPGA_IO0outK11VDD_DDR_FPGAFPGA IO 0
BDBUS1 / FTDI_TXDoutC1+3.3V_MAX10FTDI UART TXD
CPU_GPIO_4 / CPU_GPIO4inH4+3.3VCPU GPIO 4 (used for fan control)
FAN_EN / FAN_ENoutD13+3.3V_MAX10Fan Control
MODE_VCC / MODE_DCDC_VCCoutD9+3.3V_MAX10VCC DCDC Mode Selection
MODE / MODE_DCDC_5VoutA11+3.3V_MAX10+5.0 V DCDC Mode Selection
MODE_DDR_FPGA / MODE_DCDC_FPGAoutE10+3.3V_MAX10FPGA DDR Power DCDC Mode Selection
MODE_DDR_HPS / MODE_DCDC_HPSoutF10+3.3V_MAX10HPS DDR Power DCDC Mode Selection
PG_+5.0V / PG_5V0inA8+3.3V_MAX10+5.0 V Power Good
PG_VCC / PG_VCCinB11+3.3V_MAX10VCC Power Good
PG_+2.5V / PG_2V5inC11+3.3V_MAX10+2.5 V Power Good
PG_+1.8V / PG_1V8inD11+3.3V_MAX10+1.8 V Power Good
PG_+3.3V / PG_3V3inB12+3.3V_MAX10+3.3 V Power Good
EN_VCC / EN_VCCoutA10+3.3V_MAX10VCC Power Enable
EN_+2.5V / EN_2V5outA12+3.3V_MAX10+2.5 V Power Enable
EN_+1.8V / EN_1V8outD12+3.3V_MAX10+1.8 V Power Enable
LED_VCC / LED_VCCoutF12+3.3V_MAX10VCC Power Led
EN_+3.3V / EN_3V3outB13+3.3V_MAX10+3.3 V Power Enable
EN_+0.9V / EN_0V9outF1+3.3V_MAX10+0.9 V Power Enable
LED_+1.8 V / LED_1V8outH2+3.3V_MAX10+1.8 V Power Led
EN_DDR_HPS / EN_DDR_HPSoutF13+3.3V_MAX10HPS DDR Power Enable
EN_DDR_FPGA / EN_DDR_FPGAoutE13+3.3V_MAX10FPGA DDR Power Enable
CPU_GPIO_3 / CPU_GPIO3inL1+3.3VCPU GPIO 3 (used for FMC Power Enable)
FMC_PRSNT_M2C# / FMC_PRSNT_M2CninJ7+3.3VFMC Card Detection from FMC Connector
EN_FMC_+12.0V / EN_FMC_12VoutC12+3.3V_MAX10+12.0 V FMC Power Enable
EN_FMC / EN_FMCoutE1+3.3V_MAX10Power Enable for FMC Voltage at U43
PWR_SWT_EN / PWR_VCCPD_ENoutC10+3.3V_MAX10Power Enable for Cyclone V VCCPD Voltage
EN_FMC_+3.3V / EN_FMC_3V3outC13+3.3V_MAX10+3.3 V FMC Power Enable
FMC_PG_C2M / FMC_PG_C2MoutK7+3.3VFMC Power Good Signal to FMC Connector
POK_FMC / POK_FMCinE3+3.3V_MAX10Power Good for FMC Voltage at U43
PG_VDD_FPGA / PG_VDD_FPGAinE12+3.3V_MAX10FPGA VDD DDR Power Good
PG_VDD_HPS / PG_VDD_HPSinG10+3.3V_MAX10HPS VDD DDR Power Good
LED_FMC_VADJ / LED_FMC_VADJoutC9+3.3V_MAX10Power Good Led for FMC Voltage at U43
LED_VDD_DDR_FPGA / LED_VDD_DDR_FPGAoutE6+3.3V_MAX10FPGA DDR VDD Power Good Led
LED_VTT_DDR_FPGA / LED_VTT_DDR_FPGAoutD6+3.3V_MAX10FPGA DDR VTT Power Good Led
LED_VDD_DDR_HPS / LED_VDD_DDR_HPSoutH3+3.3V_MAX10HPS DDR VDD Power Good Led
LED_VTT_DDR_HPS / LED_VTT_DDR_HPSoutG4+3.3V_MAX10HPS DDR VTT Power Good Led
JTAGEN /inE5+3.3V_MAX10Select JTAG Connection
EN_+5.0V / EN_5V0outA7+3.3V_MAX10+5.0 V Power Enable
PG_VTT_FPGA / PG_VTT_FPGAinB10+3.3V_MAX10FPGA VTT DDR Power Good
PG_VTT_HPS / PG_VTT_HPSin/outB5+3.3V_MAX10HPS VTT DDR Power Good
STATUS /outH1+3.3V_MAX10/ currently_not_used
BDBUS2 /in/outB1+3.3V_MAX10/ currently_not_used
BCBUS2 /in/outA9+3.3V_MAX10/ currently_not_used
DEVCLRn /inB9+3.3V_MAX10/ currently_not_used
BDBUS7 /in/outA6+3.3V_MAX10/ currently_not_used
BCBUS1 /in/outB6+3.3V_MAX10/ currently_not_used
BDBUS5 /in/outA4+3.3V_MAX10/ currently_not_used
BDBUS4 /in/outA3+3.3V_MAX10/ currently_not_used
nSTATUS /in/outC4+3.3V_MAX10/ currently_not_used
CONF_DONE /in/outC5+3.3V_MAX10/ currently_not_used
BDBUS3 /in/outA2+3.3V_MAX10/ currently_not_used
BDBUS6 /in/outA5+3.3V_MAX10/ currently_not_used
CLK_MAX10 /inH6+3.3V/ currently_not_used
ETH_RST /outG5+3.3V/ currently_not_used
USB_RSToutH5+3.3V/ currently_not_used
USER_BTN_HPS /outM2+3.3V/ currently_not_used
nCONFIG_I /inM1+3.3V/ currently_not_used
MSEL1 /in/outN3+3.3V/ currently_not_used
MSEL2 /in/outN2+3.3V/ currently_not_used
USB_HUB_RST /outL3+3.3V/ currently_not_used
FPGA_GPIO_9 /in/outK10VDD_DDR_FPGA/ currently_not_used
FPGA_GPIO_3 /in/outL12VDD_DDR_FPGA/ currently_not_used
FPGA_GPIO_2 /in/outK12VDD_DDR_FPGA/ currently_not_used
FPGA_GPIO_11 /in/outJ12VDD_DDR_FPGA/ currently_not_used
FPGA_GPIO_8 /in/outJ9VDD_DDR_FPGA/ currently_not_used
FPGA_GPIO_12 /in/outH10VDD_DDR_FPGA/ currently_not_used
FPGA_GPIO_10 /in/outJ13VDD_DDR_FPGA/ currently_not_used
FPGA_GPIO_5 /in/outH13VDD_DDR_FPGA/ currently_not_used
FPGA_GPIO_7 /in/outH9VDD_DDR_FPGA/ currently_not_used
FPGA_GPIO_6 /in/outH8VDD_DDR_FPGA/ currently_not_used
FPGA_GPIO_4 /in/outG13VDD_DDR_FPGA/ currently_not_used
nSTATUS_I /inL4+3.3V/ currently_not_used
CONF_DONE_I /inL5+3.3V/ currently_not_used
HPS_TRST# /outM5+3.3V/ currently_not_used
MSEL0 /outN5+3.3V/ currently_not_used
MSEL3 /outN4+3.3V/ currently_not_used
MSEL4 /outN6+3.3V/ currently_not_used
CLKSEL0 /outN8+3.3V/ currently_not_used
CLKSEL1 /outN7+3.3V/ currently_not_used
FMC_TRST# /outM12+3.3V/ currently_not_used
FMC_SDA /in/outM13+3.3V/ currently_not_used
HPS_SPI_SS/BOOTSEL0in/outK8+3.3V/ currently_not_used
QSPI_CS/BOOTSEL1in/outJ8+3.3V/ currently_not_used
FMC_SCL /in/outN12+3.3V/ currently_not_used

Functional Description

DCDC Mode Control

The mode signals are connected to "1".

SignalStateDescription

MODE_DCDC_VCC,

MODE_DCDC_5V

1

Forced Continous Mode
0Discontinous Mode

MODE_DCDC_FPGA,

MODE_DCDC_HPS

1Pulse-Skipping Mode for VDD
0Forced Continous Mode for VDD

Fan Control

Can be enabled/disabled through the Intel Cyclone V HPS "CPU_GPIO4".

FMC Voltage Control

The power is enabled if signal "CPU_GPIO3" is set to "1" and there is an FMC card. Then, the +12.0 V level is enabled. After that, the adjustable voltage is enabled. Finally, the +3.3 V level is enabled. Then, the signal "FMC_PG_C2M" is asserted.

JTAG Control

The FTDI JTAG is connected to the Intel MAX10, the Intel Cyclone V HPS and Fabric and to the FMC Connector according to the following table.

JTAG_SEL0JTAG_SEL1JTAGENJTAG Connection
XX1 - (ON)Intel MAX10
0 - (ON)0 - (ON)0 - (OFF)Cyclone V HPS
0 - (ON)1 - (OFF)0 - (OFF)Cyclone V FPGA
1 - (OFF)0 - (ON)0 - (OFF)FMC

LED Control

The leds signals their power good status.

UART

The second channel of the JTAG FTDI interface delievers an UART connection to the Intel Cyclone V fabric.

User Button

The User Button is connected to the FPGA.

Power Management

The power sequencing is handled inside the system controller according to the next figure.





The FMC power sequencing depends on the assertion through the signals "CPU_GPIO3" and "FMC_PRSNT_M2Cn". If both of them are asserted, the +12.0 V level starts, followed by the adjustabel voltage level with the according pre-driver voltage and finally, the +3.3 V level is started.




The FMC adjustable voltage selection can be done manually by the switches or automatically by the Intel Cyclone V HPS. The choice is done via the switches according to the next table. The voltage for the Intel Cyclone V HPS pre-driver is selected according to the voltage setting.

S8-CS8-BS8-AVoltageSetting
ONONON3.3 VManual
ONONOFF2.5 VManual
ONOFFON1.8 VManual
ONOFFOFF1.5 VManual
OFFONON1.25 VManual
OFFONOFF1.2 VManual
OFFOFFON0.8 VManual
OFFOFFOFFCPU-dependentCPU

Reset Management

The reset buttons are connected via the system controller to the according reset locations. That means that, if the reset button S1 or the brown-out detection is asserted, the Cyclone V should be reseted. If the warm reset button S3 is asserted, the Cyclone V should be warm reseted. If the FPGA reset button S4 is asserted, the FPGA could be reseted.

Appx. A: Change History and Legal Notices

Revision Changes

CPLD REV01 to REV02

Document Change History

To get content of older revision  got to "Change History"  of this page and select older document revision number.

  • Note this list must be only updated, if the document is online on public doc!
  • It's semi automatically, so do following
    • Add new row below first

    • Copy "Page Information Macro(date)" Macro-Preview, Metadata Version number, Author Name and description to the empty row. Important Revision number must be the same as the Wiki document revision number Update Metadata = "Page Information Macro (current-version)" Preview+1 and add Author and change description. --> this point is will be deleted on newer pdf export template

    • Metadata is only used of compatibility of older exports


DateDocument RevisionCPLD Firmware RevisionSupported PCB RevisionAuthorsDescription




Work in progress
2020-02-19REV02REV02


Initial release

All


Legal Notices