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
It seems split load address and split load data packet formats are not yet supported in encoder reference model. It encodes unified load/store but not split load? Can someone confirm/fix this if possible?
I believe you are correct. As to fixing, the original author is no longer active in the RISC-V community so that may be difficult.
Iain
From: jaydipdmehta ***@***.***>
Sent: 25 September 2024 12:08
To: riscv-non-isa/riscv-trace-spec ***@***.***>
Cc: Subscribed ***@***.***>
Subject: [riscv-non-isa/riscv-trace-spec] Split load support in reference encoder (Issue #147)
It seems split load address and split load data packet formats are not yet supported in encoder reference model. It encodes unified load/store but not split load? Can someone confirm/fix this if possible?
File:
data_decoder_model.py<https://github.com/riscv-non-isa/riscv-trace-spec/blob/main/referenceFlow/scripts/data_decoder_model.py>
Relevant code snippet:
def encode_load_store(self, trace_data, is_load):
size = trace_data.dsize
self.te['size'] = size
(is_aligned, address) = self.addr_info(trace_data.daddr, size)
if is_load:
self.te['format'] = dformat_t.LOAD_ALIGNED.value if is_aligned else dformat_t.LOAD_UNALIGNED.value
else:
self.te['format'] = dformat_t.STORE_ALIGNED.value if is_aligned else dformat_t.STORE_UNALIGNED.value
if self.settings["no-address"]:
data_width = self.settings["data_width_p"]
else:
self.te["address"] = as_hex(self.addr_handler.get(address, size), self.settings["daddress_width_p"])
if not self.settings["no-data"]:
self.te['data_len'] = (1 << self.te['size']) - 1
data_width = (self.te['data_len'] + 1) << 3
if not self.settings["no-data"]:
self.te["data"] = as_hex(self.data_handler.get(trace_data.data, size), data_width)
# Atomic and CSR
Thanks,
Jaydip
-
Reply to this email directly, view it on GitHub<#147>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/ALQOPSXT4OYYI62GNPER4ELZYKKS3AVCNFSM6AAAAABO2I3LDOVHI2DSMVQWIX3LMV43ASLTON2WKOZSGU2DONRYGM3TMMY>.
You are receiving this because you are subscribed to this thread.Message ID: ***@***.******@***.***>>
It seems split load address and split load data packet formats are not yet supported in encoder reference model. It encodes unified load/store but not split load? Can someone confirm/fix this if possible?
File:
data_encoder_model.py
Relevant code snippet:
Spec snapshot:
Thanks,
Jaydip
The text was updated successfully, but these errors were encountered: