riscv-non-isa/tg-nexus-trace

Feedback on RISC-V N-Trace Specification 1.0.0 rc2.0 - chapter 11

Closed this issue · 1 comments

  1. Section 11.1
    The decoding algorithm does not consideration whether BTM or HTM is
    being used. Without that differentiation the algorithm looks incomplete
    and in some cases wrong. For instance, the handling of I-CNT in the first
    bullet indicates that conditional branches should be treated as not-taken,
    which is correct for BTM, but for HTM the outcome of the conditional
    branch should be determined using HIST field.

    Suggest writing chapter 11 with two algorithms - one for BTM and one
    for HTM. For HTM, the I-CNT and HIST have be processed together
    and not sequentially as currently suggested.

Editorial:

  1. First note in chapter 11
    "messages with F-ADDR is" -> "messages with F-ADDR are"
    "wrapped around buffers" -> "circular buffers"

  2. Section 11.2
    "Decoder assigned to a specific hart should process only those messages
    tagged with a SRC value corresponding to that hart. To facilitate this,
    all encoders operating within the same trace stream must configure the
    'trTeSrcBits' field identically to ensure a consistent source identifier bit width,
    and must each be assigned a unique 'trTeSrcID' field value. This arrangement
    ensures that messages can be accurately attributed to their originating hart,
    allowing for precise and isolated trace analysis per hart."

Addressed in 1.0.0_rc25 (or even earlier ...) version.