Vous êtes sur la page 1sur 18

VHDL exercises

P. Bakowski

bako@ieee.org

Modliser et simuler l'additionneur binaire complet (full adder). a cout b cin a, b entres s sortie cin retenue dentre cout retenue de sortie

s
P. Bakowski
2

a cout s b cin a 0 0 0 0 1 1 1 1 b 0 0 1 1 0 0 1 1 cin 0 1 0 1 0 1 0 1 s 0 1 1 0 1 0 0 1 cout 0 0 0 1 0 1 1 1
3

P. Bakowski

entity adder is port (a,b,cin: in bit; s,cout: out bit); end adder; -- a,b,cin,s,cout sont des signaux

P. Bakowski

architecture behavioral of adder is begin s <= (a xor b) xor cin after sum_del; cout <= (a and b) or (cin and a) or (cin and b) after carry_del; end behavioral; a cout b cin dlais daffectation

s
P. Bakowski
5

architecture behavioral of adder is begin s <= (a xor b) xor cin after sum_del; cout <= (a and b) or (cin and a) or (cin and b) after carry_del; end behavioral; a cout b cin dlais daffectation dfinir comme: un littral une constante un paramtre

s
P. Bakowski
6

entity adder is generic sum_del: time:= 10 ns; generic carry_del: time:= 20 ns; port (a,b,cin: in bit; s,cout: out bit); end adder; dlais daffectation dfinir comme: un littral une constante un paramtre

a cout

b cin

s
P. Bakowski
7

a(3) b(3) cout a(2) b(2) a(1) b(1) a(0) b(0) cin

c(2)

c(1)

c(0)

s(3)

s(2)

s(1)

s(0)

entity adder4 is port (a,b: in bit_vector(3 downto 0); cin: in bit; s: out bit_vector(3 downto 0); cout: out bit); end adder4;
P. Bakowski
8

A partir de la description d'un additionneur binaire crire un additionneur 4-bit en version fonctionnelle - architecture algorithmique

Mots cls tudier: process variable for.. loop

P. Bakowski

architecture algorithmique of adder4 is signal... process (liste de sensibilit) variable ... begin for i in ... loop -- ici mettre l'opration de l'additionneur binaire end loop; end process; end algorithmique ; Attention: le seul endroit pour dclarer une variable lintrieur du process
P. Bakowski
10

architecture algorithmique of adder4 is process (liste de sensibilit) variable retenue: bit; begin retenue .. end process; cout <= retenue after 4*carry_del; end algorithmique ; a(i) b(i)

s(i)

La premire version de l'architecture algorithmique utilise une variable interne pour le stockage de la valeur de la retenue entre les tages de l'additionneur; le dlai entre cin est cout est globalis
P. Bakowski
11

architecture algorithmique of adder4 is process variable retenue: bit; begin retenue .. wait for carry_del; end process; end algorithmique ; a(i) b(i)

s(i)

La deuxime version de l'architecture algorithmique doit utiliser l'instruction wait afin de modliser les dlais locaux (e.g: wait on a,b,cin; wait for carry_del)
P. Bakowski
12

entity addern is generic: taille integer:=4; port (a,b: in bit_vector(taille-1 downto 0); cin: in bit; s: out bit_vector(taille-1 downto 0); cout: out bit); end addern; La troisime version de l'architecture algorithmique est gnrique : dans l'interface de cette version il faut introduire le terme gnrique caractrisant la taille de l'additionneur. Le module de l'architecture doit tre modifie en consquence.
P. Bakowski
13

Architecture data flow

La version de l'architecture (additionneur 4 bits) du type data flow ne contient que des affectations type signal enchaines par les signaux internes: architecture dataflow of adder4 is signal c: bit_vector(3 downto 0); begin s(0) <= .. after .. c(0) <= .. after .. s(1) <= .. after .. c(1) <= .. after .. .. end dataflow;
P. Bakowski
14

Architecture structurelle
Une architecture structurelle est construite partir des composants components. Mots cls a tudier: signal, component, port map, generate, ..

P. Bakowski
15

Architecture structurelle 1
architecture structurelle of adder4 is signal c: bit_vector(3 downto 0); component adder port (...); -- ici il faut copier le port de l'entity end component; begin add1: adder port map(...); add2: ... ... end structurelle;
P. Bakowski

instances cbls

16

Architecture structurelle 2
Dans la deuxime version de l'architecture structurelle doit utiliser le mcanisme de gnration des instanciations: generate tudier: boucle principale de gnration for .. conditions de gnration (instanciation) if ..

P. Bakowski

17

Architecture structurelle 2
P. Bakowski
18

Obtenez nos applications gratuites

Droits d'auteur © 2021 Scribd Inc.