NI DIGITAL PATTERN DRIVER History Ram Functions - ni/grpc-device GitHub Wiki
- niDigital_ConfigurePatternLabelHistoryRAMTrigger
- niDigital_ConfigureCycleNumberHistoryRAMTrigger
- niDigital_ConfigureFirstFailureHistoryRAMTrigger
- niDigital_ConfigureHistoryRAMCyclesToAcquire
- niDigital_GetHistoryRAMSampleCount
- niDigital_FetchHistoryRAMCycleInformation
- niDigital_FetchHistoryRAMCyclePinData
- niDigital_FetchHistoryRAMScanCycleNumber
Configures History RAM to acquire pattern information starting from a specified label. The trigger can be offset by an additional number of vectors and then by a number of cycles.
C Function Prototype: ViStatus niDigital_ConfigurePatternLabelHistoryRAMTrigger (ViSession vi, ViConstString label, ViInt64 vectorOffset, ViInt64 cycleOffset, ViInt32 pretriggerSamples)
Parameter | Description |
---|---|
vi | The specified instrument session the niDigital_init or niDigital_InitWithOptions function returns. |
label | Pattern label you want to augment by the vector and cycle offset to determine the point where History RAM will start acquiring pattern information. |
vectorOffset | Number of vectors following the specified pattern label after which History RAM will start acquiring pattern information |
cycleOffset | The number of cycles following the specified pattern label and vector offset after which History RAM will start acquiring pattern information. |
pretriggerSamples | The number of samples to acquire before the trigger conditions are met. The digital pattern instrument may capture up to 15 pretrigger samples. |
Return value: Reports the status of the operation.
Configures History RAM to acquire pattern information starting from a specified cycle number.
C Function Prototype: ViStatus niDigital_ConfigureCycleNumberHistoryRAMTrigger (ViSession vi, ViInt64 cycleNumber, ViInt32 pretriggerSamples)
Parameter | Description |
---|---|
vi | The specified instrument session the niDigital_init or niDigital_InitWithOptions function returns. |
cycleNumber | Number of cycles to execute in the current pattern burst before triggering History RAM. |
preTriggerSamples | The number of samples to acquire before the trigger conditions are met. The digital pattern instrument may capture up to 15 pretrigger samples. |
Return value: Reports the status of the operation.
Configures History RAM to acquire pattern information starting from the first failed cycle encountered. Depending on the cycles History RAM is configured to acquire, samples may include passing and failing cycles.
C Function Prototype: ViStatus niDigital_ConfigureFirstFailureHistoryRAMTrigger (ViSession vi, ViInt32 pretriggerSamples)
Parameter | Description |
---|---|
vi | The specified instrument session the niDigital_init or niDigital_InitWithOptions function returns. |
pretriggerSamples | The number of samples to acquire before the trigger conditions are met. The digital pattern instrument may capture up to 15 pretrigger samples. |
Return value: Reports the status of the operation.
Configures History RAM to acquire either all cycles or only failed cycles after triggering conditions are met. If you configure History RAM to only acquire failed cycles, you must set the pretriggerSamples for History RAM to 0.
C Function Prototype: ViStatus niDigital_ConfigureHistoryRAMCyclesToAcquire (ViSession vi, ViInt32 cyclesToAcquire)
Parameter | Description |
---|---|
vi | The specified instrument session the niDigital_init or niDigital_InitWithOptions function returns. |
cyclesToAcquire |
Cycles History RAM will acquire after triggering conditions are met. - NIDIGITAL_VAL_FAILED_CYCLES (2303) - NIDIGITAL_VAL_ALL_CYCLES (2304) |
Return value: Reports the status of the operation.
Returns the number of samples History RAM acquired on the last pattern burst.
C Function Prototype: ViStatus niDigital_GetHistoryRAMSampleCount (ViSession vi, ViConstString site, ViInt64* sampleCount)
Parameter | Description |
---|---|
vi | The specified instrument session the niDigital_init or niDigital_InitWithOptions function returns. |
site | Site specified as a string in the form of siteN, where N is the site number. The function returns an error if more than one site is specified. |
Output | |
sampleCount | The returned number of samples that History RAM acquired. |
Return value: Reports the status of the operation.
Gets the per-cycle pattern information acquired for the specified cycle.
C Function Prototype: ViStatus niDigital_FetchHistoryRAMCycleInformation (ViSession vi, ViConstString site, ViInt64 sampleIndex, ViInt32* patternIndex, ViInt32* timeSetIndex, ViInt64* vectorNumber, ViInt64* cycleNumber, ViInt32* numDutCycles)
Parameter | Description |
---|---|
vi | The specified instrument session the niDigital_init or niDigital_InitWithOptions function returns. |
site | Site specified as a string in the form of siteN, where N is the site number. The function returns an error if more than one site is specified. |
sampleIndex | The index of the History RAM sample to fetch. Each History RAM sample contains information about a single cycle in the pattern burst. |
Output | |
patternIndex | The returned index of the pattern for the acquired cycle. Use niDigital_GetPatternName to get the name of the pattern from its index. |
timeSetIndex | The returned time set for the acquired cycle. Use niDigital_GetTimeSetName to get the name of the time set from its index. |
vectorNumber | The returned vector number within the pattern for the acquired cycle. Vector numbers start at 0 from the beginning of the pattern. |
cycleNumber | Returns the cycle number acquired by this History RAM sample. Cycle numbers start at 0 from the beginning of the pattern burst. |
numDutCycles | The returned number of DUT cycles contained in the cycle acquired by this History RAM sample. This is only needed if the pattern uses the edge multiplier feature. |
Return value: Reports the status of the operation.
Gets the per-pin pattern data acquired for the specified cycle.
C Function Prototype: ViStatus niDigital_FetchHistoryRAMCyclePinData (ViSession vi, ViConstString site, ViConstString pinList, ViInt64 sampleIndex, ViInt32 dutCycleIndex, ViInt32 pinDataBufferSize, ViUInt8[] expectedPinStates, ViUInt8[] actualPinStates, ViBoolean[] perPinPassFail, ViInt32* actualNumPinData)
Parameter | Description |
---|---|
vi | The specified instrument session the niDigital_init or niDigital_InitWithOptions function returns. |
site | Site specified as a string in the form of siteN, where N is the site number. The function returns an error if more than one site is specified. |
pinList | The specified pins for which to retrieve History RAM data. If empty, the pin list from the pattern containing the start label is used. Call niDigital_GetPatternPinList or niDigital_GetPatternPinIndexeswith the start label to retrieve the pins associated with the pattern burst. |
sampleIndex | The index of the History RAM sample to fetch. Each History RAM sample contains information about a single cycle in the pattern burst. |
dutCycleIndex | The specified index of the DUT cycle. If the pattern does not use the edge multiplier feature, pass 0 for this parameter. For History RAM samples that contain multiple DUT cycles, indicated by the numDutCycles value returned by niDigital_FetchHistoryRAMCycleInformation, call this function multiple times to retrieve pin states for each DUT cycle. The DUT cycle index should start at 0. |
pinDataBufferSize |
The specified number of elements in the expectedPinStates, actualPinStates, and perPinPassFail arrays. All three array parameters must be of the same size if they are not set to VI_NULL. To determine the size of the buffer to allocate for the arrays, pass a value of 0 to the pinDataBufferSize parameter and a value of VI_NULL to the array parameters. In this case, the value returned by the actualNumPinData parameter is the size of the arrays necessary to hold the data. |
Output | |
expectedPinStates | The returned pin state as expected by the loaded pattern in the order specified in pinList. Pins without defined edges in the specified DUT cycle will return NIDIGITAL_VAL_NOT_A_PIN_STATE (254). |
actualPinStates | The returned pin state acquired by History RAM in the order specified in pinList. Pins without defined edges in the specified DUT cycle will return NIDIGITAL_VAL_NOT_A_PIN_STATE (254). |
perPinPassFail | The returned pass fail information for pins in the order specified in pinList. Pins without defined edges in the specified DUT cycle will return pass (VI_TRUE). |
actualNumPinData | Number of values written to the array parameters. |
Return value: Reports the status of the operation.
Fetches the History RAM Scan Cycle Number for the sample index. If the sample is not from a scan vector, the scan cycle number will be returned as -1.
C Function Prototype: ViStatus niDigital_FetchHistoryRAMScanCycleNumber (ViSession vi, ViConstString site, ViInt64 sampleIndex, ViInt64* scanCycleNumber)
Parameter | Description |
---|---|
vi | The specified instrument session the niDigital_init or niDigital_InitWithOptions function returns. |
site | Site specified as a string in the form of siteN, where N is the site number. The function returns an error if more than one site is specified. |
sampleIndex | The index of the History RAM sample to fetch. Each History RAM sample contains information about a single cycle in the pattern burst. |
Output | |
scanCycleNumber | Returns the scan cycle number acquired by this History RAM sample. Scan cycle numbers start at 0 from the first cycle of the scan vector. Scan cycle numbers are -1 for cycles that do not have a scan opcode. |
Return value: Reports the status of the operation.