kezdje el a VHDL programozást: tervezze meg saját hardverét

közzététel: A támogatás segít fenntartani a webhely működését! Az ezen az oldalon ajánlott egyes szolgáltatásokért ajánlási díjat kapunk. További információ

a VHDL egy hardverleíró nyelv(HDL). A HDL kissé hasonlít egy programozási nyelvre, de más célja van. Ahelyett, hogy szoftver tervezésére használnák, a HDL-t a számítógépes chip meghatározására használják. A VHDL bármilyen típusú áramkör leírására használható, és gyakran használják processzorok, CPU-k, alaplapok, FPGA-k, ASIC-k és sok más típusú digitális áramkör tervezésében, szimulációjában és tesztelésében.

VHDL előzmények

a VHDL név egy beágyazott betűszó. A Vhsic hardverleíró nyelvet jelenti. A VHSIC a nagyon nagy sebességű integrált áramkört jelenti. A gyors processzor leírása mellett az 1980-as években egy amerikai kormányzati program neve volt, amelynek küldetése a kutatás és fejlesztés volt a nagyon nagy sebességű integrált áramkörök (gyors számítógépes chipek) területén.

az anyagtudomány, az algoritmusok, a chiptervezés, a litográfia és egy tucat más kapcsolódó terület jelentős fejlesztéseivel együtt a VHSIC kifejlesztette a VHDL-t.

a nyelv első hivatalos szabványa az IEEE-től származik 1987-ben, és IEEE 1076 néven ismert. Azóta több kiadás is megjelent, a legújabb 2008-ban érkezik. In addition to the “core” language specified in 1076, there are a number of extensions codified in other specs:

  • IEEE 1076.1 VHDL Analog and Mixed-Signal (VHDL-AMS)
  • IEEE 1076.1.1 VHDL-AMS Standard Packages (stdpkgs)
  • IEEE 1076.2 VHDL Math Package
  • IEEE 1076.3 VHDL Synthesis Package (vhdlsynth)
  • IEEE 1076.3 VHDL Synthesis Package – Floating Point (fphdl)
  • IEEE 1076.4 Timing (VHDL Initiative Towards ASIC Libraries: vital)
  • IEEE 1076.6 VHDL szintézis interoperabilitás
  • IEEE 1164 VHDL többértékű logikai (std_logic_1164) csomagok

VHDL tervezés és szintaxis

a VHDL az Ada-n alapult, és széles körben kölcsönözte mind szintaxisában, mind koncepcióiban. Ezt kiegészítették olyan hardverspecifikus fogalmakkal, mint a többértékű logika, a fizikai párhuzamosság és a logikai operátorok kibővített halmaza. A VHDL a tömböket növekvő és csökkenő sorrendben is indexelheti, míg az Ada (és a legtöbb más programozási nyelv is)csak növekvő sorrendben indexelhet.

a legtöbb programozási nyelv alapvetően eljárási jellegű — a számítógép egymás után hajtja végre az egyik parancsot. A VHDL más. Ez egy hardvernyelv, amely egy (valós vagy szimulált) fizikai struktúrát ír le. Ez a struktúra nagyszámú modulból áll, és minden modul ugyanabban az időben működik, mint minden más modul.

tehát minden modulon belül van egy eljárási utasításfolyam, amely kissé hasonlít egy kicsi, önálló szoftverprogramra-változókkal, vezérlési folyamatokkal, feltételekkel, hurkokkal. Minden modul egy vagy több bemenettel rendelkezik egy vagy több kimenettel együtt. A bemenetek egy entitásnak nevezett struktúrában vannak megadva, az önálló logika pedig egy architektúrában van meghatározva.

vegyük fontolóra az “és kapu” gondolatát, ahol két bemenetünk és egy kimenetünk van. Ha mindkét bemenet “be” (igaz, 1), akkor a kimenet “be”; ellenkező esetben a kimenet “ki”.”Tehát a VHDL használatával két bemenetet és egy kimenetet definiálnánk. Ezeknek a bemeneteknek és kimeneteknek az elfogadott értékeit egy std_logic modul határozza meg, amelyet könyvtárként importálnak egy normál programozási nyelvbe. Az architektúra ezután meghatározza az “és kapu” belső működését, hogy úgy működjön, ahogy az imént megbeszéltük.

a std_logic modul egy érdekes hardver-specifikus értéktípus. Hasonló a programozási nyelvekben jelen lévő logikai értékhez (egy bit: igaz vagy hamis), de értéktartománya lehet, mivel tényleges elektromos impulzust képvisel egy fizikai rendszerben:

  • U: inicializálatlan. Ez a jel még nincs beállítva.
  • X: ismeretlen. Lehetetlen meghatározni ezt az értéket / eredményt.
  • 0: logika 0
  • 1: logika 1
  • Z: nagy impedancia
  • W: gyenge jel, nem tudom megmondani, hogy 0 vagy 1 legyen-e.
  • L: gyenge jel, amely valószínűleg megy 0
  • H: gyenge jel, amely valószínűleg megy 1
  • -: nem érdekel.

