NI DIGITAL PATTERN DRIVER History Ram Functions - ni/grpc-device GitHub Wiki

History Ram Functions

niDigital_ConfigurePatternLabelHistoryRAMTrigger

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.

niDigital_ConfigureCycleNumberHistoryRAMTrigger

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.

niDigital_ConfigureFirstFailureHistoryRAMTrigger

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.

niDigital_ConfigureHistoryRAMCyclesToAcquire

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.

niDigital_GetHistoryRAMSampleCount

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.

niDigital_FetchHistoryRAMCycleInformation

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.

niDigital_FetchHistoryRAMCyclePinData

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.

niDigital_FetchHistoryRAMScanCycleNumber

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.

⚠️ **GitHub.com Fallback** ⚠️