Magnum 0 9 августа, 2017 Опубликовано 9 августа, 2017 · Жалоба У меня нет ALTLVDS_RX. У меня самописный приёмник. По некоторым причинам ALTLVDS_RX не подходит. А что именно за причины? Это ж 1в1 для режима ддр тоже самое. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 9 августа, 2017 Опубликовано 9 августа, 2017 (изменено) · Жалоба А что именно за причины? Это ж 1в1 для режима ддр тоже самое. Для подстройки фазы клока я применяю выводы для управления динамическим сдвигом, для этого ALT_LVDS_RX я запускаю в режиме EXTERNAL_PLL. Поэтому между ALT_LVDS_RX и PLL необходимо применять клоковый буфер, который требует 2 частоты с PLL, иначе работать не будет. А 2 частоты я не могу применить из-за того, что мне просто не хватит выводов PLL для динамической подстройки. А вот попробовать применить ALT_LVDS_RX в качестве DDR приёмника - это мысль. Изменено 9 августа, 2017 пользователем Flip-fl0p Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Magnum 0 9 августа, 2017 Опубликовано 9 августа, 2017 · Жалоба В том и фишка, при 2 разрядном выходе лвдс_рх вырождается в ддр с одним клоком. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 9 августа, 2017 Опубликовано 9 августа, 2017 (изменено) · Жалоба В том и фишка, при 2 разрядном выходе лвдс_рх вырождается в ддр с одним клоком. Результат аналогичный: Проблема появляется если входы размещены в банке IOBANK_4A. Если входы разместить в банке IOBANK_5B - то проблема уходит. P.S. Реальная железка работает без нареканий Quartus 15.0 результат аналогичный... Изменено 9 августа, 2017 пользователем Flip-fl0p Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bogaev_roman 0 9 августа, 2017 Опубликовано 9 августа, 2017 · Жалоба P.S. Реальная железка работает без нареканий Временная модель, приведенная Вами - скорее всего для худшего случая (slow - повышенная температура, пониженное напряжение и технологический разброс). Все-таки Вы уверены, что клок идет по глобальной линии клока? Интересно посмотреть запас по холду, если он большой, то можно попробовать фазу подергать. Зы Посмотрел внимательно на последний отчет по времянке, у Вас ограничения не потерялись в sdc (relationship соответствует 1нс, а должен по идее 2.5нс)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 9 августа, 2017 Опубликовано 9 августа, 2017 (изменено) · Жалоба Временная модель, приведенная Вами - скорее всего для худшего случая (slow - повышенная температура, пониженное напряжение и технологический разброс). Все-таки Вы уверены, что клок идет по глобальной линии клока? Интересно посмотреть запас по холду, если он большой, то можно попробовать фазу подергать. Зы Посмотрел внимательно на последний отчет по времянке, у Вас ограничения не потерялись в sdc (relationship соответствует 1нс, а должен по идее 2.5нс)? В последнем отчете, я даже на задавл констрейны. Я Посмотрел на FMAX, посмотрел на слаки - и сделал вывод о том, что этот вариант так-же не работает. Не думаю, что если я поставлю PLL, задам констрейны он будет отличаться. Изменено 9 августа, 2017 пользователем Flip-fl0p Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bogaev_roman 0 9 августа, 2017 Опубликовано 9 августа, 2017 · Жалоба В последнем отчете, я даже на задавл констрейны. Я Посмотрел на FMAX, посмотрел на слаки - и сделал вывод о том, что этот вариант так-же не работает. Не думаю, что если я поставлю PLL, задам констрейны он будет отличаться. Задайте ограничения, тогда slack уменьшится до -2нс, потом сдвиньте приемную частоту больше, чем на 2нс (300градусов), если hold не вылезет, то по setup должно пройти (в идеальном случае). Но откуда там набегает 3нс при переходе от ddr регистра до обычного в соседней ячейке - загадка. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 16 9 августа, 2017 Опубликовано 9 августа, 2017 · Жалоба Но откуда там набегает 3нс при переходе от ddr регистра до обычного в соседней ячейке - загадка.Вероятно, отгадка такая: Cyclone V DQ pin used for user pin(not DDR DQ pin), always need to route through HMCPHY_RE. this routing element would cause almost 2ns differnece between setup and hold. no way to bypass it. so never use DQ pins as high speed input or output in cyclone V Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 9 августа, 2017 Опубликовано 9 августа, 2017 (изменено) · Жалоба Вероятно, отгадка такая: Ох ё... Это многое объясняет. В handboock на cyclone 5 я даже не видел ничего похожего (неудивительно 3800 страниц...). Изменено 9 августа, 2017 пользователем Flip-fl0p Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bogaev_roman 0 9 августа, 2017 Опубликовано 9 августа, 2017 · Жалоба Вероятно, отгадка такая: Очень интересно. Архитектурная особенность только для cyclone V или для других семейств типа arriaV тоже? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 16 9 августа, 2017 Опубликовано 9 августа, 2017 · Жалоба Очень интересно. Архитектурная особенность только для cyclone V или для других семейств типа arriaV тоже?Про Арию не знаю, не работал. В Циклоне я столкнулся со слаками пару лет назад: https://electronix.ru/forum/index.php?showtopic=130681 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 9 августа, 2017 Опубликовано 9 августа, 2017 (изменено) · Жалоба Остался ещё один нерешённый вопрос. Почему Quartus удалил частоты С1 и С2 созданные на PLL.... И оставил только С0. Он их не будет "оптимизировать" только если я каждой частоте назначу разные сдвиги фаз. Да и почему железка то работает как положено и самое главное стабильно, имея такое нарушение по Setup ? Изменено 9 августа, 2017 пользователем Flip-fl0p Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Magnum 0 9 августа, 2017 Опубликовано 9 августа, 2017 · Жалоба и почему железка то работает как положено и самое главное стабильно, имея такое нарушение по Setup ? А что удивительного? если задержка ровно на такт у вас, то всё и работает как надо, другое дело, если вы начнете её в температуре гонять, от нулей до +70С, там могут начаться чудеса. Ну и при массовом производстве могут на разных экземплярах разные результаты получаться. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_sda 0 10 августа, 2017 Опубликовано 10 августа, 2017 · Жалоба Упаду на хвост по теме. Не удаётся выполнить выходные времянки для ЦАП(Fclk = 100MHz,SDR,Cyclon III). set_output_delay 5 -max -clock {clk_dac} [get_ports {dac_*}] set_output_delay -3 -min -clock {clk_dac} [get_ports {dac_*}] Клок в плис приходит от ЦАП -> PLL -> формирование данных, fast_output_register задействован. Вращение фазы PLL нужного эффекта не приносит. Почему-то на io_obuf задержка 5,3нс и разница на двух битах достигает 5,3 - 2,3 = 3нс. Что посоветуете,коллеги? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
bogaev_roman 0 10 августа, 2017 Опубликовано 10 августа, 2017 · Жалоба Что посоветуете,коллеги? Эти ограничения из даташита (просто максимальное окно на работу при них получается всего 10-5-3=2нс)? clk_dac - это выход pll (из приведенных ограничений не видно)? Для подробного анализа можете привести схему чипланнера, на которой показаны расположения io-буферов и pll (может они по всему периметру раскиданы, так непонятно)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться