Započnite s VHDL programiranjem: dizajnirajte vlastiti hardver

Objava: Vaša podrška pomaže održavanju web mjesta! Naplaćujemo naknadu za preporuku za neke usluge koje preporučamo na ovoj stranici.


VHDL je jezik hardverskog opisa (HDL). HDL izgleda pomalo kao programski jezik, ali ima drugu svrhu. Umjesto da se koristi za dizajn softvera, HDL se koristi za definiranje računalnog čipa. VHDL se može koristiti za opisivanje bilo koje vrste sklopova i često se koristi u dizajnu, simulaciji i testiranju procesora, CPU-a, matičnih ploča, FPGA-ova, ASIC-a i mnogih drugih vrsta digitalnih sklopova..

VHDL Povijest

Naziv VHDL je ugniježđena kratica. To je VHSIC Hardver Opis jezika. VHSIC je kratica za integrirani krug vrlo velike brzine. Osim što je opis brzog procesora, to je bio naziv američkog vladinog programa u 1980-ima čija je misija bila istraživanje i razvoj na području vrlo brzih integriranih krugova (brzi računalni čipovi).

Uz velika poboljšanja u znanosti o materijalima, algoritmima, dizajnu čipova, litografiji i desetak drugih srodnih područja, VHSIC je razvio VHDL.

Prvi službeni standard za jezik nastao je iz IEEE-a 1987. godine, a poznat je pod nazivom IEEE 1076. Od tada je izašlo nekoliko izdanja, a posljednje stiglo je 2008. godine. broj proširenja kodificiranih u drugim specifikacijama:

  • IEEE 1076.1 VHDL analogni i mješoviti signal (VHDL-AMS)
  • IEEE 1076.1.1 VHDL-AMS standardni paketi (stdpkgs)
  • IEEE 1076.2 VHDL matematički paket
  • IEEE 1076.3 VHDL paket za sintezu (vhdlsynth)
  • IEEE 1076.3 VHDL paket za sintezu – plutajuća točka (fphdl)
  • Vrijeme IEEE 1076.4 (Inicijativa VHDL prema knjižnicama ASIC: vitalno)
  • Interoperabilnost sinteze IEEE 1076.6 VHDL
  • IEEE 1164 VHDL Multivalue Logic (std_logic_1164) paketi

VHDL dizajn i sintaksa

VHDL se temeljio na Adi i od nje se puno posuđivao i u sintaksi i u konceptima. To je zatim dopunjeno konceptima koji se tiču ​​hardvera, poput viševredne logike, fizičkog paralelizma i proširenog skupa logičkih operatora. VHDL također može indeksirati nizove u uzlaznom i silaznom redoslijedu, dok Ada (i većina drugih programskih jezika) indeksira samo u uzlaznom redoslijedu.

U osnovi je većina programskih jezika proceduralna – računalo izvršava jednu naredbu za drugom u nizu. VHDL je drugačija. To je hardverski jezik koji opisuje (stvarnu ili simuliranu) fizičku strukturu. Ta se struktura sastoji od velikog broja modula, a svaki modul djeluje istovremeno kao i svaki drugi modul.

Dakle, unutar svakog modula postoji proceduralni tijek uputa koji pomalo liči na mali, samostalan softverski program – s varijablama, upravljačkim tokovima, uvjetovanjima, petljama. Svaki modul ima jedan ili više ulaza, zajedno s jednim ili više izlaza. Ulazi se određuju u strukturi koja se naziva entitet, a samostalna logika je definirana u arhitekturi.

Razmislite o ideji “I vrata” na kojoj imamo dva ulaza i jedan izlaz. Ako su oba ulaza “uključena” (istina, 1), izlaz je “uključen”; u suprotnom, izlaz je “isključen”. Tako bi pomoću VHDL-a definirali dva ulaza i jedan izlaz. Prihvaćene vrijednosti tih ulaza i izlaza bile bi definirane u std_logic modulu, koji se uvozi poput knjižnice u uobičajeni programski jezik. Arhitektura bi tada definirala unutarnje funkcioniranje našeg “I vrata” tako da djeluje kao što smo upravo raspravljali.

Std_logic modul je zanimljiva hardverska specifična vrsta vrijednosti. Nalik je BOOLEAN vrijednosti prisutnoj u programskim jezicima (jedan bit: istinit ili lažan), ali može imati raspon vrijednosti, jer predstavlja stvarni električni impuls u fizičkom sustavu:

  • U: neinicijalizirano. Taj signal još nije postavljen.
  • X: nepoznato. Nemoguće je utvrditi ovu vrijednost / rezultat.
  • 0: logika 0
  • 1: logika 1
  • Z: Visoka impedancija
  • W: Slab signal, ne može odrediti treba li biti 0 ili 1.
  • L: Slabi signal koji bi vjerojatno trebao ići na 0
  • H: Slabi signal koji bi vjerojatno trebao ići na 1
  • -: Nije briga.

Ovo je, minijaturno, kako se izrađuje cjeloviti VHDL dizajn. Prilično jednostavni, logički samostalni moduli I / O aktivnosti izgrađeni su i međusobno povezani kako bi formirali računske strojeve sposobne za obavljanje različitih vrsta zadataka. VHDL dizajn može opisati potpuno funkcionalno računalo opće namjene, ili može kodirati jedan algoritam, kao što je gruba snaga dokaz rada koji se koristi za vađenje Bitcoin-a.

Važno je shvatiti da VHDL dizajn nije program – nije pokrenut ili izveden. Poput nacrta definira arhitekturu. Jednom kada je dizajn dovršen, obično se simulira za testiranje u softverskoj testnoj sobi, a zatim se sintetizira, što znači da je preveden u fizički dizajn koji se može implementirati na stvarni čip ili sklopnu ploču.

Resursi za učenje VHDL-a

Za učenje VHDL-a postoji puno resursa. Sastavili smo neke od najboljih.

Internetski resursi

  • VHDL Primer: udžbenik o VHDL sa Sveučilišta u Pennsylvaniji.
  • VHDL na Wikipediji: Pokrivenost VHDL-a Wikipedijom iznenađuje detaljno i lucidno, pružajući sjajan uvod u jezik u cjelini..
  • VHDL Cookbook: besplatna, internetska knjiga, dužina i format udžbenika na tečajevima.
  • VHDL Tutorial: Naučite primjerom: ovaj časni udžbenik nije ništa lijepo za pogledati, ali informacije su sjajne i vrlo dobro organizirane.
  • Vodič za VHDL jezik: ovo je PDF koji pokriva jezik u ogromnim detaljima (400 stranica) s vezama u dokumentu za vrlo jednostavnu navigaciju. Ovo je sjajna referenca.
  • Vodič za dizajn VHDL-a: zbirka resursa, vodiča i veza. Sadrži videozapise i tečaj internetskog certificiranja.
  • Programirana logička / VHDL struktura modula
  • VHDL Osnove – Online tečaj
  • VHDL priručnik
  • Vodič za početnike VHDL-a

knjige

Sve ove knjige usredotočene su na VHDL:

  • Vodič dizajnera za VHDL, Treće izdanje
  • Dizajn i simulacija kruga s VHDL-om
  • Vhdl primjerom
  • VHDL: Osnove programiranja
  • VHDL za inženjere
  • VHDL Primjer: Osnove digitalnog dizajna
  • Dizajn kruga s VHDL-om
  • Digitalni dizajn pomoću VHDL: sustavski pristup

VHDL & Knjige Verilog

Glavna “konkurencija” VHDL-a je Verilog. Oba jezika koriste se za dizajn hardvera, tako da postoji niz knjiga koje su usredotočene na temeljne koncepte dizajna i inženjeringa i koriste VHDL i Verilog.

  • Digitalni dizajn s RTL dizajnom, VHDL-om i Verilogom
  • Hdl Chip Design: Praktični vodič za dizajn, sintetiziranje & Simulacija Asica & Fpgas pomoću Vhdl ili Verilog
  • Dizajn recepti za FPGAs, drugo izdanje: Korištenje Verilog i VHDL
  • Osnove programiranja HDL-a: VHDL i Verilog

Ostale važne VHDL veze

Provedbe i simulatori

  • Besplatno / otvoreni izvor
    • GHDL
    • NVC
    • Besplatni HDL projekt
  • Komercijalni / vlasnički
    • VHDL Simili
    • Active-HDL
    • Inicizivan Enterprise Simulator
    • ModelSim

alat

  • EDA Utils: velika zbirka alata za rad s VHDL-om, kao i Verilog i drugi HDL-ovi.
  • EDA Playground: internetska kutija za pijesak za testiranje VHDL dizajna.
  • Paketi za uređivanje
    • Emacs VHDL način
    • VHDL dodatak za vim
    • VHDL paket za uzvišen tekst
    • VHDL za Atom
    • VHDL za Notepad++

Također biste trebali znati …

VHDL je jedan od dva glavna jezika hardverskog opisa. Drugi je Verilog. Većina hardverskih dizajnera poznata je oba, kao i jezici operativnog sustava niske razine poput Cand C++.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map