Jump to content

    

OparinVD

Участник
  • Content Count

    44
  • Joined

  • Last visited

Community Reputation

0 Обычный

About OparinVD

  • Rank
    Участник
  • Birthday 09/30/1981

Информация

  • Город
    Array

Recent Profile Visitors

588 profile views
  1. Проблему с "object 'libgtk3-nocsd.so.0' from LD_PRELOAD cannot be preloaded" решил с помощью одного из вариантов, предложенного тут. Признаться, пользователь линукс из меня так себе, я перепробовал многие из предложенных там вариантов, но проблема решилась после перезагрузки, поэтому какой именно метод выстрелил, я не знаю. Я вообще не очень понимаю, что это было, и что я исправил. Не знаю, связано ли это с локалью, но теперь работает :) На грабли с десятичной точкой я уже тоже наступал :) Сначала думал, что проблема вызвана переездом с Windows на Убунту, но оказалось, что не компилируется даже голый example project, созданный с нуля. Решение нашел тут
  2. Пардон, похоже, что разгадка никак не связана с дма и изернетом. Собрал новый тестовый проект с "корректным" подключением изернета, витис для него также не может построить bsp... Похоже, проблема в сообщениях, котроые я проигнорировал, т.к. не разбираясь, посчитал их следствием основной проблемы. Судя по всему, я неправильно приготовил витис под убунту... Тем не менее, мнения о подключении изернет-коре с удовольствием выслушаю :)
  3. Всех с наступившими праздниками! Картина такая: в vivado на основе примера создан bd-проект c axi_ethernet и microblaze'ом. Из стандартной цепочки был выкинут блок dma, т.к. совершенно не нужен, данные надо пережевывать своим ртл-блоком, не дожидаясь, пока пакет доедет целиком. Витис на это ругается. Говорит, что целевая переферия подключена неправильно, что к изернету надо обязательно подключать дма или mm-fifo. 2019.2 тоже ругался на это, но, поворчав, платформу создавал, и всё работало, а тут увы... Попробовал всунуть stream broadcaster, чтобы раздвоить поток от изернета: один оставить себе, другой пустить на mm-fifo... не помогло. Обработка данных вся основана именно на стриме, поэтому городить какой-то конвертер из mm в стрим не хотелось бы. В настройках ethernet core нигде не нашел настроек, которые отвечали бы за то, какой блок должен висеть на выходе приемника изернета, но в tcl-скриптах эта проверка идет... Есть ли какое-то отворотное зелье, чтобы витис забыл про дма и mm-fifo? Вот полное ругательство Витиса:
  4. Ух! Это ж еще одно поле не паханное! Боюсь, что в ближайшее время для моей психики будет проще считать, что "доктор сказал, ты умрешь..." :) Спасибо за науку, дальше тогда сам копать буду
  5. А.. понял. Значит мой следующий шаг - прикрутить Моделсим как основной симулятор в Виваде и научиться его готовить. Тогда последний вопрос из области симуляторов. В свое время я его отбросил, как нечто из области фантастики, но вдруг я ошибался... Вопрос такой: могут ли современные симуляторы взаимодействовать с внешним миром кроме как через файловую систему? А именно, можно ли организовать такой стенд, где тестер накидывает пакеты через изернет и получает интерактивно ответы, но обработка идет не железе, а в модели? Или оно не стоит потраченных сил?
  6. Ни в коем случае :) Если сравнивать с поделками из прошлой жизни, то мой текущий проект уже выглядит огромным :) И да, я уже столкнулся с болью от того, что мой Альдек не может моделировать криптованные корки новых Vivado. Пришлось вести две версии проекта: одну можно моделировать в Альдеке, вторую можно синтезировать и моделировать в Vivado, но это вызвано несовместимостью версий, как уже обсуждали весной, а не принципиальными ограничениями Альдека... Из планов на обозримое будущее - довести текущий проект до полнофункционального состояния, не задерживаясь на оптимизации. Основная цель - найти все грабли на прикладном уровне, и понять, где нужны чугунные мосты, а где ими никто пользоваться не будет. А потом займусь причесыванием, и вот там уже, надеюсь, подключу в свой арсенал все фишки SV. Можете на свой вкус порекомендовать, в сторону какого тулза смотреть? Хотелок у меня не так уж много: хочется, чтобы весь маршрут оставался в рамках одного пакета, чтобы Виваде отдать готовый проверенный кубик и запустить синтез; очень хочется FSM-рисовалку, без них прямо жизни нет :) желательна версия под Линукс
  7. А ООП это что? Объектно-ориентированное проектирование? Я почему в сторону Ривьеры смотрю, она вроде как под Линукс должна работать. Мне сейчас пришлось ActiveHDL на виртуальной машине запускать и через папку синхронизации давать исходники Виваде. Вроде не сказать, что сильное извращение, но если получится без него, то будет лучше :)
  8. Спасибо, принял к сведению. Займусь, как только прожую тот кусок информации, который уже пришлось отхватить за последнее время :) На сегодня миксед-сигнал мне не нужен, на потребляемых ваттах мы не экономим. Бэк-аннотейтед для себя пока тоже не вижу. Я гоняю модель на чисто функциональном уровне, потом скармливаю проект Виваде, и, если тайм-анализ сказал Ок, то я этим удовлетворен. Code-coverage в ActiveHDL видел, но не пользовался, надо будет уделить ему время. SV модули у меня написаны на средне-колхозном уровне, Альдек их спокойно переваривает и без проблем разрешает напрямую кидать на диаграмму... Значит ли это, что на данном этапе своего развития мне нет смысла пересаживаться на что-то новое? И еще вопрос: чем всё-таки отличаются ActiveHDL и Rivera? Одно является логическим развитием другого или они всё-таки для разных задач?
  9. Соседняя тема про редакторы HDL подтолкнула меня к созданию подобной ветки про симуляторы. Я хочу выбрать для себя средство отладки так, чтобы сразу всё стало качественно и по-взрослому :) Поставить всё, что есть на рынке, опробовать и выбрать физически не возможно, хотелось бы выбрать одно направление и развивать его. Из рекламных описаний ничего не поймешь, все без сомнения лидеры индустрии, и уж с ними процесс оладки точно сократится на 90%. С сайта Альдека, например, я так и не понял, чем классический ActiveHDL отличается от Rivera'ы. Собственно, вопрос можно распространить на все тулзы: что для чего предназначено? есть только вкус и цвет или есть некая узкая (или не очень узкая) специализация каждого инструмента? По второму вопросу сначала повторюсь. Я с первого дня знакомства с ПЛИС работал с ActiveHDL. Мне функционала хватало, но я регулярно встречаю мнение, что он слабоват для верификации, и это наводит на мысли, что я что-то упускаю... Как я делаю: совсем простенькие низкоуровневые куски гоняю в интерактиве, для остального пишу тестбенч на SV. Где-то визуально анализирую результат, где-то пишу автоматическое сравнение с эталоном. Моделирует быстро, по крайней мере по сравнению с Vivado :) Отсюда вопрос: какими хотелками в области верификации полезно обзавестись разработчику? Какие фишки предлагают серьезные пакеты?
  10. У меня всё на столе, поэтому сложности с прокси для меня чужды :) Хотя, может скоро дорасту до момента, когда целевая платформа будет воткнута в удаленный сервер. Но даже в этом виде мне сложно представить, что я буду через терминал править исходники. Скорей всего на рабочей машине останутся все привычные тулзы, а на сервер буду закидывать готовые исходники, и пусть он их пережевывает и плавит в железо. По крайней мере, так мне видится это сейчас через розовые очки :)
  11. Перечитал ветку, и что-то у меня сова не натягивается. Половина сообщений связана с тем, умеет ли текстовый редактор делать так, чтоб было похоже на IDE. А почему тогда не IDE? С ходу, конечно, есть два очевидных ответа: 1) цена; 2) в каждом IDE есть что-то удобное, а что-то до ужаса не устраивает (Altrea c Xilinx на этот счет, похоже, вообще не парятся :) делают отличную имплементацию, а остальное - для галочки). Но меня не покидает ощущение, что я кактус не с той стороны жую... что все давно освоили волшебную связку инструментов, а я остался с динозаврами. Я пользуюсь ActiveHDL, очень нравятся его рисовалки, особенно FSM. Текстовые способности может и хуже, чем у sublime, но точно лучше, чем у Vivado. В общем, поделитесь, как вы пользуетесь отдельными редакторами, т.е как у вас выглядит связка инструментов?
  12. Честно говоря, я TCL не особо-то умею применять... Я всегда брал generic и на его основе в тексте, где надо вставлял конструкции, которые влияют на варианты синтеза, типа if ... generate и т.д. Наверно, поэтому мне сложно мозг переключить на философию xilinx. А где почитать про "конфигурируйте ваши BD через TCL скрипт "?
  13. Да, но... Скомпилированные модули должны иметь настраиваемые параметры, а BD это один из возможных вариантов при упаковке user-IP. Но получается, что я не могу создать свой настраиваемый IP на основе BD, мне остается только текстовый портмап, только хардкор! Ну или сторонние инструменты, но я пользовался только ActiveHDL, а там возникают другие проблемы... upd : опять же работу в Xilinx проделали действительно серьезную. Несмотря на то, что BD это TCL, он вполне себе умеет рыться в генериках накиданных в него компонентов и автоматически дает им нужные значения, если, например, ширина данных в цепочке конвейера разнится от компонента к компоненту... На фоне всего, что BD умеет отсутствие возможности выкинуть параметр наверх выглядит как умышленное решение, а не как увиливание от заморочек (imho :) )
  14. Спасибо! Очень жаль, что вариантов нет... Вручную портмапить тоже удовольствие сомнительное. Всё-таки у блок-дизайна есть несомненно вкусные плюшки, типа соединения сразу целыми интерфейсами, автоматической настройки параметров стандартных корок и т.д. Но какая религия запретила им сделать генерики для блок-дизайна - не пойму :) Может что-то можно из этого получить... но наверх через блок-дизайн не выкинуть... Придется действительно сигналами заводить, это, конечно, не так изящно как, например (for i... generate), но сработает
  15. Доброго дня! Вопрос, как я понял, довольно частый, но ответа я так и не нашел. Суть простая: в блок-дизайне я создаю компонент, который будет вставлен на топ-левел в виде нескольких копий, у каждой копии будет свой порядковый номер. Этот номер должен распространиться на нижестоящие компоненты в блок-дизайне, чтобы они знали, в канале с каким номером они работают. Вивадо вроде как при упаковке ip-core находит все топ-левел генерики и отображает их как настраиваемые параметры. Всё было бы хорошо, если бы у меня был текстовый топ-левел, а вот в блок-дизайне я нигде не найду как поместить такой генерик. Пока вижу единственный выход - это взять vhd-файл который отображает структуру блок-дизайна и вручную добавить в него топ-левел генерик и спортмапить его на все нижестоящие компоненты. Но это же дикий головняк! При любом телодвижении этот файл перезапишется - и начинай сначала... Как этим правильно пользоваться? Может философия Xilinx шагнула уже далеко вперед, и по их концепции это уже не требуется, а я не так всё понимаю?