Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Странная работа дизайна на Cyclone V
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Dootch
Добрый день.

В наличии имеется самодельная плата с Cyclone V (5CEFA5F23C7N) на борту. Есть на плате одно не совсем очевидное решение:
сигнал 50 МГц (3,3 В) с генератора KXO-V97 (Geyer) подан одновременно на несколько клоковых входов 4 разных банков. Из этих банков три штуки запитаны 2,5 В, один 3,3 В.

Для проектирования используется среда Quartus II 15.0. Собран небольшой проект, где входная частота с одного из входов поступает на PLL, умножается до 300 МГц (или 250 МГц , или 450 МГц - пробовал разное), после чего поступает на обычный делитель и выводится на наружный пин. Делителем являются два подключенных последовательно DFF. Проблема в том, что частота не верно делится.

Например при выходе PLL 300 МГц (который я контролирую осциллографом) деленная на 4 частота составляет 25 МГц ровно.
При выходе PLL 250 МГц деленная на 4 частота составляет 25 МГц ровно.
При выходе PLL 450 МГц деленная на 4 частота составляет 25 МГц ровно.

Как будто на вход делителя поступает 100 МГц, но откуда они берутся? Неясно.


Это очень странное поведение, которое я не могу объяснить, вначале грешил на версию квартуса, но просмотр откомпиленного дизайна в Technology Map Viewier показывает, что все развелось как я и хочу, ничего не выкинулось и не оптимизировалось. На всякий случай для использую WYSIWYG cyclonev_ff примитивы, но результат неверный даже если просто в схематике подключить два T-триггера.

Даже не знаю в каком направлении искать ошибку.

des00
Цитата(Dootch @ Aug 9 2016, 11:02) *
Даже не знаю в каком направлении искать ошибку.

начните с выкладывания проекта
Dootch
Цитата(des00 @ Aug 9 2016, 08:08) *
начните с выкладывания проекта


Ок, у файла надо стереть .rar в конце
alevnew
Цитата(Dootch @ Aug 9 2016, 09:02) *
Делителем являются два подключенных последовательно DFF. Проблема в том, что частота не верно делится.


Проект не смотрел, но, судя по цитате, у Вас асинхронщина в проекте?
На клок второго DFF идет выход первого?
В таком случае, возможно это и есть проблема - нужно избавиться от асинхронщины.
likeasm
А на PLL делить не пробовали? Зачем рога и копыта с триггерами? Не могу открыть проект, winrar орет, что битый.
ViKo
Может, не с того выхода PLL идут такты на триггеры?
bogaev_roman
Цитата(likeasm @ Aug 9 2016, 09:55) *
А на PLL делить не пробовали? Зачем рога и копыта с триггерами? Не могу открыть проект, winrar орет, что битый.

У меня тоже не открывается севензипом. Тут, похоже, вопрос учебный. После делителя будет счетчик, а вопросов возникнет еще больше.
des00
Цитата(bogaev_roman @ Aug 9 2016, 14:03) *
У меня тоже не открывается севензипом. Тут, похоже, вопрос учебный. После делителя будет счетчик, а вопросов возникнет еще больше.

там не винрар. убираете расширение, это обычный qar. В нем внутри последовательный асинхронный счетчик: набор T триггеров друг за другом, с тактированием друг от друга.

ТС поставьте lpm_counter и не компостируйте мозг
Dootch
Вопрос не учебный, просто изготовили плату, теперь мне нужно проверить есть ли проблемы в схеме, разводке и пайке. Раньше бывало из-за ошибок в пайке не запускалась часть PLL. Вот сейчас придумывал тесты и наткнулся на подобное странное поведение.
Плюс ко всему перешел на новый квартус с 13.0 на 15.0. При работе с 13 версией никогда не возникало подобной проблемы с последовательным счетчиком на высоких частотах.
iosifk
Цитата(Dootch @ Aug 9 2016, 11:54) *
мне нужно проверить есть ли проблемы в схеме, разводке и пайке.

Так пайка проверяется jtag-сканированием без всяких проектов...
Dootch
Цитата(iosifk @ Aug 9 2016, 13:01) *
Так пайка проверяется jtag-сканированием без всяких проектов...


В прошлой плате JTAG сканирование всегда показывало, что все норм, перепайка микросхемы на эту же плату вылечила часть PLL.
Тут я не знаю как объяснить, возможно маловато опыта.
Dima_G
Цитата(Dootch @ Aug 9 2016, 16:08) *
В прошлой плате JTAG сканирование всегда показывало, что все норм, перепайка микросхемы на эту же плату вылечила часть PLL.
Тут я не знаю как объяснить, возможно маловато опыта.

Возможно часть лап питания/земли непропаяны были
alevnew
Цитата(Dootch @ Aug 9 2016, 14:08) *
Тут я не знаю как объяснить, возможно маловато опыта.

Для начала избавьтесь от асинхронных счетчиков - пока они есть, вообще о чем то говорить смысла не имеет.
Замените на синхронный, как уже тут посоветовали.
dvladim
Счетчики-то счетчиками. Асинхронщина конечно зло, но в данном случае влиять не должно.
У меня другой вопрос: что моделирование показывает?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.