log2ceil() returns the number of bits required to store a value, so we
need to pass in memory_size-1, not memory_size.
Every other user of log2ceil() gets this right.
Signed-off-by: Anton Blanchard <anton@linux.ibm.com>
end entity wishbone_bram_wrapper;
architecture behaviour of wishbone_bram_wrapper is
- constant ram_addr_bits : integer := log2ceil(MEMORY_SIZE) - 3;
+ constant ram_addr_bits : integer := log2ceil(MEMORY_SIZE-1) - 3;
-- RAM interface
signal ram_addr : std_logic_vector(ram_addr_bits - 1 downto 0);