FatRobot 0 2 июня, 2016 Опубликовано 2 июня, 2016 · Жалоба ясно-понятно. Вот и научились бы пользоваться симулятором. Когда-то меня зазвали ... Когда-то давно [...] меня убеждали ... Но - если что - я стараюсь учиться. Если этого требует дело. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vovka1960 0 2 июня, 2016 Опубликовано 2 июня, 2016 · Жалоба читаем А где тут кнопочка "Спасибо"? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Timmy 1 2 июня, 2016 Опубликовано 2 июня, 2016 · Жалоба А можно тут "разжевать"? Вроде как HOLD - это Enable триггера, а клок как раз WE синхронный (если че, он ругается на асинхронные клоки безбожно). Ну и установочный вход триггера - RESET. По моему - все честно. Кстати - я раньше "Enable" ставил внутрь клока - но на сайте альтеры увидел классический пример описания триггера и там Enable был именно так использован. Из такого кода не вполне очевидно, что HOLD - синхронный enable, так как он находится за пределами условия rising_edge(clk) и включён в список чувствительности. Что касается синтезатора, то он может неправильно понять любой пусть и правильный, но нестандартный шаблон описания стандартного элемента. И ещё, в вашем коде во всех процессах в списках чувствительности присутствуют лишние сигналы, кроме клока и ресета больше ничего включать не надо, хотя это и не ошибка, но ухудшает читаемость и может тормозить симуляцию. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vovka1960 0 2 июня, 2016 Опубликовано 2 июня, 2016 · Жалоба Из такого кода не вполне очевидно, что HOLD - синхронный enable, так как он находится за пределами условия rising_edge(clk) и включён в список чувствительности. Что касается синтезатора, то он может неправильно понять любой пусть и правильный, но нестандартный шаблон описания стандартного элемента. И ещё, в вашем коде во всех процессах в списках чувствительности присутствуют лишние сигналы, кроме клока и ресета больше ничего включать не надо, хотя это и не ошибка, но ухудшает читаемость и может тормозить симуляцию. По поводу HOLD - des00 уже отписался по поводу примеров с сайта альтеры.. Ну что ж - опыт есть опыт.. По мне было бы логичным HOLD оставлять внутри, но авторитет сайта для меня был высок и стиль я поменял. Будем отыгрывать назад. По поводу перечня в списке чувствительности - тот же квартус жутко ругается на сигналы, используемые внутри и не включенные в список - на это просто не обращать внимание? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Timmy 1 2 июня, 2016 Опубликовано 2 июня, 2016 · Жалоба По поводу перечня в списке чувствительности - тот же квартус жутко ругается на сигналы, используемые внутри и не включенные в список - на это просто не обращать внимание? Не может такого быть, синхронный процесс не обладает чувствительностью к сигналам, находящимся внутри блока IF rising_edge(clk) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexRayne 7 3 июня, 2016 Опубликовано 3 июня, 2016 · Жалоба Не может такого быть, синхронный процесс не обладает чувствительностью к сигналам, находящимся внутри блока IF rising_edge(clk) Каков диагноз? исправление HOLD чтотщ поменяло? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dootch 0 14 июня, 2016 Опубликовано 14 июня, 2016 · Жалоба Эх, если бы еще уметь это делать... Меня максимум хватало на RTL-viewer. Но там я ничего крамольного не увидел. Пытался обмануть. Сделал массив 9-разрядным.. Хе-хе.. Оптимизатор мне сказал, что ай-яй-яй и убил 52 неиспользуемых регистра Можно попробовать для обмана использовать атрибут keep, что-то вроде: attribute keep: boolean; attribute keep of xHeader: signal is true; Если я все правильно написал, то оптимизатор ничего не выкинет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Strob 0 16 июня, 2016 Опубликовано 16 июня, 2016 (изменено) · Жалоба 1) сигнал записи 1us период тактовой 500ns. Это две записи подряд. Так и должно быть? 2) Тактовая вообще как тактовая разведена? или просто как сигнал? 3) Констрейны на тактовую прописаны? Имхо дело в каких-нибудь гонках. А замена констант может приводить к тому, что что-то где-то переразвелось более удачно. В настройках разводчика есть параметр(по крайней мере у ксайлинкс), который определяет некий начальный коэффициент для алгоритма. Если не менять код, а поиграть этим коэффициентом, может быть появится тот же результат что и при смене констант. Изменено 16 июня, 2016 пользователем Barktail Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Дмитрий_Богданов 0 19 июня, 2016 Опубликовано 19 июня, 2016 · Жалоба Здравствуйте, не могли вы мне помочь с задание на языке VHDL требуется написать программу вычисления формулы вот условие входы 16 и 12 разрядные при умножении разрядности операндов складываются. при сложении/вычитании результирующая разрядность- максим разрядность операнда +1 деление целочисленное, остаток отбрасывается каждый умножитель реализовать в синхронном процессе, так как сложная схема Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 19 июня, 2016 Опубликовано 19 июня, 2016 · Жалоба Здравствуйте, не могли вы мне помочь с задание на языке VHDL требуется написать программу вычисления формулы вот условие входы 16 и 12 разрядные при умножении разрядности операндов складываются. при сложении/вычитании результирующая разрядность- максим разрядность операнда +1 деление целочисленное, остаток отбрасывается каждый умножитель реализовать в синхронном процессе, так как сложная схема где формула? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Дмитрий_Богданов 0 19 июня, 2016 Опубликовано 19 июня, 2016 · Жалоба где формула? формула любая главное чтобы в ней было умножение, сложение, вычитание и деление и сложные операции через синхронный процесс Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 19 июня, 2016 Опубликовано 19 июня, 2016 · Жалоба формула любая главное чтобы в ней было умножение, сложение, вычитание и деление и сложные операции через синхронный процесс для начала посмотрите это - умножение, сложение, вычитание реализация деления Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Дмитрий_Богданов 0 19 июня, 2016 Опубликовано 19 июня, 2016 · Жалоба для начала посмотрите это - умножение, сложение, вычитание реализация деления спасибо а как сделать это в одной программе? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 19 июня, 2016 Опубликовано 19 июня, 2016 · Жалоба спасибо а как сделать это в одной программе? Можно соединять как компоненты или с помощью сигналов... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться