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

Реализация памяти.

Добрый день!

Возник вопрос относительно памяти в ПЛИС.

Мне необходимо реализовать массивы констант объемом 6720 бит,

но если это делать такой конструкцией:

 

Type TPorcia is range 0 to 64;

Type TIP is array (1 to 64) Of TPorcia;

Constant IP : TIP := (58,50,42,34,26,18,10,2,

60,52,44,36,28,20,12,4,

62,54,46,38,30,22,14,6,

64,56,48,40,62,24,16,8,

57,49,41,33,25,17,9,1,

59,51,43,35,27,19,11,3,

61,53,45,37,29,21,13,5,

63,55,47,39,31,23,15,7);

то все это будет реализовано на триггерах и может не хватить ресурсов на такую модель Spartana 3 xc3s1500.

второй вариант я вижу в испоьзовании Block Memory, но тут встает вопрос как на этапе конфигурирования плиски часть памяти отвести под ПЗУ и залить в нее мои массивы?

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


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

Добрый день!

Возник вопрос относительно памяти в ПЛИС.

Мне необходимо реализовать массивы констант объемом 6720 бит,

но если это делать такой конструкцией:

 

Type TPorcia is range 0 to 64;

Type TIP is array (1 to 64) Of TPorcia;

Constant IP : TIP := (58,50,42,34,26,18,10,2,

60,52,44,36,28,20,12,4,

62,54,46,38,30,22,14,6,

64,56,48,40,62,24,16,8,

57,49,41,33,25,17,9,1,

59,51,43,35,27,19,11,3,

61,53,45,37,29,21,13,5,

63,55,47,39,31,23,15,7);

то все это будет реализовано на триггерах и может не хватить ресурсов на такую модель Spartana 3 xc3s1500.

второй вариант я вижу в испоьзовании Block Memory, но тут встает вопрос как на этапе конфигурирования плиски часть памяти отвести под ПЗУ и залить в нее мои массивы?

 

Если реализовать массив констант (подчеркиваю, именно констант) так, как Вы описали выше, то никаких триггеров задействовано не будет, поскольку это константы.

 

Способов проинициализировать блочную память несколько: с помощью задания набора атрибутов INIT для соответствующего компонента-примитива; если использовать для создания модуля памяти Core Generator, то с помощью соответствующего .coe файла; также можно "залить" содержимое блочной памяти непосредственно в файл конфигурации ПЛИС (.bit файл), используя утилиту data2mem, входящую в состав ISE, правда входной формат данных в этом случае - бинарный файл (.elf и еще по-моему несколько вариантов).

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


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

Если реализовать массив констант (подчеркиваю, именно констант) так, как Вы описали выше, то никаких триггеров задействовано не будет, поскольку это константы.

 

В таком случае ещё вопрос, имеет ли смысл реализовывать эти массивы через блочную память как ПЗУ или же можно оставить их константами, но при этом интересует синтезируются эти константы и сколько они съедят ресурсов ПЛИСины?

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


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

В таком случае ещё вопрос, имеет ли смысл реализовывать эти массивы через блочную память как ПЗУ или же можно оставить их константами, но при этом интересует синтезируются эти константы и сколько они съедят ресурсов ПЛИСины?
Константы съедят место в зависимости от того, как они будут использоваться в схеме. Триггеров, конечно, из них не будет, но по-моему 6700 бит констант лучше разместить в памяти...

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


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

В таком случае ещё вопрос, имеет ли смысл реализовывать эти массивы через блочную память как ПЗУ или же можно оставить их константами, но при этом интересует синтезируются эти константы и сколько они съедят ресурсов ПЛИСины?
Константы съедят место в зависимости от того, как они будут использоваться в схеме. Триггеров, конечно, из них не будет, но по-моему 6700 бит констант лучше разместить в памяти...

В таком случае ещё вопрос, имеет ли смысл реализовывать эти массивы через блочную память как ПЗУ или же можно оставить их константами, но при этом интересует синтезируются эти константы и сколько они съедят ресурсов ПЛИСины?
Константы съедят место в зависимости от того, как они будут использоваться в схеме.

 

Кроме того, объем аппаратуры будет зависеть и от непосредственно самих значений этого массива констант. Поэтому нужно пробовать, экспериментировать. :)

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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