Jaki zestaw Development Kit do nauki FPGA i VHDL?

Witam wszystkich, którzy tu zajrzeli.

Zainteresowałem się trochę układami FPGA i chciałbym się dowiedzieć czegoś więcej na ich temat (tak, tak, wiem o linkach i już je mam). Na początek może kilka słów o sobie... Z zawodu jestem informatykiem, ale z charakteru wykonywanej pracy, raczej nie przez duże "I". To znaczy zajmuję się komputerami i czasami coś sklecę tu i tam, ale nie są to jakieś wielkie projekty, ot dla ułatwienia sobie życia w pracy. Na hardware znam się chyba całkiem całkiem, ale nie wiem na ile to może pomóc w tym, czego szukam. Znam Visual Basic, Access, trochę Delphi i jeszcze kilka spraw związanych z tworzeniem WWW (również tych dynamicznych). Z elektroniką miałem do czynienia daaaaawno temu, a potem dłuuuuga przerwa. Ostatnio jednak coś mnie znowu ciągnie, żeby spróbować tego i owego. To tak dla waszego zorientowania się, jakie mam szanse na to, na co się zapatruję. Ostatnio przymierzam się do maszyny CNC, i tu chciałbym spróbować pierwszych kroków związanych z układami logicznymi (czyt. stepper motor controller). Są już gotowe sterowniki do silników krokowych na rynku, ale ja chciałbym zrobić coś podobnego sam, i później zwiększać możliwości tych sterowników. Nie odsyłajcie mnie do tematów związanych z gotowymi schematami na jakimś L298 itp, bo te już przejrzałem. Mnie interesuje zrobienie czegoś samemu na CPLD/FPGA i VHDL. O mikrokontrlerach mam pojęcie powiedziałbym, takie sobie. A teraz według waszego doświadczenia, ile może zająć mi czasu osiągnięcie pierwszych efektów? Tutaj dochodzimy do pytania początkowego, jaki polecacie Development Kit na początek? Moje kryteria przy wyborze platformy są następujące:

- popularność platformy

- jakość softwaru dołączonego do zaprogramowania tego mikrokontrolera

- cena (tu również kwestia licencji)

- dostępność kości

Kiedyś uczyłem się assemblera (tak z ciekawości) i od razu mówię, że to odpada. Jeśli trzeba by zrobić coś większego, to zajmuje to za dużo czasu, a więc pozostaje "C". Jeżeli jakiś dev. kit programuje się głównie assemblerem, to odpada z wyboru. Po moich krótkich orientacjach, wybór pada na następujące platformy:

- Xilinx, bo duży wybór dev. kitów, np. "Spartan-3E Starter Kit" z CoolRunner'em II, 50 MHz i chyba wszystkim za pokładzie co potrzeba (włącznie z Flash), za $149

- Altera MAX® II Development Kit ($150), ten to CPLD, ale może na początek wystarczy?

- Altera Nios® II Evaluation Kit z Nios II Processor Cyclone EP1C12 ($295), droższy, ale może na dłużej starczy?

- Digilent Spartan-3 Board ($99), hmmm, czym to się różni od Xilinxa z tym samym układem?

- MÓJ FAWORYT! - Terasic DE2 ($495) + TRDB_LCM - 3.6 Inch Digital Panel Development Kit ($99), ten ma na pokładzie Altera Cyclone II

2C35 FPGA with 35000 LEs

A tutaj lista chyba wszystkich możliwych kombinacji:

formatting link
Ten ostatni jednak za drogi jak na początek, ale strasznie podoba mi się ten 3.6 Inch Digital Panel ,który można podpiąć do niego. Czy ten panel dałoby się podpiąć do innego kitu?, czy tylko do tego oryginalnego?

Nie mam na głowie żadnego projektu, który spędzałby mi sen z powiek. Traktuję to wyłącznie edukacyjnie i jako hobby (na razie). Co waszym zdaniem byłoby najlepsze? Wiem, że są starsze (czyt. tańsze kity), ale ja nie chciałbym wchodzić w coś, co za kilka miesięcy, zanim to opanuję, będzie już "Discontinued". Poza tym bardzo ważnym kryterium dla mnie jest jakość środowiska developerskiego (kompilator), pod którym się to konfiguruje/programuje. Wiem, że ściąga się je za darmo, ale ci z was, którzy już się z nimi zetknęli, który wolicie i dlaczego? Tu do wyboru są chyba (tylko); Altera Quartus i Xilinx ISE. O tych platformach, które wymieniłem, piszę się najwięcej, dlatego przyciągnęły moją uwagę. Druga sprawa, jak wygląda potem temat licencji na te mikrokontrolery? Nie interesują mnie jakieś opłaty rzędu setek, czy tysięcy dolarów, ale nawet te układy, które będą wycofywane, i tak mają dosyć mocy jak na moje zapotrzebowanie, więc może nie będzie tak drogo?

