Jump to content

    

DSIoffe

Свой
  • Content Count

    1729
  • Joined

  • Last visited

Community Reputation

0 Обычный

About DSIoffe

  • Rank
    Дима
  • Birthday 03/18/1960

Контакты

  • Сайт
    http://www.dsioffe.narod.ru
  • ICQ
    313263348

Информация

  • Город
    Санкт-Петербург

Старые поля

  • Vkontakte
    http://vk.com/dsioffe

Recent Profile Visitors

7085 profile views
  1. И, если можно, ещё вопросы. Уважаемый des00, на Вашем рисунке виден некий переходный процесс запуска PLL. И импульсы с PLL идут недолго. У меня сначала тоже так было. Но потом я убрал сообщение о том, что The frequency of the reference clock signal differs from the specified frequency (120.0 MHz), а именно, сделал период тактовой частоты в проекте 8.3333333 ns вместо 2 нс, которые изначально стояли от балды. Теперь модель работает неограниченное время (я пробовал до 500 мс), но этого переходного процесса нет. Прикладываю рисунок. Скажите, пожалуйста, этот переходный процесс отражает что-то реальное, или это какая-то ошибка? Если оно реальное, то как его вернуть? Заранее признателен. И ещё: насколько нужен ключ novopt? Questa Sim угрожает увеличением времени моделирования при использовании этого ключа.
  2. Огромное спасибо! Я вставил ровно то, что было написано в Вашем совете :( Ибо не понял то заклинание. Теперь понимаю: Intel переименовал мегафункцию в PLL Intel FPGA IP v18.1, но не вписал новое имя в файл lst. Я взял новое имя мегафункции из файла vhd, который сделал Quartus, и вписал его как ещё один alias в lst, и заработало. А в родном файле lst расписаны alias-ы аж до несуществующей версии Quartus 20.1, и все под старым именем, <ALIAS>Altera PLL v20.1</ALIAS>. Тьфу. И даже трудно винить Intel: разве уследишь в огромной фирме за каждым файликом из многих тысяч. Тут без стакана форума не разобраться. И ещё раз огромное спасибо. Правильное место, я мог бы и сам догадаться :(
  3. Огромное спасибо! Работает! Теперь понять бы, почему для моделирования нужны именно эти файлы? Не подскажете, где про это можно прочитать? В частности, про файл vho? Спасибо! Теперь и для меня оно разумеется :) Эх, академиев мы не кончали :(
  4. Прошу прощения, тут довольно хитрое устройство. Получается так: любой проект видит сверх некоего базового набора только те библиотеки, которые есть в файле mpf. Скомпилированные библиотеки в этот базовый набор не входят, сколько ни пиши их в корневой modelsim.ini. Но: при создании нового проекта в файл mpf добавляются все добавленные мною пути к скомпилированным библиотекам, которые есть в корневом modelsim.ini. И вот тогда они попадают на закладку Library. В старых mpf этих путей не было, потому они и не отображались и не работали. А в новых проектах, созданных уже после редактирования корневого modelsim.ini, всё есть.
  5. Прикладываю. Спасибо. pll.zip Сделал. Вставил эту строку последней, перед закрывающим тегом </INFO>. Не помогло :(
  6. Вроде до [DefineOptionset] всё продолжается секция [Library] ? Вставил эти строки перед std. Не влияет :( Атрибут "read only" вернул. Добавляются только те библиотеки, которые вписаны в mpf. UPD: если запустить Questa Sim, не загружая в неё проект, то все библиотеки отображаются на закладке Library, в том числе и те, которые я вписал в корневой ini. Но если после этого загрузить mpf, в котором этих вписанных нет, то последние исчезают с закладки library. Если этот проект закрыть, то опять показаны все.
  7. И те, и другие. Я прописал скомпилированные библиотеки в корневой modelsim.ini, вот этот: C:\questasim64_10.4c\modelsim.ini. Не сам придумал, а скопировал из того modelsim.ini, которого родил Quartus при компиляции библиотек. А они всё равно не появились на закладке Library в Questa Sim. Почему такое может быть? Если их списать в файл проекта, тогда они на закладке Library появятся. Но на результат это не влияет. В текущем проекте только те жалобы, про которые я написал. А старые проекты вообще запускаются молча, сплошное # Errors: 0, Warnings: 0, но нет выходных сигналов PLL и всего, что от них зависит. И ещё: почему перестали нормально редактироваться реализации IP-ядер?
  8. Я их компилировал вот так: Tools -> Launch Simulation Library Compiler , указал где лежит Questa Sim и куда складывать результат. А в проекте Questa Sim добавлял полученные библиотеки через File - New Library в режиме a map to an existing library, как на картинке. А как надо?
  9. Спасибо. Оно попросило altera_pll. Я нашёл altera_pll.v в потрохах Quartus, добавил его в проект, тогда сказали, что некая конструкция оттуда допустима только в SystemVerilog, на этом всё кончилось.
  10. Здравствуйте все! Пробую моделировать работу IP-ядра PLL (PLL Intel FPGA IP) в Questa Sim. Работаю в Quartus 18.1, ПЛИС Cyclone V. Библиотеки Quartus откомпилированы и добавлены в Questa Sim. Файл vhd называется mypll.vhd. Questa Sim пишет предупреждение, что некий файл mypll_0002" is not bound. Моделирование не получается. В файле mypll.vhd есть ссылка на файл mypll_0002. Он есть, но сгенерирован на Verilog. При попытке добавить его в проект вылетает целая куча ошибок. Ещё странное. Раньше для редактирования своей реализации мегафункции я открывал из Quartus файл с расширением vhd, который сгенерировал мегавизард. После этого мегавизард сам запускался уже с той мегафункцией, и я мог править отдельные параметры. Теперь тот файл vhd открывается в Quartus как текстовый. Править отдельные параметры не получается, приходится запускать мегавизард с нуля и всё вбивать заново. Сразу скажу, что в прошлом году у меня это получалось. Даже как-то моделировался начальный запуск PLL. Теперь не работают и прошлогодние проекты. Откат на Quartus 18.0 не помог. Подскажите, пожалуйста, как вернуть старое поведение? Заранее признателен.
  11. Можно не все мыслимые номиналы и допуски вбивать в базу, а только те, что реально используются. У меня за год набежало штук 60. Добавлял по две-три строчки по мере необходимости.
  12. А вот такая засада. Я правлю исходники во внешнем редакторе. После правки такая усечённая компиляция не запускается, пишет, что она уже закончена. Что делать? Полная компиляция работает нормально. И до кучи. Если компилировать bat-файлом, то Signal Tap не даёт работать, после заливки файла SOF пишет о несовпадении контрольной суммы. Опять же, что делать? Заранее признателен.
  13. Вот спасибо! Я таки сделал bat файл. Он делает компиляцию, не запуская временной анализатор, и выводит в отчёт время компиляции. Можно добавлять и убирать этапы компиляции по вкусу. Расчёт времени компиляции взят отсюда: "Засекаем время в bat/cmd". Может быть, кому-то пригодится. @echo off set ProjectName=MyProject echo Компиляция проекта %ProjectName% из командной строки >compile.log rem Вычисление времени начала компиляции в секундах set t1=%time% set t1_h=%t1:~0,2% set t1_m=%t1:~3,2% set t1_s=%t1:~6,2% set /a s1= t1_h * 60 * 60 + t1_m * 60 + t1_s set StepName=Анализ и синтез quartus_map --read_settings_files=on --write_settings_files=off %ProjectName% -c %ProjectName% >nul set MyLevel=%errorlevel% if MyLevel==1 goto ErrorStop echo Выполнено: %StepName% >>compile.log set StepName=Анализ назначений ввода-вывода quartus_fit --read_settings_files=off --write_settings_files=off %ProjectName% -c %ProjectName% --plan >nul set MyLevel=%errorlevel% if MyLevel==1 goto ErrorStop echo Выполнено: %StepName% >>compile.log set StepName=Размещение и трассировка quartus_fit --read_settings_files=off --write_settings_files=off %ProjectName% -c %ProjectName% >nul set MyLevel=%errorlevel% if MyLevel==1 goto ErrorStop echo Выполнено: %StepName% >>compile.log set StepName=Запуск ассемблера quartus_asm --read_settings_files=off --write_settings_files=off %ProjectName% -c %ProjectName% >nul set MyLevel=%errorlevel% if MyLevel==1 goto ErrorStop echo Выполнено: %StepName% >>compile.log rem Вычисление времени конца компиляции в секундах set t2=%time% set t2_h=%t2:~0,2% set t2_m=%t2:~3,2% set t2_s=%t2:~6,2% set /a s2= t2_h * 60 * 60 + t2_m * 60 + t2_s rem Вычисление времени компиляции и его отображение в удобном виде: set /a s3=s2-s1 set /a t3_h= s3 / 60 / 60 set /a t3_m= s3 %% (60 * 60) / 60 set /a t3_s= s3 %% (60) set t3=%t3_h%:%t3_m%:%t3_s% echo Время компиляции %t3% >>compile.log exit :ErrorStop echo. >>compile.log echo Ошибка на этапе %StepName%: >>compile.log if MyLevel==2 echo Ошибка выполнения или внутренняя ошибка >>compile.log if MyLevel==3 echo Ошибка пользователя >>compile.log if MyLevel==4 echo Выполнение модуля %StepName% прервано пользователем >>compile.log exit