Loading...
Searching...
No Matches
OpenCSD Library : Packet Decoders.

Classes providing Protocol Packet Decoding capability. More...

## Classes

class | TrcPktDecodeI
class | TrcPktDecodeBase< P, Pc >

## Functions

| TrcPktDecodeI::TrcPktDecodeI (const char *component_name)
| TrcPktDecodeI::TrcPktDecodeI (const char *component_name, int instIDNum)
const bool | TrcPktDecodeI::checkInit ()
ocsd_datapath_resp_t | TrcPktDecodeI::outputTraceElement (const OcsdTraceElement &elem)
ocsd_datapath_resp_t | TrcPktDecodeI::outputTraceElementIdx (ocsd_trc_index_t idx, const OcsdTraceElement &elem)
ocsd_err_t | TrcPktDecodeI::instrDecode (ocsd_instr_info *instr_info)
ocsd_err_t | TrcPktDecodeI::accessMemory (const ocsd_vaddr_t address, const ocsd_mem_space_acc_t mem_space, uint32_t *num_bytes, uint8_t *p_buffer)
ocsd_err_t | TrcPktDecodeI::invalidateMemAccCache ()
| TrcPktDecodeBase< P, Pc >::TrcPktDecodeBase (const char *component_name)
| TrcPktDecodeBase< P, Pc >::TrcPktDecodeBase (const char *component_name, int instIDNum)
virtual | TrcPktDecodeBase< P, Pc >::~TrcPktDecodeBase ()
virtual ocsd_datapath_resp_t | TrcPktDecodeBase< P, Pc >::PacketDataIn (const ocsd_datapath_op_t op, const ocsd_trc_index_t index_sop, const P *p_packet_in)
ocsd_err_t | TrcPktDecodeBase< P, Pc >::setProtocolConfig (const Pc *config)
void | TrcPktDecodeBase< P, Pc >::ClearConfigObj ()

## Detailed Description

Classes providing Protocol Packet Decoding capability.

Packet decoders convert incoming protocol packets from a packet processor, into generic trace elements to be output to an analysis program.

Packet decoders can be:-

- PE decoders - converting ETM or PTM packets into instruction and data trace elements
- SW stimulus decoder - converting STM or ITM packets into software generated trace elements.
- Bus decoders - converting HTM packets into bus transaction elements.

## Function Documentation

## accessMemory()

ocsd_err_t TrcPktDecodeI::accessMemory | ( | const ocsd_vaddr_t | address,
|  | const ocsd_mem_space_acc_t | mem_space,
|  | uint32_t * | num_bytes,
|  | uint8_t * | p_buffer
| ) |  |

inline protected

Definition at line 177 of file trc_pkt_decode_base.h.

Here is the call graph for this function:

## checkInit()

const bool TrcPktDecodeI::checkInit | ( |  | ) |

inline protected

Definition at line 140 of file trc_pkt_decode_base.h.

Here is the call graph for this function:

## ClearConfigObj()

template<class P , class Pc >

void TrcPktDecodeBase< P, Pc >::ClearConfigObj | ( |  | ) |

protected

Definition at line 305 of file trc_pkt_decode_base.h.

## instrDecode()

ocsd_err_t TrcPktDecodeI::instrDecode | ( | ocsd_instr_info * | instr_info | ) |

inline protected

Definition at line 170 of file trc_pkt_decode_base.h.

Here is the call graph for this function:

## invalidateMemAccCache()

ocsd_err_t TrcPktDecodeI::invalidateMemAccCache | ( |  | ) |

inline protected

Definition at line 184 of file trc_pkt_decode_base.h.

Here is the call graph for this function:

## outputTraceElement()

ocsd_datapath_resp_t TrcPktDecodeI::outputTraceElement | ( | const OcsdTraceElement & | elem | ) |

inline protected

Definition at line 160 of file trc_pkt_decode_base.h.

Here is the call graph for this function:

## outputTraceElementIdx()

ocsd_datapath_resp_t TrcPktDecodeI::outputTraceElementIdx | ( | ocsd_trc_index_t | idx,
|  | const OcsdTraceElement & | elem
| ) |  |

inline protected

Definition at line 165 of file trc_pkt_decode_base.h.

Here is the call graph for this function:

## PacketDataIn()

template<class P , class Pc >

ocsd_datapath_resp_t TrcPktDecodeBase< P, Pc >::PacketDataIn | ( | const ocsd_datapath_op_t | op,
|  | const ocsd_trc_index_t | index_sop,
|  | const P * | p_packet_in
| ) |  |

virtual

Default destructor.

Interface function to process a single protocol packet. Pass a trace index for the start of packet and a pointer to a packet when the datapath operation is OCSD_OP_DATA.

Parameters

  op | : Datapath operation.
  index_sop | : Trace index for the start of the packet, 0 if not OCSD_OP_DATA.
  *p_packet_in | : Protocol Packet - when data path operation is OCSD_OP_DATA. null otherwise.

Returns
  ocsd_datapath_resp_t : Standard data path response.

Implements IPktDataIn< P >.

Definition at line 238 of file trc_pkt_decode_base.h.

## setProtocolConfig()

template<class P , class Pc >

ocsd_err_t TrcPktDecodeBase< P, Pc >::setProtocolConfig | ( | const Pc * | config | ) |

Definition at line 286 of file trc_pkt_decode_base.h.

Here is the caller graph for this function:

## TrcPktDecodeBase() [1/2]

template<class P , class Pc >

TrcPktDecodeBase< P, Pc >::TrcPktDecodeBase | ( | const char * | component_name | ) |

Definition at line 221 of file trc_pkt_decode_base.h.

## TrcPktDecodeBase() [2/2]

template<class P , class Pc >

TrcPktDecodeBase< P, Pc >::TrcPktDecodeBase | ( | const char * | component_name,
|  | int | instIDNum
| ) |  |

Definition at line 227 of file trc_pkt_decode_base.h.

## TrcPktDecodeI() [1/2]

TrcPktDecodeI::TrcPktDecodeI | ( | const char * | component_name | ) |

inline

Definition at line 120 of file trc_pkt_decode_base.h.

## TrcPktDecodeI() [2/2]

TrcPktDecodeI::TrcPktDecodeI | ( | const char * | component_name,
|  | int | instIDNum
| ) |  |

inline

Definition at line 130 of file trc_pkt_decode_base.h.

## ~TrcPktDecodeBase()

template<class P , class Pc >

TrcPktDecodeBase< P, Pc >::~TrcPktDecodeBase | ( |  | ) |

virtual

Definition at line 233 of file trc_pkt_decode_base.h.