Szczególnie chodzi mi o przyjazność środowiska, pod którym przyjdzie mi zaczynać. Co z tego, że hardware będzie tanie, gdy będę musiał poświęcić znacznie więcej czasu, aby coś wydłubac z tego? Wolę trochę więcej dać za sprzęt, ale żebym szybciej miał efekty. Acha, jeżeli gdzieś po drodze trzeba by zahaczyć o Linux, to też odpada, nie znam go i nie chcę znać, nie mam na to czasu. Wolę już jakiś darmowy kompilator "C", lub narzędzia dołączane do zestawów. Czy Xilinx IS|E działa z development kit innych firm (np. Terasic), czy tylko z kitami Xilinx?

Jakie macie o tym zdanie?, a ja jakie mam szanse na pierwsze efekty w tym temacie?

Kris.

Reply to
krishilife
Loading thread data ...

Kris:

[...]

z tym kupowaniem development kit to sie troche wstrzymaj, chyba ze akurat trafila sie okazja odkupic od kogos za grosze;

quartus altery jest do sciagniecia za darmo, w pelni funkcjonalna wersja, ograniczeniem jest wielkosc kosci, jakie mozesz zaprogramowac [tzn. wylaczone sa te najwieksze] ise xilinxa tez chyba jest do sciagniecia, pewnien nie jestem, ale latwo sprawdzic;

zarowno software jak i kostki altery i xilinxa sa sobie mniej wiecej rownowazne, procz jakichs szczegolnych zastosowan trudno powiedziec, ze jedna marka przewaza nad druga; wiec przy wyborze spokojnie mozesz sie kierowac cena, dostepnoscia, wlasnym gustem itd.;

oba narzedzia, quartus i ise maja wbudowany symulator, ktory na poczatku nauki jest znacznie bardziej przydatny niz plytka z fpga/cpld, programowanie prostych algorytmow i ich symulacja powinna ci wystarczyc na co najmniej 3 miesiace, a jesli masz nauczyc sie i jezyka i narzedzia, to powiedzialbym nawet ze pol roku; jak juz bedziesz bardziej 'w temacie' to rozgladniesz sie za kitem, majac jakas wiedze czego ci potrzeba;

i zastanow sie, czy vhdl, czy verilog, ten drugi jest bardziej 'user friendly';

JA

Reply to
JA

Witam,

Nie potrzebujesz żadnych kitów aby zacząć. CPLD można kupić w obudowach PLCC i samemu łatwo zrobić własną płytkę testową.

Co do wyboru pomiędzy VHDL i Verilogiem to ten drugi jest łatwiejszy (przypomina zresztą C), imho szybszy do pisania kodu choć VHDL oferuje trochę więcej. Co do popularności to obydwa są popularne choć Verilog bardziej za Atlantykiem.

Można także się zastanowić nad mikrokontrolerami - np. Arm7@70MHz z 8KB RAM, 32KB Flash z peryferiami jak UART, I2C, RTC, ADC można kupić za

15zł. Spokojnie oprogramujesz taki układ w C bez potrzeby sięgania po assembler.

Pozdrawiam,

Radek

Reply to
Radek

przede wszystkim nie sprawdza obsesyjnie zgodnosci typow, co moim zdaniem w projektowaniu logiki nie ma za wiele sensu [owo sprawdzanie];

czego oferuje wiecej ? - z ciekawosci pytam;

JA

Reply to
JA

Nie jestem w pozycji aby móc dobrze zrobić porównanie więc muszę się posiłkować linkiem:

formatting link
Ile ta ekstra funkcjonalność VHDL jest w praktyce warta? (np. "generate" czy równoczesne wywoływanie procedur) Nie wiem ale wygląda na to, że niezbyt wiele.

Popatrzyłem na przykładu kodu w VHDL i Verilogu i... decyzja była prosta.

Poczytałem również o historii tych języków co jeszcze bardziej mnie przekonało, że lepiej się zająć Verilogiem. Do tego dzięki dużemu podobieństwu do C można szybciej z Verilogiem zacząć. (przynajmniej ja mogłem)

Pozdrawiam,

Radek

Reply to
Radek

Zgadza się, i chyba tak właśnie zrobię, FPGA miałem na myśli w celach edukacyjnych. No i często inni piszą, że flat panela tak gdzieś 640x480 to byle co nie obsłuży, a FPGA (nawet te słabsze) to pociągnie wszystko. Zdaje się, że te nowsze ARMy to chyba pociągną to co mi potrzeba (flat panel, USB i WinCE z audio), bo w tych handheldach to właśnie ARMy siedzą i dają rade wszystkiemu.

Rozumiem, że jeśli decyduję się na WinCE, to nie muszę mieć ARMa z kontrlerem video, bo Windows już to załatwia software'owo, czy się mylę? A może ARM z kontrolerem video jest szybszy bo załatwia tę kwestię sprzętowo?

Chyba tak. Myślałem po prostu, że ceny tych tańszych FPGA są porównywalne z tymi lepszymi ARM, a ja mam elastyczność za free. Jednak nie wygląda to chyba tak różowo, jak pierwotnie myślałem (te licencje).

Jeszcze odnośnie licencji na WinCE... Na stronie

formatting link
jest informacja, że licencja na tego WinCE kosztuje od $3...$15 (może troszkę więcej, jeśli ma to być rozszeżona wersja, ale szczegółów jeszcze nie znam). Z związku z tym stosowanie Linuxa "na siłę" nie ma sensu, bo WinCE daje mi od razu platformę pod Visual Basic i Macromedia Flash, które znam, więc soft zrobię sobie jaki chcę.

Jak to jest z tymi wyświetlaczami w handheldach? Tam przecież jest WinCE na ARMie, ale czy to jest standard VGA, czy jakiś specjalizowany kontroler video do flat panela?

Coraz częściej czytam, że dopóki FPGA nie stanieje, pozostaje zabawką dla bogatszych firm. Amatorzy muszą trochę poczekać, aż to stanieje..., tak gdzieś ze 2 latka.

Kris.

Reply to
krishilife

Dnia 31 May 2006 20:42:30 -0700, krishilife napisał(a): <ciach>

A może jednak jakaś mała płytka PC, np. PC/104, karta FLASH i Windows?

Pozdrawiam Marcin Stanisz

Reply to
Marcin Stanisz

dzieki, ciekawy; nie znalem wszystkich [a nawet wiekszosci] tych szczegolow;

akurat z 'generate' to nie do konca prawda; taki oto kawalek implementuje 8 razy wygenerowana przez ise pamiec 8 bitowa o nazwie: "coregen_mem"; [w efekcie wychodzi pamiec o slowie 64 bity i majaca 'byte-enable']

genvar i;

generate for (i=0; i<8; i=i+1) begin: mem coregen_mem byte ( .addr(A), .clk(CL), .we(WE[i*8]), .din(D[7+8*i:8*i]), .dout(Q[7+8*i:8*i]) ); end endgenerate

efekt to wygenerowanie 8 razy modulu coregen_byte [oczywiscie coregen_byte musi byc gdzies zdefiniowany] o nazwach mem[0].byte, ... mem[7].byte; o ile pamietam, trzeba w narzedziu kompilujacym zaznaczyc, ze ma uzywac rozszerzenia: verilog 2001;

moze sie uzytkownikom veriloga przydac :)

JA

Reply to
JA
[...]

tez tak mysle, w tym przypadku;

ale jako ciekawostke podam, ze excalibur altery to fpga z procesorem arm na pokladzie;

2 in 1 :) choc kosc z pewnoscia o wiele za droga do cwiczen/nauki;

JA

Reply to
JA

Ciekawe bo znalazłem Excalibur tutaj na stronie Altery:

formatting link
Ale nie ma go w podsumowaniu wszystkich produktów Altery?:
formatting link
Z rozglądania się po www Xilinxa to ta firma też ma w ofercie Virtexy ale z PowerPC.

To są już dosyć drogie kości ale pomysł jest znakomity. I miałby sens imho zintegrowany chip CPLD + µC.

Pozdrawiam,

Radek

Reply to
Radek

pierwszy raz excalibur pojawil sie z 8-10 lat temu i pomysl nie byl kontunuowany, nie powstala wersja excalibur2 [tak jak max2, cyclone2, stratix2]; choc idea wydaje sie swietna, musi byc jakis feler, jaki nie wiem;

byc moze zestaw sredni procesor + cpld osobno jest cenowo korzystniejsze i nie bylo zainteresowania na runku ?

JA

Reply to
JA

Zdecydowanie polecam Spartan-3E Starter Kit Xilinx'a. Nigdzie nie widziałem za podobną cenę płytki o takich możliwościach. Z ważniejszych elementów jest tam pamięć DDR, Flash, ehternet .. można na niej nawet uruchomić uClinux'a. Poprostu kupując ten zestaw masz praktycznie wszystko, czego trzeba aby tworzyć naprawdę bardzo ambitne projekty. Możesz ją zamówić za cenę $149 + vat w silica/avnet (nie, nie mam interesu aby ich reklamować, jestem poprostu baaardzo zadowolony z tego zakupu ;) ).

Xilinx jest obecnie niekwestionowanym liderem jeśli chodzi o FPGA, więc napewno ta platforma będzie dobrym wyborem.

Na początku ciężko jest zacząć. Musisz też wybrać język - VHDL lub verilog. Jako informatyk pewnie przypadnie ci do gustu Verilog, gdyż przypomina on język "C" ze składni. Dobrych książek do żadnego z tych języków nie ma na polskim rynku, w internecie znajdziesz sporo pozycji anglojęzycznych i tutoriali.

Reply to
voices

Przyznam, że tylko przeleciałem ten tekst wzrokiem ,ale chyba nie omawia on verilog's 2001, który jest już standardem (ma on generate, funkcje itp. ).

Reply to
voices

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.