Bad0512 2 24 октября, 2016 Опубликовано 24 октября, 2016 · Жалоба C нулём все ок. А все биты в единицы как будете присваивать? Если так же, то у меня для вас плохая новость. Если речь идёт за SV (а вивада его таки поддерживает немножко) то почему нельзя так : a <= '1; Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Inanity 1 24 октября, 2016 Опубликовано 24 октября, 2016 · Жалоба Если речь идёт за SV (а вивада его таки поддерживает немножко) то почему нельзя так : a <= '1; Я говорил о Verilog, а не о SystemVerilog. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
a123-flex 0 25 октября, 2016 Опубликовано 25 октября, 2016 · Жалоба Получается, Vivado надо в связке с Synplify использовать :-( Особенно, если подсел на SystemVerilog. Да-а-а... Квартус имеет, конечно, свои болячки, но так злобно не поступает. Кстати, а в ISE что-то подобное этим тихим оптимизациям наблюдалось? Когда мне доводилось немного с ним работать, что-то не припомню таких проблем. Я когда начинал в ISE работать, 2 недели убил на сборку разрушенного проекта. Я не был корифеем ПЛИС как des, до ПЛИС программировал контроллеры. Как программист и написал: Шина4 <= {Шина1,Шина2,Шина3}, и Шина 2 оказалась не определена. Конструкция была формальная (она была связана с протоколом обмена), данные Шины2 нигде не использовались, но ISE с его топорной солдатской логикой, разумеется, понять такого не смог. Он провел глубокие оптимизации, в результате от проекта не осталось ничего. Начав с Шины2, потом расхерил саму объединенную шину, потом цепанул чего-то важное из объединенного регистра-накопителя, а потом все что осталось перестало иметь смысл, и он вырезал уже все что оставалось. Очень большое и неприятное удивление я получил, когда узнал, что синтезируемое подмножество VHDL в ISE гораздо больше чем VERILOG. Например, в VHDL ISE поддерживает двумерные массивы, а в Verilog-е нет. Разумеется воздушные SV конструкции он не может вкурить как класс, также мне кажется очень дерзко предлагать ему структуры. Текст должен быть написан сапогом - вот тогда все должно быть в ISE хорошо. У меня все стало хорошо, когда я начал делать синтез и логанализатор в Syn. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
myq 0 2 ноября, 2016 Опубликовано 2 ноября, 2016 · Жалоба С таким дерзким поведением Vivado не сталкивался, сижу на нём с 2013 года, до того - Quartus. Когда надо, использовал (* keep_hierarchy = "yes" *) - всегда ок. Правда я редко применяю >> и << и никогда не пишу многостроковые if'ы без begin/end'ов, только одностроковые. >> добавлвяет слева 0; >>> - добавляет слева знак. может сдвиги работают только с int'ами? вряд ли, хотя не проверял. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться