Перейти к содержанию
    

Evil_Archer

Свой
  • Постов

    79
  • Зарегистрирован

  • Посещение

Весь контент Evil_Archer


  1. Приветствую, коллеги! Есть необходимость в процессе SI моделирования учесть передаточную характеристику пада микросхемы, вендор передает модель в формате Touchstone, однако подключить модель пада в S-параметрах в BoardSim довольно затруднительно. Решение есть на SupportNet, но, к сожеланию, доступ к порталу отсутствует. Требуются вот эти документы: https://supportnet.mentor.com/portal?do=ref...117-G111-P10319 https://supportnet.mentor.com/portal?do=ref...117-G111-P10319 Если у кого-то есть возможность, выложите пожалуйста эти документы. Заранее благодарен!
  2. Неплохой бесплатный плагин к эклипсу для работы с SystemVerilog. http://sveditor.sourceforge.net/
  3. Чип хороший, только очень дорогой и не очень хорошо доставаемый.
  4. В целом, соглашусь, но ПЛИС в последнее время пожирненли) Думаю, что данная тенденция продолжится)
  5. Присоединяюсь. Спасибо за тестирование! Очень ценная информация. Вобщем печально конечно с квестой все.
  6. /questasim/docs/technotes/sysvlog.note Прямо по главам стандарта расписано что поддерживается, а что нет.
  7. Дело не только в вызове внешних тулзов. IDE -это еще и поддержка шаблонов языка, автокомплит, экстракция и подсветка пользовательских типов данных, функций, классов и автодокументирование, быстрая навигация по коду, поддержка файловой структуры проекта ну и в контексте HDL дерева инстанций, плюс всякие вкусности а-ля IntelliSense как MS VisualStudio.
  8. Похоже, что это единственная вменяемая IDE для SV на сегодня, жаль что нет лекарства: цены кусаются. :crying:
  9. Судя по тестам произодительности, единичное ядро не так чтобы намного быстрее C2D в большинстве приложений, так что это вряд ли. А сервер нужен, и очень даже. Сидеть и ждать пока один процесс пролопатит все что вы хотите проверить на одном ядре бессмысленно: запускайте несколько копий симулятора одновременно и пусть каждая проверяет что-то свое. Simulation farm, короче говоря. Если у вас современный тестбенч по методологии Constraint-Randomized Testing, то просто меняете инициализатор псевдослучайного генератора симулятора, задавая для каждой копии свой, и получаете по-сути несколько разных тестбенчей. У нас сейчас 8-ядерный сервак на зеонах как раз, загрузка 100%, круглосуточно лопатит. И дейсвтительно очень помогает - отладка ускорятся в разы. Хотя, наверное, не для всех систем такой тестбенч можно написать. Тем не менее, именно из-за этого был задан вопрос по поддержке симуялторами SV.
  10. Да, тему видел, спасибо большое. И про шаблонные классы вы правы, все это есть, массивы виртуальных интерфейсов тоже. Странно, почему-то я считал, что VCS должен лучше поддерживать SV, все-таки на основе VERA, а это разработка самого Синопсиса по-сути.... Ну чтож, будем искать актуальную версию NC на попробовать.
  11. Может конечно :bb-offtopic: , но создавать отдельную тему вроде бы бессмысленно. Так получается, что сейчас "стоим на распутье" на предмет выбора тулзов под моделирование и синтез для ASIC. Краеугольный камень- поддержка SV. У кого есть опыт иcпользования продукции Mentor Graphics, Synopsys, Cadence, поделитесь, плз. Особенно интересуют симуляторы. В области синтеза, похоже, альтернативы DC нет, но хотелось бы узнать насколько он поддерживает синтезируемое подмножество SV. До этого работали только c FPGA на Questa + Precision. Как у других тулзов с поддержкой SV по сравнению с ними?
  12. Далеко не все архитектуры FPGA построены на LUT. И я имею счастье сражаться с одной из них по имени Actel ProASIC. У этого производителя вообще еще довольно много устройств, не использующих LUT. Что до пресижна, то очень радует поддержка SV, но результаты оценки быстродействия не лезут ни в какие рамки. У меня оценка пресижна отличается от результатов PAR обычно где-то в 2 раза, причем это еще хороший результат, полученный путем шаманства с констрейнами, а так бывает что и еще хуже.
  13. Смотрите мануал, раздел location mapping. Если проект уже создан, придется подправить в нем пути и в свойствах поставить галку напротив пункта "Convert pathnames to softnames". Если вкратце, то нужно заменить путь до папки с проектом на что-то вроде имени переменной окружения, например $PROJECT_DIR. Также нужно объявить переменную окрежения MGC_LOCATION_MAP, которая должна указывать путь к файлу с именем mgc_location_map. Этот файл в свою очередь должен выглядеть следующим образом: $PROJECT_DIR /path_to_project/ Таким образом, меняя соержимое файла, можно переносить проекты с компьютера на компьютер.
  14. Нет, с дефолтным блоком все работает, только он должен быть размещен непосредственно в программе. Но это как раз cycle delay (п. 15.10), а вот то, что значится под пунктом 15.14, действительно работает очень странно. Попробуйте конструкцию вида. INTERF.cb.signal<=##n 0; У меня не жалуется в этом случае. Если написать: ##n INTERF.cb.signal<= 0; , то пожалуется на отсутствие дефолтного клокинг-блока. Если его объявить в программе, то эта конструкция заработает нормально, но это отличается от описанного в п. 15.14, т.к. ## работает по дефолтному блоку в этом случае. Вобщем, вот так.... :laughing: На самом деле, я сам с этим столкнулся месяца 3 назад и для себя решил проблему при помощи repeat'a, но это конечно костыль.
  15. Думаю, что все по стандарту (п. 15.10): оператор ##n определяет задержку в n тактов _default'ного_ clocking блока, который может быть только один на модуль, интерфейс или программу. Я лично пользуюсь конструкцией вида: repeat (n) @INTERF.cb;
  16. Я работаю с Actel, поэтому ISE и EDK не проверял, ModelSim 6.3, как и QuestaSim, работает нормально.
  17. Исправил ошибки, добавил подсветку системных функций SV. langs.xml
  18. Подсветка синтаксиса SV для notepad++ 4.8.1. Просто к секции Verilog добавлены все ключевые слова по стандарту IEEE 1800-2005. langs.xml
  19. Большое спасибо :a14: , хотя конечно имплементация крайне странная на мой взгляд.
  20. Господа разработчики, разъясните пожалуйста вот такую ситуацию. Имеем код на SV: module test; bit [9:0] arr[3]; bit [9:0] tmp=10'd50; int cntr=0; initial begin foreach (arr[i]) arr[i]='0; arr[cntr++]|=tmp; $display("%d\n%d\n%d\n%d\n",arr[0],arr[1],arr[2],cntr); end endmodule Вывод: # 0 # 50 # 0 # 2 Я чего-то не понимаю, или это баг? Такая конструкция в С работает совершенно иначе :07: . Заранее прошу меня извинить, если я просто не понимаю логики работы симулятора при обработке такой конструкции. По моим представлениям вывод должен выглядеть так: # 50 # 0 # 0 # 1
  21. Много зависит от алгоритма распознавания, вы используете нейронные сети?
  22. Так собственно ответьте, пожалуйста, на вопрос : устраняется ли проблема сама собой, если воспользоваться более поздней версией QuestaSim, например 6.3d?
  23. С dataflow проблем не было...может везет пока... а шрифт в этой версии менять не пробовал, хотя с этим действительно и раньше косяки были.
×
×
  • Создать...