是否有一种简单的方法可以为Altera Cyclone II提供具有先读然后写入逻辑的推断同步RAM?
我需要在我的RAM驱动程序中实现取消选项。
我正在考虑一些状态机首先读取内存并在DFF中记住它,然后写入它,但老实说,我不知道如何开始编写它。也许有更简单的解决方案?
答案 0 :(得分:3)
这样的事情应该导致所需的行为(读取旧值并写入新值):
process (clk)
begin
if (clk'event and clk = '1') then
if (write_enable = '1') then
ram_block(write_address) <= new_data;
end if;
old_data <= ram_block(read_address);
end if;
end process;