background image

Laboratorium 1

Temat: Przygotowanie środowiska projektowego. Poznanie edytora i symulatora. Kompilacja i 

symulacja przykładowego kodu. 

1. Przygotowanie środowiska projektowego

a) zajęcia prowadzone będą w oparciu o środowisko projektowe Active VHDL v. 3.1
b) przed uruchomieniem programu należy utworzyć katalog z numerem swojego albumu w katalogu 
f:\vhdl\

2. Uruchomienie edytora, tworzenie nowego projektu

a) uruchomić środowisko projektowe wybierając z menu głównego program Active-VHDL lub skrót 
z pulpitu.
b) w oknie  Getting Started  wybrać istniejący projekt (open existing design) lub stworzyć nowy 
(create new design)
c) w przypadku tworzenia nowego projektu w pierwszym oknie New Design Wizard wpisać nazwę 
nowego   projektu   (Type   the   design   name),  wybrać   miejsce   przechowywania   folderu   z   nowo 
tworzonym projektem - f:\vhdl\nr_albumu (select the location of the design folder)
d) w kolejnym oknie New Design Wizard wybrać Create an empty design

e) dodać nowy plik dwukrotnie klikając na Add New File:

 a następnie w oknie Add New File wybierając Create Empty VHDL Source File:

3. Kompilacja przykładowego kodu

a) stwórz nowy projekt i dodaj do niego pusty plik (Add New File -> Create Empty VHDL Source 

File)

Projektowanie układów VLSI

© 2005 Copyright by Tomasz Fałat 

background image

b) w oknie edytora wpisz następujący kod (realizacja 2-wej. bramki AND)

c) zapisz bieżący plik (ctrl+s) jako np.: bramka.vhd w katalogu :

f:\vhdl\nr_albumu\nazwa_projektu\src\

d) skompiluj plik Compile (F11) dodając go do bieżącego projektu (Would you like to add this file to 

current design? -> Tak)

e) dodaj kolejny pusty plik (Add New File -> Create Empty VHDL Source File)
f) w oknie edytora wpisz następujący kod (jednostka testowa [ang. testbench] układu zrealizowanego 

w pierwszym pliku - bramka.vhd)

g)zapisz bieżący plik (ctrl+s) jako np.: bramka_tb.vhd w katalogu :

Projektowanie układów VLSI

© 2005 Copyright by Tomasz Fałat 

library

 IEEE;

use

 IEEE.std_logic_1164.

all

;

entity

 bramka 

is

 

  

port

(

 

 x, y

in

 std_logic; 

-- wejscia

 

 z

out

 std_logic 

-- wyjscie

  ); 

end

 bramka;   

architecture

 bramka_a 

of

 bramka 

is

begin

z  <= x 

and

 y;

end

 bramka_a; 

library

 IEEE;

use

 IEEE.std_logic_1164.

all

;

entity

 bramka_tb 

is

 

end

 bramka_tb;   

architecture

 bramka_tb_a 

of

 bramka_tb 

is

component

 bramka 

is

 

  

port

(

  x, y 

in

 std_logic; 

-- wejscia

  z 

out

 std_logic 

-- wyjscie

  ); 

end component

;  

  

signal

 s_x , s_y, s_z

: std_logic; 

begin

lut: bramka 

port map

(x=>s_x, y=>s_y, z=>s_z);

film: 

process

begin

s_x <= '0';

s_y <= '0';

wait for

 10 ns;

s_x <= '0';

s_y <= '1';

wait for

 10 ns;

s_x <= '1';

s_y <= '0';

wait for 

10 ns;

s_x <= '1';

s_y <= '1';

wait for 

10 ns;

assert

 false 

severity

 failure; 

end process 

film;

end 

bramka_tb_a; 

background image

f:\vhdl\nr_albumu\nazwa_projektu\src\

h) skompiluj plik Compile (F11) dodając go do bieżącego projektu (Would you like to add this file to 

current design? -> Tak), a następnie skompiluj ponownie całość projektu (Compile All)

4. Symulacja przykładowego kodu

a) ustawić nadrzędną architekturę (testbench): 

design -> settings -> top-level selection -> entity/architecture -> bramka_tb (testbench)

b) otworzyć nowe okno przebiegów czasowych New Waveform 

c) zainicjalizuj symulację: Simulation -> Initialize Simulation
d) przenieś (drag & drop) wybrane sygnały do okna przebiegów

e) uruchom symulację: Simulation -> Run, sprawdź poprawność działania zaprojektowanego układu

5. Zadania do realizacji

a) przerobić przykładowy kod aby realizował 3-wejściową bramkę OR.
b) wykonać symulację

Projektowanie układów VLSI

© 2005 Copyright by Tomasz Fałat