Aan de slag met beitel (2 / 6 stap)

Stap 2: Hardware programmering


Deze stap is een inleiding tot hardware programmering. Als je al hebt gedaan wat verilog programmeren kunt u deze stap overslaan.

Hoe zijn de FPGA geprogrammeerd?

Programmeren van een FPGA is anders dan andere stijlen van programmering. In plaats van het geven van instructies uit te voeren in volgorde, beschrijft u de lay-out van de hardware. Beschrijving van het in een enkel vriesblok zou zeer rommelig en moeilijk te lezen maar. In plaats daarvan, vergelijkbaar met de functies in andere talen de hardware is opgesplitst in modules. Deze modules met elkaar zijn verbonden zodat ingewikkelder ontwerpen. Elk van deze modules zijn input en output. Door deze modules aan elkaar koppelen vergelijkbaar met het aanroepen van functies we maakt ingewikkelde leesbaar ontwerpen. De afbeelding toont een voorbeeld van een module in de beitel die twee getallen optellen. De bovenste regel importeert beitel. U moet dit doen in alle bestanden van de beitel. Vervolgens declareren we een adder module met de naam myAdder. Dit toegevoegd heeft twee ingangen x en y te berekenen van het resultaat-z = x + y. UInt is kort voor 'niet-ondertekende integer' verklaard als een input of output met 16 bits. Merk op hoe het ": =" niet "=". Dit is zeer belangrijk maar zal later worden verklaard. De volgende stap zal laten zien hoe modules in beitel aansluiten.

Basics Hardware concepten

Deze sectie beschrijft een paar van de begrippen bij het ontwerpen in hardware.

De klok

De klok is van essentieel belang voor het begrip van hardwareontwerp. Het is een timer dan synchroniseert uw ontwerp, zodat alles op dezelfde snelheid draait. Hardware is over het algemeen verdeeld in twee categorieën: combinatorische en sequentiële logica. Combinatorische logica zoals een = b + c negeert de klok. Sequential logic maakt gebruik van de klok om te bepalen wanneer om te lezen in de nieuwe gegevens in een geheugen-element. Een register of Reg in beitel is een voorbeeld van een sequentiële logica-element. Telkens wanneer de klok '' de waarde bij de ingave van het register klokken wordt herinnerd voor later. In de beitel wordt de klok geïmpliceerd. Dit betekent dat u niet hoeft te maken over de aansluiting.

Kritieke pad

Het kritieke pad in uw ontwerp bepaalt hoe snel de klok kan worden uitgevoerd. Over het algemeen hoe sneller hoe beter. Het kritieke pad is het langzaamst combinatorische pad tussen elke twee registers. Vind het in termen van een race tussen de klok en de langzaamste pad. De klok moet langzaam genoeg, zodat de gegevens kunt rennen door het kritieke pad tot het register waar het zal worden opgeslagen. Uw ontwerp kan worden correct maar traag als je erover nadenkt niet.

Gerelateerde Artikelen

DIY-aan de slag met DRONES (met externe kalibratie)

DIY-aan de slag met DRONES (met externe kalibratie)

Wat zijn ze en wie hen gebruikt? Sommigen noemen hen drones, sommige gelden het label "quadcopters", al hebben ze een aantal rotoren of zelfs vliegtuigen worden - een afkorting voor hen "onbemande antenne systemen" (UAS). Ik liever noe
Aan de slag met de ESP8266 met "AT-opdrachten" Via Arduino

Aan de slag met de ESP8266 met "AT-opdrachten" Via Arduino

ESP8266 Wifi Module is een geïntegreerde chip ontworpen voor communicatie met de wereld van het internet via Wifi-radiosignalen. Het is de verbinding tussen een project en het internet. Het heeft aan boord en geheugen waarmee het worden geïntegreerd
Aan de slag met ESP8266 met op opdrachten, NodeMCU of het Arduino (ESP-12E)

Aan de slag met ESP8266 met op opdrachten, NodeMCU of het Arduino (ESP-12E)

Dit Instructable zal u tonen de stappen die nodig zijn om te beginnen met de ESP8266 met behulp van een fantastische kleine ontwikkel bord voor de ESP-12E-module. Het bord bevat alles wat u nodig met inbegrip van een USB naar seriële adapter, oppervl
Aan de slag met IoT met behulp van het Particle Core

