Перейти к содержанию
    

ISE 14.7 rom 2port, вместо одной банки рисует две.

Описал для virtex6 чтение по двум портам на verilog из rom:

reg [11:0] rom [2**10-1:0];
reg signed [11:0] output_data_sin,output_data_cos;
initial
      $readmemh("../sin_table.txt", rom, 0, 1023);

always @(posedge clk) begin
    output_data_sin <= rom[addr_sin_s];
    output_data_cos <= rom[addr_cos_s];
    end

В planahead после разводки наблюдаю две банки памяти. Собрал корку и подключил ее вместо этого описания:

wire signed [11:0] output_data_sin,output_data_cos;
rom_2port rom(
.clka(clk),
.addra(addr_sin_s),
.douta(output_data_sin),
.clkb(clk),
.addrb(addr_cos_s),
.doutb(output_data_cos)
);

Функционал тот же, но банк один. Что я не так сделал?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

 

always @(posedge clk) begin
    output_data_sin <= rom[{1'b0,addr_sin_s}];
    output_data_cos <= rom[{1'b1,addr_cos_s}];
end

 

Если хотите разные таблицы через 2 порта читать

 

 

Успехов! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если хотите разные таблицы через 2 порта читать

Там только четверть таблицы синуса и требуется читать из одной таблицы, но по разным адресам. Полностью синус и косинус формируются посредством дополнительной логики на адресации и выходных значениях.

Это старая багофича xst.

Спасибо. Это утверждение справедливо и для двух-портовой RAM?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это утверждение справедливо и для двух-портовой RAM?
С RAM вроде бы всё нормально.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Есть документ: http://www.xilinx.com/support/documentatio..._7/xst_v6s6.pdf

Ориентируйтесь на страницу 251.

Для чтения с двух портов одной RAM не дублируя данные - сделайте два блока @always. На каждый порт - свой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...