MrGalaxy 9 24 октября, 2017 Опубликовано 24 октября, 2017 · Жалоба Доброго дня! Применил мегафункцию lpm_rom. При помещении в проект задал режим отображения в виде блока. Переназвал блок, переназвал порты, в связанном файле vhdl также эти названия откорректировал. Нажимаю "апдэйт блок", а он гад переименовывается опять в lpm_rom, а порты опять q и address. Как побороть это дело? Не очень хочется расписывать таблицы соединений. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 24 октября, 2017 Опубликовано 24 октября, 2017 (изменено) · Жалоба Доброго дня! Применил мегафункцию lpm_rom. При помещении в проект задал режим отображения в виде блока. Переназвал блок, переназвал порты, в связанном файле vhdl также эти названия откорректировал. Нажимаю "апдэйт блок", а он гад переименовывается опять в lpm_rom, а порты опять q и address. Как побороть это дело? Не очень хочется расписывать таблицы соединений. IMHO проще перейти на на "чистый" HDL. Изменено 24 октября, 2017 пользователем Flip-fl0p Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrGalaxy 9 24 октября, 2017 Опубликовано 24 октября, 2017 · Жалоба IMHO проще перейти на на "чистый" HDL. С удовольствием бы... Только блоки памяти ПЛИСки при этом не задействуются. :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 24 октября, 2017 Опубликовано 24 октября, 2017 (изменено) · Жалоба С удовольствием бы... Только блоки памяти ПЛИСки при этом не задействуются. :( Всё прекрасно задействуется: 1. Можно правильно описать память: тогда она автоматически будет синтезироваться. Как описать память см. Altera HDL coding style. 2. Можно при помощи Mega wizard генерировать необходимый блок памяти, описанный на HDL. Изменено 24 октября, 2017 пользователем Flip-fl0p Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 24 октября, 2017 Опубликовано 24 октября, 2017 · Жалоба С удовольствием бы... Только блоки памяти ПЛИСки при этом не задействуются. :( Это как же? Verilog HDL Synthesis Attributes and Directives http://quartushelp.altera.com/14.1/mergedP...og_file_dir.htm А аттрибуты синтеза написать? А если вот так: (* ramstyle = "M512" *) reg [0:7] my_ram[0:63]; Или так: reg [0:7] my_ram[0:63] /* synthesis ramstyle = "M512" */; И что тогда? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrGalaxy 9 24 октября, 2017 Опубликовано 24 октября, 2017 · Жалоба Всё прекрасно задействуется: 1. Можно правильно описать память: тогда она автоматически будет синтезироваться. Как описать память см. Altera HDL coding style. 2. Можно при помощи Mega wizard генерировать необходимый блок памяти, описанный на HDL. Это как же? Verilog HDL Synthesis Attributes and Directives http://quartushelp.altera.com/14.1/mergedP...og_file_dir.htm А аттрибуты синтеза написать? А если вот так: (* ramstyle = "M512" *) reg [0:7] my_ram[0:63]; Или так: reg [0:7] my_ram[0:63] /* synthesis ramstyle = "M512" */; И что тогда? Спасибо большое, я не знал, использую только vhdl. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 24 октября, 2017 Опубликовано 24 октября, 2017 · Жалоба Спасибо большое, я не знал, использую только vhdl. вот пример Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrGalaxy 9 25 октября, 2017 Опубликовано 25 октября, 2017 · Жалоба вот пример Я в принципе так и описываю, только размещение происходит в логических блоках, а не в ячейках памяти. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 25 октября, 2017 Опубликовано 25 октября, 2017 · Жалоба Я в принципе так и описываю, только размещение происходит в логических блоках, а не в ячейках памяти. Ну выше уже говорили про атрибуты синтеза. Ищите в хелпе. Например для VHDL: attribute ramstyle : string; attribute ramstyle of reg : signal is "M10K"; Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 25 октября, 2017 Опубликовано 25 октября, 2017 · Жалоба Я в принципе так и описываю, только размещение происходит в логических блоках, а не в ячейках памяти. Если Вы неправильно описали блок памяти, то никакие атрибуты синтеза Вам не помогут. Советую сгенерировать HDL описание памяти и по образу и подобию описать её. Как вариант в Quartus есть заготовки описания памяти "edit" -> "insert template" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 14 26 октября, 2017 Опубликовано 26 октября, 2017 · Жалоба Я в принципе так и описываю, только размещение происходит в логических блоках, а не в ячейках памяти.Вангую, вы используете сброс. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
MrGalaxy 9 26 октября, 2017 Опубликовано 26 октября, 2017 · Жалоба Вангую, вы используете сброс.Асинхронный? Не, он мне без надобности. Походу нашёл вожжу в Квартусе. Включил опцию Анализа и Синтеза "Auto implement in ROM". В компиляционном саммари появились мемори битс. :disco: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться