Jump to content

    

centner56

Новичок
  • Content Count

    4
  • Joined

  • Last visited

Community Reputation

0 Обычный
  1. Спасибо всем - кто помогал. Наконец-то я разобрался с решением этой проблемы. Дело оказалось в проблемах правил наименования в среде Quartus II при использовании схематика, а не в IDC разъемах. Я все подробно описал в статье, чтобы те, кто будут искать решение аналогичной проблемы, решили ее. Кому интересно, прилагаю ссылку на статью: Решение проблем, связанных с правилами наименования в Quartus II при использовании Schematic
  2. 2 Kuzmi4: QAR'ы на все случаи в скриншоте приложил. 2 EvgenyNik: Сделал - не помогло (случай D на скриншоте и его qar тоже прилагается). Вообщем долго экспериментируя и пробуя все способы - я заметил, что когда выводишь на IDC разем больше чем один пин - то он не работает. Сделал как - вывел на IDC 1 - 1 пин, на IDC 2 - 2 пина. В итоге там где два пина (IDC 2) - не работает. На скриншоте все подробно показано. QAR файлы на все 4 случая скриншота прилагаю. cases_from_screenshot.zip Версия Qartus II 13.0 Web Edition свежевыкаченный. PS. Делал все тоже самое, что на скриншоте, но вместо моего модуля делителя частоты, использовал мегафункцию PLL делитель частоты. Все тоже - не могу задействовать более одного пина на IDC разъем, а иначе не работает. Заранее всем спасибо за любую помощь.
  3. Огромное спасибо всем кто откликнулся. 2 Kuzmi4: Спасибо - Ваш ответ помог. Как только я поменял always@(clk_50) на always@(posedge clk_50) Все заработало. Но теперь я столкнулся с еще более непонятной для меня проблемой: С пинов ПЛИС я вывожу на пины IDC разъема, чтобы посмотреть осциллографом. Если я задействую больше одного пина для вывода на IDC разъем, то все пины при просмотре осциллографом молчат. Одним словом нимогу выводить больше чем на один пин. А для отладки устройства мне надо смотреть на пинах IDC разъема неизмененный клок от тактового генератора 50 MHz, клок из моего делителя частоты на Veriloge (1 MHz), плюс еще пару клоков от другого устройства, которые приходят ко мне в ПЛИС. А я не могу смотреть больше одного пина. Если что-то вывожу скажем на два пина - то оба пина молчат. Причем это и на ките Altera DE1 и на целевом устройстве. Подробную картинку прилагаю. Мои коллеги с удивленными глазами смотрят и тоже ничего не понимают. Возможно это какие-то подводные камни при использовании ПЛИС и клоков. Делал PLL делитель частоты через мегафункцию - работает при использовании одного пина. Вывожу его на два и более пинов - не работает ничего. Благодарен за любую помощь.
  4. Здравствуйте. Надеюсь на помощь на данном форуме. Пришел сюда с Хабра, там в комментариях говорят, что все профи "обитают" здесь. Прошу сильно не издеваться, если скажу что-то глупо или некорректно. Я далек от электроники и близок к программированию. Передо мной поставлена задача запустить устройство. На нем стоит тактовый генератор 50 MHz из него надо сделать 1 MHz, путем программирования ПЛИС, так как ЦАП'ы не могут работать на таком быстром клоке. Решил сперва реализовать эту задачу на ките Altera DE1 (c Altera Cyclone II на борту), чтобы проверить работоспособность. Так как делать это в схематике наверное трудно, я почитал обучалки по Verilog'у и написал следующий код преобразователя частоты из 50 MHz в 1 MHz. // Преобразует входной клок 50 MHz в выходной клок 1 MHz module clock_50_to_1 ( input wire clk_50, output reg clk_1 ); reg [5:0] counter; initial begin counter<=0; clk_1<=0; end always@(clk_50) begin if(counter<50) begin counter<=counter+1; end else if(counter==50) begin counter<=1; end if(counter==49) begin clk_1 <= ~clk_1; end end endmodule Прежде чем прошивать кит Altera DE1, подумал что надо просимулировать функционально. Искал что-нибудь бесплатное, нашел Icarus Verilog. Просимулировал в нем, вроде все работает как задумано. Сначала решил просто проверить работу тактового генератора и вывел его через ПЛИС напрямую и проверил осциллографом - все нормально: Потом решил проверить осциллографом мой преобразователь на Verilog'е. Вывел на два пина IDC разъема кита Altera DE1: 1) на один пин [GPIO_1[1]] вывел клок 50 Mhz напрямую, 2) на другой пин [GPIO_1[3]] вывел клок 50 Mhz через мой преобразователь на Verilog'е. В итоге на втором выводе, после моего модуля на Verilog'e сначала какая-то "каша" вместо клока 1 MHz, а через несколько секунд вообще никакого сигнала. Очень хочу разобраться в этом вопросе. Все мои коллеги далеки от программирования и всю жизнь работают с ПЛИС через схематик. Они говорят, что твое программирование - лажа, нафиг Verilog/VHDL, проблемы в твоем коде, надо всегда делать через схематик. Буду благодарен всем за помощь. Заранее спасибо.