DSIoffe 5 7 июня, 2019 Опубликовано 7 июня, 2019 · Жалоба 23 часа назад, StewartLittle сказал: Отредактированный modelsim.ini в студию! Прошу прощения, тут довольно хитрое устройство. Получается так: любой проект видит сверх некоего базового набора только те библиотеки, которые есть в файле mpf. Скомпилированные библиотеки в этот базовый набор не входят, сколько ни пиши их в корневой modelsim.ini. Но: при создании нового проекта в файл mpf добавляются все добавленные мною пути к скомпилированным библиотекам, которые есть в корневом modelsim.ini. И вот тогда они попадают на закладку Library. В старых mpf этих путей не было, потому они и не отображались и не работали. А в новых проектах, созданных уже после редактирования корневого modelsim.ini, всё есть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 7 июня, 2019 Опубликовано 7 июня, 2019 · Жалоба 54 minutes ago, DSIoffe said: Прикладываю. Спасибо. pll.zip Сделал. Вставил эту строку последней, перед закрывающим тегом </INFO>. Не помогло :( Файлы нужные для моделирования, с правкой ссылок на библиотеки в VHDL файлах в квартусе 17.1 quartus\eda\sim_lib\altera_lnsim.sv quartus\libraries\vhdl\altera_lnsim\altera_lnsim_components.vhd pll\Quartus\mypll_sim\mypll.vho pll\Sources\TestPLL.vhd pll\Model\TestPLL_tb.vhd Мне лень было собирать все это правильно и все такое. Правка mypll.vho -- LIBRARY altera_lnsim; -- USE altera_lnsim.altera_lnsim_components.all; USE work.altera_lnsim_components.all; запуск моделирования vsim -novopt TestPLL_tb -t 1ps Судя по тексту в консоли # Info: ================================================= # Info: Generic PLL Summary # Info: ================================================= # Time scale of (testpll_tb.TestPLL_0.mypll_0.mypll_altera_pll_altera_pll_i_639.new_model.gpll.no_need_to_gen) is 1ps / 1ps # Info: hierarchical_name = testpll_tb.TestPLL_0.mypll_0.mypll_altera_pll_altera_pll_i_639.new_model.gpll.no_need_to_gen # Info: reference_clock_frequency = 120.0 MHz # Info: output_clock_frequency = 17 MHZ # Info: phase_shift = 0 ps # Info: duty_cycle = 50 # Info: sim_additional_refclk_cycles_to_lock = 0 # Info: output_clock_high_period = 29411.764706 # Info: output_clock_low_period = 29411.764706 # Info: hierarchical_name = testpll_tb.TestPLL_0.mypll_0.mypll_altera_pll_altera_pll_i_639.new_model.gpll.UI # Warning: The frequency of the reference clock signal differs from the specified frequency (120.0 MHz). какие то параметры не те и моделирование идет не так) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 7 июня, 2019 Опубликовано 7 июня, 2019 · Жалоба 59 минут назад, DSIoffe сказал: при создании нового проекта в файл mpf добавляются все добавленные мною пути к скомпилированным библиотекам, которые есть в корневом modelsim.ini. И вот тогда они попадают на закладку Library. В старых mpf этих путей не было, потому они и не отображались и не работали. А в новых проектах, созданных уже после редактирования корневого modelsim.ini, всё есть. Разумеется!!! Когда Вы создаете новый проект, в него копируется "корневой" ini-файл. Все дальнейшие изменения настроек проекта буду отображаться уже в этоц копии ini-файла. Соответственно, если "коревой" ini был подкручен уже после того, как новый проект создан, то в ini-файле проекта эти внесенные изменения автоматически отображены не будут. Тем не менее, их можно внести туда врукопашную, также, как и в "корневой" ini-файл. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DSIoffe 5 7 июня, 2019 Опубликовано 7 июня, 2019 · Жалоба 36 минут назад, des00 сказал: Файлы нужные для моделирования, с правкой ссылок на библиотеки в VHDL файлах в квартусе 17.1 Огромное спасибо! Работает! Теперь понять бы, почему для моделирования нужны именно эти файлы? Не подскажете, где про это можно прочитать? В частности, про файл vho? 13 минут назад, StewartLittle сказал: Разумеется!!! Спасибо! Теперь и для меня оно разумеется :) Эх, академиев мы не кончали :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 7 июня, 2019 Опубликовано 7 июня, 2019 · Жалоба 6 минут назад, DSIoffe сказал: В частности, про файл vho? vho - это "выходной" vhdl, который генерируется EDA Netlist Writer'ом после синтеза или плейса/раута, если Вы указали, что желаете повести post-synthesis или post-pnr моделирование. Ну или на этапе создания реализации IP-ядра, если соответствующая галка была взведена в визарде. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iglaz3 0 7 июня, 2019 Опубликовано 7 июня, 2019 · Жалоба 3 hours ago, DSIoffe said: Прикладываю. Спасибо. pll.zip Сделал. Вставил эту строку последней, перед закрывающим тегом </INFO>. Не помогло :( А точно вставили строку со своим названием IP-ядра? По логу мегавизард не может найти имя "PLL Intel FPGA IP v18.1" Quote Jun 07 01PM:53:01>: Megafunction PLL Intel FPGA IP v18.1 is not listed in any wizard.lst file in the specified library path(s).Wizard launch aborted <ALIAS>PLL Intel FPGA IP v18.1</ALIAS> Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 7 июня, 2019 Опубликовано 7 июня, 2019 · Жалоба 3 hours ago, DSIoffe said: Огромное спасибо! Работает! Теперь понять бы, почему для моделирования нужны именно эти файлы? Не подскажете, где про это можно прочитать? В частности, про файл vho? Из первого что под рукой : Quartus II Handbook Version 9.0 Volume 3: Verification -> Section I. Simulation -> 2. Mentor Graphics ModelSim Support -> Altera Design Flow with ModelSim-Altera or ModelSim Software Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DSIoffe 5 10 июня, 2019 Опубликовано 10 июня, 2019 · Жалоба В 07.06.2019 в 17:08, iglaz3 сказал: А точно вставили строку со своим названием IP-ядра? Огромное спасибо! Я вставил ровно то, что было написано в Вашем совете :( Ибо не понял то заклинание. Теперь понимаю: Intel переименовал мегафункцию в PLL Intel FPGA IP v18.1, но не вписал новое имя в файл lst. Я взял новое имя мегафункции из файла vhd, который сделал Quartus, и вписал его как ещё один alias в lst, и заработало. А в родном файле lst расписаны alias-ы аж до несуществующей версии Quartus 20.1, и все под старым именем, <ALIAS>Altera PLL v20.1</ALIAS>. Тьфу. И даже трудно винить Intel: разве уследишь в огромной фирме за каждым файликом из многих тысяч. Тут без стакана форума не разобраться. В 07.06.2019 в 19:01, des00 сказал: Из первого что под рукой И ещё раз огромное спасибо. Правильное место, я мог бы и сам догадаться :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DSIoffe 5 10 июня, 2019 Опубликовано 10 июня, 2019 · Жалоба И, если можно, ещё вопросы. Уважаемый 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 угрожает увеличением времени моделирования при использовании этого ключа. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 11 июня, 2019 Опубликовано 11 июня, 2019 · Жалоба 14 hours ago, DSIoffe said: Скажите, пожалуйста, этот переходный процесс отражает что-то реальное, или это какая-то ошибка? Если оно реальное, то как его вернуть? Заранее признателен. Модель поведенческая так написана. Когда то давно я расковыривал до сорцов модель PLL, там тупо сделано на задержках и средствах языка по их моделированию. Ждать идеально точного поведения как PLL входит в захват, с этими моделями, думаю бесполезно. 14 hours ago, DSIoffe said: И ещё: насколько нужен ключ novopt? Questa Sim угрожает увеличением времени моделирования при использовании этого ключа. Это указание не оптимизировать сорцы при компиляции, позволяет оставить все переменные для отладки, но, т.к. на это нужны ресурсы, то время моделирования действительно увеличивается в разы. В новых этот ключ убрали, там сейчас другие опции управления видимостью переменных при оптимизаци. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 11 июня, 2019 Опубликовано 11 июня, 2019 · Жалоба 2 hours ago, des00 said: Модель поведенческая так написана. Когда то давно я расковыривал до сорцов модель PLL, там тупо сделано на задержках и средствах языка по их моделированию. Ждать идеально точного поведения как PLL входит в захват, с этими моделями, думаю бесполезно. Раз пошла такая пляска и я задам пару вопросов. Подскажите, пожалуйста, Вы с Ксайлинксами не имели дела в этом плане? У меня получается так, что сгенерированные 4 частоты, сдвинутые по фазе на +90 градусов каждая следующая, выключают вторую частоту на 1 пикосекунду раньше нужного (не синхронно со срабатыванием 4-той). Это может быть из-за кривого описания примитивов или ошибки созданного тестбенча? Fig. 1 И более интересный вопрос: При временном моделировании для PLL/MMCM/(аналоги альтеры) синтезируется джиттер? Или это нереально/не нужно? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 11 июня, 2019 Опубликовано 11 июня, 2019 · Жалоба 1 hour ago, Nick_K said: Подскажите, пожалуйста, Вы с Ксайлинксами не имели дела в этом плане? У меня получается так, что сгенерированные 4 частоты, сдвинутые по фазе на +90 градусов каждая следующая, выключают вторую частоту на 1 пикосекунду раньше нужного (не синхронно со срабатыванием 4-той). Это может быть из-за кривого описания примитивов или ошибки созданного тестбенча? скорее всего, у вас временное разрешение моделирования 1пс и то что вы видите, следствие работы sheduler симулятора, на том коде, что в модели. Можно ковырять модель, посмотреть как сделано и возможно поправить запуск програмных потоков, но какой в этом смысл? 1 hour ago, Nick_K said: И более интересный вопрос: При временном моделировании для PLL/MMCM/(аналоги альтеры) синтезируется джиттер? Или это нереально/не нужно? Крайне сложно, описать в дискретном, событийном симуляторе (а вы используете именно такой) аналоговые вещи. Только приблизится к ним. Для аналоговых и аналогоцифровых моделей нужно использовать другой симулятор. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 11 июня, 2019 Опубликовано 11 июня, 2019 · Жалоба 1 hour ago, des00 said: Крайне сложно, описать в дискретном, событийном симуляторе (а вы используете именно такой) аналоговые вещи. Только приблизится к ним. Для аналоговых и аналогоцифровых моделей нужно использовать другой симулятор. Я это понимаю прекрасно. Но в данном случае стоит вполне конкретная задача по разработке модуля временного детектирования сигналла. Для этих же целей и хотел использовать временное пост-синтезис/имплементейшн моделлирование. По поводу 1ps, я в модели менял на 1ps/1fs - никакого результата. До файлов корки не докапывался. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 11 июня, 2019 Опубликовано 11 июня, 2019 · Жалоба 1 hour ago, Nick_K said: Я это понимаю прекрасно. Но в данном случае стоит вполне конкретная задача по разработке модуля временного детектирования сигналла. Для этих же целей и хотел использовать временное пост-синтезис/имплементейшн моделлирование. Слабо понимаю чем вам мешает небольшой разнос, но в железе он будет еще больше так то. Но вот такая модель у них) 1 hour ago, Nick_K said: По поводу 1ps, я в модели менял на 1ps/1fs - никакого результата. До файлов корки не докапывался. Надо корку вскрывать, смотреть. может быть эта 1пс моделирует перекос межу сигналами Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться