General Purpose I/O Interface

The General Purpose I/O (GPIO) interface gives access to the status of all I/Os available in the frame grabber. It also allows the user to control the ‘User Output Register’.

For more information on the General Purpose I/O and the User Output Register, please refer to the Functional Guide and the Hardware Manual sections .

Interface signals

Signal Width Direction Description
user_output_ctrl 16 Output

Control the User Output Register:

Ctrl[1:0] => UserOutput0
Ctrl[3:2] => UserOutput1
Ctrl[5:4] => UserOutput2
Ctrl[7:6] => UserOutput3
Ctrl[9:8] => UserOutput4
Ctrl[11:10] => UserOutput5
Ctrl[13:12] => UserOutput6
Ctrl[15:14] => UserOutput7

Each UserOutput register can be controlled independently1.

The ‘Ctrl’ fields are encoded as follows:

“01” => UserOutputx <= ‘1’
“10” => UserOutputx <= ‘0’
Others => No change
custom_logic_ output_ctrl 32 Output

Control the general purpose outputs (TTLIO, IOUT, MIO) available on the frame grabber:

Ctrl[0] => CustomLogicOutput0
Ctrl[1] => CustomLogicOutput1
Ctrl[2] => CustomLogicOutput2
Ctrl[3] => CustomLogicOutput3
Ctrl[4] => CustomLogicOutput4
Ctrl[5] => CustomLogicOutput5
Ctrl[6] => CustomLogicOutput6
Ctrl[7] => CustomLogicOutput7
Ctrl[8] => CustomLogicOutput8
Ctrl[9] => CustomLogicOutput9
Ctrl[10] => CustomLogicOutput10
Ctrl[11] => CustomLogicOutput11
Ctrl[12] => CustomLogicOutput12
Ctrl[13] => CustomLogicOutput13
Ctrl[14] => CustomLogicOutput14
Ctrl[15] => CustomLogicOutput15
Ctrl[16] => CustomLogicOutput16
Ctrl[17] => CustomLogicOutput17
Ctrl[18] => CustomLogicOutput18
Ctrl[19] => CustomLogicOutput19
Ctrl[20] => CustomLogicOutput20
Ctrl[21] => CustomLogicOutput21
Ctrl[22] => CustomLogicOutput22
Ctrl[23] => CustomLogicOutput23
Ctrl[24] => CustomLogicOutput24
Ctrl[25] => CustomLogicOutput25
Ctrl[26] => CustomLogicOutput26
Ctrl[27] => CustomLogicOutput27
Ctrl[28] => CustomLogicOutput28
Ctrl[29] => CustomLogicOutput29
Ctrl[30] => CustomLogicOutput30
Ctrl[31] => CustomLogicOutput31

The ‘Ctrl’ fields are encoded as follows:

‘0’ => CustomLogicOutputx <= ‘0’
‘1’ => CustomLogicOutputx <= ‘1’
user_output_status 8 Input

User Output Register status:

Status[0] => UserOutput0
Status[1] => UserOutput1
Status[2] => UserOutput2
Status[3] => UserOutput3
Status[4] => UserOutput4
Status[5] => UserOutput5
Status[6] => UserOutput6
Status[7] => UserOutput7
standard_io_set1_status 10 Input

Standard I/O set #1 status:

Status[0] => DIN11
Status[1] => DIN12
Status[2] => IIN11
Status[3] => IIN12
Status[4] => IIN13
Status[5] => IIN14
Status[6] => IOUT11
Status[7] => IOUT12
Status[8] => TTLIO11
Status[9] => TTLIO12
standard_io_set2_status 10 Input

Standard I/O set #2 status:

Status[0] => DIN21
Status[1] => DIN22
Status[2] => IIN21
Status[3] => IIN22
Status[4] => IIN23
Status[5] => IIN24
Status[6] => IOUT21
Status[7] => IOUT22
Status[8] => TTLIO21
Status[9] => TTLIO22
module_io_set_status 40 Input

I/O Extension Module status:

Status[0] => MIO1
Status[1] => MIO2
Status[39] => MIO40
qdc_status Q*32 Input Position of the Quadrature Decoder Tool

In the Width column: “Q” refers to the total number of Quadrature Decoder tools available in the CustomLogic variant.