Simutrace 3.0
Simulation Tracing Framework
SimuTraceEntryTypes.h File Reference
#include "SimuStorTypes.h"

Data Structures

union  Data32
 32 bit data More...
 
union  Data64
 64 bit data More...
 
union  MemoryAccessMetaData
 Memory trace entry meta data. More...
 
struct  DataWrite32
 32 bit memory trace entry with data More...
 
struct  Write32
 32 bit memory trace entry More...
 
struct  DataWrite64
 64 bit memory trace entry with data More...
 
struct  Write64
 64 bit memory trace entry More...
 

Typedefs

typedef uint32_t Address32
 32 bit memory address More...
 
typedef uint64_t Address64
 64 bit memory address More...
 

Enumerations

enum  ArchitectureSize
 The bit size of the architecture. More...
 
enum  MemoryAccessType
 The type of a memory operation. More...
 
enum  MemoryAddressType
 The type of a memory address. More...
 

Functions

static const StreamTypeDescriptorStStreamFindMemoryType (ArchitectureSize size, MemoryAccessType accessType, MemoryAddressType addressType, BOOL hasData)
 

Typedef Documentation

typedef uint32_t Address32

Holds virtual or physical addresses accessed during a memory operation. This type is used on 32 bit architectures as defined by ArchitectureSize.

Since
3.0
typedef uint64_t Address64

Holds virtual or physical addresses accessed during a memory operation. This type is used on 64 bit architectures as defined by ArchitectureSize.

Since
3.0

Enumeration Type Documentation

Specifies the size of the memory accesses in bits that a stream should receive. This will determine the size of the instruction pointer, memory address and data fields.

Since
3.0
Enumerator
As32Bit 

32 bit memory operations

As64Bit 

64 bit memory operations

AsMax 

Internal, do not use.

Specifies the type of memory operation that a stream should receive.

Since
3.0
Enumerator
MatRead 

Memory read operations

MatWrite 

Memory write operations

MatMax 

Internal, do not use.

Specifies the semantic of the address field in a memory entry.

Since
3.0
Enumerator
AtPhysical 

Address in physical memory, i.e., RAM

AtVirtual 

Address in virtual memory, e.g., the address space of a process

AtLogical 

Same as AtVirtual

AtLinear 

Same as AtVirtual

AtMax 

Internal, do not use.

Function Documentation

static const StreamTypeDescriptor* StStreamFindMemoryType ( ArchitectureSize  size,
MemoryAccessType  accessType,
MemoryAddressType  addressType,
BOOL  hasData 
)
inlinestatic

Returns stream descriptions for built-in memory entry types

Simutrace comes with an integrated aggressive, but fast compressor for memory traces. To utilize the compressor, the stream must use one of the types returned by this method and employ the simtrace storage format (see StSessionCreateStore()).

Parameters
sizeArchitecture size of the simulated system.
accessTypeType of memory operations that the new stream should hold.
addressTypeThe semantic of the address field.
hasDataIndicates if the memory entry will contain the data read or written with the memory entry.
Returns
Stream descriptor identifying the desired memory entry type. Do not modify the returned stream descriptor.
Remarks
The memory trace compressor makes heavy use of the server's internal memory pool. For example to compress a 64 MiB segment of raw memory references (DataWrite64), the server may allocate over 1 GiB of additional internal pool memory. When reading a memory stream with read-ahead active, the amount of consumed memory increases. Ensure you run the server with enough pool memory configured.
Since
3.0
See Also
StMakeStreamDescriptor()
StStreamRegister()
Karlsruhe Institute of Technology (KIT)
System Architecture Group

http://simutrace.org
Generated on Thu Aug 14 2014 23:46:06 for Simutrace by doxygen 1.8.6
Marc Rittinghaus