Fantasm 0 23 июня, 2018 Опубликовано 23 июня, 2018 (изменено) · Жалоба Только начинаю изучать Verilog, столкнулся с необъяснимыми трудностями. Второй час бьюсь головой об стену, пытаясь понять причины недовольства компилятора. Знатоки, помогите, пожалуйста. Файл с исходником ниже прилепил. test.v Изменено 23 июня, 2018 пользователем Fantasm Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Lmx2315 5 23 июня, 2018 Опубликовано 23 июня, 2018 · Жалоба у вас комбинация if - else сама по себе болтается, её надо в always сунуть , а assign вытащить из неё. з.ы. правда что вы хотите от led-a я так и не понял. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Fantasm 0 23 июня, 2018 Опубликовано 23 июня, 2018 · Жалоба у вас комбинация if - else сама по себе болтается, её надо в always сунуть , а assign вытащить из неё. з.ы. правда что вы хотите от led-a я так и не понял. Каждые 40 нс меняется состояние led. То есть это имитация светодиода, который горит в течение 40 нс каждые 40 нс. За совет - спасибо. Не знал, что нельзя вне блока always операторы совать Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Lmx2315 5 23 июня, 2018 Опубликовано 23 июня, 2018 · Жалоба это имитация светодиода, который горит в течение 40 нс каждые 40 нс. если лед будет гореть 40 нс, каждые 40 нс - то он будет гореть непрерывно. Но я вас понял - вы на самом деле хотите чтобы у вас лед мигал со скважностью 2. reg led_reg=0; always @(posedge clk) if (tm!=40) tm<=tm+1; else begin tm<=0; led_reg<=~led_reg; end assign led = led_reg; Симулятора у меня под рукой нет - надеюсь не накосячил. Само - собой , тактовая 1 ГГц. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Fantasm 0 23 июня, 2018 Опубликовано 23 июня, 2018 · Жалоба Можно оффтоп? Есть какие-нибудь наработки для визуализации всего этого дела? Виртуальная эмуляция платы например, которая будет мигать диодами и реагировать на клики мышью по кнопкам? Настоящую ПЛИС приобрести пока нет возможности. В инете не нашел, но, быть может, плохо искал (ибо формулировка такого запроса - дело мутное). led_reg<=~led_reg; А что, так можно было?? :biggrin: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 23 июня, 2018 Опубликовано 23 июня, 2018 · Жалоба Есть какие-нибудь наработки для визуализации всего этого дела? А симулятор чем плох? Напишите модуль, напишите тестбенч и любуйтесь на здоровье. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Fantasm 0 23 июня, 2018 Опубликовано 23 июня, 2018 · Жалоба А симулятор чем плох? Напишите модуль, напишите тестбенч и любуйтесь на здоровье. Никрасиво! :D Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Flip-fl0p 4 24 июня, 2018 Опубликовано 24 июня, 2018 · Жалоба Никрасиво! :D Как в известном анекдоте: "Так вам шашечки или ехать?" Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
1891ВМ12Я 0 27 июня, 2018 Опубликовано 27 июня, 2018 · Жалоба Никрасиво! :D На самом деле, симулятор это очень даже няяя и кавайно. HDL симулятор это основной инструмент разработки и отладки. Если noob решил учиться, то пусть учится сразу правильно. Некоторые малоопытные разработчики, немного пишущие на Verilog, как раз и задерживают свое развитие в данной области, потому что не желают научиться пользоваться симулятором. В итоге, когда нужно справить даже со средней сложности проектом, они оказываются беспомощными. https://electronix.ru/forum/index.php?showtopic=147073 https://electronix.ru/forum/index.php?showtopic=147246 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
umarsohod 1 27 июня, 2018 Опубликовано 27 июня, 2018 · Жалоба Только начинаю изучать Verilog, столкнулся с необъяснимыми трудностями. Второй час бьюсь головой об стену, пытаясь понять причины недовольства компилятора. Знатоки, помогите, пожалуйста. Файл с исходником ниже прилепил. Нет энтера после endmodule , он синим должен быть. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
andrew_b 16 27 июня, 2018 Опубликовано 27 июня, 2018 · Жалоба Нет энтера после endmodule , он синим должен быть.Ошибка не в этом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
RobFPGA 33 27 июня, 2018 Опубликовано 27 июня, 2018 · Жалоба Приветствую! Нет энтера после endmodule , он синим должен быть. При чем тут энтер - if не может болтаться в теле модуля сам по себе - он должен быть либо в always либо в generate блоках. module ... generate if (...) begin assign var0 = ... end endgenerate always_comb begin if (..) begin var1 = ... end end always @(posedge clk) begin if (..) begin var2 <= ... end end endmodule Удачи! Rob. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться