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
{{ message }}
This repository has been archived by the owner on Nov 22, 2023. It is now read-only.
In order to be able to protect an SRAM using ECC, only full-word accesses can be made as the parity word is assembled over the entire word. It is still beneficial to allow for byte-wise accesses though.
The idea is to create a module that contains the following interface on the in-side (minus atop):
.mem_gnt_i(spm_req), // always granted - it's an SPM.
.mem_addr_o(spm_addr),
.mem_wdata_o(spm_wdata),
.mem_strb_o(spm_strb),
.mem_atop_o(),
.mem_we_o(spm_we),
.mem_rvalid_i(spm_rvalid),
.mem_rdata_i(spm_rdata)
If the module detects a write access without the full write mask set a state machine should do a read access, followed by a partial merge (dependent on the write mask) and a consecutive write. The output interface of the module looks similar to the input interface minus the write-mask (which is implicitly set to '1).
The text was updated successfully, but these errors were encountered:
In order to be able to protect an SRAM using ECC, only full-word accesses can be made as the parity word is assembled over the entire word. It is still beneficial to allow for byte-wise accesses though.
The idea is to create a module that contains the following interface on the in-side (minus atop):
snitch/hw/system/occamy/src/occamy_top.sv
Lines 1637 to 1645 in d598922
If the module detects a write access without the full write mask set a state machine should do a read access, followed by a partial merge (dependent on the write mask) and a consecutive write. The output interface of the module looks similar to the input interface minus the write-mask (which is implicitly set to
'1
).The text was updated successfully, but these errors were encountered: