FPGA & Verilog БлогFPGA chips

САПР Altera Quartus II / Intel Quartus Prime, язык Verilog HDL и кое-что про VHDL, FPGA Cyclone III, Cyclone IV, MAX II, MAX10. Платы разработчика серии Марсоход, Марсоход2, Марсоход3.


У нас на сайте уже была пара статей про PLL.
PLL - это, если говорить просто, встроенный в ПЛИС генератор тактовых частот. Он позволяет из одной входной тактовой частоты синтезировать несколько других с иной заданной частотой, скважностью и, при желании, с некоторым начальным сдвигом фазы.

Наша статья "Использование PLL" довольно подробно рассказывала как создать и настроить PLL в Altera Quartus II MegaWizard PlugIn-Manager. С тех пор прошло довольно много времени и теперь, в Quartus Prime, доступ к визарду осуществляется через пункт меню Tools => IP Catalog. Модуль PLL создается с помощью этого каталога. В нем выбираете Library => Basic Functions => Clocks; PLLs and Resets => PLL => ALTPLL. Остальные настройки - все как и раньше.

Сейчас я хочу рассказать о возможности динамически сдвигать фазу тактовой частоты PLL. Эта возможность есть в PLL таких FPGA, как Cyclone III, Cyclone IV, в MAX10 и других. Сказать по правде я и сам вот только что ознакомился с этой функцией в PLL. Просто раньше у меня в этом не было никакой необходимости, а сейчас появился проект, где это может понадобиться. Сдвиг фазы PLL - это похоже единственный способ аккуратно управлять задержками сигналов.

Давайте попробуем поэкспериментировать с фазой тактовой частоты.
Нам понадобится оригинальная документация компании Altera/Intel https://www.altera.com/en_US/pdfs/literature/hb/max-10/ug_m10_clkpll.pdf

Итак, в визарде есть закладка под номером 2: PLL Reconfiguration. там внизу ставим галочку: Create optional inputs for dynamic phase reconfiguration.

enable phase reconf

Как только ставим галочку, то слева визард показывает блок PLL и в нем появляются новые входы и выходы, которых раньше не было.

Это входы

  • phasecounterselect[2..0]
  • phaseupdown
  • phasestep
  • scanclk

и выход

  • phasedone

С помощью этих сигналов можно управлять фазами любой выходной тактовой частоты PLL.

Режиссер и сценарист: Константин Бронзит
Продюсер: Александр Боярский, Сергей Сельянов
Композитор: Валентин Васенков
Художник: Роман Соколов
Россия, 2014

12 апреля. День Космонавтики. Поздравляем.

max10 IP catalog adc params

Есть простой способ симуляции АЦП, встроенной в ПЛИС Intel MAX10. Если сказать точнее, то существует простой способ симулировать выходные данные АЦП в среде ModelSim.

Сейчас расскажу, как это сделать.

Когда в проекте для FPGA MAX10 нужен компонент АЦП, то он создается через пункты меню Tools => IP Catalog, далее в списке выбираем Library => Processors and Periferials => Altera Modular ADC core. Далее открывается IP Parameter Editor, где задаются конкретные параметры и нужная конфигурация модуля АЦП. Довольно подробно про это рассказано в описании проекта Использование встроенного в Altera MAX10 АЦП

Как показано на рисунке выше, на этапе редактирования IP параметров для АЦП можно указать путь к текстовому файлу, который будет содержать отсчеты АЦП, которые увидит потом ModelSim во время симуляции.

Intel makes Cyclone 10 FPGA
Компания Intel анонсировала выпуск FPGA Cyclone 10GX и Cyclone 10LP.
Две новых серии ПЛИС получили два новых лозунга. Для Cyclone 10GX - это "Удвоенная производительность за пол-цены".
Для Cyclone 10LP - "В 2 раза меньше энергопотребление за пол-цены".

Cyclone 10GX - это микросхема ПЛИС для организации высокоскоростных соединений. В самой простой 10CX085 будет 4 тринсивера 10,3Gbps и даже встроенный аппаратный блок PCIExpress до Gen2 x4. Кроме того, здесь будут встроенные аппаратные умножители/сумматоры с одинарной точностью и встроенный аппаратный контроллер DDR3. Микросхема выполнена по технологии TMSC 20 nm. Подробнее можно почитать про эти ПЛИС на сайте Intel: https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/hb/cyclone-10/aib-01028.pdf

Микросхема Cyclone 10LP будет поскромнее. Однако, ее главная особенность - это низкое энергопотребление.
Напряжение питания ядра 1.0V или 1.2V. Краткое описание: https://www.altera.com/content/dam/altera-www/global/en_US/pdfs/literature/hb/cyclone-10/aib-01029.pdf

Интересно сравнить "комплектацию" новых Cyclone 10LP и старых Cyclone III.
Выдержки из документации на обе микросхемы представлены ниже.

top level

Если ответить коротко, то "никак". А если все таки подумать, то выход есть: сперва нужно конвертировать имеющуюся схему в Verilog или VHDL программу и уже потом можно симулировать. Сейчас я покажу, как это можно сделать. Это может оказаться не очень просто, но все проблемы, в принципе, решаемы.

Возьмем первый проект для платы Марсоход3, там, где "мигаем светодиодами" и попробуем его просимулировать в ModelSim.
Заодно посмотрим, какие могут быть особенности при симуляции альтеровской мегафункции PLL.