INOS
SINOSBusPostTiming Struct Reference

#include <cinosbus.h>

Public Member Functions

 DECLARE_DYNAMIC (SINOSBusPostTiming)
 

Public Attributes

uint32 m_uPostOverrunCounter
 
bool m_bValid
 
uint32 m_uSuspendTicks
 
int32 m_uAct
 
uint32 m_uMax
 
uint32 m_uAllowed
 
uint32 m_uPostHooks
 number of bus post hooks
 

Detailed Description

Struct to measure 'bus post timing'. It's used like this: Whenever the post hook has completed, it stores the current ticks in the m_uSuspendTicks and sets m_bValid to 'true'. Note that there's one instance of this struct for each category. Whenever the category (e.g. GINLink0) get's woken up, the time measurement happens by comparing the current ticks to the m_uSuspendTicks. The difference of ticks is the theoretical "spare time" that could have been used by the "Post" task - and thus is the "reserve". That value is substracted from m_uAllowed (which is e.g. 62.5us, 125us, 250us, etc.) and then we have the 'percentage amount of time' consumed by the "Post" task. Note that if m_bValid is not set to 'true' it means that the "Post" task has not yet completed and therefore we have a postoverrun (or someone is debugging the task or similar). In that case, m_uMax will be set to m_uAllowed to indicate that 100% of the time has been consumed.


The documentation for this struct was generated from the following file: