Knock By Decimation Get Result

This block recovers the last observed Knock Decimation Source integration result. It is used within a Knock System by Decimation knock solution. The status supplied with the resource indicates whether the recovered result is valid. Multiple instances of this block will likely exist in a model. The block can also be used to access the result from different threads of execution. Thus the block could be used from within a Completion Trigger as well as used from within a time domain trigger.

Block ID

Knock Decimation Result

Library

motohawk_knock_by_decimation_lib

Description

Signals

Integral

The last observed integration result for the referenced Knock Decimation Source.

Status Output

The status port reports the validity of the captured integral. It should be treated as an enumeration with the following definitions

0: OK

The captured integral is valid.

1: Invalid - Not Created

The integral is invalid because the Knock System did not successfully create.

2: Invalid - Overflow

The integral is invalid because the filter math suffered an overflow before the window defined by the referenced source completed.

3: Invalid - Disabled

The integral is invalid becuase the source has been disabled and is no longer acquiring. It could be disabled because the user disabled the signal or because the source is trying to operate in an illegal region as defined by its boundary conditions.

4: Invalid - Pending Completion

The intergal is not valid because whilst the window is active, a valid integral window has not yet completed.

5: Invalid - Pending Coefficient Write

The integral is not valid because the system is waiting for the initial application of the coefficients to be applied. Coefficients are defined via the coefficient set block, but they are only applied once there is engine speed.

6: Invalid - Internal

An unexpected internal ControlCore error prevented the integral data from being supplied.

7: Invalid - Exception

The decimation silicon suffered an exception that invalidated its integral. This error is not expected.

8: Invalid - Sample Overrun

The decimation silicon experienced a sample overrun condition such that the integral can't be trusted.

9: Invalid - Integral Overrun

An integral value was over written before is was read. The underlying ControlCore layer reads the integral and caches the result so this error should not occur. This error will not be flagged if the user does not read the integral because thw driver will still be refreshing its cached value.

10: Invalid - Diagnostic Active

The Knock Decimation Sensor Diagnose process is an active diagnostics. Passive pull devices are enabled on the ADC inputs so that the diagnostic can be carried out. The knock signal will be affected when these devices are enabled. Therefore an integral captured during or just after the diagnostic has been run is considered invalid.

11: Invalid - Zero Samples

This status is issued if an integral was read from the decimation system that did not integrate any data. The sample count is zeroed when the window opens. This status results if no data samples have been integrated by the time the window has closed. Typically this implies that there is an internal problem that is preventing the ADC system from supplying the decimation silicon with data to filter and integrate.

12: Invalid - Integral Overflow

This status is issued if the system detects that the integral overflowed. The result is saturated at the maximum reportable value.

13: Invalid - Sample Buffer Too Small

The decimation system requires a buffer to exist, but the allocated buffer was too small. Too high a sample frequency and/or integration windows that are too large will result in such a status being reported.

14: Invalid - Window Incorrect

Integration was not possible because the system was unable to determine the duration of the integration window.

Block Parameters

Parameter Field Values Comments/Description
Name Alpha-numeric text, quote enclosed Name of the source for which the result is to be acquired.