Title VHDL Introductie FirstName LastName – Activity / Group.

Slides:



Advertisements
Verwante presentaties
HET DIGITALE ARBEIDSPLEIN Het Digitale Arbeidsplein is een website ontwikkeld in het kader van het project “Zelfmanagement van de eigen loopbaan” van MeijerConsult.
Advertisements

Test computertermen: Deze test gaat over de vorige les. Je krijgt steeds een vraag te zien waarop je het juist antwoord moet aanklikken. Is je antwoord.
Vincent Poté Nelis Vandermeiren Simen Akkermans Kevin De Neef
Seminar Ouders'onderwijs Persoonlijkheids Training over vijf modules.
Data Acquisition & Control System
Serieel naar parallel omzetting
H3 Industralisatie en Ismen.
Historische helden Edward Jenner werd geboren in 1749 in Engeland. Als kind hield Edward al van wetenschap en natuur. Hij bracht uren door aan de oevers.
Blok 7: netwerken Les 7 Christian Bokhove.
HM-ES-th1 Les 4 Hardware/Software Codesign with SystemC.
Speel een spel uit de top 20 van gamer.nl. Verwachtingen vooraf? Veel gescheld, aangezien alle jongens die het doen altijd schelden…. Veel geweld in het.
Waarom naar de kerk (gemeente) gaan
Inhoudstafel Inleiding De basis van digitaal ontwerp
Extern Geheugen Lol.
Digitale Elektronica en Processoren
HTML Les 1: Introductie HTML
Blok 7: netwerken Les 8 Christian Bokhove.
bewerkingen in programmeeromgevingen
Auteursomgeving voor Digitale Componenten
VHDL Taal beschrijvingen
Macbeth Door: Mike Testroote.
Nederland na 1945: Cultuur en mentaliteit
Burgers regelen het zelf
Paragraaf 4.4 De vrouwenbeweging.
CRM vs SCRM Yana Callaert – 3 MAS. Marketing Bij traditionele marketing verloopt de communicatie vooral in één richting; het bedrijf adverteert en de.
Cursus VHDL Aansturing van een stappenmotor Peter Slaets KHLim.
VHDL Peter Slaets KHLim Functies en procedures Functies –type conversie functies »bit vector to integer en omgekeerd –verkorte componenten met maar 1 output.
Exploratie van de ontwerpruimte 3. Prototypes, emulatie en simulatie Prof. dr. ir. Dirk Stroobandt Academiejaar
1Ben Bruidegom Hoe werkt een rekenmachine? Ben Bruidegom AMSTEL Instituut Universiteit van Amsterdam.
Informatica in de Tweede fase Havo en VWO. De uitgangspunten Informatica is een vak in de vrije ruimte voor de havo 240 slu (voor het vwo 280 slu) het.
invloed van de Kerk op de Middeleeuwse cultuur
Hoofdstuk VI: De Middeleeuwen Les 2: Karel de Grote
HM-ES-th1 Les 3 Hardware/Software Codesign with SystemC.
End Year Assesment Jordi de Rijk Semester 2.
Paragraaf 3.4. Er kwamen veel nieuwe kolonisten wonen. Zij leefden op kleine boerderijtjes In midden en zuiden van de VS leefden men juist op grote boerderijen,
Hoofdstuk 2.
Vrijheidsrechten en politieke rechten in Nederland
Gemaakt door Mila en Luuk
Kunst!!! Ik heb samen met mijn oma een schilderij gemaakt met veel kleuren lees meer over in deze powerpoint.
Backup & Recovery Windows 2003 Server Onderhoud en Beheer Netwerken 4.
Flight 68K Temperatuur geregelde ventilator
DU2PRES1 : C vervolg Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Beginselen van C opgaves… volgende week: ARM.
Vorige week: Massumi over Reagan 1.Problem of the actor 2.Seeming-being is een nieuw ‘regime of sign’ welke structuren aanbrengt in collective assemblages.
De Germanen.
1/1/ eindhoven university of technology / faculty of Computer Science 2IC20:Computersystemen Week 2: IDaSS.
HAN-University Inleiding tot VHDL, 2010 Bron: Fraunhofer for Integrated Circuits.
Combinatorische logica
Het timing model in VHDL
Ontwerpen van Digitale Systemen
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
HOGESCHOOL ROTTERDAM / CMI Computersystemen 2 (TIRCCMS02 - Operating systems)
Etherflow Voor het aansluiten van een flowmeter op een Ethernet netwerk Afstudeerpresentatie Michel van der Net Elektrotechniek Avans Hogeschool Breda.
Inhoud Analyse van sequentiële netwerken Sequentiële bouwblokken
9 Geschiedenis Pc’s. De eerste pc’s De eerste Personal Computer is de Altair Deze werd zo genoemd omdat de gebruiker niet langer werkte aan een.
Samenvatting Havo 5.
Paragraaf 1.4 Leven van de landbouw.
Lezen leren.
1 Introductie next MCT - Programmeren 2 © S. Walcarius Waarom java? programma machinetaal (.exe) compilen platformspecifiek Een exe programma.
Databases I (H. 2) Wiebren de Jonge Vrije Universiteit, Amsterdam versie 2003 (blijft dit jaar ‘incompleet’)
Les 5: De Reformatie, Calvijn en de contra-reformatie
Groep 8, Hoofdstuk 6: Samenwerking in de wereld. In welk jaar begon de Tweede Wereldoorlog in Nederland? En in welk jaar eindigde hij ?
De Verenigde Staten. §2. Voor indianen is geen plek meer. Voordat de Europeanen kwamen, waren de indianen de enige bewoners van Amerika. De indianen hadden.
GBIF NODES Committee Meeting Copenhagen, Denmark 4 th October 2009 De GBIF Integrated Publishing Toolkit Alberto GONZÁLEZ-TALAVÁN Programme Officer for.
Voortgang. Mijn voortgang in python Binaire getallen De computer gebruikt binaire getallen om alles te doen. Het is de taal waarin de computer praat.
Introductie ‘Hacklab MOOC’
presentatie Geschiedenis van de computer en het internet
presentatie Geschiedenis van de computer en het internet
THEMA 3 – LES 3 HET KLOOSTERLEVEN.
Software Development fundamentals
waar / niet waar EEN PRODUCT IS VOOR JE KLANT EEN CADEAUTJE
Transcript van de presentatie:

