From 07d0bbb46c68c9343874c698d97521826d88e201 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hugo=20H=C3=B6rnquist?= Date: Tue, 19 Feb 2019 11:02:38 +0100 Subject: Tue, 19 Feb 2019 11:02:38 +0100 --- VHDL.wiki | 52 +++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 39 insertions(+), 13 deletions(-) (limited to 'VHDL.wiki') diff --git a/VHDL.wiki b/VHDL.wiki index b9f29f2..cbe64a2 100644 --- a/VHDL.wiki +++ b/VHDL.wiki @@ -1,28 +1,32 @@ = Contents = - [[#VHDL|VHDL]] - - [[#VHDL#"Kod"|"Kod"]] + - [[#VHDL#Generell struktur|Generell struktur]] - [[#VHDL#Exempelkrets|Exempelkrets]] - [[#VHDL#Datatytper|Datatytper]] - [[#VHDL#Datatytper#std_logic|std_logic]] - [[#VHDL#Datatytper#std_logic_vector|std_logic_vector]] + - [[#VHDL#Typer av satser|Typer av satser]] + - [[#VHDL#Typer av satser#process|process]] + - [[#VHDL#Annat trevligt|Annat trevligt]] + - [[#VHDL#Annat trevligt#`with-select-when`|`with-select-when`]] + - [[#VHDL#Annat trevligt#`when-else`|`when-else`]] = VHDL = -VHDL = VHSIC HDL -VHSIC = Very High Speed Integrated Circuits -HDL = Hardware Description Language +- VHDL :: VHSIC HDL +- VHSIC :: Very High Speed Integrated Circuits +- HDL :: Hardware Description Language -Verilog mer hacker-vänligt -Vanligare i USA +Verilog mer hacker-vänligt, vanligare i USA VHDL vanligare i Europa -== "Kod" == +== Generell struktur == -Gränssnitt mot omvänden +Gränssnitt mot omvärlden {{{vhdl entity namen1 is - -- beskrivningav in och utgångar + -- Beskrivning av in och utgångar end entity namn1; }}} @@ -31,7 +35,7 @@ Intern implementation. architecture namn2 of namn1 is -- beskrivning av interna signaler begin - -- beskrvining av funktion + -- Beskrivning av funktion end architecture namn2; }}} @@ -41,9 +45,9 @@ Uttrycket {{$ \begin{aligned} -\text{låt } x &= a \wedge b \\ - y &= a \vee b \\ -\text{i } c &= \neg (x \vee y) +c &= \neg (x \vee y) \\ +\text{där } x &= a \wedge b \\ + y &= a \vee b \end{aligned} }}$ @@ -103,3 +107,25 @@ std_logic_vector (0 to 2); std_logic_vector (5 downto 2); }}} +== Typer av satser == + +Allting i VHDL är paralellt by default, dock finns: + +=== process === +`process` låter ett block köra i sekventiell ordning. Dock kör alla +`process`-block paralellt gämte varandra. + +== Annat trevligt == + +=== `with-select-when` === + +=== `when-else` === +Tillåter "krångliga" uttryck i högerledet. + +Första sanna villkoret bestämmer. Allting körs parallellt? + +{{{VHDL +y <= d(0) when s = "00" else + d(1) when s = "01" else + d(2); +}}} -- cgit v1.2.3