Pitanje:
Projekt za učenje VHDL-a
jeremy
2009-12-15 14:03:03 UTC
view on stackexchange narkive permalink

Student sam EE-a i mogu pisati [barem jednostavne] programe na više jezika nego što imam prstiju. Tek sam počeo učiti VHDL i pitao sam se što bi bio dobar projekt za stvarno upoznavanje jezika i relevantnih alata? Imam poteškoća s smislom jednog, jer je to za mene zaista drugačiji stil programiranja.

Napravio sam jednostavne stvari poput zbrajanja, ali tražim dugoročniji rok (tj. Mjesec dana ili tako nešto ).

U slučaju da je relevantan, imam Xilinx Webpack i Digilent Spartan3 ploču.

Osam odgovori:
#1
+10
starblue
2009-12-15 19:49:55 UTC
view on stackexchange narkive permalink

Budući da vam se čini da ste zainteresirani za programiranje, mogli biste izraditi jednostavan mikroprocesor.

**Preporučuje se. Na kraju ćete naučiti ne samo FPGA i VHDL stranu stvari, već i kako rade procesori, što je potrebno na putu razvojnih alata za podršku procesoru itd.
#2
+7
Axeman
2009-12-15 14:55:13 UTC
view on stackexchange narkive permalink

Moj FPGA projekt „pozdrav svijete“ bio je kontroler LED nizova s ​​PWM-om i serijskim ulazom toka. Konačni rezultat bio je lijep ( http://lbw.axe-man.org/led1.wmv), ali priznajem da sam dio toga učinio s uređivačem sheme Altera Quartus kako bih vidio kako Opisani su VHDL dijelovi.

ovo je sjajna ideja; Upravo sam uzeo matricu bez kontrolera 16x16 i kontroler bi bio sjajan. uredan video!
Lijep video! I tu će se koristiti taj shematski uređivač.
#3
+5
user421
2009-12-15 18:54:40 UTC
view on stackexchange narkive permalink

Trebali biste provjeriti opencores.org i tamo pronaći zanimljiv projekt. Također možete preuzeti Sigasi HDT, koji će vam pomoći da ubrzate VHDL gramatiku.

#4
+4
cyphunk
2009-12-15 18:08:48 UTC
view on stackexchange narkive permalink

Uživao sam raditi s Hansom u hardhacku ove godine na projektu Rekonstrukt za izgradnju osnovnog sintisajzera u FPGA-i. LED projekti su također dobri, ali nema ništa poput priključivanja FPGA-e na stereo. Ne gradi se iz temelja, kao što bi to radio LED projekt, jer se projekt temelji na procesoru s otvorenom jezgrom koji podržava dalje. Dakle, na početku učite kako u osnovi učitati FPGA s projektom, a zatim se možete igrati s omotnicama u FORTH. Ali ono gdje počinjete učiti više o FPGA unutrašnjosti je kada želite dodati funkcionalnost, koja zatim zahtijeva kopanje u VHDL-u.

#5
+2
David Brenner
2009-12-15 21:34:32 UTC
view on stackexchange narkive permalink

Projekt u kojem sam uživao bio je implementiranje igre Milton Bradley Simon na FPGA.

Na mom sveučilištu, naš EDA razred koristi istu ploču koju spominjete. Neki od implementiranih projekata uključuju:

  • Obradu slike: srednji filtar, istezanje histograma, otkrivanje rubova
  • Kriptografija: AES, razni algoritmi raspršivanja itd.
  • Komunikacija: Ethernet, USB, I2C itd.
  • Igre: Pong, svemirski napadači itd.

To će vam možda dati neke ideje.

Dodijelit ću ideju opencores.org, kao i implementaciju vlastitog mikroprocesora. Budući da imate Xilinx FPGA, možda biste trebali pogledati i nešto s microblaze ili picoblaze.

Uredi: oblikovanje.

#6
+1
Ishwor Gurung
2009-12-15 19:00:37 UTC
view on stackexchange narkive permalink

Napisao sam vhdl kod za xilinx virtex jezgru prije nekog vremena. bila je to implementacija budilice. Ovo sam učinio:

  • Puno sam pročitao kroz vhdl priručnik - morao bih ga sada revidirati, ali smatrao sam da je prilično jednostavan i lak za upotrebu hdl :-)
  • Upotrijebljen xilinx paket (kompajler, sintetizator) za dobivanje bitnog toka
  • Prenosio je bitne tokove pomoću jtag

Ispiranje, ponavljanje 1-3. Istaknuo bih da je generacija bitstream-a integrirana u Xilinx-ov IDE. Morate imati jasan skup logike za primjenu u HDL-u; sve ostale stvari obavlja IDE.

#7
+1
jluciani
2009-12-16 05:27:53 UTC
view on stackexchange narkive permalink

Numerički upravljani oscilator bio bi zabavan. Upravo sam dizajnirao svoju Arduino kompatibilnu ploču (vidi http://tinyurl.com/ydmz2su), ali ovo bi bilo savršeno za FPGA.

Evo nekoliko referenci za dizajn.

Snell, John 1988. "Dizajn digitalnog oscilatora koji će generirati do 256 sinusnih valova s ​​malim izobličenjem u stvarnom vremenu" Temelji računala Glazba, muzika. Cambridge, Massachusetts: MIT Press

Moore, F. Richard 1988 "Šum traženja stola za sinusoidalne digitalne oscilatore" Temelji računalne glazbe. Cambridge, Massachusetts: MIT Press

#8
  0
user9892
2014-03-13 06:53:38 UTC
view on stackexchange narkive permalink

Ono što radim je stvaranje malo CPU-a. To je lijep zaokružen način da se pokriju sve osnove.

Obuhvatit ćete sve osnove velikog projekta u VHDL-u i bit ćete izloženi svim temeljnim temama u VHDL dizajnu (satovi, ulazi, izlazi , logika, sabirnice i sekvencijalni dizajn najizraženiji) kao i mnogi osnovni koncepti elektroničkog i računalnog dizajna i arhitekture poput registara, podatkovnih operacija, memorije i računalne aritmetike.

Možete započeti samo sa zbrajanjem i oduzimanjem, a zatim dodavati više funkcionalnosti kako učite, radeći do potpuno funkcionalnog (iako jednostavnog ... ili kako to više volim nazivati ​​"retro") računala . To je barem moj plan.

Osim toga, imati vlastito računalo dizajnirano na čipu je jednostavno super :) Poput 16-bitne Raspberry Pi: P

Ostali uobičajeni FPGA projekti:

-Glazbeni sintisajzer

-DSP generator efekata

-MIDI kontroler / prekidač

-Bitcoin rudar

-Video emulatori igraće konzole

-Prilagođeni Arduino štitovi

-Paralelni procesori (vrlo korisno za određene matematičke probleme u kojima konvencionalna računala nisu odlična)

-Robotika / kontrolni sustavi

- Prikupljanje podataka (prilično je malo osciloskopa dizajniranih za FPGA-e ako znate raditi s opcijskim pojačalima)

VHDL sam po sebi nije užasno komplicirano. Najvažnije je zapamtiti da dizajnirate fizički elektronički digitalni sklop, a ne pišete program za mikrokontroler. Vaša simulacija u osnovi nije program koji će se izvoditi redak po redak, zato nemojte dopustiti da vas površna sličnost s C zavara, VHDL je sasvim drugačija paradigma.



Ova pitanja su automatski prevedena s engleskog jezika.Izvorni sadržaj dostupan je na stackexchange-u, što zahvaljujemo na cc by-sa 2.0 licenci pod kojom se distribuira.
Loading...