Title VHDL Introductie FirstName LastName – Activity / Group

VHDL als documentatie VHDL = VHSIC Hardware Description Language Title VHDL = VHSIC Hardware Description Language VHSIC = Very High Speed Integrated Circuit VHDL is begin jaren ‘80 ontwikkeld in opdracht van het departement van defensie (DoD) van de VS. Zij wilden in eerste instantie een eigen beschrijving van het gedrag van de asics in de toestellen die ze aankochten. VHDL werd aanvankelijk dus gebruikt als documentatie en beschrijving van specificaties. Merlijn Aurich – TSO / Invomec FirstName LastName – Activity / Group

VHDL voor simulatie Buiten documentatie is VHDL ook nuttig is om simulaties op uit te voeren, dus om de werking van de asic te controlleren op een computer. Hierdoor kwamen de eerste VHDL simulatie tools op de markt. Door zijn uitwisselbaarheid won VHDL aan populariteit. Iedere fabricant had namelijk voordien zijn eigen taal bv Verilog (later ook gestandardiseerd en nu de grote tegenhanger van VHDL), AHDL(Altera),… Merlijn Aurich – TSO / Invomec

VHDL gestandardiseerd door IEEE In 1987 werd VHDL gestandaardiseerd door IEEE. Enkele bedrijven kwamen vervolgens op het idee om software te schrijven waarmee je VHDL kan synthetiseren. Synthetiseren = het omzetten van een VHDL beschrijving in een netlist. Een netlist is een tekstbestand waarin staat welke standaardcel via welke verbinding aan welke andere standaardcel hangt. Voorbeelden van standaardcellen: and poorten, flipflops, adders, inverters, buffers…De standaardcellen zijn getekend door een designer. Merlijn Aurich – TSO / Invomec

