Новачкові проекти на FPGA?


11

Мені два тижні від закінчення мого першого курсу цифрового логічного проектування в коледжі, і, мабуть, не буде кінцевого проекту - просто виснажливий випускний іспит.

Так, як це зробив би будь-який цікавий студент, я вивчив, що насправді є FPGA, і що мене годують ложкою у класі. І я вирішив виконати простий проект FPGA. Я використовую FPGA Basys2 Spartan-3E, і я знайомий з цифровою логікою і використовую ISE для просування логічних воріт навколо, але я не знаю VHDL / Verilog (я впевнений, що міг це легко підібрати).

Хтось має ідеї для початківця? Я робив багато лабораторних демонстрацій, але нічого надто фантазійного.


Список побажань: 1080p відображення відео, ... що сказати, я зупиняюся на цьому :-)
Рассел Макмахон,

1
Перевірте сайт fpga4fun.com .
armf

3
Остерігайтеся fpga4fun.com розробників. Їх документація є лайна, і вони відмовляються випускати схеми розробників .
Вонор Коннор

Відповіді:


5

Я знайшов книгу Понг Чу "прототипування протоколу FPGA за прикладами Verilog: версія спартанського версії Xilinx 3" дуже корисною книгою. Він призначений для іншої дошки "Спартан-3" від тієї, яку ви згадали, але все-таки повинна бути корисною.

Існує також видання VHDL, якщо ви бажаєте піти цим маршрутом


4

Ви маєте VGA на це за зовнішнім виглядом. Відео завжди викликає інтерес до мого досвіду :)

Ось план, який ви можете спробувати (не потрібен фреймбуфер):

  1. Отримайте чисто кольоровий VGA-екран
  2. відображати горизонтальне вицвітання від чорного до суцільного кольору
  3. Тепер вицвіте вертикально від чорного до червоного та горизонтально від чорного до зеленого 3а. (зробіть більш цікавий алгоритмічно заданий фон, який ви зможете візуалізувати в режимі реального часу)
  4. створити простий движок спрайт, який накладе невелику довільну форму в довільному місці - ви можете використовувати 1 BRAM для даних спрайту
  5. показати кілька різних спрайтів (по 1 БРАМ кожен)
  6. створити деяку логіку оновлення, щоб змусити спрайтів відскакувати (та вимикати один одного) - додайте до логіки спрайту виявлення зіткнення.
  7. створити спрайт "весло", яким ви можете керувати за допомогою перемикачів, використовуйте його, щоб зупинити спрайти виходити з екрана
  8. Додайте деякий механізм підрахунку

Я думаю, що це все повинно входити в 250E. (Час VGA повільний у FPGA термінах, тому ви можете помножити на 4-8x за допомогою DCM, що дозволить одному спрайтовому механізму мультиплексувати більше ніж один екземпляр спрайту)


3

Цей безкоштовний онлайн-курс, написаний Hamster, дивовижний і написаний на увазі Basys 2 та Nexys 2 .

Я особисто використав Basys 2 і навчився купу проходити цей курс. Він проходить всі аспекти ради Басіса та безліч концепцій для отримання більшості проектів поза виконаним курсом.


2

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

Для цього вам потрібно дізнатися, як створити лічильник у Verilog / VHDL. Це гарний початок для вивчення тонкощів ЛПВЩ, оскільки ви навчитесь:

  1. Операції з певного обладнання - використання коду RTL замість коду рівня воріт. Ви дізнаєтесь, як створити попередньо завантажений лічильник вгору / вниз за допомогою RTL-коду.
  2. Дізнайтеся, як робити синхронний дизайн - що саме для більшості FPGA добре підходить для всіх і є основою майже для всіх цифрових систем.
  3. Дізнайтеся, як взаємодіяти із зовнішнім світом - використовуючи введення-вивід FPGA. Це навчить вас конфігурувати та реалізовувати речі на FPGA.

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


1

Мартін пропонує вам мати можливість VGA.

Що про гідну "фоторамку", яка дозволяє краще контролювати фотографії, ніж зазвичай доступні.

  • Більшість керує підкаталогами погано.

  • Близько жодних можливостей не дозволяють замовляти випадкове відображення - це дуже важлива перевага, коли у вас є велика кількість фотографій.

  • Можливість скласти слайд-шоу на основі вибраних фотографій бонусом. (Див. Приклади Irfanview для прикладів).

  • Додаткові бали - додайте можливість відтворення MP3. Переплетіть музику з фотографіями.

  • Зберігання даних SD Flash.

  • USB?

  • 802,11? (занадто багато, щоб сподіватися.)



0

Книга Гамблена та інших рясніє цікавими проектами для дощок Altera Cyclone DE1 та DE2; VHDL код поставляється. Реалізуйте деякі з них на дошці Spartan-3E.


0

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

Тоді ви можете почати вводити логіку між - державними машинами для надуманих прикладів, як у вас в класі, або складніших, таких як відеогенератори, які рекомендують інші. Більш складні блоки, такі як прості процесори самостійно, тощо ...


0

Коли я пройшов курс VHDL, я зробив мікропроцесор з ALU з декількома інструкціями, зв’язком із пам'яттю та мікроінструкцією секвенсором. Це займе більше часу, ніж ви могли б подумати, особливо якщо ви хочете зробити його надійним.


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