Académique Documents
Professionnel Documents
Culture Documents
de Technologie
Département Electrique
Formation : LP- Licence Professionnelle
dedes
Filière : Electronique Technologie
Systèmes Embarqués (ESE)
Département Electrique
Formation : LP-
de Licence Professionnelle
Technologie
Rapport du compte
Département
Filière : Electronique Electrique
des Systèmes Embarqués (ESE)
Rendu de TP du VHDL
de Technologie
Formation : LP- Licence
Département Professionnelle
Electrique
Formation : LP-
de Licence Professionnelle
Technologie
Département Electrique
Filière : Electronique des Systèmes Embarqués (ESE)
de Technologie
Département
Formation Electrique
: LP- Licence Professionnelle
Filièrepar
Elaboré : Electronique
: des Systèmes Embarqués (ESE)
de Technologie
• ALILOU Manal • Prof : A. LACHHAB
Département Electrique
Formation : LP- Licence Professionnelle
de Technologie
Filière : Electronique des Systèmes Embarqués (ESE)
• Prof : A. LACHHAB
Département Electrique
Elaboré par :
1
Table des matières
Introduction générale ................................................................................................. 5
Partie combinatoire ............................................................................................. 6
1 Comparateur 1 bit ............................................................................................. 6
1.1 Symbole logique ........................................................................................ 6
1.2 Table de vérité ........................................................................................... 6
1.3 Equation logique ....................................................................................... 6
1.4 Code VHDL & Simulation......................................................................... 6
2 Demi-additionneur .......................................................................................... 7
2.1 Symbole ..................................................................................................... 7
2.2 Table de Vérité .......................................................................................... 7
2.3 Equation logique ....................................................................................... 8
2.4 Code VHDL & Simulation......................................................................... 8
3 Additionneur complet ..................................................................................... 9
3.1 Symbole ..................................................................................................... 9
3.2 Table de Vérité .......................................................................................... 9
3.3 Equation logique ....................................................................................... 9
3.4 Code VHDL & Simulation......................................................................... 9
4 Multiplieur........................................................................................................ 11
4.1 Symbole ..................................................................................................... 11
4.2 Table de Vérité .......................................................................................... 11
4.3 Equation logique ....................................................................................... 11
4.4 VHDL & Simulation ................................................................................. 12
5 Afficheur 7 segments....................................................................................... 12
5.1 Symbole .................................................................................................... 12
5.2 Table de Vérité ......................................................................................... 13
5.3 Equation logique ...................................................................................... 13
5.4 Code VHDL & Simulation........................................................................ 14
6 Exercice ................................................................ Erreur ! Signet non défini.
6.1 Table de vérité .......................................................................................... 16
6.2 Equation logique ...................................................................................... 16
2
6.3 Code VHDL & Simulation........................................................................ 16
Partie Séquentiel ................................................................................................. 18
7 Bascule D ......................................................................................................... 18
7.1 Symbole logique ....................................................................................... 18
7.2 Table de Vérité ......................................................................................... 18
7.3 Equation logique ...................................................................................... 18
7.4 Code VHDL & Simulation........................................................................ 18
8 Bascule JK ........................................................................................................ 19
8.1 Symbole logique ....................................................................................... 19
8.2 Table de Vérité ........................................................................................ 20
8.3 Equation logique .......................................... Erreur ! Signet non défini.
8.4 Code VHDL & Simulation....................................................................... 20
3
Liste des figures
Figure 1: code VHDL d ‘un comparateur 2bit avec la construction ‘when’ ...................... 7
Figure 2: Simulation d'un d’un comparateur 2bits ............................................................ 7
Figure 3: code VHDL d'Additionneur complet avec instruction 'when’ ........................... 8
Figure 4: Simulation d’Additionneur complet ................................................................... 8
Figure 5: code VHDL d'Additionneur avec instruction 'when' ........................................10
Figure 6: Simulation d'Additionneur complet avec instruction 'when' ...........................10
Figure 7: code VHDL d'additionneur complet avec instruction logique .........................10
Figure 8: simulation d'additionneur complet avec instruction ....................................... 11
Figure 9: code VHDL et Simulation d'un mux4_1 ............................................................ 12
Figure 11 : code VHDL et simulation d'un mux8_1............................................................ 12
Figure 12: code VHDL et Simulation d'un afficheur 7segments .......................................14
Figure 13: code VHDL d'un Transcodeur Bin_Gray .......................................................... 15
Figure 14: code VHDL+ Simulation d'exercice .................................................................. 17
Figure 15: code VHDL et simulation de la bascule D ........................................................19
Figure 16: code VHDL et simulation de la bascule D avec entrée Set et Reset
asynchrone .........................................................................................................................19
Figure 17: code VHDL et simulation de la bascule JK ....................................................... 21
4
Introduction
Le VHDL (VHSIC Hardware Description Language) est un langage de
description de matériel informatique utilisé pour concevoir et simuler des
circuits numériques complexes. Il est largement utilisé dans l'industrie pour la
conception de circuits intégrés programmables (FPGA, ASIC) et de systèmes
sur puce (SoC).
5
Partie combinatoire
1 Comparateur 1 bit
1.1 Symbole logique
Le symbole logique du comparateur (1bit) est représenté par le schéma suivant :
A S>
B S=
S<
A B S> S= S<
0 0 0 1 0
0 1 0 0 1
1 0 1 0 0
1 1 0 1 0
𝑺𝑺 = 𝑨𝑩̅
̅𝑩
𝑺𝑰 = 𝑨
̅𝑩
𝑺𝑬 = 𝑨 ̅̅̅̅̅̅̅̅̅
̅ + 𝑨𝑩 = 𝑨 ⊕𝑩
6
Figure 1: code VHDL d ‘un comparateur 2bit avec la construction ‘when’
2 Demi-additionneur
2.1 Symbole logique
Le symbole logique du demi-additionneur est représenté par le schéma suivant :
A S
B C
7
A B S C
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
• 𝑺=𝑨⊕𝑩
• 𝑪 = 𝑨𝑩
8
3 Additionneur complet
3.1 Symbole
Le symbole logique d’additionneur complet est représenté par le schéma suivant :
A S
B Rs
Re
V A B Re Rs S
0 0 0 0 0 0
1 0 0 1 1 0
2 0 1 0 1 0
3 0 1 1 0 1
4 1 0 0 1 0
5 1 0 1 0 1
6 1 1 0 0 1
7 1 1 1 1 1
𝑺 = 𝑨 ⊕ (𝑹𝑬 ⊕ 𝑩)
𝑹𝒔 = 𝑨𝑩 + 𝑹𝑬 (𝑨 ⊕ 𝑩)
9
Figure 5: code VHDL d'Additionneur avec instruction 'when'
La Simulation d'Additionneur complet avec instruction 'when' est représenté dans la figure
suivant :
Le code VHDL d'additionneur complet avec instruction logique est représenté dans la figure
suivant :
La simulation d’additionneur complet avec instruction logique est représentée par la figure
suivant :
10
Figure 8: simulation d'additionneur complet avec instruction logique
4 Multiplixeur
4.1 Symbole
Les symboles logiques des multiplixeurs 4_1 et 8_1 est représenté par le schéma
suivant :
E0
E0 E1
E1 Y E2
E2 Mux4_1 E3 Y
Mux8_1
E3 S0 S1 E4
E5
E6
E7 S2 S0 S1
S1 S2 Y S2 S1 S2 Y
0 0 0 E0
0 0 E0
0 0 1 E1
0 1 E1 0 1 0 E2
1 0 E2 0 1 1 E3
1 1 E3 1 0 0 E4
1 0 1 E5
1 1 0 E6
1 1 1 E7
11
𝒀 = 𝑬𝟎 𝒔̅𝟏 𝒔̅𝟎 + 𝑬𝟏 𝒔̅𝟏 𝑺𝟎 + 𝑬𝟐 𝑺𝟏 𝒔̅𝟎 +𝑬𝟑 𝑺𝟏 𝑺𝟎
𝒀 = 𝑬𝟎 𝒔̅𝟐 𝒔̅𝟏 𝒔̅𝟎 + 𝑬𝟏 𝒔̅𝟐 𝒔̅𝟏 𝑺𝟎 + 𝑬𝟐 𝒔̅𝟐 𝑺𝟏 𝒔̅𝟎 +𝑬𝟑 𝒔̅𝟐 𝑺𝟏 𝑺𝟎 𝑬𝟎 𝑺𝟐 𝒔̅𝟏 𝒔̅𝟎
+ 𝑬𝟏 𝑺𝟐 𝒔̅𝟏 𝑺𝟎 + 𝑬𝟐 𝑺𝟐 𝑺𝟏 𝒔̅𝟎 +𝑬𝟑 𝑺𝟐 𝑺𝟏 𝑺𝟎
Le code VHDL et Simulation d'un mux8_1 est représenté par la figure suivant :
5 Afficheur 7 segments
5.1 Symbole logique
Le symbole logique afficheur 7 segments est représenté par le schéma suivant :
12
a
A b
B c
C d
D e
f
g
V A B C D a b c d e f g
0 0 0 0 0 0 0 0 0 0 0 1
1 0 0 0 1 1 0 0 1 1 1 1
2 0 0 1 0 0 0 1 0 0 1 0
3 0 0 1 1 0 0 0 0 1 1 0
4 0 1 0 0 1 0 0 1 1 0 0
5 0 1 0 1 0 1 0 0 1 0 0
6 0 1 1 0 0 1 0 0 0 0 0
7 0 1 1 1 0 0 0 1 1 1 1
8 1 0 0 0 0 0 0 0 0 0 0
9 1 0 0 1 0 0 0 0 1 0 0
A 1 0 1 0 0 0 0 1 0 0 0
B 1 0 1 1 1 1 0 0 0 0 0
C 1 1 0 0 0 1 1 0 0 0 1
D 1 1 0 1 1 0 0 0 0 1 0
E 1 1 1 0 0 1 1 0 0 0 0
F 1 1 1 1 0 1 1 1 0 0 0
̅𝑫
• 𝒂=𝑩 ̅ + 𝑪 + 𝑩𝑫 + 𝑨
• 𝒃=𝑩+𝑪 ̅𝑫̅ + 𝑪𝑫
̅+𝑫+𝑩
• 𝒄=𝑪
13
• ̅𝑫
𝒅=𝑩 ̅ +𝑩 ̅ 𝑫 + 𝑪𝑫
̅ 𝑪 + 𝑩𝑪 ̅ +𝑨
• ̅𝑫
ⅇ=𝑩 ̅ + 𝑪𝑫
̅
• ̅𝑫
𝒇=𝑪 ̅ + 𝑩𝑫
̅ + 𝑩𝑪 ̅ +𝐀
• 𝒈=𝑩 ̅ + 𝑨 + 𝑩𝑫
̅ 𝑪 + 𝑩𝑪 ̅
B0 G0
B1 G1
B2 G2
B3 G3
V B3 B2 B1 B0 G3 G2 G1 G0
0 0 0 0 0 0 0 0 0
14
1 0 0 0 1 0 0 0 1
2 0 0 1 0 0 0 1 1
3 0 0 1 1 0 0 1 0
4 0 1 0 0 0 1 1 0
5 0 1 0 1 0 1 1 1
6 0 1 1 0 0 1 0 1
7 0 1 1 1 0 1 0 0
8 1 0 0 0 1 1 0 0
9 1 0 0 1 1 1 0 1
A 1 0 1 0 1 1 1 1
B 1 0 1 1 1 1 1 0
C 1 1 0 0 1 0 1 0
D 1 1 0 1 1 0 1 1
E 1 1 1 0 1 0 0 1
F 1 1 1 1 1 0 0 0
6.3 Equation logique
Les équations logiques du transcodeur binaire Gray sont les suivants :
𝑮𝟎 = 𝑩𝟎 ⊕ 𝑩𝟏
𝑮𝟏 = 𝑩𝟏 ⊕ 𝑩𝟐
𝑮𝟐 = 𝑩𝟐 ⊕ 𝑩𝟑
𝑮𝟑 = 𝑩𝟑
6.4 Code VHDL & Simulation
Le code VHDL d'un Transcodeur Bin_Gray est représenté par la figure suivant :
15
7 Exercice d’application
7.1 Table de vérité
La table de vérité de l’exercice d’application est représentée par le tableau suivant :
V A B C S R L
0 0 0 0 0 0 0
1 0 0 1 0 1 1
2 0 1 0 0 1 1
3 0 1 1 1 0 1
4 1 0 0 0 1 1
5 1 0 1 1 0 1
6 1 1 0 1 0 1
7 1 1 1 0 0 0
7.2 Equation logique
Les équations logiques d’exercice d’application sont les suivants :
̅ 𝑩𝑪 + 𝑨𝑩
𝑺=𝑨 ̅ 𝑪 + 𝑨𝑩𝑪̅
̅𝑩
𝑹=𝑨 ̅𝑪 + 𝑨
̅ 𝑩𝑪̅ + 𝑨𝑩
̅𝑪̅
̅𝑩
𝑳=𝑨 ̅𝑪 + 𝑨
̅ 𝑩𝑪̅ + 𝑨𝑩
̅𝑪̅+𝑨
̅ 𝑩𝑪 + 𝑨𝑩 ̅
̅ 𝑪 + 𝑨𝑩𝑪
16
Figure 13: code VHDL+ Simulation d'exercice
17
Partie Séquentiel
8 Bascule D
8.1 Symbole logique
Le symbole logique de la bascule D est le suivant :
D Q
CLK
CLK D Q
0 0
1 1
0 X Q
Q=D
18
Figure 14: code VHDL et simulation de la bascule D
Figure 15: code VHDL et simulation de la bascule D avec entrée Set et Reset asynchrone
9 Bascule JK
9.1 Symbole logique
Le symbole logique de la bascule JK est le suivant :
J Q
19
9.2 Table de Vérité
La table de vérité de la bascule JK est représentée par le tableau suivant
CLK J K Q
0 0 𝑸𝒂
0 1 0
1 0 1
1 1 ̅̅̅̅
𝑸𝒂
x x x 𝑸𝒂
20
Conclusion
21