Перейти к содержимому

Altera vs xilinx что выбрать

  • автор:

Xilinx дорого-богато? Или ищем бюджетные варианты

Свое изучение ПЛИС я начал с FPGA Altera Cyclone IV, с которой в комплекте шел копеечный USB ByteBlaster. В сторону Xilinx посматривал с опаской, если борода была не сильно дороже, то программатор начинался уже от 2 т.р. за копию на Алике, что от 10 раз дороже Альтеровского Бластера. Я прошел свой путь от относительно дорогих (не фирменные) до дешевых моделей и хочу с Вами поделиться изысканиями. Возможно, если бы я обладал этой информацией, то начал изучать Xilinx пораньше.

Про плату управления майнером EBAZ4205 не писал только ленивый, ее я и заказал первой на опыты с SOC XC7Z010. Поморгав диодами, заказал со второго раза специфичные разъемы для самодельной платы расширения (пришли только несколько дней назад), начал искать на просторах Али вариант поинтересней и главное, подешевле («а восемь шапок сможешь ?»). И вот, довольно быстро, ко мне пришла китайская слива, то бишь, встречаем Lichee Tang Hex.

Размеры, конечно поражали, такой минитиарюзации я не ожидал. Однозначно советовать вам ее не могу, но плюсы и минусы (с моим видением) расскажу. Ну а выбор, конечно, за Вами.

Во, первых, документация, из всех ссылок, что дал продавец (и то после пинка), рабочими и по этой плате были всего две. Привожу основную сайт SiPEED там вы найдете схему, примеры и Petalinux.

Кратко пробежимся по схеме, на плате стоят две DDR3 MT41K256M16TW 256Mx16 каждая, что дает целый Гигабайт 32bit ОЗУ. IO-pin катастрофически мало:

Из 26 контактов — четыре с напряжениями от 1.8V до Vin, пять земляных, два задумывались под PL_I2C, два под PS_UART, еще два под FAN SPEED и PWM. Осталось с гулькин нос: два PL_33_IO и 9 непонятных HASH_IO. Можно ли будет на этом собрать полноценный HDMI, покажет время. Снизу видим Flash MT29F2G16ABAEA на 2GB 8bit и 4bit MicroSD подключенную к PS части.

Сетевая часть выполнена на LAN9514 — это USB host на 4 порта объедененный с Usb-LAN мостом так что скорость ограничена 100Mbit. Неоднозначное удешевление, возникает вопрос «Оно того стоило ?». Источником выступает быстродействующий USB2.0 трансивер с ULPI интерфейсом на мс USB3320. Кварц на 33MHz тактирует только PS часть, так что без инициализации PS, логику PL вы не запустите. На EBAZ4205 есть хотя бы место под кварц. Светодиоды подключены к выводам AB1 GREEN и AB4 RED, единственная кнопка PL_SW подключена к W5.

А UART к MIO48 — MIO49 :

Чтобы помигать светодиодиком, необходимо подключить программатор, благо выводы подписаны, но не распаяны и даже в комплекте гребенки не нашел. Из бюджетных, существует относительно дорогой вариант DL10 на Lattice с Cypress, этот работает из коробки без бубна :

Если денег не так много, можно заказать плату FT232H на Ali, цена около 500 руб с быстрой пересылкой :

С этой придется повозиться. Скачайте с сайта FTDI Chip программу FT PROG, установите и запустите ее, просканируйте подключенные устройства, скорее всего память будет девственно чистой :

Во вкладке USB_Config_Description в поле Max Bus Power следует поставить значение 500mA.
Во вкладке USB_String_Description необходимо записать в полях:

  • Manufacturer — Digilent;
  • Product Description — Digilent USB Device;
  • Serial Number — 210249854606.

Во вкладке Hardware_Specific → Port_A → Hardware нужно установить галочку напротив 245 FIFO, а в
Hardware_Specific → Port_A → Driver — отметку напротив D2XX

После этого записываем в EEPROM изменения, но для работы в качестве программатора Xilinx этого мало, необходимо прошить UserMemory, необходимо воспользоваться функцией FT_EE_UAWrite из библиотеки D2XX API (пример использования этой функции приведен в AN_121_FTDI_Device) либо программой FTDI_User_Area_Writer, уважаемого Дмитрия aka ADA007 с github. Далее вынимаем и опять вставляем платку, смотрим диспетчер устройств: COM должен пропасть, а в Контроллерах USB остаться USB Serial Converter. Контакты для подключения к программатору приведены ниже, не забываем GND :

  • ADBUS0 — TCK;
  • ADBUS1 — TDI;
  • ADBUS2 — TDO;
  • ADBUS3 — TMS.

Питается плата от 12V DC5,5. Теперь, если запустить Vivado 2018 и старше, в Device Manager увидим программатор и нашу плату :

Также в качестве программатора можно использовать плату на FT2232H бонусом получаете еще COM, процесс описан в журнале Компоненты и технологии №3 2014 г. а подробно почитать как автор статьи прошел тернистый путь к результату на форуме Electronix.

Если нужен урок как помигать светодиодами — примеров в сети много от мануала по EBAZ4205 для «баранов» на fpga-systems.ru до вполне приличных статей, например 1 и 2, на habr.ru.

Конечно, я не претендую на истину в последней инстанции и могу, конечно, заблуждаться. Пишите — поправим.

Выбор ПЛИС для синхронизирующего устройства

Бушуев, И. Ю. Выбор ПЛИС для синхронизирующего устройства / И. Ю. Бушуев, А. П. Аверченко. — Текст : непосредственный // Молодой ученый. — 2020. — № 48 (338). — С. 34-35. — URL: https://moluch.ru/archive/338/75747/ (дата обращения: 08.01.2024).

Бушуев Иван Юрьевич, студент;

Аверченко Артем Павлович, старший преподаватель

Омский государственный технический университет>>>

В данной статье автор разбирается в моделях ПЛИС, представленных в продаже, и объясняет свой выбор отладочной оплаты для проекта.

Ключевые слова : ПЛИС, синхронизатор, цифровая электроника, цифровая обработка, схема.

Для реализации синхронизирующего устройства на базе ПЛИС нужно подобрать программируемую логическую интегральную схему из предложенных на сегодняшний день на рынке. Выбирать будем исходя из их физических параметров и цены. На базе синхронизирующего устройства предполагается сделать часы, которые будут считать время, а также сравнивающее устройство, задача которого состоит в том, чтобы сравнить время, которое приходит к синхронизатору, и время, которое считают часы на основе программируемой логической интегральной схеме.

Причины по которым использовать будем именно ПЛИС:

Практичность при смене модели микроконтроллера нужно изучать документацию. При смене производителя микроконтроллера нужно снова изучать новую документацию. При проектировании на ПЛИС, если знакомы с такими языками программирования как Verilog или VHDL, в таком случае есть возможность не только программировать любую ПЛИС из семейства одной и той же выбранной компании, но при необходимости перейти на программируемую логическую интегральную схему от другой компании, например, Altera или Xilinx. Несмотря на проблемы связанные со знакомством с неизвестной средой разработки, новых нюансов, сам алгоритм программирования на HDL от этого не станет иным.

Переход от замысла к реализации задуманного — бывают такие ситуации, что при создании проекта не достаточно одного микроконтроллера, то в таком случае требуется подбирать иной. Вообще-то можно предполагать сможет или не сможет выполнить этот микроконтроллер задуманный проектом. Или имеется какой-то заранее выбранный микроконтроллер и мы пытаемся реализовать проект на его основе. Обычно это происходит примерно так. Поэтому лучший вариант — это продумать то что мы хотим сделать, а затем под эту идею подбирать необходимые запчасти. То есть сначала идея, затем выбор компонентов.

Легкость использования сторонних программ — Не запрещается запустить модуль чужой программы. По коду можно понять, каким образом он работает. Даже не смотря на то, что он выполнен для платы от компании Intel, а мы запускаем на Xilinx. Возможно это получится не сразу и придется потратить некоторое время, но это проще, чем разбираться с разными микроконтроллерами или писать программу каждый раз на новом языке.

Независимость блоков. Блоки в HDL, подчиняются только входящим сигналам. Подготовленный и настроенный модуль будет работать как было задумано изначально, несмотря на то как бы не усложняли и не увеличивали проект. Никакие внешние факторы не смогут повлиять на его работоспособность внутри. Кроме всего прочего, блоки в ПЛИС работают независимо друг друга, т. е. параллельно.

Сразу возникают вопросы какую ПЛИС выбрать Altera или Xilinx? На каком языке программировать Verilog или VHDL? На какой отладочной плате остановить свой выбор?

Программирование мы будем выполнять с помощью языка Verilog.

