ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
4 декабря
187893 Топик полностью
Ruslan (03.04.2010 00:33, просмотров: 252) ответил Ruslan на Ругается то что не может разместить в блочную память. У тебя используется асинхронное чтение. Вот тут:
Вот пример из help-а кварутса. The example below shows ram_dual.v, a Verilog Design File that implements a 128 x 8-bit simple dual-port RAM with separate read and write clocks. module ram_dual(q, addr_in, addr_out, d, we, clk1, clk2); output[7:0] q; input [7:0] d; input [6:0] addr_in; input [6:0] addr_out; input we, clk1, clk2; reg [6:0] addr_out_reg; reg [7:0] q; reg [7:0] mem [127:0]; always @(posedge clk1) begin if (we) mem[addr_in] <= d; end always @(posedge clk2) begin q <= mem[addr_out_reg]; addr_out_reg <= addr_out; end endmodule Пишем обертку - добавляем два указателя, получаем кольцевой буфер.