Age | Commit message (Collapse) | Author | Lines |
|
|
|
|
|
|
|
Signed-off-by: Yun-Ze Li <p76091292@gs.ncku.edu.tw>
|
|
This commit reduce redundant lines for calculating
`current_mram_block_addrA`.
Signed-off-by: Yun-Ze Li <p76091292@gs.ncku.edu.tw>
|
|
Current boundary case handling may discard some numbers obliged to
be compared with `searching_for`, which in my opinion can result in
false positives (BS fails to identify the number which is indeed in
the input array).
This commit changed the boundary check condition to
`if(current_mram_block_addr_A < start_mram_block_addr_A + BLOCK_SIZE)`,
where the expression returns true if and only if the length of the range
[start_mram_block_addr_A, end_mram_block_addr_A) has become smaller than
2*BLOCK_SIZE. When this happens, we can then finalize the BS result by
checking if `searching_for` exists within [start_mram_block_addr_A,
end_mram_block_addr_A) without overlooking any number that should be
checked.
Signed-off-by: Yun-Ze Li <p76091292@gs.ncku.edu.tw>
|
|
Current implementation does not guarantee that
`current_mram_block_addr_A` is 8-byte aligned before using it as the
start address of `mram_read`s.
This commit makes `current_mram_block_addr_A` 8-byte aligned whenever we
try to use it for a MRAM read by `current_mram_block_addr_A &=
WORD_MASK`, which will clear the unaligned bytes.
Signed-off-by: Yun-Ze Li <p76091292@gs.ncku.edu.tw>
|
|
|