CIRCT 23.0.0git
Loading...
Searching...
No Matches
Public Member Functions | Static Public Attributes | List of all members
serialization_probes.PackProbe Class Reference
Inheritance diagram for serialization_probes.PackProbe:
Inheritance graph
[legend]
Collaboration diagram for serialization_probes.PackProbe:
Collaboration graph
[legend]

Public Member Functions

 construct (ports)
 

Static Public Attributes

 clk = Clock()
 
 rst = Reset()
 

Detailed Description

Function ``pack_probe``: PackStruct -> PackStruct.

XORs each field with a unique sentinel of the same width. Sentinels
(``0xA0``, ``0xB000``, ``0xC0``, ``0xD0000000``) make every byte of the
reply unique and per-field-distinguishable, so a host that swaps fields
during packing produces a visibly wrong reply rather than a same-bit-width
false positive. Catches struct-field order and inter-field padding bugs;
CIRCT structs are LSB-first on the wire.

Definition at line 223 of file serialization_probes.py.

Member Function Documentation

◆ construct()

serialization_probes.PackProbe.construct (   ports)

Definition at line 238 of file serialization_probes.py.

References wrap().

Member Data Documentation

◆ clk

serialization_probes.PackProbe.clk = Clock()
static

◆ rst

serialization_probes.PackProbe.rst = Reset()
static

Definition at line 235 of file serialization_probes.py.


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