Zybo Zynq-7000 clk в ucf?
Недавно я купил себе плату для разработки Zybo Zync-7000, чтобы я мог выполнять некоторые школьные задания и возиться с ней дома, но когда я впервые собирался выбрать часы из своего UCF, я впервые столкнулся с этим.
## Clock signal
#NET "clk" LOC=L16 | IOSTANDARD=LVCMOS33; #IO_L11P_T1_SRCC_35
#NET "clk" TNM_NET = sys_clk_pin;
#TIMESPEC TS_sys_clk_pin = PERIOD sys_clk_pin 125 MHz HIGH 50%;
Я знаю, что мне, вероятно, нужно просто взять первую строку, чтобы заставить работать мой сигнал clk, но для чего все остальное? Или я ошибаюсь и нужно ли все это?
У нас в школе было другое оборудование, и там все немного проще.
Заранее спасибо.
1 ответ
Я предполагаю, что вы используете ISE, а не новый Vivado, поскольку только ISE использует файлы ограничений UCF.
## Clock signal
Эта строка является комментарием о том, к чему относятся следующие строки.
#NET "clk" LOC=L16 | IOSTANDARD=LVCMOS33; #IO_L11P_T1_SRCC_35
Эта строка указывает, к какому физическому выводу (LOC=L16) на ПЛИС подключен вход тактовой частоты (входная сеть с именем "clk" на верхнем уровне VHDL) от внешнего чипа. Это также указывает, что сигнал использует низковольтную сигнализацию CMOS 3.3v.
#NET "clk" TNM_NET = sys_clk_pin;
Это просто назначает имя времени в сети. Для конкретных ограничений по времени вместо имени сети (VHDL внутренняя) будет использоваться имя синхронизации.
#TIMESPEC TS_sys_clk_pin = PERIOD sys_clk_pin 125 MHz HIGH 50%;
Это указывает, что синхронизация "sys_clk_pin" (разрешается в VHDL net "clk") должна иметь частоту 125 МГц и рабочий цикл 50%. Инструмент должен знать это, чтобы определить, как маршрутизировать сигналы, не нарушая настройку триггера или время удержания. Имя "TS_sys_clk_pin" является просто идентификатором для этого конкретного ограничения.
Правильное ограничение дизайна очень важно, когда вы близки к заполнению детали или хотите запустить ее на более высокой тактовой частоте. Вы можете найти огромное количество информации в руководстве по ограничениям Xilinx для ISE: http://www.xilinx.com/itp/xilinx10/books/docs/cgd/cgd.pdf
Если вы не зададите ограничения по времени проектирования, инструменты, как правило, выдают предупреждение об отсутствии ограничений и сообщают вам, как быстро вы можете запустить его в конце, не вызывая ошибок. Временные ограничения для часов являются наиболее важными. Обычно вам нужны только другие временные ограничения для синхронных входов и кросс-тактовых границ.
Обратите внимание, что все 4 строки на самом деле закомментированы (с добавлением #). Если вы хотите использовать 3 функциональные линии, вам нужно убрать обозначение комментария.