pnp_mechanic 2 February 9 Posted February 9 · Report post Приветствую. Это мой первый опыт с FPGA ZYNQ XC7Z010CLG400 и VIVADO 2017.1 Не удаётся подключить кварцевый генератор к входу "E7" - именно так он обозначен на схеме. После синтеза выдаёт ошибку " Cannot set LOC property of ports, Site location is not valid" Вручную в параметрах I/O port предлагает любые другие порты кроме "E7" Соответственно не работает программа из "двух строчек"... Иными словами - HELO WORLD с FPGA не получается. Хотя плата рабочая и светодиод с китайской прошивкой мигает. //файл "my_leds.v" module my_leds ( input sys_clk_pin , output reg[1:0] leds = 0); reg [17:0] count = 0; reg r_leds; initial begin count <= 0; r_leds <= 0; end always @(posedge sys_clk_pin) begin if(count == 120000) begin count <= 1; r_leds = !r_leds; leds[0] = r_leds; end else count <= count+1; end endmodule //и соответстввенно файл "constr.xds" set_property PACKAGE_PIN W13 [get_ports {leds[0]}] set_property PACKAGE_PIN W14 [get_ports {leds[1]}] set_property IOSTANDARD LVCMOS33 [get_ports {leds[1]}] set_property IOSTANDARD LVCMOS33 [get_ports {leds[0]}] set_property PACKAGE_PIN E7 [get_ports sys_clk_pin] set_property IOSTANDARD LVCMOS33 [get_ports sys_clk_pin] Quote Share this post Link to post Share on other sites More sharing options...
makc 312 February 9 Posted February 9 · Report post Ничего удивительного, т.к. это порт тактирования процессора (PS), а не программируемой логики (PL): Quote Share this post Link to post Share on other sites More sharing options...
pnp_mechanic 2 February 9 Posted February 9 (edited) · Report post Понял, спасибо. Так это получается, что без ЦПУ не запустить в "чистом виде ПЛИС". Да? Пойду учить матчасть -) Edited February 9 by pnp_mechanic Quote Share this post Link to post Share on other sites More sharing options...
dxp 109 February 10 Posted February 10 · Report post Через JTAG можно загружать, но это будет работать только на столе. Для автономной работы нужна процессорная часть, которая должна загружать битстрим в PL. Для тактовой в PL вы можете использовать PS (если на вашей плате внешний клок подан только на неё) -- нужно создать в IP Integrator ps7_hw блок, зайти в его свойства, там включить подачку тактового сигнала в PL (fclk0, например), указав его частоту, Vivado родит файл-"обёртку" (wrapper) для ps7_hw, этот файл инстанцируете к себе в проект (можно как top-level, но я предпочитаю как модуль на топе), с его порта fclk0 получите тактовую для PL. Quote Share this post Link to post Share on other sites More sharing options...
Abo 0 February 10 Posted February 10 · Report post 5 hours ago, dxp said: Через JTAG можно загружать, но это будет работать только на столе. Для автономной работы нужна процессорная часть, которая должна загружать битстрим в PL. Для тактовой в PL вы можете использовать PS (если на вашей плате внешний клок подан только на неё) -- нужно создать в IP Integrator ps7_hw блок, зайти в его свойства, там включить подачку тактового сигнала в PL (fclk0, например), указав его частоту, Vivado родит файл-"обёртку" (wrapper) для ps7_hw, этот файл инстанцируете к себе в проект (можно как top-level, но я предпочитаю как модуль на топе), с его порта fclk0 получите тактовую для PL. Какая-то программная инициализация PS при этом необходима или тактовый сигнал пойдет на PL даже без программы для PS? Quote Share this post Link to post Share on other sites More sharing options...
alexadmin 2 February 10 Posted February 10 · Report post Сам не пойдет. Нужно либо чтобы в PS стартовал загрузчик, который в соответствии с конфигурацией все запустил. Либо запускать из SDK/Vitis, который сам запустит специальный скрипт (соответсвующий вашей конфигурации). Если нужно просто "поморгать светодиодом", то возьмите встроенный клок. Порядка 50МГц +-15% (или чуть другой, нужно уточнить в документации) Вставьте в код, на clk будет тактовый сигнал: STARTUPE3 STARTUPE3_inst ( .CFGMCLK(clk) ); 1 1 Quote Share this post Link to post Share on other sites More sharing options...
pnp_mechanic 2 February 15 Posted February 15 · Report post Всё хорошо получилось, спасибо за советы. Подключил процессорную часть и далее уже FPGA Quote Share this post Link to post Share on other sites More sharing options...