miniatűrben így épül fel a teljes VHDL tervezés. Az I / O tevékenység meglehetősen egyszerű, logikailag önálló moduljai épülnek fel és kapcsolódnak egymáshoz, hogy különböző típusú feladatok elvégzésére képes számítási gépeket képezzenek. A VHDL tervezés leírhat egy teljesen működő általános célú számítógépet, vagy kódolhat egyetlen algoritmust, például a Bitcoin bányászatához használt brute-force proof-of-work-et.

fontos felismerni, hogy a VHDL tervezés nem program — nem fut vagy fut. Mint egy tervrajz, meghatározza az architektúrát. Miután a tervezés befejeződött, általában szimulálják a teszteléshez egy szoftvertesztben, majd szintetizálják, ami azt jelenti, hogy lefordítják egy fizikai tervre, amely egy tényleges chipen vagy áramköri lapon valósítható meg.

források a VHDL tanulásához

sok erőforrás van a VHDL tanulásához. Összeállítottuk a legjobbakat.

Online források

  • VHDL alapozó: a VHDL oktatóanyaga a Pennsylvaniai Egyetemen.
  • VHDL a Wikipédián: a Wikipédiának a VHDL-lel való lefedettsége meglepő, mélyreható és világos, nagyszerű bevezetést nyújt a nyelv egészéhez.
  • VHDL Cookbook: egy ingyenes, online könyv, a hossza és formátuma egy főiskolai tanfolyam tankönyv.
  • VHDL bemutató: Tanulj példával: ez tiszteletreméltó bemutató semmi szép, hogy nézd meg, de az információ nagy és nagyon jól szervezett.
  • VHDL Language Guide: Ez egy PDF, amely magában foglalja a nyelv hatalmas részletességgel (400 oldal) in-document linkek nagyon egyszerű navigációt. Ez egy nagyszerű referencia.
  • tervezői útmutató a VHDL-hez: források, oktatóanyagok és linkek gyűjteménye. Tartalmaz videókat és online tanúsítási tanfolyamot.
  • Programmable Logic/VHDL Module Structure
  • VHDL Basics — Online Course
  • VHDL Handbook
  • VHDL Starters Guide

Books

All these books focus on VHDL:

  • The Designer’s Guide to VHDL, Third Edition
  • Circuit Design and Simulation with VHDL
  • Vhdl By Example
  • VHDL: Basics to Programming
  • VHDL for Engineers
  • VHDL By Example: Fundamentals of Digital Design
  • Circuit Design with VHDL
  • Digital Design Using VHDL: Rendszerszintű megközelítés

VHDL & Verilog Books

a VHDL fő “versenye” a Verilog. Mindkét nyelvet használják a hardvertervezéshez, így számos könyv foglalkozik az alapul szolgáló tervezési és mérnöki koncepciókkal, és mind a VHDL-t, mind a Verilog-ot használják.

  • digitális tervezés RTL tervezéssel, VHDL és Verilog
  • Hdl Chip tervezés: Gyakorlati útmutató a tervezéshez, Szintetizáláshoz & ASIC szimuláció & FPGA-k Vhdl vagy Verilog használatával
  • tervezési receptek az FPGA-khoz, második kiadás: a Verilog és a VHDL használata
  • HDL programozás alapjai: VHDL és Verilog

egyéb fontos VHDL linkek

megvalósítások és szimulátorok

  • ingyenes / nyílt forráskódú
    • GHDL
    • NVC
    • ingyenes HDL projekt
  • Kereskedelmi / saját
    • VHDL Simili
    • aktív-HDL
    • Incisive vállalati szimulátor
    • ModelSim

eszközök

  • EDA Utils: a VHDL, valamint a Verilog és más HDL-ek használatához szükséges segédprogramok nagy gyűjteménye.
  • EDA játszótér: egy online homokozó tesztelésére VHDL tervez.
  • szerkesztő csomagok
    • Emacs VHDL mód
    • VHDL plugin a vim-hez
    • VHDL csomag a fenséges szöveghez
    • VHDL az atomhoz
    • VHDL a jegyzettömbhöz++

neked is tudnod kell…

a VHDL a két fő hardverleíró nyelv egyike. A másik a Verilog. A legtöbb hardvertervező ismeri mindkettőt, valamint az olyan alacsony szintű operációs rendszer nyelveket, mint a Cand C++.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.