Шукаємо апаратне забезпечення та розроблені інструменти FPGA з відкритим кодом [закрито]


38

Досліджені плати FPGA, але не вдається знайти дошки з відкритими джерелами та нейтральні для розробника засоби FPGA:

  • Виробник ORSoC може похвалитися відкритими ресурсами на своєму веб-сайті, але я не можу реально знайти вагомих доказів, окрім веб-майстра OpenCores.org.
  • Дует: Xilinx рекламує свою продукцію на "Конкурсі інновацій з апаратним забезпеченням з відкритим кодом для університетів материкового Китаю". Проте їх продукція є власною, поганою підтримкою * ix -. Аналогічно, Altera має погану підтримку * ix, просто перевірте їх підтримку ОС Quartus або як увімкнути свій логічний аналізатор на синтетичному кроці?
  • Група маленьких гравців - дозвольте вказати кращих.

Чи є хтось із виробників сильних із такими речами, як інструменти hw та dev?


Пов’язане запитання в SO тут .
hhh

3
Зараз існує ланцюжок інструментів з відкритим кодом для решіток напівпровідника iCE40 FPGA, див.: Github.com/cseed/arachne-pnr
Бавовняне насіння

Відповіді:


8

На жаль, не так багато безкоштовного програмного забезпечення для програмованого обладнання. Існує декілька інструментів синтезу, таких як Lava (який очікує в основному ручне розміщення), Confluence, HDCaml та Atom та Icarus Verilog , але поруч немає інструментів для монтажу, картографування або інструментів для розміщення та маршруту (я б дуже хотів, щоб я був неправильним у це). Opencircuitdesign.com зібрав деякі інструменти, але, ймовірно, потрібна певна документація та генератор бітових потоків. З іншого боку, моделювання досить добре висвітлено.

Що стосується невільної сторони, невільні, але безкоштовні інструменти Xilinx останнім часом побачили певне поліпшення, додавши підтримку libusb та скинувши Wind / U (жахливий аналог невільної винної ліги) на користь Qt (але вони не будуть оновлення для відставних фішок). Більшість інших інструментів , здається , саботаж з використанням пакета під назвою FLEXlm, до такої міри , що це важко , щоб змусити їх працювати , навіть з допомогою постачальника. Я також міг запустити програмне забезпечення Lattice Diamond під Linux, але це не вистачало моделювання. Для Atmel AT40KAL інструмент для місця та маршруту може бути запущений у Wine, але бібліотека вимагає нестандартних компонентів (вона використовує LPM, але відмовляється від 2-х вхідних воріт), тож потрібен такий собі картограф.


5

На жаль, наскільки я знаю, інструменти синтезу є закритим джерелом. Код, що міститься в них, є великою частиною їхньої переваги в бізнесі, тому я вважаю, що навряд чи ви будете здаватися їм відкритими.

Xilinx має безкоштовні ланцюги інструментів для Windows та Linux, і якщо вам не подобається їх IDE, ви можете користуватися їх інструментами командного рядка зі своїм власним редактором. Я робив це раніше, це добре працює для невеликих проектів (наприклад, CPLD), де ви не хочете обдурити великі складні програмні пакети.

Altera Я вважаю, що пропонують лише безкоштовні інструменти для Windows, їхні інструменти для Linux виплачуються лише в останній раз, коли я перевірив (це, можливо, змінилося, пройшло, можливо, рік або близько того, як я останній раз подивився).


Я розумію, що синтез - процес впровадження дизайну в компоненти будівельного блоку технології - є останнім шаром, де заміщення власного можливо. Це наступний шар - місце та маршрут, аналіз часу, який потрібно пройти разом із цим, та генерування бітових потоків, за яким слід дійсно чітко містити інформацію.
Кріс Страттон

5

Дошка « Метелик» виглядає як непоганий шлях з початковим кодом для початківців у FPGA. Вони вже перенесли ядро ​​AVR8, щоб ви могли запускати ескізи Arduino / об'єктний код AVR на цій речі, тож є крива розумного навчання.

Оновлення: тепер перейменовано на дошки Папіліо .

Я думаю, що Xilinx WebPack потрібен і він доступний для Windows та Linux.


Веб-пакет також повинен бути безкоштовним і для вас.
Кортук

Вибачте, але насправді не можна зрозуміти, що з цим є "відкритим кодом". Віддає перевагу прослизнути монету з більш ніж наполовину дешевше , як: item.taobao.com/auction / ... .
hhh

3
Хоча він покладається на фірмовий ланцюжок інструментів Xilinx, Butterfly One включає в себе 1) дизайн плати з відкритим кодом, 2) "програміст" з відкритим кодом (бітстріл-> flash-утиліта) та 3) безліч IP з відкритим кодом як приклади . Рекомендовано!

Можливо, вам слід оновити своє посилання, щоб вказати на Метелика? Крім того, чи знаєте ви, наскільки вони добре підтримуються (наприклад, скільки людей ними користується і чи добре вони для початківців)?
граф

Схеми та всі програми є відкритим кодом для Butterfly One, і я повністю запустив це на своєму комп'ютері Arch Linux. Вам потрібно вручну скласти кілька речей, але я б не сказав, що це важче, ніж у більшості FPGA. (і, мабуть, простіше, тому що він запрограмований як
ефір

3

Інструменти розробки FPGA всі тісно поєднані з самими пристроями FPGA і повністю залежать від власних деталей архітектури FPGA, особливо на рівні розміщення, маршрутизації та генерації біт-потоків. Таким чином, нейтралітет продавців значною мірою відсутній. Інструменти вищого рівня можуть певною мірою бути нейтральними до постачальників (наприклад, Synplify, ESL-інструменти, інструменти перевірки тощо), але вони, звичайно, не є відкритим кодом.

З іншого боку, існує багато академічних інструментів, які є відкритим кодом. Поки ви не хочете розробити для реального фізичного пристрою, ви можете використовувати ланцюжок інструментів VPR 5.0 .


Я не купую пояснення "щільно пов'язаного з обладнанням". Те ж саме з різними наборами інструкцій для вбудованих процесорів.
макси

@maxy - ні, насправді це не так. Центральний процесор відбирає велику кількість деталей апаратних засобів, які піддаються і повинні враховуватися ланцюжком інструментів FPGA. Компілятору змінного струму насправді не потрібно знати чи дбати про те, чи буде висновок множника вчасно потрапляти до наступного реєстру, і навіть дизайнеру плати залишається лише дивитися на максимально дозволену тактову частоту, щоб знати це. Для інструменту FPGA ви повинні знати, скільки часу займає множник, який час налаштування реєстру, а потім обчислити затримку між ними, виходячи з того, де ви поставите їх на мікросхему та як маршрутизуєте сигнал між ними.
Кріс Страттон

3

Ні з відкритим кодом, ні досі не підтримується, але Xilinx пропонує безкоштовний, багатоплатформенний (Java) API під назвою Jbits, який дозволяє безпосередньо програмувати (і на ходу перепрограмувати) FPGA. Я вважаю, що підтримуються лише CPLD та Virtex-II, але це найближче дозволити розробникам виробляти власні спеціальні інструменти синтезу. Плануємо пограти з цим зовсім недалеко.


Jbits був дійсно крутий.
Проф. Фолкен
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.