Jak Začít?

Máš v počítači zápisky z přednášek
nebo jiné materiály ze školy?

Nahraj je na studentino.cz a získej
4 Kč za každý materiál
a 50 Kč za registraci!




bpc-los_06 - VHDL-strukturální popis, generic

PDF
Stáhnout kompletní materiál zdarma (284.4 kB)

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.

top_level.vhdl:

 -- Nyní platí implicitní hodnota Bits := 4
ha1: half_adder_g PORT MAP(a => x, b => y, sum => r, cout=> c);

;

 SIGNAL x, y, r: std_logic
 SIGNAL c: std_logic;

BEGIN

END ARCHITECTURE Behavioral;

Vložení parametrizovatelné komponenty

-- Popis architektury top_level
ARCHITECTURE Structural OF top_level IS

 -- Deklarace componenty half_adder_g
 COMPONENT half_adder_g IS  GENERIC (Bits: natural := 4     -- Implicitní hodnota
          );
  PORT (a, b: IN  std_logic_vector(Bits - 1 DOWNTO 0);
   sum:  OUT std_logic_vector(Bits - 1 DOWNTO 0);
        cout: OUT std_logic
   );
 END COMPONENT half_adder_g;

top_level.vhdl:

 -- Nyní platí implicitní hodnota Bits := 4
ha1: half_adder_g PORT MAP(a => x, b => y, sum => r, cout=> c);

_vector(4 DOWNTO 0);  -- Aha ;-) 

 SIGNAL x, y, r: std_logic
 SIGNAL c: std_logic;

BEGIN

END ARCHITECTURE Behavioral;

Vložení parametrizovatelné komponenty

-- Popis architektury top_level
ARCHITECTURE Structural OF top_level IS

 -- Deklarace componenty half_adder_g
 COMPONENT half_adder_g IS  GENERIC (Bits: natural := 4     -- Implicitní hodnota
          );
  PORT (a, b: IN  std_logic_vector(Bits - 1 DOWNTO 0);
   sum:  OUT std_logic_vector(Bits - 1 DOWNTO 0);
        cout: OUT std_logic
   );
 END COMPONENT half_adder_g;

top_level.vhdl:

 -- Nyní je hodnota Bits předefinována na 8
ha1: half_adder_g
      GENERIC MAP(Bits => 8)
      PORT MAP(a => x, b => y, sum => r, cout=> c);

_vector(8 DOWNTO 0);

Konstrukce GENERATE jazyka 

VHDL 

• Prostředek pro úsporný zápis opakujících se částí VHDL kódu, které 

by jinak musel vývojář opakovaně rozepisovat (např. definice hodnoty 
výstupu hradla se vstupem typu vektor, opakovaná vkládání 
komponent).

• Konstrukce musí opětovně obsahovat definici unikátního návěští.

• Existují dvě varianty příkazu GENERATE:

• Konstrukce FOR - GENERATE 

• Cyklus v době syntézy (nikoliv ve výsledném obvodu) počet 

opakování určen na základě hodnot známých již při syntéze.

• Řídicí proměnná cyklu nemusí být předem definována, ale je 

dostupná jen v těle cyklu.

• Konstrukce IF - GENERATE 

• Podmínka v době syntézy (nikoliv ve výsledném obvodu) 

vyhodnocení podmínky na základě hodnot známých již při 
syntéze.

• Neexistuje konstrukce IF - ELSE - GENERATE.

Témata, do kterých materiál patří