Voorbeeld van een netlist module SUB1 ( SHIFT_IN_W1, SHIFT_CLK01, SUB1_1_to_SUB1_2 ); input SHIFT_IN_W1 ; input SHIFT_CLK01 ; output SUB1_1_to_SUB1_2 ; wire DFF_instance_QB , buf1_to_buf2, DFF_to_buf1 ; BUFBD1 BUFBD1_instance2 ( .Z(buf2_to_buf3), .A(buf1_to_buf2) ); BUFBD1 BUFBD1_instance1 ( .Z(buf1_to_buf2), .A(DFF_to_buf1) DFF DFF_instance ( .Q(DFF_to_buf1), .QB(DFF_instance_QB), .CLOCK(SHIFT_CLK01), .DATA(SHIFT_IN_W1) endmodule /* SUB1 */ Merlijn Aurich – TSO / Invomec

Synthetiseerbare VHDL (asics) Aangezien VHDL bedoeld was als documentatie en voor simulatie, zijn de mogelijkheden van de taal vrij uitgebreid. Je kan bijvoorbeeld files openen en erin schrijven of ervan lezen. Gevolg: slechts een gedeelte van de taal is synthetiseerbaar. Sommige VHDL constructies zijn helemaal niet synthetiseerbaar. Sommige VHDL expressies worden genegeerd door synthesetools. Deze expressies hebben wel betekenis tijdens simulaties. (zie volgende slide). Merlijn Aurich – TSO / Invomec

Voorbeeld: verschil synthetiseerbare en niet-synthetiseerbare VHDL Entity inverter is port ( A : in bit; Z : out bit ); End entity; Architecture behaviour of inverter is begin Z <= not A after 5 ns; End architecture; Entity inverter is port ( A : in bit; Z : out bit ); End entity; Architecture RTL of inverter is begin Z <= not A; End architecture; Merlijn Aurich – TSO / Invomec

VHDL voor programeerbare logica In de jaren 90 begon met ook het nut ervan in te zien om VHDL te gebruiken voor configuratie/programmatie van programmeerbare logica. Voorheen gebruikte elke fabricant zijn eigen taal. FPGA: vluchtig (SRAM gebaseerd) vb: de Flex op het experimenteerbord. PLD: niet vluchtig (EEPROM gebaseerd) vb: De Max op het experimenteerbord. Bekijk de datasheets voor meer informatie Merlijn Aurich – TSO / Invomec

Van VHDL 87 naar VHDL 93 De syntax van VHDL 87 was niet altijd consistent. Daarom werden de taal lichtjes veranderd. Dit werd VHDL 93. Wij gebruiken de syntax van VHDL 93 Merlijn Aurich – TSO / Invomec

Probleem van het standaard type bit Het type bit is één van de basistypes van VHDL. Voor dit type bit bestaan er slechts 2 mogelijke waarden: 0 (laag) of 1 (hoog). In realiteit zijn er echter veel meer mogelijkheden. Een signaal kan: hoog-impedant zijn open drain zijn onbekend zijn … Dit is een probleem voor simulatie. Merlijn Aurich – TSO / Invomec

DE IEEE standard 1164 library Veel tool vendors boden hun eigen bibliotheken aan met daarin meerwaardige logica. Dit zorgde voor incompatabiliteiten tussen de verschillende tools. Uiteindelijk werd aan de standaard de bibliotheek IEEE standard 1164 toegevoegd. Hierin zit o.a. het negenwaardige type std_ulogic. TYPE std_ulogic IS ( 'U', -- Uninitialized 'X', -- Forcing Unknown '0', -- Forcing 0 '1', -- Forcing 1 'Z', -- High Impedance 'W', -- Weak Unknown 'L', -- Weak 0 'H', -- Weak 1 '-' -- Don't care ); Merlijn Aurich – TSO / Invomec

Het std_logic type Std_ulogic heeft 1 probleem: wat is de waarde indien er twee std_ulogic signalen aan elkaar hangen met verschillende waarde? ‘0’ + ‘1’ = ? ‘L’ + ‘H’ = ? Daarom werd ook het type std_logic gedefineerd. Std_logic is een resolved type, wat wil zeggen dat wanneer twee std_logic signalen aan elkaar hangen, en beide signalen een andere waarde hebben, er via een functie (een resolve functie) bepaald wordt wat de waarde van het uiteindelijke signaal wordt. Merlijn Aurich – TSO / Invomec

VHDL Wij houden ons vooral bezig met het synthetiseerbare gedeelte van VHDL. Om er zeker van zijn dat je VHDL synthetiseerbaar is, hou je je best aan de standaard templates, gezien in de lessen van het eerste jaar Zo zijn er templates voor de verschillende soorten flipflops, multiplexers en state machines Merlijn Aurich – TSO / Invomec

Entity en architecture Library IEEE; Use IEEE.std_logic_1164.all; entity inverter is port ( A : in std_logic; Z : out std_logic); end entity; architecture RTL1 of inverter is begin process(A) Z <= not A; end process; end architecture;   Library IEEE; Use IEEE.std_logic_1164.all; entity inverter is port ( A : in std_logic; Z : out std_logic); end entity; architecture RTL2 of inverter is begin Z <= not A; end architecture;   Merlijn Aurich – TSO / Invomec

And, or, not Library IEEE; Use IEEE.std_logic_1164.all; entity and_or_not is port ( A , B : in std_logic; And_out, Or_out : out std_logic; Not_out : out std_logic_vector(1 downto 0)); end entity; architecture RTL1 of and_or_not is begin And_out <= A and B; Or_out <= A or B; Not out <= (not B) & not (A); --concatenatie end architecture;   Merlijn Aurich – TSO / Invomec

Multiplexer entity mux is port ( A , B, S : in std_logic; Library IEEE; Use IEEE.std_logic_1164.all; entity mux is port ( A , B, S : in std_logic; Z : out std_logic); end entity; architecture RTL1 of mux is begin process(A,B, S) if S = ‘0’ then Z <= A; else Z <= B; end process; end architecture;   Merlijn Aurich – TSO / Invomec

Geklokt Process: Flipflop Library IEEE; Use IEEE.std_logic_1164.all; entity flipflop is port ( D : in std_logic; clock : in std_logic; Q : out std_logic ); end entity; architecture RTL of flipflop is begin process(clock) if rising_edge(clock) then Q <= D; end if; end process; end architecture; Merlijn Aurich – TSO / Invomec

Geklokt Process: Flipflop met asynchrone reset Library IEEE; Use IEEE.std_logic_1164.all; entity reset_flipflop is port ( D, reset : in std_logic; clock : in std_logic; Q : out std_logic ); end entity; architecture RTL of reset_flipflop is begin process(clock, reset) if reset = ‘0’ then Q <= ‘0’; elsif rising_edge(clock) then Q <= D; end if; end process; end architecture;   Merlijn Aurich – TSO / Invomec

The VHDL Connectivity Model Process The VHDL “View of Life” Multiple Processes executing statements in sequence, like concentional “software” Interacting ‘concurrently’ connected by signals Contained within an entity/architecture or several for a hierarchical design Merlijn Aurich – TSO / Invomec