|
|
  |
Сюрприз от Квартуса |
|
|
|
Sep 17 2016, 08:56
|

Утомлённый солнцем
     
Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832

|
Цитата(Inanity @ Sep 17 2016, 11:45)  Понимаю, что маловероятно, но может enable памяти не активирован случайно? В RTL всё верное синтезировалось при подключении к памяти? Нету enable Код ENTITY rom_coe_re IS PORT ( address : IN STD_LOGIC_VECTOR (13 DOWNTO 0); clock : IN STD_LOGIC := '1'; q : OUT STD_LOGIC_VECTOR (15 DOWNTO 0) ); END rom_coe_re; В RTL тоже криминала не заметил. Перепроверил скоп, вывел q(0) на внешний порт - стабильный ноль хотя в массиве единицы есть.
|
|
|
|
|
Sep 17 2016, 09:57
|

Утомлённый солнцем
     
Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832

|
Цитата(des00 @ Sep 17 2016, 12:49)  Я перешел на поведенческое описание. А можно примерчик? А то у меня уже крыша едет,плохо соображаю. А,дошло. Описываем как массив и реализуем в памяти? Тоже были неприятности? Совершенно непонятно,у меня около десятка разных блоков памяти в проекте - все работают. Правда без инициализации.
|
|
|
|
|
Sep 17 2016, 10:30
|
Местный
  
Группа: Участник
Сообщений: 221
Регистрация: 6-07-12
Пользователь №: 72 653

|
Цитата(_Anatoliy @ Sep 17 2016, 12:57)  Описываем как массив и реализуем в памяти? Тоже были неприятности? Мне кажется это не решение проблемы. Да, память, математику таким образом ещё можно описывать, а иногда даже нужно, для большей переносимости кода, но не все примитивы можно так описать. Тут явно виноват квартус или генератор ядра. Есть ещё вариант вручную вместо генератора ядра описывать параметры конкретного примитива, но это тоже геморрой.
|
|
|
|
|
Sep 17 2016, 10:42
|

Утомлённый солнцем
     
Группа: Свой
Сообщений: 2 646
Регистрация: 15-07-06
Из: г.Донецк ДНР
Пользователь №: 18 832

|
Цитата(Inanity @ Sep 17 2016, 13:30)  Мне кажется это не решение проблемы. Да, память, математику таким образом ещё можно описывать, а иногда даже нужно, для большей переносимости кода, но не все примитивы можно так описать. Тут явно виноват квартус или генератор ядра. Есть ещё вариант вручную вместо генератора ядра описывать параметры конкретного примитива, но это тоже геморрой. Соглашусь с Вами. Сейчас попробовал вместо rom сгенерить ram с инициализацией - та же проблема. Я в шоке... Осталось попробовать вариант с массивом. Конечно ещё есть вариант с загрузкой данных в память но не хотелось бы извращаться.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|