Проект для вивчення VHDL


16

Я студент EE і можу писати [принаймні прості] програми на більшості мов, ніж у мене пальці. Я щойно почав вивчати VHDL, і мені було цікаво, який би був хороший проект, щоб насправді познайомитися з мовою та відповідними інструментами? У мене виникають труднощі придумати один, оскільки це дійсно інший стиль програмування для мене.

Я створив прості речі, такі як добавки, але шукаю більш тривалий (тобто місяць або близько того) проект.

На випадок, якщо у мене це є, у мене є Xilinx Webpack та плата Digilent Spartan3.

Відповіді:


7

Моїм проектом FPGA "привіт світ" був контролер світлодіодного масиву з ШІМ та послідовним входом потоку. Кінцевий результат був хорошим ( http://lbw.axe-man.org/led1.wmv ), але я визнаю, що я частину цього зробив за допомогою схематичного редактора Altera Quartus, щоб побачити, як описуються частини VHDL.


це чудова ідея; Я щойно взяв матрицю без контролера 16х16 і контролер був би чудовим. акуратне відео!
Джеремі

Гарне відео! І цей схематичний редактор може бути використаний.
Моніка

10

Оскільки ви, здається, зацікавлені в програмуванні, ви можете створити простий мікропроцесор.


ВИЩО рекомендується. Ви дізнаєтесь не лише про речі FPGA та VHDL, а й про те, як працюють процесори, що потрібно в засобах розробки для підтримки процесора тощо
Кріс Стріттон

5

Ви повинні перевірити opencores.org і знайти там цікавий проект. Ви також можете завантажити Sigasi HDT , який допоможе вам досягти швидкості граматики VHDL.


4

Мені подобалося працювати з Гансом в hardhack в цьому році на Rekonstrukt проекту зі створення базового synthisizer в FPGA. Світлодіодні проекти також хороші, але немає нічого подібного до підключення FPGA до стерео. Він не будується з нуля, як це було б світлодіодним проектом, оскільки проект базується на процесорі з відкритим ядром, який підтримує. Тож на початку ви дізнаєтесь, як в основному завантажувати FPGA разом з проектом, потім ви можете грати з конвертами в FORTH. Але там, де ви починаєте дізнаватися більше про внутрішні пристрої FPGA - це тоді, коли ви хочете додати функціонал, який потім потребує копання у VHDL.


2

Проект, який мені сподобався робити, - це реалізація гри Milton Bradley Simon Simon на FPGA.

У моєму університеті наш клас EDA використовує ту саму дошку, яку ви згадували. Деякі з реалізованих проектів включали:

  • Обробка зображень: серединний фільтр, розтягнення гістограми, виявлення ребер
  • Криптографія: AES, різні алгоритми хешування і т.д.
  • Зв'язок: Ethernet, USB, I2C тощо
  • Ігри: Понг, космічні загарбники тощо.

Це може дати вам кілька ідей.

Я буду другою ідеєю opencores.org, а також впроваджую власний мікропроцесор. Оскільки у вас є Xilinx FPGA, ви також можете поглянути на те, щоб зробити щось із мікроблайном або пікоблазом.

Правка: форматування.


1

Я написав код vhdl для ядра xilinx virtex десь тому. це була реалізація будильника. Ось що я зробив:

  • Читайте багато через посібник vhdl - мені доведеться переглянути його зараз, але я вважав це досить простим і простим у використанні hdl :-)
  • Використовували пакет xilinx (компілятор, синтезатор) для отримання бітового потоку
  • Завантажено бітові потоки за допомогою jtag

Промити, повторити 1-3. Я хотів би зазначити, що покоління бітових потоків дуже інтегровано в IDE Xilinx. Ви просто повинні мати чітку логіку для реалізації в HDL; всі інші речі виконуються IDE.


1

Цифровий керований осцилятор був би цікавим. Я щойно робив дизайн на своїй сумісній платі Arduino (див. Http://tinyurl.com/ydmz2su ), але це було б ідеально для FPGA.

Ось пара посилань на дизайн.

Снелл, Джон 1988 р. "Дизайн цифрового осцилятора, який створить до 256 синусоїд з низьким спотворенням в режимі реального часу" Основи комп'ютерної музики. Кембридж, Массачусетс: MIT Press

Мур, Ф. Річард 1988 р. "Шум при пошуку таблиці для синусоїдальних цифрових осциляторів" Основи комп'ютерної музики. Кембридж, Массачусетс: MIT Press


0

Що я роблю, це зробити трохи процесора. Це приємний закруглений спосіб охопити всі основи.

Ви висвітлите всі основи великого проекту VHDL і будете піддані впливу всіх основних тем дизайну VHDL (годинники, входи, виходи, логіка, шини та послідовне проектування), а також багато основних електронних та комп’ютерних комп'ютерів Концепції дизайну та архітектури, такі як регістри, операції з передачею даних, пам'ять та арифметика комп’ютера.

Ви можете почати з простого додавання і віднімання, а потім додати більше функціоналу, коли ви дізнаєтесь, працюючи до повністю функціонального (хоч і простого ... або, як я вважаю, це називаю "ретро") комп'ютера. Принаймні, такий мій план.

Плюс мати власний комп’ютер на мікросхемі на замовлення - це просто здорово :) Як 16-бітний Raspberry Pi: P

Інші поширені проекти FPGA:

-Музичний синтезатор

-ДСП-генератор ефектів

-MIDI-контролер / переривник

-Біткойн шахтар

-Відео емулятори ігрових консолей

-Загальні щити Ардуїно

-Паралельні процесори (дуже корисні для певних математичних проблем, які звичайні комп’ютери не дуже великі)

-Роботика / системи управління

-Закупівля даних (досить декілька конструкцій осцилографа для FPGA, якщо ви знаєте, як працювати з підсилювачами)

VHDL сама по собі не є жахливо складною. Найголовніше, що потрібно пам’ятати, це те, що ви розробляєте фізичну електронну цифрову схему, а не пишете програму для мікроконтролера. В основному ваше моделювання - це не програма, яка буде запускатись за рядком, тому не дозволяйте підробляти поверхневу схожість на C, VHDL - це зовсім інша парадигма.

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