Partie 1 : Systèmes numériques
TD 4 : FPGA
Pr. Mohamed LAMHAMDI
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
Considérez les systèmes d’équations logiques suivant : Un concepteur décrit de
façon comportementale un circuit en VHDL comme indiqué ci-dessous :
library IEEE;
use IEEE.std_logic_1164.all;
entity ckt is
port (A, B, C : in std_logic;
Q1, Q2 : out std_logic); end ckt;
architecture toto of ckt is
begin
process (C, A, B) variable V : std_logic;
begin
if V=’1’
then Q2 <= C; end if;
if A’event and A=’1’ then Q1 <= B;
V := not B;
end if;
end process;
end toto;
Le but de ce TD est de réaliser les différentes étapes de la synthèse au
placement-routage permettant d’aller de la description matérielle
comportementale à la génération du bitstream pour un composant du type FPGA
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
1. Synthèse comportementale : Dessinez avec des circuits simples de
l’électroniques numériques (portes, multiplexeur, bascule D) le circuit
équivalent à la description VHDL de l’entité circuit.
library IEEE;
use IEEE.std_logic_1164.all;
entity ckt is
port (A, B, C : in std_logic;
Q1, Q2 : out std_logic); end ckt;
architecture toto of ckt is
begin
process (C, A, B) variable V : std_logic;
begin
if V=’1’
then Q2 <= C; end if;
if A’event and A=’1’ then
Q1 <= B;
V := not B;
end if;
end process;
end toto;
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
2. Mapping technologique : choix des LUT : A partir du schéma réalisé́ à la
question 1 estimez le nombre de LUT à 4 entrées nécessaires à la réalisation des
parties combinatoires du circuit. Puis entourez sur le schéma les parties
correspondant à chacune des LUT. Donner les tables de vérités des LUT ainsi
choisies.
LUT 2
LUT 1 LUT 3
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
3. Mapping technologique : configuration des LEs (Logic Element) : Le FPGA qui
est ciblé pour ce circuit à des éléments logiques configurables classiques
contenant une LUT à 4 entrées, une chaine de propagation rapide de la retenue
et une bascule D. Sur les schémas d’éléments logiques donnés sur la feuille
suivante surlignez les lignes utilisées pour configurer chacun des éléments
logiques nécessaires au circuit. Faites clairement apparaitre le nom des signaux
déclarés dans la description VHDL.
Bè
Aè
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
3. Mapping technologique : configuration des LEs (Logic Element) : Le FPGA qui
est ciblé pour ce circuit à des éléments logiques configurables classiques
contenant une LUT à 4 entrées, une chaine de propagation rapide de la retenue
et une bascule D. Sur les schémas d’éléments logiques donnés sur la feuille
suivante surlignez les lignes utilisées pour configurer chacun des éléments
logiques nécessaires au circuit. Faites clairement apparaitre le nom des signaux
déclarés dans la description VHDL.
Q1
Bè
Aè
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
3. Mapping technologique : configuration des LEs (Logic Element) : Le FPGA qui
est ciblé pour ce circuit à des éléments logiques configurables classiques
contenant une LUT à 4 entrées, une chaine de propagation rapide de la retenue
et une bascule D. Sur les schémas d’éléments logiques donnés sur la feuille
suivante surlignez les lignes utilisées pour configurer chacun des éléments
logiques nécessaires au circuit. Faites clairement apparaitre le nom des signaux
déclarés dans la description VHDL.
Q2
Cè
Q=Gè
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
4. Placement : Le circuit FPGA (fictif) utilisé a une architecture très simple, comme
montré sur le schéma donné sur la dernière feuille. Décidez du placement des trois
éléments logiques utilisés ainsi que des broches d’entrées - sorties.
--- LUT 2
--- LUT 1
--- LUT 3
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
5. Routage 1ère & 2ième phases – établissement des connexions :
PLL
Q1
Aè
B Q2
--- LUT 2
--- LUT 1
C Aè
--- LUT 3
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
Considérez les systèmes d’équations logiques suivant : Un concepteur décrit de
façon comportementale un circuit en VHDL comme indiqué ci-dessous :
library IEEE;
use IEEE.std_logic_1164.all;
entity toto is
port (A, B, C : in std_logic;
Q1, Q2 : out std_logic); end toto;
architecture synth of toto is signal V, R : std_logic;
begin
process (V, C) begin
if (V='1‘) then Q2 <= C;
end if; end process;
R <= B xor C;
process (A) begin
if (A'event and A='1') then Q1 <= C;
V <= R;
end if; end process;
end synth
Le but de ce TD est de réaliser les différentes étapes de la synthèse au
placement-routage permettant d’aller de la description matérielle
comportementale à la génération du bitstream pour un composant du type FPGA
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
1. Synthèse comportementale : Dessinez avec des circuits simples de
l’électroniques numériques (portes, multiplexeur, bascule D) le circuit
équivalent à la description VHDL de l’entité circuit.
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
2. Mapping technologique : choix des LUT : A partir du schéma réalisé́ à la
question 1 estimez le nombre de LUT à 4 entrées nécessaires à la réalisation des
parties combinatoires du circuit. Puis entourez sur le schéma les parties
correspondant à chacune des LUT. Donner les tables de vérités des LUT ainsi
choisies.
LUT 2
LUT 3
LUT 1
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
3. Mapping technologique : configuration des LEs (Logic Element) : Le FPGA qui
est ciblé pour ce circuit à des éléments logiques configurables classiques
contenant une LUT à 4 entrées, une chaine de propagation rapide de la retenue
et une bascule D. Sur les schémas d’éléments logiques donnés sur la feuille
suivante surlignez les lignes utilisées pour configurer chacun des éléments
logiques nécessaires au circuit. Faites clairement apparaitre le nom des signaux
déclarés dans la description VHDL.
Bè
Aè
Cè
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
3. Mapping technologique : configuration des LEs (Logic Element) : Le FPGA qui
est ciblé pour ce circuit à des éléments logiques configurables classiques
contenant une LUT à 4 entrées, une chaine de propagation rapide de la retenue
et une bascule D. Sur les schémas d’éléments logiques donnés sur la feuille
suivante surlignez les lignes utilisées pour configurer chacun des éléments
logiques nécessaires au circuit. Faites clairement apparaitre le nom des signaux
déclarés dans la description VHDL.
Q1
Cè
Aè
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
3. Mapping technologique : configuration des LEs (Logic Element) : Le FPGA qui
est ciblé pour ce circuit à des éléments logiques configurables classiques
contenant une LUT à 4 entrées, une chaine de propagation rapide de la retenue
et une bascule D. Sur les schémas d’éléments logiques donnés sur la feuille
suivante surlignez les lignes utilisées pour configurer chacun des éléments
logiques nécessaires au circuit. Faites clairement apparaitre le nom des signaux
déclarés dans la description VHDL.
Q2
Cè
Q=Gè
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
4. Placement : Le circuit FPGA (fictif) utilisé a une architecture très simple, comme
montré sur le schéma donné sur la dernière feuille. Décidez du placement des trois
éléments logiques utilisés ainsi que des broches d’entrées - sorties.
--- LUT 2
--- LUT 1
--- LUT 3
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
5. & 6. Routage 1ère et 2ième phases
PLL
Q1
Aè
B Q2
--- LUT 2
--- LUT 1
C Aè
--- LUT 3
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°1
Considérez les systèmes d’équations logiques suivant : Un concepteur décrit de
façon comportementale un circuit en VHDL comme indiqué ci-dessous :
Le but de ce TD est de réaliser les différentes étapes de la synthèse au
placement-routage permettant d’aller de la description matérielle
comportementale à la génération du bitstream pour un composant du type FPGA
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°1
1. Synthèse comportementale : Dessinez avec des circuits simples de
l’électroniques numériques (portes, multiplexeur, bascule D) le circuit
équivalent à la description VHDL de l’entité circuit.
ENTITY circuit IS
PORT ( A, B, C, RESET, W : IN std_logic;
H : IN std_logic;
S1, S2 : OUT std_logic);
S1 = S0 when w = 1
END circuit;
S1 = A when w = 0
ARCHITECTURE Behavioral OF circuit IS SIGNAL S0 :
std_logic;
BEGIN W
S1 <= S0 WHEN W ='1' ELSE A;
PROCESS (RESET, H) S0
BEGIN S1
IF (RESET ='0') THEN A
S0<='0’;
S2<='1';
ELSIF (H'event AND H='1') THEN
S0<= NOT ((A AND B) OR C);
S2<=A AND B AND C;
END IF; END PROCESS;
END Behavioral;
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°1
1. Synthèse comportementale : Dessinez avec des circuits simples de
l’électroniques numériques (portes, multiplexeur, bascule D) le circuit
équivalent à la description VHDL de l’entité circuit.
ENTITY circuit IS
PORT ( A, B, C, RESET, W : IN std_logic;
H : IN std_logic;
S1, S2 : OUT std_logic); END circuit;
ARCHITECTURE Behavioral OF circuit IS SIGNAL S0 : std_logic;
BEGIN
S1 <= S0 WHEN W ='1' ELSE A;
PROCESS (RESET, H)
BEGIN S0 = not((A and B) or c) pour H = 1
IF (RESET ='0') THEN S0 = 0 when reset = 0
S0<='0’;
S2<='1';
ELSIF (H'event AND H='1') THEN A AB
S0<= NOT ((A AND B) OR C);
S2<=A AND B AND C;
B S0
END IF; C
END PROCESS;
END Behavioral; H
Reset
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°1
2. Mapping technologique : choix des LUT : A partir du schéma réalisé́ à la
question 1 estimez le nombre de LUT à 4 entrées nécessaires à la réalisation des
parties combinatoires du circuit. Puis entourez sur le schéma les parties
correspondant à chacune des LUT. Donner les tables de vérités des LUT ainsi
choisies.
ENTITY circuit IS
PORT ( A, B, C, RESET, W : IN std_logic;
H : IN std_logic;
S1, S2 : OUT std_logic); END circuit;
ARCHITECTURE Behavioral OF circuit IS SIGNAL S0 : std_logic;
BEGIN
S1 <= S0 WHEN W ='1' ELSE A;
PROCESS (RESET, H) S2 = 1 when reset = 0
BEGIN S2 = ABC when H = 1
IF (RESET ='0') THEN
S0<='0’;
S2<='1'; Reset
ELSIF (H'event AND H='1') THEN
S0<= NOT ((A AND B) OR C); A
S2<=A AND B AND C;
ABC
B S2
END IF;
END PROCESS; C
END Behavioral;
H
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°1
2. Mapping technologique : choix des LUT : A partir du schéma réalisé́ à la
question 1 estimez le nombre de LUT à 4 entrées nécessaires à la réalisation des
parties combinatoires du circuit. Puis entourez sur le schéma les parties
correspondant à chacune des LUT. Donner les tables de vérités des LUT ainsi
choisies.
LUT 1 LUT 3
A W
AB
B S0
S0
C
S1
H A
Reset
LUT 2
Reset
A
ABC
B S2
C
H
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°1
3. Mapping technologique : configuration des LEs (Logic Element) : Le FPGA qui
est ciblé pour ce circuit à des éléments logiques configurables classiques
contenant une LUT à 4 entrées, une chaine de propagation rapide de la retenue
et une bascule D. Sur les schémas d’éléments logiques donnés sur la feuille
suivante surlignez les lignes utilisées pour configurer chacun des éléments
logiques nécessaires au circuit. Faites clairement apparaitre le nom des signaux
déclarés dans la description VHDL.
Aè
Bè
Hè
Cè
S0
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°1
3. Mapping technologique : configuration des LEs (Logic Element) : Le FPGA qui
est ciblé pour ce circuit à des éléments logiques configurables classiques
contenant une LUT à 4 entrées, une chaine de propagation rapide de la retenue
et une bascule D. Sur les schémas d’éléments logiques donnés sur la feuille
suivante surlignez les lignes utilisées pour configurer chacun des éléments
logiques nécessaires au circuit. Faites clairement apparaitre le nom des signaux
déclarés dans la description VHDL.
S2
Aè
Bè
Hè
Cè
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°1
3. Mapping technologique : configuration des LEs (Logic Element) : Le FPGA qui
est ciblé pour ce circuit à des éléments logiques configurables classiques
contenant une LUT à 4 entrées, une chaine de propagation rapide de la retenue
et une bascule D. Sur les schémas d’éléments logiques donnés sur la feuille
suivante surlignez les lignes utilisées pour configurer chacun des éléments
logiques nécessaires au circuit. Faites clairement apparaitre le nom des signaux
déclarés dans la description VHDL.
Aè S1 è
S0è
Wè
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°1
4. Placement : Le circuit FPGA (fictif) utilisé a une architecture très simple, comme
montré sur le schéma donné sur la dernière feuille. Décidez du placement des trois
éléments logiques utilisés ainsi que des broches d’entrées - sorties.
LUT 2
LUT 1 LUT 3
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI
TD 3 : FPGA Exercice N°2
5. Routage 1ère phase – établissement des connexions : Au crayon papier
tracer par des lignes droites les connexions entre les différentes
entrées/sorties des éléments configurables et des entrées/sorties du circuit
H
S2 A
B S1
--- LUT 2 S0
--- LUT 1
C
--- LUT 3
Master - 2 : Automatique, Traitement du signal et Informatique industrielle Pr: Mohamed LAMHAMDI