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

Мне недавно показали один странный эксперимент на Altera Cyclone II.
Там довольно простая схема – 8-разрядный накапливающий умножитель.
Схема тактируется от внешнего генератора 50MHz, частота которого умножается на PLL.
Так вот если держать частоту тактирования в допустимых приделах (до 250 MHz), то схема работает без ошибок.
Если же начинать увеличивать частоту тактирования выше допустимой (оговоренной в документации микросхемы), то схема, естественно, начинает давать ошибочные результаты. Но, если поднять частоту выше определенного порога, схема перестает сбоить и снова начинает считать правильные результаты.

Выглядит это примерно так:
0….250 MHz – правильные результаты
251…800 MHz – неправильные результаты
больше 800 MHz – снова правильные результаты

В связи с этим возникает вопрос, как объяснить такое явление?
Нет ли у FPGA функции throttling (душения, дросселированния) сигнала тактирования?
Возможно ли, что при повышении частоты тактирования схемы выше некоторого порога, FPGA сама опускает частоту до нормативного значения и из-за этого схема начинает считать корректно?
x736C
Думаю, PLL начинает работать на какой-то частоте ниже максимальной, на которой она способна работать.
Проверьте тактовую после PLL, во что превращаются ваши 800.
Flip-fl0p
Я думаю Quartus врет.
Вы задаете предельно большую частоту работы PLL но Quartus "умный" и ставит максимально возможную например 250 Mhz- но Вам говорит о том, что у вас частота 800 Mhz. Я встречался с тем, что Quartus изменяет или вообще удаляет некоторые частоты, созданные на PLL, но об этом не говорит ни слова.
x736C
Если я правильно понял, автор вообще не спрашивает Квартус, а просто вдувает произвольную частоту с внешнего генератора, проводя лабораторный эксперимент.
serebr
Цитата(x736C @ Oct 29 2017, 14:13) *
Думаю, PLL начинает работать на какой-то частоте ниже максимальной, на которой она способна работать.
Проверьте тактовую после PLL, во что превращаются ваши 800.

Согласен. PLL в FPGA имеет VCO (voltage controlled oscillator), диапазон рабочих частот которого ограничен. При повышении входной частоты в несколько раз от номинальной, VCO сваливается назад в рабочий диапазон, а фазовый детектор начинает работать на прореженном входном клоке, т.е на каждом втором, третьем, четвертом и т.д. фронте.
Скорее всего на частотах 800 МГц и выше срабатывает (используется в фазовом детекторе) как раз каждый четвертый фронт входного клока.
ViKo
Просто ФАПЧ срывается и генератор работает на краю своего диапазона. Выведите сигнал PLL Lock наружу, проверьте.
Tpeck
У Alter'ы внутренняя логика может работать на 800 МГц?
iosifk
Цитата(files @ Oct 30 2017, 00:05) *
Мне недавно показали один странный эксперимент на Altera Cyclone II.
Возможно ли, что при повышении частоты тактирования схемы выше некоторого порога, FPGA сама опускает частоту до нормативного значения и из-за этого схема начинает считать корректно?

А мне в этом случае вот что интересно.
Вот допустим тема была бы такая: "если в автомобильный двигатель вместо бензина лить эфир, то он начнет давать большую мощность и будет ли это корректно?"...
Тогда вопрос: "те, кто показывал - это игруны и им не жалко допустим сжечь микросхему за 5 минут?"
Или идиоты, которые хотят делать изделия, работающие в недопустимых режимах?
В чем вообще суть данного топика?
jojo
Цитата(iosifk @ Oct 30 2017, 11:27) *
А мне в этом случае вот что интересно.
Вот допустим тема была бы такая: "если в автомобильный двигатель вместо бензина лить эфир, то он начнет давать большую мощность и будет ли это корректно?"...
Тогда вопрос: "те, кто показывал - это игруны и им не жалко допустим сжечь микросхему за 5 минут?"
Или идиоты, которые хотят делать изделия, работающие в недопустимых режимах?
В чем вообще суть данного топика?


Я бы взял и бензин и эфир, и побольше. Завести 99% ресурсов ПЛИС на Fmax и при этом чтобы изделие работало должным образом - тут думать надо во все стороны, в том числе такие.
svedach
Мне кажется, что если PLL и выдает 800 МГц, то работа небольшого проекта вполне возможна... Триггеры защелкиваются не каждый фронт, а через фронт (например, или через два фронта) - остальное съедает комбинаторная логика... По этому и существует нерабочая зона 251…800 МГц - там задержки на комбинаторной логике не хватает на защелкивание через такт (может и через три такта и т.д.).
iosifk
Цитата(svedach @ Oct 30 2017, 14:39) *
Мне кажется, что если PLL и выдает 800 МГц, то работа небольшого проекта вполне возможна...

Помню, что когда-то любители разгоняли процессоры. Для себя любимого что угодно лишь бы не скучно.. Так?

Но для работы?
Есть теория по расчету надежности... И, скажем перегрев на 10 градусов снижает надежность изделия вдвое. Любон превышения предельно допустимых параметров использования микросхемы приведет к отказу микросхемы... А с Вашим "Мне кажется" параметр надежности снизится до нуля. Кому такое изделие будет можно продать? Остаются только игры в песочнице и заявления о том, что "работа небольшого проекта вполне возможна"...
Предельные параметры не берутся с потолка. И они не определяются только из технических расчетов. Любое несоответствие изделия вызывает судебный иск от потребителя. Если бы такое "Мне кажется" не приводило бы к отказу и к судебным искам, то уверяю Вас, это было бы задекларировано, как дополнительная опция...
blackfin
Цитата(Tpeck @ Oct 30 2017, 10:31) *
У Alter'ы внутренняя логика может работать на 800 МГц?

Это вряд ли..

Для Arria 10 Clock Tree Specifications:
Цитата
Global clock, regional clock, and small periphery clock - 644 MHz
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.