В данный момент существует большое разнообразие плат на SoC, содержащие в себе FPGA и ядра процессора, они имеют различные цены, но мы из всего разнообразия более или менее доступных микросхем выделим только два семейства: Cyclone V производства компании Intel (Altera) и Zynq-7000, предлагаемых компанией Xilinx. Обе модели отладочных плат обладают двухъядерным процессором ARM Cortex A9 и FPGA. Zynq возможны в одноядерном исполнении (Zynq-7000S). Выбранные микросхемы предлагаются в корпусе BGA, поэтому спаять подобную плату самому не предоставляется возможным. Большинство плат обладают конфигурацией SOM (система на модуле), что дает возможность для их установки в свои проекты, штучные или серийные.

Другими примерами плат на SoC являются модели Arria V, Arria 10, Stratix 10 (перечисленные плат от компании Intel) и Virtex 7 (от компании Xilinx). В чипы Xilinx и Virtex встраивалась микропроцессорная RISC-архитектура PowerPC до семейства Virtex 6 в том числе. Но цена таких отладочных плат с этими чипами может быть очень высокой.

По так называемому “железу” отладочные платы Cyclone V и Zynq-7000 очень похожие системы, обладающие двумя ядрами Cortex A9 и некоторым количеством ячеек FPGA. Но разница между этими семействами заключается в их софте.

Для Xilinx Zynq-7000 (и подобных FPGA седьмой генерации от этой компании) средой разработки проектов FPGA является программа Vivado, средой разработки программного обеспечения — Xilinx Software Development Kit сокращенно SDK. Он распространяется на бесплатной основе и не имеет некоторых ограничений, которые имеются у DS-5 Altera Edition. Обе программы предлагаются в вариантах для Linux ОС и для Windows ОС, но необходимо обратить внимание, что Vivado для Linux ОС устанавливается не на любую Linux ОС. При установке на Windows ОС затруднений не возникнет.

Для программирования на отладочных платах Intel потребуется программа Quartus Prime, а инструментом разработки ПО — DS-5 Altera Edition. Что дает возможность (на бесплатной основе) создавать утилиты для Linux ОС, но в случае если мы захотим разрабатывать приложения, поддерживающие режим Bare Metal (без операционной системы), то нам потребуется платная DS-5. Для обеих программ (Quartus Prime и DS-5) доступны версии для Windows ОС и для Linux ОС. Но нужно держать во внимании тот факт, что инсталляция и настройка данных программ на Linux OC потребует определенных навыков и поиск готовых решений в сети Интернет. На Windows ОС эти программы устанавливаются без проблем.

Для сравнения я взял платы на из семейства Cyclone V от компании Intel (Altera) и семейство Zynq-7000 представленное на рынке компанией Xilinx, которые представлены в продаже на сегодняшний день.

Остановим свой выбор на отладочной плате от компании Intel (Altera) Cyclone V E, которая имеет компактные размеры, отличное оснащение и хорошие технические параметры, которые приведены ниже:

432 М9К блоков памяти

3 888 кбит встроенной памяти

Устройство последовательной конфигурации EPCS64

Встроенная схема USB — бластера

128 МВ (32Мх32bit) SDRAM

2 MB (1Mx16) SRAM

8 MB (4Mx16) Flash — памяти с 8-ми битным режимом

Три входа тактовой частоты генерации 50 МГц

Разъемы SMA (вход/выход внешних часов)

Таким образом, приходим к выводу, что для реализации синхронизирующего устройства нам с запасом для дальнейшего улучшений разрабатываемого проекта вполне подойдет отладочная плата от компании Intel (Altera) Cyclone V Е, в качестве программной среды будем использовать Quartus и язык Verilog.

Основные термины (генерируются автоматически): FPGA, HDL, VHDL, компания, плат, ПЛИС, программируемая логическая интегральная схема, синхронизирующее устройство, бесплатная основа, отладочная плата.

Altera vs xilinx что выбрать

Текущее время: Пн янв 08, 2024 18:13:10

Часовой пояс: UTC + 3 часа

Запрошенной темы не существует.

Часовой пояс: UTC + 3 часа

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y

Работоспособность сайта проверена в браузерах:
IE8.0, Opera 9.0, Netscape Navigator 7.0, Mozilla Firefox 5.0
Адаптирован для работы при разрешениях экрана от 1280х1024 и выше.
При меньших разрешениях возможно появление горизонтальной прокрутки.
По всем вопросам обращайтесь к Коту: kot@radiokot.ru
©2005-2024

Made at Intel. Acquisitions -3

по части Альтеры. у меня сложилось впечатление, что после приобретения ПЛИС Альтеры перестали развиваться((( и второе, софт quartus как в далеком 2015 трассировал наш эталонный проект 40 минут, так и сейчас последняя версия трассирует 40минут. Трассировка ведется на одном ядре (!) и производительность зависит только от частоты процессора. За 8 лет они даже не попробовали многопоточность или в cuda.

Для сравнения: китайский titanium efinix (как аналог пятого циклона)- потребление в статике ниже на порядок, компиляция в 5 раз быстрее при той же сложности проекта. цена в десять раз. Но может я предвзят и Интел реально развивает подразделение ПЛИС, но как-то не заметно.

Всего голосов 7: ↑7 и ↓0 +7
Ответить Добавить в закладки Ещё
Показать предыдущий комментарий

А как выглядит альтера против xilinx на вашем проекте?

Всего голосов 2: ↑2 и ↓0 +2
Ответить Добавить в закладки Ещё
Показать предыдущий комментарий

к сожалению, сравнить возможности нет, мы в один этап перешли с альтеры на китай и пока полёт нормальный. На мой взгляд со стороны — xilinx очень хороши (если бы я мог заново выбрать между альтерой и xilinx в прошлом, я бы выбрал xilinx) и очень распространены, но в текущих реалиях жду от китайцев прорыв в области развития ПЛИС, предпосылки есть.

для примера Titanium — это по производительности аналог Cyclone V, но в корпусе 5х5мм имеет в себе следующие фишки: 1. конфигурационную микросхему 2. Память HyperRAM 256Mbit размерность 16бит 200МГц. 3. Аппаратная самопроверка прошивки в ходе работы 4. Аппаратную поддержку нескольких прошивок. Ну и бонусом RISC-V и среду разработки совместимую с Eclipse. Ну и главный бонус — это потребление на порядок меньше, чем у Cyclone.

Так вот в таких габаритах ПЛИС+ПЗУ+RAM в одном корпусе. очень интересное решение, для значительного количества задач (мультимедийных) вполне достаточно. Ждём, что смогут развить эти идеи не повышая потребления.

Повторюсь, что, на мой взгляд, поглощение Altera Intel’ом — привело к стагнации ПЛИС Altera, как ведущего производителя ПЛИС, задающего новые тенденции в этой области. Да производят те ПЛИС, что и производили 10-15-20 лет назад, но прорыва не наблюдается и даже предпосылок. Ни в софте разработки, ни в архитектуре, ни в потреблении или технологии ПЛИС.

Всего голосов 5: ↑5 и ↓0 +5
Ответить Добавить в закладки Ещё
Показать предыдущий комментарий

Я помню, да, вы писали, что перешли на Суслон10 и пожалели)) А мы вот как раз сейчас переходим на него, и у нас скорее нет шанса существенно скакать между архитектурами, в основном меняем одни Циклоны на другие. Даже на Зайлинкс пересаживаться сложно, хотя есть их фанаты в коллективе.

И, да, спасибо за Efinix, впервые про них услышал! Правда вы почему-то пишете что он китайский, а он вроде американский, нет?

в корпусе 5х5мм имеет в себе следующие фишки: 1. конфигурационную микросхему 2. Память HyperRAM 256Mbit размерность 16бит 200МГц

Вроде прикольно, еще когда у Говина такое впервые увидел — очень удивился, что именно Говин это первым замутил, а не Интел. Но, признаться, не уверен, что это сильно полезно. У нас по крайней мере меньше одного гигабита памяти даже 10 лет назад было смешно иметь. А экономия на конфигурационной микросхеме кажется все же странной, если б еще там был реальный NOR-based design, так ведь нет, статическая конфигпамять.

3. Аппаратная самопроверка прошивки в ходе работы

Разве у Альтеры этого не было? Это даже у воронежских ПЛИС есть.

4. Аппаратную поддержку нескольких прошивок

Я может что-то путаю. Но это было точно в Аррии2 и Максе10, на Циклонах мы это не использовали по ряду причин, но это просто случайность.

среду разработки совместимую с Eclipse

Разве же это достоинство? 😀

Ну и, да, у Альтеры тоже среда разработки под ниос на Эклипсе. Если вы об этом.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *