bpc-los_05 - VHDL
Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.
Programovatelné logické obvody 3
Ing. P. Petyovský, Ph.D. (petyovsky@feec.vutbr.cz)
Datové objekty jazyka VHDL, atributy,
konverze typů, fyzikální datový typ, datový typ
záznam, příkaz alias, souběžné příkazy,
výběrové přiřazení.
rev. 2019.12
Opakování předchozích znalostí
•
Datové typy jazyka VHDL:
•
Skalární datové typy:
•
výčtový (předdefinované typy: bit, boolean, character, severity_level),
•
celočíselný (předdefinované typy: integer, natural, positive),
•
s pohyblivou čárkou (předdefinovaný typ: real).
•
Složené datové typy:
•
datový typ pole (předdefinované typy: bit_vector, string).
•
Datové typy v balíku: std_logic_1164
•
9-stavová logika, rozlišovací funkce (resolution function): ’U X 0 1 Z W L H -’.
•
Skalární typy: (předdefinované typy: std_ulogic, std_logic),
•
Složené datové typy vektor: (std_ulogic_vector, std_logic_vector).
•
Výrazy a operátory v jazyce VHDL:
•
Operátor přiřazení a agregáty (poziční přiřazení, přiřazení vyjmenováním, OTHERS).
•
Operátory (logické, relační, bitového posuvu a rotace, bitové sloučení a aritmetické).
•
Příkazy v jazyce VHDL mohou mít
souběžný nebo sekvenční charakter.
•
Demo příklad na souběžné přiřazení.
•
Podmíněné přiřazovací příkazy s klíčovými slovy WHEN - ELSE.
•
Demo příklad na podmíněné přiřazení.
Opakování předchozích znalostí
Příklad použití podmíněného přiřazení
LIBRARY ieee; -- Knihovna IEEE
USE ieee.std_logic_1164.ALL; -- Knihovní balík std_logic_1164
-- Deklarace entity mux4p
ENTITY mux4p IS
PORT (a, b, c, d: IN std_logic; -- Datové vstupy
i: IN std_logic_vector(3 DOWNTO 0); -- Výběrové vstupy
y, z: OUT std_logic); -- Výstupy
END mux4p;
-- Popis architektury mux4p
ARCHITECTURE Behavioral OF mux4p IS
BEGIN y <= a WHEN (i(3) = '1') ELSE -- Podmíněné přiřazení
b WHEN (i(2) = '1') ELSE c WHEN (i(1) = '1') ELSE d WHEN (i(0) = '1') ELSE
'0';
z <='1' WHEN (a /= b) AND (b /= c) AND (c /= d) ELSE '0'; -- Podmíněné přiřazení realizující?
END Behavioral;
z = (a ⊕ b) ⋅ (b ⊕ c) ⋅ (c ⊕ d) = abcd + abcd
Jazyk VHDL - seznam klíč. slov
architecture
access after alias all and