Aan de slag met IoT met behulp van het Particle Core

IoT is een echt leuk om te experimenteren, terwijl ze plezier het is ook zeer macht volledig. Het kan krijgen een breed scala van apparaten aansluiten, zoals bijvoorbeeld een koffiezetapparaat dat kunt tweet wanneer de koffie wordt gedaan of een auto
AAN DE SLAG MET DOMOTICASYSTEEM.

AAN DE SLAG MET DOMOTICASYSTEEM.

WAARSCHUWING: DIT PROJECT ZAL OORZAKEN OPWINDING DIE MOGELIJK SCHADELIJK VOOR DE GEZONDHEID.Dus hier ben ik met een ander leuk Instructables controle geleid door stem, met behulp van Arduino via Bluetooth-module (HC 05). Zodat deze Instructables kan
Aan de slag met LinkIt One - knippert een LED

Aan de slag met LinkIt One - knippert een LED

Hoi!Bent u vaak verward door de hele wereld nieuwe borden en tech die om de paar maanden houden komen?Bent u vaak op zoek op google gewoon zin te maken van dit alles?Bent u bereid om echt geweldig projecten te maken, maar weet niet waar te beginnen?B
Aan de slag met de interactie onderdelen Kit deel 1

Aan de slag met de interactie onderdelen Kit deel 1

In deze tutorial zal ik laten zien hoe met behulp van een potentiometer (potmeter) controle van de helderheid van een LED. Ook heb ik een schakelaar van de tilt (wordt later beschreven) in serie met de LED, zodat wanneer het breadboard rechtop het op
Aan de slag met Ubuntu Linux

Aan de slag met Ubuntu Linux

Linux is het besturingssysteem (OS) van keuze voor de computer savvy sinds haar oprichting, maar in de afgelopen paar jaar met de release van kleine linux gebaseerde fysieke computing platforms zoals de Raspberry Pi, BeagleBone en Arduino Yun (onder
Aan de slag met de ESP8266 ESP-12

Aan de slag met de ESP8266 ESP-12

Dit instructable zal betrekking hebben op de basisstappen die u volgen moet om aan de slag met de ESP8266 ESP-12.Veel van deze inhoud er al uit, maar ik had een harde tijd om alles op zijn plaats, en de verschillende tutorials kunnen leiden tot veel
Hoe aan de slag met Eclipse en AVR

Hoe aan de slag met Eclipse en AVR

AVR's programmeren is leuk, maar soms maken de fabrikanten ontwikkelomgevingen code onderhoud een karwei. Als je op zoek naar een vrije, cross-platform, hoge kwaliteit stuk van software voor het programmeren van AVR's Eclipse is een goede keuze.Verpl
Aan de slag met ubuntu en de AVR draak

Aan de slag met ubuntu en de AVR draak

hier is wat ik deed om te beginnen met de AVR Dragon te programma ATMEGA8 microcontrollers met behulp van ubuntu (dit is gericht op beginners, ikzelf ben ook een beginner, wordt dus geen verbeteringen van meer ervaren gebruikers worden zeer gewaardee
Aan de slag met pcDuino

Aan de slag met pcDuino

Na het plezier met de pcDuino, realiseerde ik dat mij konden wekken een stelletje tutorials te gebruiken. Dus dat is gewoon wat ik ga doen, dus laat mij uit te leggen wat is een pcduino en hoe u kunt instellen voor de eerste keer start.Wat is een pcD
Aan de slag met LinkIt One - LEDs

Aan de slag met LinkIt One - LEDs

Ik heb onlangs een LinkIt één bord, die het is een geweldig alternatief voor een Arduino met een heleboel functies verpakt in een klein pakket. Het heeft een ingebouwde WIFI, GPS, Bluetooth, GSM, Micro SD kaart slot en een hoofdtelefoonaansluiting va
Aan de slag met de Sensor van de bocht

Aan de slag met de Sensor van de bocht

We begonnen door te kijken hoe de Bend Sensor deeltoetsen is up, en hoe het werkt.Daarna keken we op verschillende gebieden die kunnen we het beeing gebruikt.We eindelijk een lamp werden kunt u de kleur van het licht, en ook de helderheid van een LED