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

 
 
 
Reply to this topicStart new topic
> Использование RAM в качестве ПЗУ внутри ПЛИС, Можно (нужно) ли заменить логику памятью?
nikolascha
сообщение Apr 12 2012, 19:21
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 376
Регистрация: 20-06-09
Из: BY
Пользователь №: 50 480



Хотел узнать, может кто-нибудь использовал блоки ОЗУ, входящие в состав ПЛИС, в качестве ПЗУ для реализации логических функций, чтобы освободить немного слайсов для других целей, если вдруг ПЛИС заполнена на 100%, а блоки ОЗУ не используются? На сколько это бредовая идея, что скажите?
Go to the top of the page
 
+Quote Post
dm.pogrebnoy
сообщение Apr 12 2012, 21:54
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 747
Регистрация: 11-04-07
Пользователь №: 26 933



Почему бы и нет, идея не бредовая. В xilinx ise даже вроде опция есть которая автоматом должна это делать, правда ни разу не пробовал, не знаю как на самом деле будет работать. Но самому проинициализировать озу никто не запрещает.


--------------------
Go to the top of the page
 
+Quote Post
Wic
сообщение Apr 13 2012, 02:46
Сообщение #3


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

Группа: Свой
Сообщений: 183
Регистрация: 16-03-08
Из: Новосибирск
Пользователь №: 35 954



идея вполне хорошая, ресурсы нужно использовать разумно, озу можно подключить через функцию (как самый простой и прямой вариант). А функции для каждой среды (Altera/Xilinx) будут свои.
Go to the top of the page
 
+Quote Post
artix
сообщение Apr 13 2012, 05:37
Сообщение #4


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

Группа: Свой
Сообщений: 136
Регистрация: 19-10-10
Из: Киев
Пользователь №: 60 262



Цитата(nikolascha @ Apr 12 2012, 23:21) *
Хотел узнать, может кто-нибудь использовал блоки ОЗУ, входящие в состав ПЛИС, в качестве ПЗУ для реализации логических функций, чтобы освободить немного слайсов для других целей, если вдруг ПЛИС заполнена на 100%, а блоки ОЗУ не используются? На сколько это бредовая идея, что скажите?

Вполне согласен идея нормальная! Сам частенько пользую, если, например нужно "примапить" одно адресное пространство к другому.
Go to the top of the page
 
+Quote Post
nikolascha
сообщение Apr 13 2012, 08:54
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 376
Регистрация: 20-06-09
Из: BY
Пользователь №: 50 480



Цитата(dm.pogrebnoy @ Apr 12 2012, 23:54) *
В xilinx ise даже вроде опция есть которая автоматом должна это делать, правда ни разу не пробовал, не знаю как на самом деле будет работать.
Так что, есть даже поддержка в САПР этого дела? кто нибудь сталкивался? тыкните где почитать. Или же нужно самому выделять часть логики и расписывать до таблицы истинности?
Go to the top of the page
 
+Quote Post
artix
сообщение Apr 13 2012, 09:00
Сообщение #6


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

Группа: Свой
Сообщений: 136
Регистрация: 19-10-10
Из: Киев
Пользователь №: 60 262



Цитата(nikolascha @ Apr 13 2012, 12:54) *
Так что, есть даже поддержка в САПР этого дела? кто нибудь сталкивался? тыкните где почитать. Или же нужно самому выделять часть логики и расписывать до таблицы истинности?

Implement Design->Process Properties ->Map Properties->Map Slice Logic into Unused Block RAMs

Если Вы об этом laughing.gif
Go to the top of the page
 
+Quote Post
Boris_TS
сообщение Apr 13 2012, 10:41
Сообщение #7


Злополезный
****

Группа: Свой
Сообщений: 608
Регистрация: 19-06-06
Из: Russia Taganrog
Пользователь №: 18 188



Цитата(nikolascha @ Apr 13 2012, 12:54) *
тыкните где почитать.

Пожалуйста, вот от Xilinx соответствующий документик: WP335 - Creative Uses of Block RAM.

Go to the top of the page
 
+Quote Post
nikolascha
сообщение Apr 13 2012, 11:59
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 376
Регистрация: 20-06-09
Из: BY
Пользователь №: 50 480



Цитата(Boris_TS @ Apr 13 2012, 12:41) *
Пожалуйста, вот от Xilinx соответствующий документик: WP335 - Creative Uses of Block RAM.
Спасибо, прочитал. Но там говорится про конкретные применения. Хотелось бы почитать про возможность автоматизации средствами САПР (Map Slice Logic into Unused Block RAMs), которые автоматом выделяют логику в проекте и всовывают её функцию в ОЗУ.
Go to the top of the page
 
+Quote Post
Boris_TS
сообщение Apr 13 2012, 13:26
Сообщение #9


Злополезный
****

Группа: Свой
Сообщений: 608
Регистрация: 19-06-06
Из: Russia Taganrog
Пользователь №: 18 188



Цитата(nikolascha @ Apr 13 2012, 15:59) *
Спасибо, прочитал. Но там говорится про конкретные применения. Хотелось бы почитать про возможность автоматизации средствами САПР (Map Slice Logic into Unused Block RAMs), которые автоматом выделяют логику в проекте и всовывают её функцию в ОЗУ.

Тогда посмотрите в XST User Guide (xst.pdf) следующие constraint'ы: BRAM_MAP, FSM_STYLE, RAM_STYLE, ROM_STYLE. Эти constraint'ы позволяют задать XST тип элементов (LUT или BRAM), на которых будут реализованы конкретные узлы устройства.

Получается всего два варианта:
1. На стадии синтеза Вы указываете: что и как упаковывать.
2. На стадии MAP Вы можете разрешить системе самой решать, какую логику разместить в неиспользованные BRAM.

Т.к. синтез выполняется первым, то и оптимизация при синтезе может давать больше выигрыша, чем при MAP.
Go to the top of the page
 
+Quote Post
nikolascha
сообщение Apr 13 2012, 15:40
Сообщение #10


Местный
***

Группа: Свой
Сообщений: 376
Регистрация: 20-06-09
Из: BY
Пользователь №: 50 480



Цитата(Boris_TS @ Apr 13 2012, 15:26) *
Тогда посмотрите в XST User Guide (xst.pdf) следующие constraint'ы: BRAM_MAP, FSM_STYLE, RAM_STYLE, ROM_STYLE. Эти constraint'ы позволяют задать XST тип элементов (LUT или BRAM), на которых будут реализованы конкретные узлы устройства.
Спасибо, это то, что нужно.
Go to the top of the page
 
+Quote Post
svedach
сообщение Apr 14 2012, 13:55
Сообщение #11


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

Группа: Свой
Сообщений: 135
Регистрация: 8-01-12
Из: Беларусь
Пользователь №: 69 226



У меня XST вообще одну из FSM почему-то распознает как small RAM. Может кто подскажет почему? Другие FSM отлично распознаются.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 1st July 2025 - 01:52
Рейтинг@Mail.ru


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