реклама на сайте
подробности

 
 
> Xilinx Memory, help
Egel
сообщение May 5 2010, 08:57
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 162
Регистрация: 28-07-08
Из: Химки
Пользователь №: 39 244



Здравствуйте!

Вопрос такой. Есть проект под Virtex5, в котором куча памятей. Нужно ли генерить каждую память в CoreGenerator ? Или можно например описать память на HDL по шаблонам Xilinx, вида :

Код
   parameter RAM_WIDTH = <ram_width>;
   parameter RAM_ADDR_BITS = <ram_addr_bits>;

   (* RAM_STYLE="{AUTO | BLOCK |  BLOCK_POWER1 | BLOCK_POWER2}" *)
   reg [RAM_WIDTH-1:0] <ram_name> [(2**RAM_ADDR_BITS)-1:0];
   reg [RAM_WIDTH-1:0] <output_dataA>, <output_dataB>;

   <reg_or_wire> [RAM_ADDR_BITS-1:0] <addressA>, <addressB>;
   <reg_or_wire> [RAM_WIDTH-1:0] <input_dataA>;

   //  The following code is only necessary if you wish to initialize the RAM
   //  contents via an external file (use $readmemb for binary data)
   initial
      $readmemh("<data_file_name>", <rom_name>, <begin_address>, <end_address>);

   always @(posedge <clockA>)
      if (<enableA>) begin
         if (<write_enableA>)
            <ram_name>[<addressA>] <= <input_dataA>;
         <output_dataA> <= <ram_name>[<addressA>];
      end
      
   always @(posedge <clockB>)
      if (<enableB>) begin
         if (<write_enableB>)
            <ram_name>[<addressB>] <= <input_dataB>;
         <output_dataB> <= <ram_name>[<addressB>];
      end


Описывать так пробовал, все синтезиться ок, но не очень понимаю отсутствие настроек типа read-first и т.д. Также есть некоторые макросы для RAM у Xilinx - но как я понял - они просто соответствуют hardware реализации. Хочется иметь один полностью запараметризированный модуль и вставлять его по месту требования )). Кто как делает ?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 17:23
Рейтинг@Mail.ru


Страница сгенерированна за 0.01344 секунд с 7
ELECTRONIX ©2004-2016