justontime 0 18 декабря, 2017 Опубликовано 18 декабря, 2017 · Жалоба Пытаюсь тут использовать в своих (сугубо личных) целях код, написанный на SV. Мало того, что я Verilog/SV не знаю (только VHDL), так еще и проект был сделан под Xilinx (я же только с Altera имел дело). Есть такой кусок: 131 genvar i, j; 132 generate 133 for (i = 0; i < NUM_BANKS; i ++) 134 for (j = 0; j < NUM_OPERATORS_PER_BANK; j++) begin 135 edge_detector #( На него (и несколько подобных мест) выдает ошибки: Error (10170): Verilog HDL syntax error at phase_generator.sv(134) near text: "for"; expecting "begin". Check for and fix any syntax errors that appear immediately before or at the specified keyword. Error (10644): Verilog HDL error at phase_generator.sv(133): this block requires a name Естественно, я попытался почитать описание ошибок, но в лоб исправить не удалось. Мне кажется, что здесь, возможно, присутствует какая-то специфика от Xilinx ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 27 18 декабря, 2017 Опубликовано 18 декабря, 2017 · Жалоба Приветствую! Пытаюсь тут использовать в своих (сугубо личных) целях код, написанный на SV. Мало того, что я Verilog/SV не знаю (только VHDL), так еще и проект был сделан под Xilinx (я же только с Altera имел дело). Как же Вам тяжело ... - говорить на языке которого не знаешь ... 131 genvar i, j; 132 generate 133 for (i = 0; i < NUM_BANKS; i ++) 134 for (j = 0; j < NUM_OPERATORS_PER_BANK; j++) begin 135 edge_detector #( ... Это заморочки конкретного синтезатора - он всего то хочет '... имя сестра - назови его имя ... ' попробуйте так : ... 133 for (i = 0; i < NUM_BANKS; i ++) begin : g_name_dla_etoro_for_bloka 134 for (j = 0; j < NUM_OPERATORS_PER_BANK; j++) begin : g_name_dla_vtorogo_for_bloka ... Ему ленивому это нужно для того чтобы при синтезе правильно генерировать имена инстансов внутри блока. На сколько помню именно Quartus на такое и ругается. Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
justontime 0 18 декабря, 2017 Опубликовано 18 декабря, 2017 · Жалоба Как же Вам тяжело ... - говорить на языке которого не знаешь ... Тут, скорее, как раз проблемы не в самом языке (все-таки я его немного понимаю), а в конкретной среде... Это заморочки конкретного синтезатора - он всего то хочет '... имя сестра - назови его имя ... ' Именно так - я уже успел найти этот код, портированный в Quartus, и там как раз просто добавлены имена... Удачи! Rob. Большое спасибо ! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться