Обновить
27
0
Григорий@GREGOR_812

Программист

Отправить сообщение
Было бы здорово увидеть статью об этом)
Мне посоветовали добавить опрос, прикрепил его, проголосуйте, пожалуйста) Если будут голоса за линукс, надо будет дополнить статью инструкциями, как то же самое делать в линуксе
Спасибо за ссылку, обязательно ознакомлюсь :)
Приветствую!

С VHDL никогда не работал, так что ничего конкретного подсказать, к сожалению, не смогу. Есть мысль попробовать запустить симуляцию вашего проекта, используя NativeLink квартуса и посмотреть, какой скрипт он сгенерит, затем попробовать проанализировать его) Что касается наличия чип-зависимых IP, тут уже нужны библиотеки производителя, их надо использовать при указании библиотек в ModelSim.

Удачи!
Да, спасибо, уже понял)
LynXzpSingerofthefall как это противоречит моему утверждению?
В последнем случае на самом деле всё понятно
Рассмотрим два пути:

1. правый операнд при сложении вычисляется первым
Тогда наше выражение пройдёт следующий путь
> i = 0;
> 0++ + ++0 -> 1++ + 1 -> 2 (i = 2)

2. левый операнд вычисляется первым
> i = 0;
> 0++ + ++0 -> 0 + ++1 -> 2 (i = 2)

и результат равен 2, и значение i равно 2
Полностью соглашусь, я именно это и имел в виду под «особым ритуалом»
Да, кстати, вот с крэшами иногда сильно подбешивает. Ещё нужно особый ритуал производить при переименовывании компонентов при удалении/добавлении/перемещении, чтобы связи на плате не испортились. Но интерфейс очень дружелюбный и легко осваиваемый) эх, нет в жизни совершенства...(
Спасибо за ответ)
Я просто подумал, мб какие-то объективные причины есть, о которых опытные разработчики знают.
Попробую переехать, попытка не пытка) Лично для меня Altium привлекателен тем, что очень много актуальных ресурсов и хорошая документация на русском языке, ну и в целом в моём окружении все с ним работают
А какие перспективы у меня, если я Altium использую? Почему стандартом является Cadence?)
Я уже осилил первую часть и сел за вторую, но она медленнее идёт, сложнее)
Ещё нашёл книгу такого автора как Кечиев, на первый взгляд показалась довольно подробной и интересной.
Какая интересная затравочка! Спасибо, подписываюсь на блог, буду следить)
Мне, как человеку относительно новому в этом деле, интересно было бы видеть указания на подводные камни при плотной высокоскоростной трассировке, варианты их обхода, какие-то эмпирические фишки, всё-такое)
ну так и C тоже растёт при увеличении длины дорожки.
То, о чём вы говорите, имеет место быть. Длинная линия может работать в двух режимах: в режимах RC, когда частота сигнала ниже некой пороговой частоты линии, и в режиме линии с постоянным волновым сопротивлением, когда частота сигнала выше пороговой частоты RC-режима, но ниже частоты режима волновода
Продублируйте, пожалуйста, текст не до конца сохранился
Я думал это написать, но не смог внятно сформулировать) Насколько я понял, при использовании блокирующих присваиваний важен порядок строк в коде, и тогда если написать
b = c;
a = b;
то для компилятора переменная b уже будет как бы «определена», а её значение равно c. И он подставит c вместо b во всех строках, идущих после.
Тогда есть смысла _всегда_ использовать неблокирующие присваивания, чтобы не задумываться, в каком порядке писать строчки кода
Причём если поменять местами 2 строчки и написать так:

data_o <= data_between;
data_between <= data_i;

То никакой оптимизации не произойдёт)) У меня нещадно бомбило однажды от такого поведения кода
Я сразу указал, что я не профессионал, поэтому не могу ответить на это) читал в книгах и слышал от разбирающихся людей, что в комб. логике не следует использовать неблокирующие присваивания.
Я пишу на SystemVerilog, там можно явно указать, какая логика требуется: флип-флопы, защёлки или комбинационная ( always_ff, always_latch, always_comb) соответственно. У 2 и 3 списка чувствительности нет в принципе.
Не за что) Я думаю насчёт статьи, но у меня нет пока достойного проекта)

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность