Перейти к содержанию

Глупый/чайниковский вопрос по SV

Пытаюсь тут использовать в своих (сугубо личных) целях код, написанный на 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 ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Приветствую!

Цитата(justontime @ Dec 19 2017, 01:20) <{POST_SNAPBACK}>
Пытаюсь тут использовать в своих (сугубо личных) целях код, написанный на SV. Мало того, что я Verilog/SV не знаю (только VHDL), так еще и проект был сделан под Xilinx (я же только с Altera имел дело).
Как же Вам тяжело ... - говорить на языке которого не знаешь ...

Цитата(justontime @ Dec 19 2017, 01:20) <{POST_SNAPBACK}>
Код
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.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(RobFPGA @ Dec 19 2017, 01:39) <{POST_SNAPBACK}>
Как же Вам тяжело ... - говорить на языке которого не знаешь ...

Тут, скорее, как раз проблемы не в самом языке (все-таки я его немного понимаю), а в конкретной среде...

Цитата(RobFPGA @ Dec 19 2017, 01:39) <{POST_SNAPBACK}>
Это заморочки конкретного синтезатора - он всего то хочет '... имя сестра - назови его имя ... '

Именно так - я уже успел найти этот код, портированный в Quartus, и там как раз просто добавлены имена...

Цитата(RobFPGA @ Dec 19 2017, 01:39) <{POST_SNAPBACK}>
Удачи! Rob.

Большое спасибо !

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация