libine 0 7 апреля, 2020 Опубликовано 7 апреля, 2020 · Жалоба Подскажите пожалуйста, как правильно подключить BUFG на вывод, назначенный clk? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 7 апреля, 2020 Опубликовано 7 апреля, 2020 · Жалоба 14 часов назад, libine сказал: Подскажите пожалуйста, как правильно подключить BUFG на вывод, назначенный clk? В смысле "на вывод"? Если Вы хотите указать P&R, что, например, сигнал clk должен разводиться через глобальный буфер, то пишете в cst-файле: CLOCK_LOC "clk" BUFG = CLK; Ну или все то же самое - мышкой во флорпланнере, на закладке "Clock Assignment" (ПКМ - Clock/Control Assignment - выбираем цепь, тип и сигнал). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
libine 0 8 апреля, 2020 Опубликовано 8 апреля, 2020 · Жалоба StewartLittle, к сожалению, не работает. Вывод был назван clk, FloorPlanner предлагает Net clk_c. В файле cst получаем запись: CLOCK_LOC "clk_c" BUFG = CLK; Замечу: YunYuan позволяет запустить FloorPlanner лишь после того, как проведён синтез посредством Synplify. Которому указание использовать BUFG не передаётся. Если открыть результат в Synplify Technology View, можно увидеть, что clk заведён на IBUF и далее на DFFE. Если запустить следующим шагом Place & Route, получим сообщение: «Warning (PR1014) : Generic routing resource will be used to clock signal 'clk_c' by the specified constraint. And then it may lead to the excessive delay or skew». Я пробовал подключить BUFG посредством создания его экземпляра, исходный код: input load, cin, clk; wire bufg_clk; reg [7:0] out; BUFG bufg_buffer(bufg_clk, clk); //always @(posedge clk) always @(posedge bufg_clk) begin if (load) out = data; else out = out + cin; end // all bits of out must be one and the // carry in must be on to generate a // carry out assign cout = &out & cin; endmodule От Synplify, получаю «@W: MT531 :"/mnt/HDDEXT4/Repositories/FPGA/8bit_counter/src/counter1.v":19:0:19:5|Found signal identified as System clock which controls 8 sequential elements including out[7:0]. Using this clock, which has no specified timing constraint, can prevent conversion of gated or generated clocks and can adversely impact design performance.» А от Place & Route, всё тот же «Warning (PR1014) : Generic routing resource will be used to clock signal 'clk_c' by the specified constraint. And then it may lead to the excessive delay or skew». Замечу, что если бы я не описал clk в файле Logic Constrains(FDC), сообщений от Synplify было бы больше. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 8 апреля, 2020 Опубликовано 8 апреля, 2020 · Жалоба 12 минут назад, libine сказал: Если запустить следующим шагом Place & Route, получим сообщение: «Warning (PR1014) : Generic routing resource will be used to clock signal 'clk_c' by the specified constraint. And then it may lead to the excessive delay or skew». Какая у Вас версия Gowin EDA? Надо обноситься до v1.9.5 : http://cdn.gowinsemi.com.cn/Gowin_V1.9.5Beta_linux.tar.gz Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
libine 0 8 апреля, 2020 Опубликовано 8 апреля, 2020 · Жалоба Обновился до v1.9.5. Ничего не изменилось. На мой взгляд, имеет место серьёзная проблема. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 8 апреля, 2020 Опубликовано 8 апреля, 2020 · Жалоба Только что, libine сказал: Обновился до v1.9.5. Ничего не изменилось. На мой взгляд, имеет место серьёзная проблема. Пришлите, плз, Ваш проект. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 8 апреля, 2020 Опубликовано 8 апреля, 2020 · Жалоба Ну, я в принципе и на своем проекте повторил Ваш релультат. Смотрите отчет P&R, раздел Global clock usage summary: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
libine 0 8 апреля, 2020 Опубликовано 8 апреля, 2020 · Жалоба Как следует интерпретировать информацию о Global Clock из отчёта совместно с Warning (PR1014)? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 8 апреля, 2020 Опубликовано 8 апреля, 2020 · Жалоба 2 часа назад, libine сказал: Как следует интерпретировать информацию о Global Clock из отчёта совместно с Warning (PR1014)? Я думаю, на это предупреждение можно забить. Это предупреждение выдается независимо от того, сделан ли физический констрейнт на тактовый сигнал или нет (а если сделан, то какой именно). Но при этом : если не назначать принудительно clk на BUFG, то P&R достаточно сообразителен, чтобы сделать это самому. если назначить констрейнтом clk на BUFG, то так и будет сделано. если назначить констрейнтом clk на LOCAL_CLOCK, то BUFG использоваться не будет. И все это будет отображено в отчете P&R. Попробуйте сами поэкспериментировать с различными физическими констрейнтами на тактовый сигнал (и смотрите разницу в отчетах). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
libine 0 9 апреля, 2020 Опубликовано 9 апреля, 2020 · Жалоба StewartLittle, поэкспериментировал. Type Global Clock Usage Actual Fmax, MHz LOCAL_CLOCK 0/8(0%) 177,869 BUFS SECONDARY 1/8(12%) 177,820 BUFG PRIMARY 1/8(12%) 177.820 Т.е. разница есть, но с глобальными цепями становится хуже. Объяснение этому придумать можно. Подключаю BUFG посредством создания экземпляра, BUFG bufg_buffer(bufg_clk, clk); Проверяю присутствие BUFG в Synplify, Technology View: Запускаю FloorPlanner. LOCAL_CLOCK 0/8(0%) 177,869 BUFG PRIMARY 1/8(12%) 177.820 Похоже, в первом случае FloorPlanner оказался достаточно самостоятельным, чтобы удалить введённый разработчиком BUFG. Так же он себя ведёт, когда атрибут CLOCK_LOC отсутствует. Наверное, жить с этим можно. Но любопытно было бы почитать комментарии авторов. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
libine 0 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба Ответ относительно BUFG: "Synopsys Synplify Pro® for GoWin. User Guide", стр. 491, Limitations • No DDR inference support. • No clock buffer (BUFG and BUFS) inference support. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба 2 часа назад, libine сказал: "Synopsys Synplify Pro® for GoWin. User Guide" Можно ссылочку на этот документ? Но вообще-то физические констрейны в Gowin EDA задаются не для синтеза, а для P&R: Цитата Gowin YunYuan software allows users to set constraints for post-synthesis ports, netlist, registers, and instances. The CST file is the main input for defining design planning. ... Backend placement and routing software acquire users constraints by reading the CST file. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
libine 0 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба Файл называется fpga_user_guide.pdf, лежит в папке $GOWIN_HOME/SynplifyPro/doc. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
StewartLittle 45 15 апреля, 2020 Опубликовано 15 апреля, 2020 · Жалоба 16 минут назад, libine сказал: Файл называется fpga_user_guide.pdf, лежит в папке $GOWIN_HOME/SynplifyPro/doc. Спасибо! (у меня это стр. 523). Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vladec 12 16 апреля, 2020 Опубликовано 16 апреля, 2020 · Жалоба Вопрос, наверное, больше к дистрибьютерам -- как соотносятся цены на примерно одинаковые чипы, при прочих равных условиях, у Латиса и Gowin? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться