|
PLL от Cyclone 10 LP не моделируется в Modelsim, не выход в состояние locked |
|
|
|
Aug 24 2018, 07:05
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Использую Quartus Prime 17.1.0 build 590 + Modelsim Intel FPGA starter edition 10.5b. Есть пример с PLL, который легко запустить - просто файл sim.bat, только пути поправить:
test_pll.zip ( 7.06 килобайт )
Кол-во скачиваний: 12Наблюдается странная проблема:
Делаю резет как положено, на вход 200 МГц, что допустимо, тем более в симуляторе. Locked никогда не поднимается. Что я делаю не так? Читал о всех возможных причинах неработоспособности PLL при моделировании - отсутствие сброса, инициализации, недостаточная точность модели, но у меня ведь 1ns/1ps и этого достаточно. Самое интересное, что внутри компонента altlvds_rx встроенный в него PLL работает в модели, а ведь там то же самое altpll.
--------------------
|
|
|
|
|
 |
Ответов
|
Aug 24 2018, 07:21
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(AVR @ Aug 24 2018, 10:05)  Locked никогда не поднимается. Что я делаю не так? Читал о всех возможных причинах неработоспособности PLL при моделировании - отсутствие сброса, инициализации, недостаточная точность модели, но у меня ведь 1ns/1ps и этого достаточно. Я думаю, что для altpll в ее описании где-то сидит задержка по срабатыванию захвата. Наверняка она зависит от разрядности счетчиков и от времени их заполнения входными импульсами... Надо найти это место и сделать симуляцию больше по времени или солько для симуляции эту задержку покоцать. Вот у Ксайлинкса есть примитив глобального сброса после загрузки. Он требуется для симуляции памяти, так как мне лень тупо ждать в RTL симуляции, я переношу его в рабочую папку и там убираю задержку... Я не вижу, как вы в тесте ограничиваете время симуляции? Как Вы его задаете? PS Но Вы же знаете коэфф деления счетчиков, так что можно даже не забираясь в описания pll, взять функцией и по коэфф. деления счетчиков, вычислить количество импульсов во входном и в выходном делителях и взять от них максимальное. К этому добавить запас и так задать время симуляции командами верилога.
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Aug 24 2018, 07:43
|
Гуру
     
Группа: Модераторы
Сообщений: 4 011
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369

|
Цитата(AVR @ Aug 24 2018, 10:37)  100 мкс жду, 100 мкс сброс висит, далее 500 миллисекунд и ничего опять. Мне кажется это запредельно, в altlvds_rx это заводится за микросекунды.
Мне очевидно наличие бага. Слепо предположим - это баг. Что можно с этим сделать? Скомпилировать другую версию библиотек? Взять старую версию Modelsim? Нужно чтоб Cyclone 10 LP умела версия. Может Quartus Prime 18? Может версию для Linux? Первое что надо делать - официально обратиться в техподдержку Альтеры. Второе - тоже самое написать на Альтеровский форум. Просто, если это баг, то там статистика больше. Потом на калькуляторе посчитать, как я написал в предыдущем посте про время симуляции. Наверняка в ПЛЛ задержка определяется счетчиками, и задается в параметрах. Поэтому время может и отличаться на порядки...
--------------------
www.iosifk.narod.ru
|
|
|
|
|
Aug 24 2018, 07:52
|

фанат Linux'а
    
Группа: Свой
Сообщений: 1 353
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008

|
Цитата(iosifk @ Aug 24 2018, 10:43)  Первое что надо делать - официально обратиться в техподдержку Альтеры. Второе - тоже самое написать на Альтеровский форум. Просто, если это баг, то там статистика больше. Потом на калькуляторе посчитать, как я написал в предыдущем посте про время симуляции. Наверняка в ПЛЛ задержка определяется счетчиками, и задается в параметрах. Поэтому время может и отличаться на порядки... Время задается в sim.do, run 500ms. Прописал в файле pll масштаб из 1ps/1ps в 1ps/1fs, в основном файле теста тоже такие единицы и поправил периоды - опять ноль эффекта. Я сейчас напишу им в техподдержку, но создавал тему и думал многие этим пользуются, уж PLL это вообще товар первой необходимости. Странно что ни у кого бага с PLL нет, или решается большим временем моделирования. В Xilinx ISE/Vivado проблем с PLL вообще ноль - работает с пол оборота в обоих ихних симуляторах.
--------------------
|
|
|
|
Сообщений в этой теме
AVR PLL от Cyclone 10 LP не моделируется в Modelsim Aug 24 2018, 07:05 Flip-fl0p Попробуйте подольше начальный сброс подержать....
... Aug 24 2018, 07:09 AVR Цитата(Flip-fl0p @ Aug 24 2018, 10:0... Aug 24 2018, 07:21 warrior-2001 Приветствую.
Даю наводку - а что за порт такой у p... Aug 24 2018, 08:59 AVR Цитата(warrior-2001 @ Aug 24 2018, 11... Aug 24 2018, 09:23  Sergey_Bekrenyov Цитата(AVR @ Aug 24 2018, 12:23) Ох елки,... Aug 24 2018, 17:55   AVR Цитата(Sergey_Bekrenyov @ Aug 24 2018, 20... Aug 25 2018, 19:09    Sergey_Bekrenyov Цитата(AVR @ Aug 25 2018, 22:09) .. вот ч... Aug 26 2018, 16:47
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|