-
Notifications
You must be signed in to change notification settings - Fork 28
Problem 10: PLL
Это задание посвящено использованию блоков ФАПЧ (фазовой автоподстройки частоты) в ПЛИС для умножения частоты.
Выберите какой-нибудь работающий проект, в котором имеет смысл увеличивать тактовую частоту, например выполненное задание 09_cpu_v3
.
Чтобы добавить блок ФАПЧ, можно выбрать его из списка готовых блоков (IP Catalog) в Altera Quartus. Выберите опцию Library > Basic Functions > Clocks; PLLs and Resets > PLL > ALTPLL. После выбора названия файла (например, my_pll
) параметров ФАПЧ откроется окно настроек.
- На странице General/Modules выставьте частоту базового тактового сигнала
- На странице Inputs/Lock отключите все порты, чтобы остались только вход inclk0 и выход c0
- На странице Output Clocks можно выбрать множитель (например, 3) и делитель (например, 2), чтобы получить выходной тактовый сигнал (например, 75 МГц при базовой частоте 50 МГц)
- В конце выберите опции Verilog HDL black-box file
my_pll_bb.v
и Instantiation template filemy_pll_inst.v
В файле шаблона my_pll_inst.v
можно увидеть, как создавать экземпляр сгенерированного модуля:
my_pll my_pll_inst (
.inclk0 ( inclk0_sig ),
.c0 ( c0_sig )
);
Теперь нужно создать экземпляр этого модуля и подать на inclk0
базовый тактовый сигнал, тогда на c0
будет таковый сигнал с более высокой (x1.5) частотой. Его можно использовать как любой другой тактовый сигнал. Например, подсоединить к ядру soft-микропроцессора и, таким образом, ускорить его работу в полтора раза.
Более подробно про возможности PLL в Altera Cyclone IV можно прочитать в руководстве.