2010-10-26 2 views
2

Есть ли какой-либо прямой способ реализовать всю цифровую фазовую блокировку в синтезируемом Verilog? Все (включая ГУН) следует синтезировать. Сигналы, которые я хочу заблокировать, составляют ~ 0,1-1% от тактовой частоты системы. Я использую тот, который был реконструирован из документов IEEE 1980-х годов, но он не ведет себя так хорошо, как рекламируется.Как реализовать синтезируемый DPLL в Verilog?

Для простоты блокировка может работать на двоичном импульсном сигнале.

+0

Этот вопрос отмечен FPGA, какое семейство устройств вы используете? – George

+0

Altera Cyclone 2, по крайней мере, для прототипа. Часы - это внешний стабилизированный кристалл, поэтому у нас есть стабильная временная база. – crasic

+0

Может быть полезно знать, чего вы пытаетесь достичь с помощью этого DPLL. Насколько вы хотите умножить частоту? Постоянна ли входная частота? – mbschenkel

ответ

1

В конструкциях FPGA я обычно использую встроенные DCM или PLL.

Циклон 2 имеет до 4 ФАП построен в.

Посмотрите PLLs in Cyclone 2.

+0

Встроенные PLL прекрасно подходят для синхронизации часов и синтеза (я использую один, чтобы получить 200-мегагерцовые системные часы из 10-мегагерцового источника синхронизации). Но они крайне ограничены. Они имеют огромный джиттер для любых целей DSP (они предназначены для синхронизации не джиттера), они также не очень гибки, полностью определяются во время синтеза, и, самое главное, минимальная частота, которую может блокировать встроенная PLL, 10 МГц, что примерно в 10 раз превышает мою частоту сигнала. – crasic

+0

Да, если вы пытаетесь заблокировать медленные часы, устройства на борту будут не очень полезны. Вы можете проверить [OpenCores] (http://opencores.org/) для примера кода. – George

Смежные вопросы