Lavr wrote:Значит, хотя бы один сигнал GCLK обязательно нужен?
Внесите ясность, по возможности, с этими dedicated pins?
Если начать с конца, то я не понимаю, как можно оставить тот же global clear в воздухе (именно совсем в воздухе, а не выведенным на разъем, как в приведенной Вами схеме отладочной платки, для последующего подключения). В свое время этот вывод чуть не свел меня с ума - оказалось, что он реагировал на наводки с руки, когда она оказывалась ближе определенного расстояния. В результате, получился не Орион, а терменвокс какой-то. Подтяжка вывода моментально решила проблему, над которой я бился несколько часов.
Насчет GCLK - в общем случае, однозначной необходимости в нем нет. Ведь никто не запрещает делать схемы асинхронными даже на CPLD/FPGA. Только, как уже было написано, это чревато. В принципе, даже в тех же Орионе/Специалисте асинхронное построение вызывало кучу проблем и шаманства на уровне куда-нибудь прицепить какой-нибудь конденсатор, авось заработает. Но там проблема слегка сглаживалась относительно низким быстродействием микросхем, что не позволяло тем же иголкам творить свои грязные дела. А вот быстродействие CPLD/FPGA, особенно современных, такое, что вся эта грязь напрочь убивает работоспособность. Из того же Ориона на CPLD пример - один из узлов сброса счетчика работал по разному после очередной перекомпиляции проекта, даже если изменения были совсем в другой части. Просто где-то слегка менялись пути прохождения сигнала, и этого было достаточно.
Сейчас же все заточено под синхронную схемотехнику - экономить аппаратные ресурсы особо не нужно, а вот получить предсказуемый вариант намного проще. Тот же Quartus прямо заточен под синхронные схемы - только так можно провести полный временной анализ проекта и заранее убедиться, что все задержки будут в пределах допустимого для данной части проекта.
При этом в качестве синхросигнала не обязательно использовать выделенный пин - в принципе, никто не мешает сделать синхронную схему, но при этом подать внешний синхросигнал на обычный GPIO. Однако выделенные пины для синхронизации имеют оптимизированный роутинг, позволяющий доставить тактовый сигнал ко всем (или к четко определенным) частям CPLD/FPGA в пределах предсказуемых задержки/смещения. Без этого, опять таки, произвести полноценный временной анализ проекта либо сложно, либо вообще невозможно.
Правда, для частот уровня Ориона, думаю, разницы особой нет, какой пин выбирать для тактовой частоты.