My Project
 All Classes Files Functions Variables Macros
Classes | Macros | Functions
logger.h File Reference

Go to the source code of this file.

Classes

struct  T32_loggerData_t
 
struct  T32_LoggerStruct_t
 

Macros

#define T32_LOGGER_SIZE   1024
 Size of the LOGGER Ringbuffer, must be a power of 2.
 
#define T32_FETCH   0x1000
 FETCH CYCLE, add a trace record for a program fetch cycle.
 
#define T32_EXECUTE   0xf000
 EXECUTE CYCLE, add a trace record for a program execute cycle, data holds number of executed bytes.
 
#define T32_DATA_READ   0x2000
 READ CYCLE, add a trace record with a read transaction (load), see T32_BYTE T32_WORD T32_LONG.
 
#define T32_DATA_WRITE   0x3000
 WRITE CYCLE, add a trace record with a write transaction (store), see T32_BYTE T32_WORD T32_LONG.
 
#define T32_BYTE   0x0100
 BYTE access - use together with T32_DATA_READ T32_DATA_WRITE.
 
#define T32_WORD   0x0200
 WORD access - use together with T32_DATA_READ T32_DATA_WRITE.
 
#define T32_LONG   0x0400
 LONG access - use together with T32_DATA_READ T32_DATA_WRITE.
 

Functions

void T32_LoggerInit ()
 Initialize the LOGGER internal data structures. More...
 
void T32_LoggerData (int cycletype, void *address, unsigned long data)
 Add a new event to the LOGGER. More...
 
void T32_LoggerDataFast (int cycletype, void *address, unsigned long data)
 Add a new event to the LOGGER without timestamp. More...
 
void T32_TimerInit ()
 Initialize the architecture specific timer. More...
 
unsigned long long T32_TimerGet ()
 Get current timestamp of architecture specific timer. More...
 

Function Documentation

void T32_LoggerData ( int  cycletype,
void *  address,
unsigned long  data 
)

Add a new event to the LOGGER.

See Also
T32_FETCH T32_DATA_READ T32_DATA_WRITE T32_EXECUTE T32_LONG T32_WORD T32_BYTE
Parameters
cycletypeType of the event, e.g. T32_FETCH or (T32_DATA_READ|T32_LONG).
addressAddress of the event, in case of T32_FETCH and T32_EXECUTE its a instruction address otherwise a data address.
dataData related to the event, needed with T32_DATA_READ and T32_EXECUTE.
Returns
void
void T32_LoggerDataFast ( int  cycletype,
void *  address,
unsigned long  data 
)

Add a new event to the LOGGER without timestamp.

See Also
T32_FETCH T32_DATA_READ T32_DATA_WRITE T32_EXECUTE T32_LONG T32_WORD T32_BYTE
Parameters
cycletypeType of the event, e.g. T32_FETCH or (T32_DATA_READ|T32_LONG).
addressAddress of the event, in case of T32_FETCH and T32_EXECUTE its an instruction address otherwise a data address.
dataData related to the event, needed with T32_DATA_READ, T32_DATA_WRITE and T32_EXECUTE.
Returns
void
void T32_LoggerInit ( )

Initialize the LOGGER internal data structures.

This routine must be called before using any other LOGGER related routines. It initializes the logger internal data structures and calls T32_TimerInit().

Parameters
void
Returns
void
unsigned long long T32_TimerGet ( )

Get current timestamp of architecture specific timer.

This routine is architecture specific and must be implemented by by the customer.

Parameters
none
Returns
current timestamp of the timer, 56bit width.
void T32_TimerInit ( )

Initialize the architecture specific timer.

This routine is architecture specific and must be implemented by by the customer.

Please initialize the timer used in T32_TimerGet() in this routine which is automatically called by T32_LoggerInit().

Parameters
none
Returns
void