Arduinowe FPGA

FPGA to jakby niedokończone układy scalone. Mają w sobie pełno bramek logicznych, ale nie są one ze sobą połączone. Dopiero użytkownik programując je, łączy te bramki w potrzebne mu obwody.

Dawniej układy logiczne typu UCY74xx lub CD4xxx miały w sobie po kilka bramek. By zrobić na nich duże urządzenie potrzeba było kilkanaście albo kilkadziesiąt takich scalaków. Konkurencją dla nich były właśnie programowalne układy, mogące je zastąpić jednym układem.

Dziś programowalne układy zastępują raczej procesory. W ich programowalnej strukturze można zbudować z bramek sprzętowy algorytm, który działa szybciej niż jakby miał go interpretować uniwersalny procesor.

Ja spotkałem się z takimi zastosowaniami:

  • Sprzętowe emulatory starych komputerów
  • Tworzenie układów do generowania grafiki na ekranie telewizora, albo monitora
  • Sprzętowe algorytmy kompresji
  • Sprzętowe algorytmy sum kontrolnych i szyfrowania
  • Wydobywanie Bitcoinów

Jedną z najbardziej znanych propagatorek takiej zabawy elektroniką jest Jeri Ellsworth. Zbudowała ona jeden z pierwszych sprzętowych emulatorów Commodore C64, czym zyskała sławę.

Ten przydługi krapowaty wstęp piszę tylko dlatego, że na Kickstarterze są 2 ciekawe projekty zestawów FPGA promujące naukę ich programowania. 

Pierwszy nawiązuje budową płytki do Arduino. Jest o tyle fajny, że można go programować za pomocą bliźniaczego środowiska jak w Arduino IDE.
To co najbardziej mi się spodobało, to możliwość graficznego rysowania obwodów, które będą zaprogramowanie w układzie. Płytka ma także wbudowane Arduino Leonardo, które może współpracować z FPGA.

Drugi projekt przypomina raczej płytki Teensy, albo Arduino Mini/Micro. Jest mniejszy, ale za to ma wbudowane złącze HDMI i wejście na kartę SD.

Nic tylko kupować i uczyć się.

sprae

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.