I/O Control Blocks
Every I/O line is controlled through an I/O control block. There a 3 types of control blocks:
Input-only I/O control block
Input-only I/O control blocks and Bidirectional I/O control block share a common input path structure composed with:
|
●
|
The I/O port and RX blocks represent the I/O pin on the GPIO connector and the line receiver circuit. The electrical style is defined by LineFormat: ISO, DIFF or TTL. The direction is defined by LineMode=Input. For details, refer to Line Format and Line Mode Controls. |
|
●
|
The Input Inverter block represents the user-configurable logic inverter. The inverter is controlled by LineInverter. For details, refer to Line Polarity Control. |
|
●
|
The Input Filter block represents the user-configurable glitch-removal filter. The filter is controlled by LineFilterStrenght. For details, refer to Line Filter Control. |
|
●
|
LineStatus reports the logical state of the LineInput signal. |
Output-only I/O control block
Output-only I/O control blocks and Bidirectional I/O control block share a common output path structure including:
|
●
|
The I/O port and TX blocks represent the I/O pin on the GPIO connector and the line driver circuit. The electrical style is defined by LineFormat: ISO, DIFF or TTL. The direction and the driver configuration (if any) is defined by LineMode. For details, refer to Line Format and Line Mode Controls. |
|
●
|
The Output Inverter block represents the user-configurable logic inverter. The inverter is controlled by LineInverter. For details, refer to Line Polarity Control. |
|
●
|
The Line Source Divider block represents the user-configurable pulse train divider. The division is controlled by LineSourceInitialOffset and LineSourceDivisionFactor. For details, refer to Line Source Divider. |
|
●
|
The Line Output Mux block represents the user-configurable line source multiplexer. The multiplexer is controlled by LineSource. For details, refer to Line Source Selection. |
|
●
|
LineStatus reports the logical state of the LineOutput signal. |
Bidirectional I/O control block
Bidirectional I/O control blocks implement both an input and an output paths. The input path structure is common with the Input-only I/O control block and the output path structure is common with the Output-only I/O control block.
However, take care of the following facts:
|
●
|
The LineStatus value reports the logical state of the LineInput signal. It is not possible to read back the logical state of the LineOuput signal! |
|
●
|
The LineInverter settings applies equally to the signal input path and the signal output path. It is not possible to have different polarity settings! |
Legend
In the above figures:
|
●
|
A thin blue line represents one individual electrical signal path |
|
●
|
A thick blue line represents a collection of electrical signal paths |
|
●
|
The blue arrowhead shows the propagation direction of the electrical signal(s) |
|
●
|
A blue shape represents a functional element of the I/O control block |
|
●
|
An orange (rectangular) shape represents a GenApi feature; the text inside being the feature name |
|
●
|
An [x] appended to the feature name indicates that the feature is associated with a selector feature (in this case: LineSelector) |