added handler for delta to handle delta being all 1's
This commit is contained in:
File diff suppressed because it is too large
Load Diff
1621
builds/RV64ACDFIMSUxCHERI_Toooba_bluesim/test1.txt
Normal file
1621
builds/RV64ACDFIMSUxCHERI_Toooba_bluesim/test1.txt
Normal file
File diff suppressed because it is too large
Load Diff
@@ -918,7 +918,7 @@ module mkCore#(CoreId coreId)(Core);
|
||||
// incr cycle count
|
||||
(* fire_when_enabled, no_implicit_conditions *)
|
||||
rule incCycleCnt(doStats);
|
||||
$display("calling cycle");
|
||||
// $display("calling cycle");
|
||||
cycleCnt.incr(1);
|
||||
endrule
|
||||
|
||||
@@ -963,7 +963,6 @@ module mkCore#(CoreId coreId)(Core);
|
||||
// broadcast whether we should collect data
|
||||
rule broadcastDoStats;
|
||||
let stats = csrf.doPerfStats;
|
||||
$display("[stats] enabled %0d", csrf.doPerfStats);
|
||||
doStats <= stats;
|
||||
iMem.perf.setStatus(stats);
|
||||
dMem.perf.setStatus(stats);
|
||||
|
||||
@@ -653,8 +653,15 @@ module mkMemExePipeline#(MemExeInput inIfc)(MemExePipeline);
|
||||
`endif
|
||||
// Test delta value read from the pointer
|
||||
Bit#(25) delta = decodeDelta(x.vaddr);
|
||||
$display("Decoded delta = %0d", delta);
|
||||
x.vaddr = encodeDelta(x.vaddr, 0);
|
||||
$display("Decoded delta from register = %0d", delta);
|
||||
|
||||
// 33554431 is 2^25 - 1 (all ones)
|
||||
if (delta == 33554431) begin
|
||||
delta = 0;
|
||||
end else begin
|
||||
x.vaddr = encodeDelta(x.vaddr, 0);
|
||||
end
|
||||
// x.vaddr = encodeDelta(x.vaddr, 0);
|
||||
// x.vaddr = (x.vaddr >> 25) << 25;
|
||||
// x.vaddr = (x.vaddr >> 25) << 25;
|
||||
|
||||
|
||||
@@ -244,7 +244,7 @@ function CapPipe capModify(CapPipe a, CapPipe b, CapModifyFunc func);
|
||||
// TODO: Delta handler function
|
||||
CapPipe res = (case(func) matches
|
||||
tagged ModifyOffset .offsetOp :
|
||||
//modifyOffset(a_mut, getAddr(b), offsetOp == IncOffset).value;
|
||||
// modifyOffset(a_mut, getAddr(b), offsetOp == IncOffset).value;
|
||||
// To test this
|
||||
encodeDelta(a_mut, getAddr(b));
|
||||
tagged SetBounds .boundsOp :
|
||||
|
||||
Reference in New Issue
Block a user