GX5055, GX5295, File.
Sets the channel skew delay.
DioSetupOutputSkewDelay (nHandle, nChannelListMode, nCountOrFirstChannel, panChannelList, nLastChannel, nSource, nEdge, dDelay, pnStatus)
Name |
Type |
Comments |
nHandle |
SHORT |
DIO Master handle, Slave handle or File board handle. |
nChannelListMode |
SHORT |
Channel list mode dictates how nCountOrFirstChannel and panChannelList parameters are used. Channel list mode options are as follows:0 DIO_CH_LIST_MODE_ARRAY_OF_CHANNELS: The user specifies an array of channels where nCountOrFirstChannel is the number of elements in the list array and panChannelList is an array contains the channels numbers. In this mode nLastChannel is ignored.1 DIO_CH_LIST_MODE_ALL_BOARD_CHANNELS: Apply the settings to all the board’s channels associated with this board handle. In this mode nCountOrFirstChannel, panChannelList and nLastChannel variavles are ignored.2 DIO_CH_LIST_MODE_ALL_DOMAIN_CHANNELS: Apply the settings to all the channels in the domain, e.g. if there are two boards in the domain (Master and a Slave), then all 64 channels will be set. In this mode nCountOrFirstChannel, panChannelList and nLastChannel variavles are ignored.3 DIO_CH_LIST_MODE_RANGE_OF_CHANNELS: Apply settings to a range of channels where nCountOrFirstChannel is the first channel number and nLastChannel is the last channel number. In this mode panChannelList variavle is ignored. |
nCountOrFirstChannel |
SHORT |
If nChannelListMode parameter is set to DIO_CH_LIST_MODE_ARRAY_OF_CHANNELS, then it is specifying the number of elements in the pnChannelList array parameter.If nChannelListMode parameter is set to DIO_CH_LIST_MODE_RANGE_OF_CHANNELS, then it is specifying the first channel number to apply the settings to,otherwise it is ignored and should set to zero.Channel number in the DIO domain, each DIO board adds 32 I/O channels. I/O channels number range is 0-991 (1 master and 30 slaves).Gx5295: Each DIO board adds 4 Auxiliary channels, Auxiliary channels number range is 0-123 (1 master and 30 slaves). |
panChannelList |
PSHORT |
Array of channels numbers. Channels numbers can be from 0 to the last channel in the domain. E.g., if the domain has two boards then the last channel is 63.This parameter is only used if nChannelListMode parameter is set to DIO_CH_LIST_MODE_ARRAY_OF_CHANNELS, otherwise is should be passed as NULL.Channel number in the DIO domain, each DIO board adds 32 I/O channels. I/O channels number range is 0-991 (1 master and 30 slaves).Gx5295: Each DIO board adds 4 Auxiliary channels, Auxiliary channels number range is 0-123 (1 master and 30 slaves). |
nLastChannel |
SHORT |
If nChannelListMode parameter is set to DIO_CH_LIST_MODE_RANGE_OF_CHANNELS, then it is specifying the last channel number to apply the settings to,otherwise it is ignored and should set to zero.Channel number in the DIO domain, each DIO board adds 32 I/O channels. I/O channels number range is 0-991 (1 master and 30 slaves).Gx5295: Each DIO board adds 4 Auxiliary channels, Auxiliary channels number range is 0-123 (1 master and 30 slaves). |
nSource |
SHORT |
Delay source can be as follows:0 DIO_SKEW_DELAY_OUTPUT_DATA: add delay to the output driver data in reference to the DIO clock.1 DIO_SKEW_DELAY_OUTPUT_DATA_ENABLE: add delay to the output driver data enable in reference to the DIO clock. Delaying the output data enable adds an additional delay output driver data in reference to the DIO clock.2 DIO_SKEW_DELAY_INPUT_LOW_THRESHOLD: apply the delay to the input low voltage threshold comparator.3 DIO_SKEW_DELAY_INPUT_HIGH_THRESHOLD: apply the delay to the input high voltage threshold comparator. |
nEdge |
SHORT |
Delay target edge can be as follows:0. DIO_RISING_EDGE: signal rising edge. |
dDelay |
DOUBLE |
GX5055 Output Rising Edge:Output skew delay can be set from 0 ns to +9.6875 ns with 312.5 ps resolution.GX5055 Input falling edge:Skew delay can be set from -2.5 ns to +2.1875 ns with 312.5 Ps ps resolution.GX5295 Output Rising Edge:Output skew delay can be set from 0 ns to + 4.6875 ns with 19.53 ps resolution.The propagation delay circuitry adds timing delay to the rising edge and the falling edge in equal amounts. Propagation delay adjustment is typically used for aligning the timing of multiple channels inside a tester.GX5295 Output Falling Edge:Output falling edge skew delay can be set from -2.5 ns to +2.1875 ns with 19.53 ps resolution.The falling edge delay circuitry adds or subtracts timing delay to or from the falling edge while having no effect on the rising edge. Propagation delay adjustment is typically used for removing any pulse width distortion inside a tester.GX5295 Input Rising Edge:Input skew delay can be set from 0 ns to + 4.6875 ns with 19.53 ps resolution.The propagation delay circuitry adds timing delay to the rising edge and the falling edge in equal amounts. Propagation delay adjustment is typically used for aligning the timing of multiple channels inside a tester.GX5295 Input Falling Edge:Input falling edge skew delay can be set from -156.25 ps to +146.5 ps with 9.76 ps resolution.The falling edge delay circuitry adds or subtracts timing delay to or from the falling edge while having no effect on the rising edge. Propagation delay adjustment is typically used for removing any pulse width distortion inside a tester. |
pnStatus |
PSHORT |
Returned status: 0 on success, negative number on failure. |
Output skew delays:
Each channel output has timing capability with the following characteristics:
● Separate and independent delay circuitry for the driver output data and the driver output data enable.
● Separate and independent delay circuitry for each channel.
● Propagation delay adjust (both rising and edge Tpd are delayed equally).
Input skew delays:
Each channel’s input high and low voltage threshold comparators have timing capability with the following characteristics:
● Separate and independent delay circuitry for the high and low voltage threshold comparators.
● Separate and independent delay circuitry each channel.
● Propagation delay adjust (both rising and edge Tpd are delayed equally).
Channels output rising and falling edge skew delays can be read back and set dynamically at any time even while the DIO is running mode.
The following example uses an array of channels list set delay edge skew of the output data to 2.0ns:
SHORT anChannelList[]={0, 2, 5, 7, 9, 13, 14, 27};
DioSetupSkewDelay (nHandle, DIO_CH_LIST_MODE_ARRAY_OF_CHANNELS, 8, anChannelList, 0, DIO_OUTPUT_SKEW_DELAY_DATA, DIO_RISING_EDGE, 2.0, &nStatus);
The following example sets all the board’s channels delay edge skew of the output data to 2.0ns:
DioSetupSkewDelay (nHandle, DIO_CH_LIST_MODE_ALL_BOARD_CHANNELS, 0, NULL, 0, DIO_OUTPUT_SKEW_DELAY_DATA, DIO_RISING_EDGE, 2.0, &nStatus);
The following example sets all the boards channels delay edge skew of the output data to 2.0ns:
DioSetupSkewDelay (nHandle, DIO_CH_LIST_MODE_ALL_DOMAIN_CHANNELS, 0, NULL, 0, DIO_OUTPUT_SKEW_DELAY_DATA, DIO_RISING_EDGE, 2.0, &nStatus);
The following example sets channels 5 to 10 delay edge skew of the output data to 2.0ns:
DioSetupSkewDelay (nHandle, DIO_CH_LIST_MODE_RANGE_OF_CHANNELS, 5, NULL, 10, DIO_OUTPUT_SKEW_DELAY_DATA, DIO_RISING_EDGE, 2.0, &nStatus);
DioGetSkewDelay, DioSetupInputLoadResistance, DioSetupInputThresholdVoltages, DioGetErrorString