You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
As per etrace specification, CSR do not have split packet format however atomic has split packet format defined (Split atomic with operand only and Split atomic load data only formats).
When performing read-modify-write for atomic instruction, on trace interface load data can appear along with store data but load data may never be 'split' from its req.
So, its unclear if encoder should use split packet format or unified ones for atomic? (In other words, why split packet formats are needed for atomic when on etrace interface l/sdata (or operand) is presented together?)
Thanks,
Jaydip
The text was updated successfully, but these errors were encountered:
Jaydip,
ldata/sdata need not always be presented together. Table 32 is titled "Packet format for Unified atomic with address and data, but this format also covers split atomics with address and store data only. The format field value 110 is described as "Unified atomic or split atomic address". For the latter case, the data field will include store data only.
I will correct this for the next spec version - leave the issue open to act as a reminder for me.
Which format to use will depend on the behaviour of the attached hart. If you're building a general purpose encoder designed to work with any hart then it should support either, selectable via a top level parameter.
Iain
From: jaydipdmehta ***@***.***>
Sent: 26 November 2024 13:51
To: riscv-non-isa/riscv-trace-spec ***@***.***>
Cc: Subscribed ***@***.***>
Subject: [riscv-non-isa/riscv-trace-spec] Atomic split for tracing (Issue #180)
As per etrace specification, CSR do not have split packet format however atomic has split packet format defined (Split atomic with operand only and Split atomic load data only formats).
When performing read-modify-write for atomic instruction, on trace interface load data can appear along with store data but load data may never be 'split' from its req.
So, its unclear if encoder should use split packet format or unified ones for atomic? (In other words, why split packet formats are needed for atomic when on etrace interface l/sdata (or operand) is presented together?)
Thanks,
Jaydip
-
Reply to this email directly, view it on GitHub<#180>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ALQOPSQZXQUXDPH7DWYYJWL2CR4D5AVCNFSM6AAAAABSQPYE5CVHI2DSMVQWIX3LMV43ASLTON2WKOZSGY4TINZVG4ZTCNQ>.
You are receiving this because you are subscribed to this thread.Message ID: ***@***.******@***.***>>
As per etrace specification, CSR do not have split packet format however atomic has split packet format defined (Split atomic with operand only and Split atomic load data only formats).
When performing read-modify-write for atomic instruction, on trace interface load data can appear along with store data but load data may never be 'split' from its req.
So, its unclear if encoder should use split packet format or unified ones for atomic? (In other words, why split packet formats are needed for atomic when on etrace interface l/sdata (or operand) is presented together?)
Thanks,
Jaydip
The text was updated successfully, but these errors were encountered: