Custom_table_size_100 |
---|
Page properties | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| ||||||||||||||||
Design Name always "TE Series Name" + optional CPLD Name + "CPLD"
|
CPLD Device with designator U14: LCMX02-1200HC
See Document Change History
Name / opt. VHD Name | Direction | Pin | PullupPull up/ Downdown | Bank Power | Description | |||||
---|---|---|---|---|---|---|---|---|---|---|
ACBUS4 | out | 96 | UP | 3.3V | FTDI chip TXLED pin | |||||
ACBUS5 | in | 88 | UP | 3.3V | FTDI chip unused pin | |||||
ADBUS4 | out | 98 | NONE | 3.3V | FTDI chip DTR pin / This pin is connected to '0' in the firmware. | |||||
ADBUS7 | in | 97 | UP | 3.3V | FTDI chip RI pin | |||||
BDBUS0 | in | 87 | NONE | 3.3V | UART TXD from FTDI chip | |||||
BDBUS1 | out | 86 | NONE | 3.3V | UART RXD to FTDI chip | |||||
C_TCK | out | 81 | NONE | 3.3V | JTAG output to Module | |||||
C_TDI | out | 84 | DOWN | 3.3V | JTAG output to Module | |||||
C_TDO | in | 83 | DOWN | 3.3V | JTAG input from Module | |||||
C_TMS | out | 85 | UP | 3.3V | JTAG output to Module | |||||
M_TCK | in | 91 | UP | 3.3V | JTAG input from FTDI chip | |||||
M_TDI | in | 94 | UP | 3.3V | JTAG input from FTDI chip | |||||
M_TDO | out | 95 | UP | 3.3V | JTAG output to FTDI chip | |||||
M_TMS | in | 90 | UP | 3.3V | JTAG input from FTDI chip | |||||
CM0 | in | 99 | UP | 3.3V | DIP switch S3-B | |||||
CM1 | in | 1 | UP | 3.3V | DIP switch S3-A | |||||
CM2 | in | 51 | UP | 3.3V | REV06+ only: For PCB REV06 or newer → DIP Switch S4-D | |||||
EN_FMC | out | 31 | NONE | 3.3VVADJ | and 3V3V_FMC Power onEnable signal of the FMC module that is connected to the CPLD of the carrier board and the enable pin of the EN5335QI PowerSoC | |||||
EN1 | out | 24 | UP | 3.3V | Power enable pin for CPLD of the module | |||||
FMC_PRSNT | in | 28 | UP | 3.3V | FMC card present pin (. Low active → Zero if not present)the FMC card is present. | |||||
FMC_SCL | out | 10 | UP | 3.3V | FMC I2C clock signal | |||||
FMC_SDA | inout | 8 | UP | 3.3V | FMC I2C data signal | |||||
FMC_TCK | out | 4 | DOWN | 3.3V | FMC port JTAG signal | |||||
FMC_TDI | out | 12 | DOWN | 3.3V | FMC port JTAG signal | |||||
FMC_TDO | in | 9 | DOWN | 3.3V | FMC port JTAG signal | |||||
FMC_TMS | out | 7 | DOWN | 3.3V | FMC port JTAG signal | |||||
HDMI_SCL | inout | 47 | UP | 3.3V | HDMI chip I2C clock signal / used also for I2C FMC control currently_not_used | |||||
HDMIHDMI_SDA | inout | 45 | UP | 3.3V | HDMI chip I2C data signal / used also for I2C FMC control currently_not_used | |||||
HDMI_SPDIF | out | 15 | NONE | 3.3V | Audio input of HDMI chip / currently_not_used | |||||
HDMI_SPDIFOUT | in | 14 | NONE | 3.3V | Audio output of HDMI chip / currently_not_used | |||||
JTAGEN | -- | 82 | -- | -- | Enable JTAG access to carrier CPLD for Firmware update (zero: JTAG routed to module, one: CPLD access) Set DIP switch S3-C JTAGEN to ON for accessing to the FPGA of the module | |||||
MIO10 | inout | 29 | UP | 3.3V | MIO pin | |||||
MIO11 | inout | 19 | UP | 3.3V | MIO pin | |||||
MIO12 | inout | 36 | NONE | 3.3V |
| |||||
MIO13 | inout | 30 | NONE | 3.3V |
| |||||
MIO14 | inout | 37 | UP | 3.3V |
| |||||
MIO15 | in | 18 | NONE | 3.3V |
| |||||
MODE | out | 27 | DOWN | 3.3V | Used as boot mode pin selector. Connected to the internal switch of the SD card connector (SD_DETECT) | |||||
NOSEQ | inout | 21 | UP | 3.3V | No Sequence, connected to the CPLD of module. This pin can be controlled via CM1 (S3-A) dip switch by user. | |||||
PG_C2M | out | 20 | NONE | 3.3V | Power Good for FMC | |||||
PGOOD | inout | 25 | UP | 3.3V | Connected to Module CPLD and used as boot mode pin selector. This pin can be controlled via CM2 (S4-D) dip switch by user. | |||||
PHY_LED1 | out | 42 | NONE | 3.3V | Displays the status of SD_DETECT signal. | |||||
PHY_LED2 | out | 43 | NONE | 3.3V | Displays the state of the selected generic parameters, which *.jed file is programmed on the CPLD chip. | |||||
POK_FMC | in | 32 | UP | 3.3V | FMC Power good from FMC VADJ DCDCPower Ok signal of the FMC card | |||||
PX6 | inout | 49 | UP | 3.3V | PMOD J2 / currently_not_used | |||||
PX7 | PX7 | inout | 48 | UP | 3.3V | PMOD J2 J2 / currently_not_used | ||||
RESIN | out | 13 | UP | 3.3V | Connected to the module reset | -- | -- | |||
S1 | in | 3 | UP | 3.3V | User Pushbutton / This pushbutton switchs between UART0 and UART1 only for Microchip modules same as TEM0007. / By pressing this button , the GPIO_output[723:031] will be displayed in LED1ULED1..8 only for AMD modules. | |||||
S2 | in | 2 | UP | 3.3V | Global Reset | |||||
SD_DETECT | in | 40 | UP | 3.3V | SD card detection. This switch is connected to MODE pin in the firmware. | |||||
SD_WP | in | 41 | UP | 3.3V | SD write protection pin | |||||
SEL_SD | out | 39 | DOWN | 3.3V | SD Selection, MMC SD Slot or PMOD J2. It is set to '0' in the firmware permanently. | |||||
ULED1 | out | 78 | NONE | 3.3V | Displays the UART1 RXD signal | |||||
ULED2 | out | 77 | NONE | 3.3V | Displays the UART1 TXD signal | |||||
ULED3 | out | 76 | NONE | 3.3V | Displays the PGOOD signal status | |||||
ULED4 | out | 16 | NONE | 3.3V | Displays the NOSEQ signal status | |||||
ULED5 | out | 69 | NONE | 3.3V | Displays the boot mode state, if ON → JTAG boot mode | |||||
ULED6 | out | 68 | NONE | 3.3V | Displays the boot mode state, if ON → eMMC boot mode | |||||
ULED7 | out | 65 | NONE | 3.3V | Displays the boot mode state, if ON → SD card boot mode | |||||
ULED8 | out | 64 | NONE | 3.3V | Displays the boot mode state, if ON → QSPI boot mode | |||||
USB_OC | in | 17 | UP | 3.3V | USB Over Current | |||||
VID0 | out | 34 | UP | 3.3V | VADJ Voltage selection (EN5335QI)/ Connected to high impedance in the firmware permanently | |||||
VID1 | out | 35 | UP | 3.3V | VADJ Voltage selection (EN5335QI)/ Connected to high impedance in the firmware permanently | |||||
VID2 | out | 38 | UP | 3.3V | VADJ Voltage selection (EN5335QI)/ Connected to high impedance in the firmware permanently | |||||
X6 | in | 60 | NONE | 3.3V | Module IO (powered by VIOTB (FMC VADJ)) / currently_not_used | |||||
Y0 | in | 75 | UP | 3.3V | I2C SCL (powered by VIOTB (FMC VADJ)) | |||||
Y1 | out | 66 | UP | 3.3V | I2C SDA_OUT (powered by VIOTB (FMC VADJ)) | |||||
Y2 | in | 67 | UP | 3.3V | RGPIO CLK (powered by VIOTB (FMC VADJ)) / currently_not_used | |||||
Y3 | out | 70 | UP | 3.3V | RGPIO TX (powered by VIOTB (FMC VADJ)) / currently_not_used | |||||
Y4 | in | 74 | UP | 3.3V | RGPIO RX (powered by VIOTB (FMC VADJ)) / currently_not_used | |||||
Y5 | in | 71 | UP | 3.3V | I2C SDA_IN (powered by VIOTB (FMC VADJ)) | |||||
Y6 | in | 63 | NONE | 3.3V | Module IO (powered by VIOTB (FMC VADJ)) / currently_not_used |
DIP Switch S3 | ||||
---|---|---|---|---|
S3-A | S3-B | S3-C | S3-D | Description |
CM1** | CM0** | JTAGEN** | MIO0 |
|
*Note that JTAGMODE signal does not work for the PCB REV06 or older. But it will work for PCB REV07 or newer, which is not produced yet.
**Pin names in the schematic of board are CM1,CM0 and JTAGEN. These Names on the board (labels) are M2,M1 and ENJTAG respectively.
DIP Switch S4 | ||||
---|---|---|---|---|
S4-A | S4-B | S4-C | S4-D | Description |
VID0 | VID1 | VID2 | CM2 |
|
|
In normal mode JTAG is routed directly to the module. JTAGEN set the CPLD of the carrier board TE0701 into the chain for firmware update. In normal mode JTAG is routed directly to the SoC module. Set S3-C (ENJTAG (S3-C) dip switch to OFF to get access to the CPLD of the carrier board. In normal mode JTAG is routed directly to FPGA.FMC
JTAG |
---|
EN1 is set to logical one .
EN_FMC is set to logical one or is controlled by I2C on I2C Mode.
PG_C2M is set to logical one or is controlled by I2C on I2C Mode.
This mode is only available on PCB Revision 06 or higher.
S4 control will be enabled on power on sequence or reset (S2-Button), if one of the three S4-DIP switches is set to one.
In this Mode I2C-controll is not selectable and S3-M1 and S3-M2 are available as User-DIP-Switch.
In the new firmware (CPLD firmware Version 07) the VADJ can not be adjustable via I2C more. This voltage can be selected only via S4 dip switch as shown:
S4 control will be disabled on power on sequence or reset (S2-Button), if all of the three S4-DIP switches is set to OFF or older PCB revision is used.
Note |
---|
|
Disable S4 Control (see VADJ on PCB REV05- S3 Control) and set S3-M1 and S3-M2 to on. I2C VADJ Control use TE0701 HDMI I2C Bus (HDMI_SCL and HDMI_SDA) connected to module FPGA PL side. I2C-GPIO controller device address is 0x22. Transmitted data will be converted to a 8-bit GPIO bus.
To read I2C with petalinux use i2cget -y 0 0x22.
To write I2C with petalinux use i2cset -y 0 0x22 0x80
RESIN (negative Reset) to module, can be set by S2 button.
Boot mode is set to SD-Boot, when SD-Card is detected.
"3 wire split i2c" to to normal I2C:
Code Block | ||
---|---|---|
| ||
FMC_SDA <= '0' when Y5='0' else 'Z';
FMC_SCL <= Y0 and PON;
Y1 <= FMC_SDA; |
To read I2C with petalinux use i2cget -y 0 0x22.
To write I2C with petalinux use i2cset -y 0 0x22 0x80
RGPIO Master is a 32Bit Remote GPIO Interface to talk with FPGA over 3 lanes.
ULED1
VADJ selection when RGPIO Bus is not active else RGPIO Bus Pin 0
VADJ selection: blink when VCCIO(VIOTB/VADJ) is disabled else on when VADJ on PCB REV05- or I2C Control or off when VADJ on PCB REV06+ S4 Control
Pin | Direction in CPLD | Connected to | Description |
---|---|---|---|
C_TMS | Output | M_TMS |
|
C_TCK | Output | M_TCK |
|
C_TDO | Input | M_TDO |
|
C_TDI | Output | M_TDI |
|
Pin | CPLD Pin | Connected to | Description |
---|---|---|---|
JTAGEN | 82 | S3-C Dip Switch (ENJTAG) | To access CPLD of carrier board, JTAGEN must be set to '1'. ( ENJTAG (S3-C) = OFF ) |
JTAGMODE* | 58 | B2B JB1-90 | To access CPLD of module this pin must be set to high. |
*Note that JTAGMODE is not connected to the B2B connector for PCB REV06 or older. This pin will be connected to the B2B connector for next PCB revisions. (PCB REV07 or later)
In the PCB REV06 or older the JTAGMODE signal is not connected to the JTAGEN of the CPLD of the module. Therefore in the PCB REV06 or older the CPLD of the module can not be programmed.
Dip Switch S3-C ( JTAGEN ) | Description |
---|---|
OFF | Access to the CPLD of the carrier TE0701 |
ON | Access to the FPGA of the module |
Dip Switch S3-B ( CM0 ) | JTAGMODE | Description |
---|---|---|
Don't care | -- | Unused |
A special firmware is generated for accessing to the CPLD of TE0715 module, because for accessing to the CPLD of TE0715 the JTAG port must be routed to special pins same as NOSEQ pin. Therefore in PCB the CPLD firmware REV06 or later CM0 is used to select the accessing to the CPLD of TE0715 module. JTAGMODE signal set the CPLD of the module into the chain for firmware update.
Dip Switch S3-C ( JTAGEN ) | Description |
---|---|
OFF | Access to the CPLD of the carrier TE0701 |
ON | Access to the FPGA of the module |
Dip Switch S3-B ( CM0 ) | JTAGMODE | Description |
---|---|---|
OFF | 1 | Access to the CPLD of the module |
ON | 0 | Access to the FPGA of the module |
FMC JTAG can be set into the chain, if the special generated firmware is programmed into the CPLD of the carrier board.
FMC JTAG Pin | Direction in CPLD | Connected to | Description |
---|---|---|---|
FMC_TMS | Input | M_TDO | The confused connections are because of the false connection in the schematic of the carrier PCB REV06 board TE0701 for FMC JTAG interface. |
FMC_TCK | Output | M_TMS | The confused connections are because of the false connection in the schematic of the carrier PCB REV06 board TE0701 for FMC JTAG interface. |
FMC_TDO | Output | M_TDI | The confused connections are because of the false connection in the schematic of the carrier PCB REV06 board TE0701 for FMC JTAG interface. |
FMC_TDI | Output | M_TCK | The confused connections are because of the false connection in the schematic of the carrier PCB REV06 board TE0701 for FMC JTAG interface. |
FMC JTAG Pin | Direction in CPLD | Connected to | Description |
---|---|---|---|
FMC_TMS | Output | M_TMS | |
FMC_TCK | Output | M_TCK | |
FMC_TDO | Input | M_TDO | |
FMC_TDI | Output | M_TDI |
EN1 is set to logical one . As default EN_FMC is set to logical one. This pin can be controlled by I2C on I2C Mode. PG_C2M is set to logical one or is controlled by I2C on I2C Mode.
Signal | State | Condition | Description |
---|---|---|---|
EN_FMC | 0 | GPIO_output[24] = 0 | Enable signal of the FMC connector To set the EM_FMC signal to zero → i2cset -y 0 0x30 0x03 0x00 |
1 | Default after power on | ||
PG_C2M | 0 | POK_FMC = 0 | Power good carrier to module signal of FMC connector POK_FMC is the power ok signal of the FMC module. |
1 | POK_FMC = 1 |
The EN5335QI is a Power System on a Chip (PowerSoC). It is specifically designed to meet the precise voltage and fasr transient requirements of present and future high performance, low-power processor, DSP, FPGA, memory boards and system level applications in a distributed power architecture. The output variable voltage can be adjusted by three signals VS0, VS1 and VS2. The VSx signals are connected to VID0, VID1 and VID2 signals of the CPLD of the carrier board.
The output voltage VADJ can be adjusted with both S4 dip switch (S4-A, S4-B and S4-C) and I2C interface. If the all S4 dip switchs set to OFF the variable voltage can be selected via I2C interface.
S4-C(VID2) | S4-B(VID1) | S4-A(VID0) | Vout (VADJ) | Description |
---|---|---|---|---|
ON | ON | ON | 3.3V | |
ON | ON | OFF | 2.5V | |
ON | OFF | ON | 1.8V | |
ON | OFF | OFF | 1.5V | |
OFF | ON | ON | 1.25V | |
OFF | ON | OFF | 1.2V | |
OFF | OFF | ON | 0.8V (Do not use, not supported as IO standard) | |
OFF | OFF | OFF | VADJ will be controlled via I2C interface. |
If the S4-A,B,C set to OFF , the output voltage of the regulator can be controlled via I2C interface. In this case GPIO_output[2:0] will control the voltage.
GPIO_output[2:0] | Vout (VADJ) | Description |
---|---|---|
0x0 | 3.3V | i2cset -y 0 0x30 0x00 0x00 |
0x1 | 2.5V | i2cset -y 0 0x30 0x00 0x01 |
0x2 | 1.8V | i2cset -y 0 0x30 0x00 0x02 |
0x3 | 1.5V | i2cset -y 0 0x30 0x00 0x03 |
0x4 | 1.25V | i2cset -y 0 0x30 0x00 0x04 |
0x5 | 1.2V | i2cset -y 0 0x30 0x00 0x05 |
0x6 | 0.8V | i2cset -y 0 0x30 0x00 0x06 |
0x7 | Undefined | --- |
Note |
---|
If the S4-A, S4-B and S4-C are set to OFF (I2C interface control mode) while power on, the output voltage as default is set to 1.8V. To change this value please use the I2C interface commands as shown above in the table. |
The firmware REV06 does not support the PCB REV05 or older , because there is not S4 dip switch on the board. Therefore the VID0, VID1 and VID2 signals can not be controlled for adjusting the desired voltage.
Push button | application | Description |
---|---|---|
S1 | To switch between the UART0 and UART1 for Microchip modules | |
To display the GPIO_output[23:16] register on the ULEDs for AMD modules | ||
S2 | Reset push button |
The module can be reset via S2 push button as external reset. (active low)
The PGOOD signal can be set or reset via S4-D (CM2) dip switch as shown:
PGOOD | S4-D (CM2) | Desctiption |
---|---|---|
0 | ON | |
1 | OFF |
The NOSEQ signal can be set or reset via S3-A (CM1) dip switch as shown:
NOSEQ | S3-A (CM1) | Desctiption |
---|---|---|
0 | ON | |
1 | OFF |
This signal can be set or reset by SD_DETECT signal, which is connected to the interna switch of the SD card connector. This signal is used to select the desired boot mode as shown:
MODE (SD_DETECT) | SD Card | Desctiption |
---|---|---|
0 | Plugged | |
1 | Not plugged |
Boot mode can be selected via two PGOOD and MODE signals.
Boot mode | PGOOD (CM2) | MODE (SD_DETECT) | Description |
---|---|---|---|
JTAG Mode | 0 ( ON ) | 0 ( ON ) | |
eMMC Mode | 0 ( ON ) | 1 ( OFF ) | |
SD Card Mode | 1 ( OFF ) | 0 ( ON ) | |
QSPI Mode | 1 ( OFF ) | 1 ( OFF ) |
I2C to GPIO is a subsystem in firmware of CPLD that provides an i2c interface that writes received data to GPIO_output 8 bit registers or reads 8 bit GPIO_input registers and send read data to i2c bus.
draw.io Diagram | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
I2C bus is connected to MIO10 ( SCL signal) and MIO11 (SDA signal). MIO10 to MIO15 are direct connection between CPLD of TE0701 and FPGA on the module through B2B connector. If in FPGA design exists no i2c interface for MIO10 and MIO11, this block will be unused. More information about MIO10 to MIO15 are shown in the following table for whole Trenz Electronic 4x5 modules and TE0701 carrier board:
B2B Pin | B2B JB1-96 | B2B JB1-94 | B2B JB1-100 | B2B JB1-98 | B2B JB1-91 | B2B JB1-86 | |
---|---|---|---|---|---|---|---|
Carrier board | Label / Firmware function | Label / Firmware function | Label / Firmware function | Label / Firmware function | Label / Firmware function | Label / Firmware function | Description |
TE0701 | MIO10 / I2C-SCL | MIO11 / I2C-SDA | MIO12 / UART0-TXD for Microchip modules / GPIO for AMD modules | MIO13 / UART0-RXD for Microchip modules / GPIO for AMD modules | MIO14 / UART1-RX | MIO15 / USRT1-TX | MIO10 and MIO11 are used in CPLD firmware as I2C SCL and SDA respectively. |
B2B Pin | B2B JM1-95 | B2B JM1-93 | B2B JM1-99 | B2B JM1-97 | B2B JM1-92 | B2B JM1-85 | |
Module | Label / Chip pin | Label / Chip pin | Label / Chip pin | Label / Chip pin | Label / Chip pin | Label / Chip pin | Description |
TEM0007 | I2C_CON_SCL / A3 | I2C_CON_SDA / E3 | UART_CON_TX / C2 | USRT_CON_RX / D3 | UART_RX / H2 | UART_TX / H5 | MIO10 and MIO11 are already set in test_design of TEM0007 as SCL and SDA respectively. |
TE0710 | B14_IO2 / R10 | B14_IO6 / L18 | B14_IO7 / T11 | B14_IO3 / M18 | B16_IO4 / A8 | B16_IO0 / B8 | By using an external IIC IP core B14_IO2 and B14_IO6 can be used as I2C SCL and SDA respectively. |
TE0711 | B14_IO2 / M13 | B14_IO6 / L18 | B14_IO7 / R16 | B14_IO3 / M18 | B14_IO4 / N17 | B14_IO0 / R10 | By using an external IIC IP core B14_IO2 and B14_IO6 can be used as I2C SCL and SDA respectively. |
TE0712 | B14_L4_P / T21 | B14_L9_N / Y22 | B14_L24_N / R17 | B14_L4_N / U21 | B14_L24_P / P16 | B14_L18_N / U18 | By using an external IIC IP core B14_L4_P and B14_L9_N can be used as I2C SCL and SDA respectively. |
TE0713 | B14_L4_P / T21 | B14_L9_N / Y22 | B14_L24_N / R19 | B14_L4_N / U21 | B14_L24_P / P19 | B14_L18_N / U18 | By using an external IIC IP core B14_L4_P and B14_L9_N can be used as I2C SCL and SDA respectively. |
TE0741 | MIO10 / B14_L22 | MIO11 / B14_K21 | MIO12 / B14_H23 | MIO13 / B14_K22 | MIO14 / B14_J21 | MIO15 / B14_G24 | By using an external IIC IP core B14_L22 and B14_K21 can be used as I2C SCL and SDA respectively. |
TE0841 | B65_SCL / Y19 | B65_SDA / AA19 | B65_L3_N / AF23 | B65_L3_P / AF22 | B65_L2_N / AH24 | B65_L4_N / AG24 | By using an external IIC IP core B65_SCL and B65_SDA can be used as I2C SCL and SDA respectively. |
TE0715 | MIO10 / G16 | MIO11 / B19 | MIO12 / C18 | MIO13 / A17 | MIO14 / B17 | MIO15 / E17 | MIO10 and MIO11 can be set as SCL and SDA for I2C0 of TE0715 respectively. |
TE0720 | MIO10 / G7 | MIO11 / B4 | MIO12 / C5 | MIO13 / A6 | MIO14 / B6 | MIO15 / E6 | MIO10 and MIO11 are already set as as SCL and SDA for I2C0 in test_design of TE0720 respectively. |
TE0820 | MIO26 / L15 | MIO27 / J15 | MIO28 / K15 | MIO29 / G16 | MIO30 / F16 | MIO31 / H16 | MIO26 and MIO27 can be set only for I2C0 of FPGA and this bus is already used for another components same as EEPROM and PLL chip. If MIO10 and MIO11 are used as I2C bus for data communication with CPLD, then there are no access to PLL and EEPROM chip. |
TE0821 | MIO26 / L15 | MIO27 / J15 | MIO28 / K15 | MIO29 / G16 | MIO30 / F16 | MIO31 / H16 | MIO26 and MIO27 can be set only for I2C0 of FPGA and this bus is already used for another components same as EEPROM and PLL chip. If MIO10 and MIO11 are used as I2C bus for data communication with CPLD, then there are no access to PLL and EEPROM chip. |
TE0823 | MIO26 / L15 | MIO27 / J15 | MIO28 / K15 | MIO29 / G16 | MIO30 / F16 | MIO31 / H16 | MIO26 and MIO27 can be set only for I2C0 of FPGA and this bus is already used for another components same as EEPROM and PLL chip. If MIO10 and MIO11 are used as I2C bus for data communication with CPLD, then there are no access to PLL and EEPROM chip. |
I2C to GPIO subsystem has 4 output and 4 input 8 bit registers. These registers can be written or read in linux or FSBL code as shown in the following tables:
GPIO input registers | Address | Read Command in Linux | Read Command in FSBL | Description |
---|---|---|---|---|
GPIO_input[7:0] | 0x00 | i2cget -y 0 0x30 0x00 | iic_read8(0x30,0x00,&data) | 0x30 is device address. ( I2C to GPIO address). |
GPIO_input[15:8] | 0x01 | i2cget -y 0 0x30 0x01 | iic_read8(0x30,0x01,&data) | 0x30 is device address. ( I2C to GPIO address). |
GPIO_input[23:16] | 0x02 | i2cget -y 0 0x30 0x02 | iic_read8(0x30,0x02,&data) | 0x30 is device address. ( I2C to GPIO address). |
GPIO_input[31:24] | 0x03 | i2cget -y 0 0x30 0x03 | iic_read8(0x30,0x03,&data) | 0x30 is device address. ( I2C to GPIO address). |
GPIO input registers | Address | Read Command in Linux | Read Command in FSBL | Description |
---|---|---|---|---|
GPIO_output[7:0] | 0x00 | i2cset -y 0 0x30 0x00 <data> | iic_write8(0x30,0x00,data) | 0x30 is device address. ( I2C to GPIO address). 0x00 is register address. |
GPIO_output[15:8] | 0x01 | i2cset -y 0 0x30 0x01 <data> | iic_write8(0x30,0x01,data) | 0x30 is device address. ( I2C to GPIO address). 0x01 is register address. |
GPIO_output[23:16] | 0x02 | i2cset -y 0 0x30 0x02 <data> | iic_write8(0x30,0x02,data) | 0x30 is device address. ( I2C to GPIO address). 0x02 is register address. |
GPIO_output[31:24] | 0x03 | i2cset -y 0 0x30 0x03 <data> | iic_write8(0x30,0x03,data) | 0x30 is device address. ( I2C to GPIO address). 0x03 is register address. |
GPIO_input bit | Port / Signal | Description |
---|---|---|
0 | CPLD_REVISION_MAJOR [0] | |
1 | CPLD_REVISION_MAJOR [1] | |
2 | CPLD_REVISION_MAJOR [2] | |
3 | CPLD_REVISION_MAJOR [3] | |
4 | CPLD_REVISION_MAJOR [4] | |
5 | CPLD_REVISION_MAJOR [5] | |
6 | CPLD_REVISION_MAJOR [6] | |
7 | CPLD_REVISION_MAJOR [7] |
GPIO_input bit | Port / Signal | Description |
---|---|---|
8 | CPLD_REVISION_MINOR [0] | |
9 | CPLD_REVISION_MINOR [1] | |
10 | CPLD_REVISION_MINOR [2] | |
11 | CPLD_REVISION_MINOR [3] | |
12 | CPLD_REVISION_MINOR [4] | |
13 | CPLD_REVISION_MINOR [5] | |
14 | CPLD_REVISION_MINOR [6] | |
15 | lCPLD_REVISION_MINOR [7] |
GPIO_input bit | Port / Signal | Description |
---|---|---|
16 | VID0 | EN5335QI Power SoC Voltage Select Line 0 |
17 | VID1 | EN5335QI Power SoC Voltage Select Line 1 |
18 | VID2 | EN5335QI Power SoC Voltage Select Line 2 |
19 | USB_OC | USB Over Current |
20 | CM0 | DIP Switch S3-B |
21 | CM1 | DIP Switch S3-A |
22 | CM2 | DIP Switch S4-D |
23 | latched_S1 state | Latched S1 status |
GPIO_input bit | Port / Signal | Description |
---|---|---|
24 | SD_WP | SD card write protection |
25 | SD_DETECT | SD card detection |
26 | NOSEQ | |
27 | PGOOD | |
28 | POK_FMC | Power Ok signal of the FMC card |
29 | FMC_PRSNT | FMC present signal of the FMC card |
30 | PG_C2M | Power good of the FMC card |
31 | EN_FMC | Enable signal of the FMC card |
GPIO_output bit | Function | Description |
---|---|---|
GPIO_output[2:0] | Connected to VID0, VID1 and VID2 | To adjust the output voltage of PowerSoC EN5335QI Chip . the For more information see VADJ for PCB REV06 or newer |
GPIO_output[7:3] | Reserved | --- |
GPIO_output[8] | To display the GPIO_output[23:16] register on the ULEDs |
|
GPIO_output[15:9] | Reserved | --- |
GPIO_output[23:16] | For display on the ULEDs to test the I2C to GPIO Subsystem |
|
GPIO_output[24] | For setting the EN_FMC signal to zero, if S4-A,B,C are OFF. |
|
GPIO_output[31:25] | Reserved | --- |
To convert the 3 wire spilt I2C interface to two wire I2C interface the following code is used in the firmware:
Code Block | ||
---|---|---|
| ||
FMC_SDA <= '0' when Y5='0' else 'Z';
Y1 <= FMC_SDA;
FMC_SCL <= Y0 and PON;
|
In this case FMC_SCL and FMC_SDA are connected to the FMC card. On the other hand Y0 as I2C SCL pin , Y1 as I2C SDA input and Y5 as I2C SDA output are connected to the CPLD and B2B connector.
It is two UART interfaces for Microchip modules and only one UART interface for AMD modules. For Microchip modules the UART interface can be multiplexed between UART0 (HSS console) and UART1 (Linux console) via S1 user push button. By booting in the beginning UART0 is connected as default to the UART interface. The user can swith to UART1 (Linux console) by pressing the S1 push button any time and vice versa. For Microchip modules the *.jed file is special and the CPLD chip of the carrier board must be reprogrammed for this purpose.
UARTx | To | From | Signal | Description |
---|---|---|---|---|
UART0 | MIO13 | BDBUS0 | Module UART0 RXD | Only for Microchip modules. The UART interface can be switched between UART0 (HSS console) and UART1(Linux console) via S1 pushbutton. |
BDBUS1 | MIO12 | Module UART0 TXD | Only for Microchip modules. The UART interface can be switched between UART0 (HSS console) and UART1(Linux console) via S1 pushbutton. | |
UART1 | MIO14 | BDBUS0 | Module UART1 RXD | For all AMD and Microchip modules |
BDBUS1 | MIO15 | Module UART1 TXD | For all AMD and Microchip modules |
draw.io Diagram | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
LED | Display as default | Display GPIO_output register as second variant | Description |
---|---|---|---|
ULED1 | UART1 RXD | GPIO_output[16] |
|
ULED2 | UART1 TXD | GPIO_output[17] |
|
ULED3 | PGOOD | GPIO_output[18] |
|
ULED4 | NOSEQ | GPIO_output[19] |
|
ULED5 | JTAG Mode as Boot Mode | GPIO_output[20] |
|
ULED6 | eMMC Mode as Boot Mode | GPIO_output[21] |
|
ULED7 | SD Card Mode as Boot Mode | GPIO_output[22] |
|
ULED8 | QSPI Mode as Boot Mode | GPIO_output[23] |
|
PHY LED | Status | Description |
---|---|---|
PHY_LED1 | OFF | Programmed *.jed file for →
|
Blinking slow | Programmed *.jed file for →
| |
Blinking fast | Programmed *.jed file for →
| |
Blinking ultra fast | Programmed *.jed file for →
| |
ON | Programmed *.jed file for →
| |
PHY_LED2 | OFF | SD Card is not plugged. |
ON | SD Card is plugged. |
Changes REV05 to REV06:
UART
It is two UART interfaces for Microchip modules and only one UART interface for AMD modules. For Microchip modules the UART interface be multiplexed between UART0 (HSS console) and UART1 (Linux console) via S1 user pushbutton. By booting in the beginning UART0 is connected to the UART interface ny default. The user can swith to UART1 (Linux console) by pressing the S1 pushbutton any time and vice versa. For microchip modules the *.jed file is special and the CPLD chip of the carrier board must be reprogrammed for this purpose.
interface UART0 only for Microchip modules added
S1 is used for multiplexing UART0 and UART1 for Microchip modules.
LEDs and PHY_LEDs function is changed.
I2C interface with 0x30 address is added. It is connected to MIO10 (SCL) and MIO11 (SDA).
I2C interface with 0x22 address for HDMI chip is
changed. It isremoved. This interface was connected to HDMI_SCL and HDMI_SDA.
The generic parameters JTAG_TOPOLOGY, PCB_REVISION, CPLD_REVISION_MAJOR, CPLD_REVISION
as generic parameter is_MINOR and MICROCHIP_MODULE are added.
PGOOD is used as boot mode selector pin in addition to MODE pin (SD_DETECT). In addition to SD card /QSPI boot modes JTAG and eMMC boot modes can be selected.
PGOOD, NOSEQ can be set or reset via CM2 (S4-D) and CM1 (S3-A) respectively.
The FMC_VADJ voltage can
notbe changed via
firmware moreS4-A,B,C dip switches. This variable
votlagevoltage can be changed
onlyvia I2C interface too, if S4-A,B,C
onlydip switches are OFF.
The CPLD of module can be programmed for REV07 or newer
versions.versions. (Next PCB revisions) JTAGMODE pin is added. JTAGMODE signal can be controlled with CM0 (S3-B) for PCB REV07 or newer
versions.Changes REV05 to REV6:
Connecting PGOOD to CM2 to use as boot mode pin selector
JTAG timing correction
Changes Older Revisions to REV05:
Power Management
three VADJ Control Modi (REV06+ S4 Control, REV05- S3 Control and I2C Control)
Reset Management
only little changes
RGPIO Interface to FPGA
RGPIO support
LED
new Order and accessible by RGPIO
versions.
RGPIO is not used more.
FMC JTAG Port is added.
Connecting PGOOD to CM2 to use as boot mode pin selector
JTAG timing correction
Changes Older Revisions to REV05:
Power Management
three VADJ Control Modi (REV06+ S4 Control, REV05- S3 Control and I2C Control)
Reset Management
only little changes
RGPIO Interface to FPGA
RGPIO support
LED
new Order and accessible by RGPIO
To get content of older revision got to "Change History" of this page and select older document revision number.
Page properties | ||||
---|---|---|---|---|
| ||||
|
Date | Document Revision | CPLD Firmware Revision | Supported PCB Revision | Authors | Description | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
| REV06 | REV03,REV04,REV05,REV6REV06 |
|
| ||||||||||||||||||||||
2018-01-17 | v.29 | REV05 | REV03,REV04,REV05,REV6 | John Hartfiel | Add FMC I2C description | ||||||||||||||||||||||
2017-08-14 | v.27 | REV05 | REV03,REV04,REV05,REV6 | John Hartfiel | Description correction on port table | ||||||||||||||||||||||
2017-06-08 | v.26 | REV05 | REV03,REV04,REV05,REV6 | John Hartfiel | document style update. | ||||||||||||||||||||||
2016-11-29 | v.24 | REV05 | REV03,REV04,REV05,REV6 | John Hartfiel | Revision 05 finished | ||||||||||||||||||||||
2016-04-11 | v.1 | --- |
| Initial release | |||||||||||||||||||||||
All |
|
Include Page | ||||
---|---|---|---|---|
|
Scroll Only | ||
---|---|---|
|
HTML |
---|
<style> .wiki-content .columnLayout .cell.aside { width: 20%; }</style> |
Scroll pdf ignore | ||||||
---|---|---|---|---|---|---|
|