Travaux Pratiques : Circuits Logiques
Introduction Dans le cadre de la seconde partie du cours sur les circuits logiques, nous avons choisi de mettre l'accent sur la technologie de la logique programmable. Nous allons illustrer cette technologie à travers une série de travaux pratiques sur le kit University Program 1 (UP1) et le logiciel de développement Max+Plus II de la société Altera.
Technologies des circuits logiques Afin d'obtenir un circuit logique, un large éventail de technologies et de méthodologies peuvent être utilisées. La figure suivante résume les principales branches de l'arbre "généalogique" des circuits numériques. En partant de la gauche, nous trouvons la logique câblée classique, la logique programmable, les ASICs (Application Specific Integrated Circuits) et enfin les systèmes logiques entièrement configurables.
Full Custom
Standard Logic
Progammable Logic (FPLDs) ASICs
Digital Logic
TTL 74xx
CMOS 4xxx PLDs FPGAs
Gate Arrays
Microprocessor & RAM
Standard Cell
CPLDs
Figure 1 : Les technologies des circuits logiques
La technologie de la logique câblée permet de réaliser des circuits de faible complexité à un coût réduit, en interconnectant des circuits logiques classiques TTL (série 74xx) ou CMOS (série 4xxx). Lorsque la complexité sera plus importante on préférera utiliser des circuits logiques programmables « sur-le-champ » : FPLDs (Field Programmable Logic Devices) du type PLD (Programmable Logic Device) , FPGA (Field Programmable Gate Array) ou CPLD (Complex Programmable Logic Device). Ces technologies permettent de réaliser des circuits logiques en configurant des matrices de portes logiques et de bascules. Les ASICs (Application Specific Integrated Circuit) permettent de réaliser des circuits logiques de hautes performances. Le principe de base de cette technologie est d'utiliser des blocs de circuit déjà synthétisés et de réaliser
Gérard Dray – avril 2001 1
Travaux Pratiques : Circuits Logiques
leur interconnexion en fabriquant un masque spécifique. Cette technologie faisant appel à une étape supplémentaire de fabrication, son coût est assez élevé et ne sera justifiée que pour un volume important de circuits. Pour obtenir des performances élevées, les concepteurs s'orienteront vers des solutions technologiques entièrement configurable à base de circuits VLSI (microprocesseurs, microcontrôleurs, RAM, ROM). La figure suivante représente les caractéristiques de ces différentes technologies en fonction de leur coût et de la durée de développement.
PLDs
ASICs
Full CustomVLSI Design
Speed,Density,Complexity,MarketVolumeneeded forProduct
Engineering Cost, Time to Develop Product
CPLDsFPGAs
Figure 2 : Champ d’application des différentes technologies de circuits logiques
Processus de conception des circuits logiques programmables Le processus de conception d'un circuit logique programmable est décrit sur la figure 3. Ce processus se décompose en quatre phases principales : • Phase 1 - Conception
Cette phase consiste à décrire le circuit sous la forme de schémas électroniques (au niveau porte ou fonctionnel) ou sous la forme de description textuelle en utilisant des langages de description de matériel tel que VHDL.
• Phase 2 - Compilation Cette phase consiste à choisir un circuit logique programmable et à compiler les descriptions obtenues durant la phase précédente en fonction de ce choix.
• Phase 3 - Simulation Durant cette phase le comportement logico-temporel des circuits est simulé afin de contrôler les fonctionnalités et les performances temporelles du circuit final. Pour cela des stimuli d'entrée sont générés et appliqués à la description compilée.
• Phase 4 - Vérification et programmation Durant cette phase le résultat de la compilation est vérifié avant d'être programmer ou téléchargé sur la carte d'application.
Gérard Dray – avril 2001 2
Travaux Pratiques : Circuits Logiques
Conception
Schémasélectroniques
Descriptiontextuelle VHDL
Compilation
Compilateur
Simulation
Chronogramme
Analyselogico-temporelle
Vérification
Programmateur
Carte d'application Figure 3 : Processus de conception d’un circuit logique programmable
Le kit ALTERA University Program Le kit universitaire de la société ALTERA est composé d'une carte d'application UP1 et d'un logiciel de développement MAX+plus II.
La carte d'application Cette carte représentée sur la figure 4 possède deux circuits logiques programmables de type CPLD :
• Un MAX 7000S : EPM7128SLC84-7 • Un FLEX 10K : EPF10K20RC240-4
ainsi que des éléments d'entrée/sortie tel que : • Des boutons poussoirs • Des interrupteurs • Des diodes électroluminescentes • Des afficheurs 7 segments • Une interface de type PS2 • Une sortie vidéo VGA
FLEX_EXPAN_C
FLEX_10K
EPF10K20RC240-4 DAA239837
R
R
Mouse
25.175 MHzCLOCK
FLEX_EXPAN_AFLEX_PB1 FLEX_PB2
D1
D2
D3
D4
D5
D6
D7
D8
D9
D10
D11
D12
D13
D14
D15
D16
DC_IN FLEX_DIGIT
U1
JTAG_OUT
POWER TCK
MAX_SW1 MAX_SW2
EMP7128SLC84-7 BFD329837
R
R
VGAAdapter
P1
P2
P3P4
P9 P10P6P5
P7 P8
EPC
Figure 4 : La carte d’application UP1
Gérard Dray – avril 2001 3
Travaux Pratiques : Circuits Logiques
Boutons poussoirs, diodes électroluminescentes et afficheurs 7 segments Ces éléments sont tous actifs à l’état bas aussi bien en entrée qu’en sortie comme le montre les exemples de la figure 5.
AlteraFlex
Device
+5V +5V+5V
PB1
PB2
LED
MSD LSDa
b
c
d
e
fg
dp
a
b
c
d
e
fg
dp
Figure 5 : Montage des boutons poussoirs, des LED et des afficheurs 7 segments Chaque circuit programmable présent sur la carte possède : deux boutons poussoirs et un afficheur sept segments de deux digits. Dans la suite du TP, nous adopterons pour les segments la notation représentée sur la figure 5.
Les cavaliers de configuration Sur la carte d’application nous pouvons choisir de programmer l’un ou l’autre des deux circuits ou bien les deux en même temps. Dans la suite de ce TP nous choisirons de ne programmer que le circuit FLEX. Aussi nous configurerons les cavaliers présents sur la carte comme indiqué sur la figure suivante.
MAX FLEX
Figure 6 : Configuration des cavaliers
Architecture du MAX 7000S La famille de circuits MAX (Multiple Array matriX) 7000S est une famille de composants CPLD possédant de 600 à 20000 portes. Ce dispositif est configurable en programmant une EEPROM interne. Cette technologie permet donc de conserver la configuration même sans alimentation électrique. Cette famille de circuit contient entre 32 et 256 macro-celulles représentées sur la figure 7. Dans ces macro-celulles, apparaissent les réseaux ET/OU programmables, ainsi qu'une bascule D également programmable. Ces macro-cellules sont combinées en groupe de 16 pour former des LABs (Logic Array Blocks). Ces LABs sont connectés entre eux par le biais d’un PIA (Programmable Interconnect Array). L'architecture générale d'un circuit de la famille MAX 7000S est représentée sur la figure 8.
Gérard Dray – avril 2001 4
Travaux Pratiques : Circuits Logiques
Product-TermSelectMatrix
ClearSelect
Clock/EnableSelect
VCC
PRN
CLRN
ENA
D Q
GlobalClear
GlobalClock
To I/OControl
Block
To PIA
This respresents amultiplexercontrolled by theconfigurationprogram
ProgrammableRegister
36 Signalsfrom PIA
16 ExpanderProduct
Shared LogicExpanders
LAB Local Array
Parallel LogicExpanders(from othermacrocells)
Figure 7 : MAX 7000S – Macro-cellule
Input/GCLK1Input/OE2/GCLK2
Input/OE1
LAB A
Macrocells1-166-
6-16
16
6-16I/O
ControlBlock
6-16I/O Pins
3
LAB C
Macrocells33-486-
6-16
16
6-
I/OControlBlock
6-16I/O Pins
3
LAB B
LAB D
Macrocells17-32
Macrocells49-64
6-16
1
3
6-16
1
3
6-16I/O Pins
6-16I/O Pins
I/OControlBlock
I/OControlBlock
6
6
6
6
PIA
6 OutputInput/GCLRn
6 Output
6-
6-16
6-
6-
Figure 8 : MAX 7000S - Architecture générale
Gérard Dray – avril 2001 5
Travaux Pratiques : Circuits Logiques
Entrées Sorties du MAX 7000 Certaines broches du circuit sont utilisables. Le tableau suivant récapitule les fonctions et les numéros des broches.
Pin Name Pin Type Pin Function of Pin
MSD_dp OUTPUT PIN 68 Most Significant Digit of Seven-segment Display Decimal Point Segment (0 = LED ON, 1 = LED OFF)
MSD_g OUTPUT PIN 67 MSD Display Segment G (0 = LED ON, 1 = LED OFF) MSD_f OUTPUT PIN 65 MSD Display Segment F (0 = LED ON, 1 = LED OFF) MSD_e OUTPUT PIN 64 MSD Display Segment E (0 = LED ON, 1 = LED OFF) MSD_d OUTPUT PIN 63 MSD Display Segment D (0 = LED ON, 1 = LED OFF) MSD_c OUTPUT PIN 61 MSD Display Segment C (0 = LED ON, 1 = LED OFF) MSD_b OUTPUT PIN 60 MSD Display Segment B (0 = LED ON, 1 = LED OFF) MSD_a OUTPUT PIN 58 MSD Display Segment A (0 = LED ON, 1 = LED OFF)
LSD_dp OUTPUT PIN 79 Least Significant Digit of Seven-segment Display Decimal Point Segment (0 = LED ON, 1 = LED OFF)
LSD_g OUTPUT PIN 77 LSD Display Segment G (0 = LED ON, 1 = LED OFF) LSD_f OUTPUT PIN 75 LSD Display Segment F (0 = LED ON, 1 = LED OFF) LSD_e OUTPUT PIN 76 LSD Display Segment E (0 = LED ON, 1 = LED OFF) LSD_d OUTPUT PIN 74 LSD Display Segment D (0 = LED ON, 1 = LED OFF) LSD_c OUTPUT PIN 73 LSD Display Segment C (0 = LED ON, 1 = LED OFF) LSD_b OUTPUT PIN 70 LSD Display Segment B (0 = LED ON, 1 = LED OFF) LSD_a OUTPUT PIN 69 LSD Display Segment A (0 = LED ON, 1 = LED OFF)
PB1 INPUT PIN * Push-Button 1 (non–debounced, 0 = button depressed) PB2 INPUT PIN * Push-Button 2 (non–debounced, 0 = button depressed)
D1..D16 LEDs OUTPUT PIN *
16 Discrete LEDs - D1…D16 (0 = LED ON, 1 = LED OFF)
SW1 & SW2 INPUT PIN *
MAX DIP Switch Inputs - SWxS1...SWxS8 (1 = Open, 0 = Closed)
Clock INPUT PIN 83 25.175Mhz System Clock on low skew Global Clock Line
Prototyping Header
Pins INPUT,
OUTPUT 1-84 Black Prototyping Headers next to MAX chip Numbers are silk-screened on board. Pins 12, 33, 54, 75, and 83 are not available.
* Jumper wires from the switch or LED to the MAX prototyping headers are required to use these devices.
Any available unused MAX header pin can be assigned to this device. Note: A number of other pins are pre-assigned and required for programming, power, and ground connections.
Table 1 : Configuration des broches du MAX 7000S
Gérard Dray – avril 2001 6
Travaux Pratiques : Circuits Logiques
Architecture du FLEX 10K La famille de circuits FLEX (Flexible Logic Element matriX) est une famille de composants possédant de 10000 à 250000 portes. La configuration des circuits de cette famille est réalisée en programmant une SRAM (Static Random Access Memory). Cette technologie impose de maintenir une alimentation électrique pour conserver la programmation des circuits. Cependant, une mémoire de type PROM peut être utilisée pour charger automatiquement la configuration lorsque le dispositif est mis sous tension. Sur la figure 9 est représenté un élément logique FLEX. La partie logique combinatoire est réalisée en utilisant une LUT (LookUp Table). Une LUT est une SRAM très rapide de 16 adresses d'un bit. Cette technique permet de réaliser n'importe quelle fonction logique de 4 entrées et une sortie. Un exemple est donné sur la figure 10. La partie séquentielle d'un élément FLEX est implémentée en utilisant une bascule D configurable.
PRN
CLRNENA
D Q
Programmable Register
DATA1DATA2DATA3DATA4
LABCTRL1LABCTRL2
Chip-WideReset
LABCTRL3LABCTRL4
Look-UpTable(LUT)
CarryChain
CascadeChain
To FastTrackInterconnect
To LAB LocalInterconnect
Clear/PresetLogic
Clock Select
CarryOut
CascadeOut
Register BypassCarry
InCascade
In
Figure 10 : FLEX 10K – architecture d’un élément logique
4 InputLUT
(16 x 1 RAM)
ABCD
F
AB
CD
F
RAM ContentsAddress Data
A B C D F0 0 0 0 00 0 0 1 00 0 1 0 10 0 1 1 00 1 0 0 00 1 0 1 00 1 1 0 10 1 1 1 01 0 0 0 01 0 0 1 01 0 1 0 11 0 1 1 01 1 0 0 11 1 0 1 11 1 1 0 11 1 1 1 1
Figure 11 : FLEX 10K – Utilisation d’une LUT
Gérard Dray – avril 2001 7
Travaux Pratiques : Circuits Logiques
Les éléments logique FLEX sont organisés en blocs de 8 pour former des LABs (Logic Array Block) comme représenté sur la figure 12.
LE1LE1
LE2
LE3
LE4
LE5
LE6
LE7
LE8
Carry-In andCascade-In Column-to-Row
Interconnect
Row Interconnect
Dedicated Inputs &Global Signals
LogicBlockArray(LAB)
4
4
4
4
4
4
4
4
4
8
6 16
4
Carry-Out and Cascade-Out2
2
4
8 24
168
Figure 12 : FLEX 10K – Architecture d’un LAB
I/O Element(IOE)
IOE IOE IOE IOE IOE IOE IOE IOE IOE IOE
IOE IOE IOE IOE IOE IOE IOE IOE IOE IOE
IOE
IOE
IOE
IOE
IOE
IOE
IOE
IOERow
LocalInterconnect
Logic Element(LE)
Logic ArrayBlock (LAB)
EAB
EAB
Logic Array
EmbeddedArray Block(EAB)2K Bits RAM
Row
Figure 13 : FLEX 10K – Architecture générale
Gérard Dray – avril 2001 8
Travaux Pratiques : Circuits Logiques
L'architecture finale de la famille des FLEX 10K est représentée sur la figure 13. Les EABs (Embedded Array Blocks) sont des mémoires de 2048 bits configurables en 256 x 8 bits, 512 x 4 bits, 1024 x 2 bits ou 2048 x 1 bit.
Entrées Sorties du FLEX 10K Certaines broches du circuit sont utilisables. Le tableau suivant récapitule les fonctions et les numéros des broches.
Pin Name Pin Type Pin Function of Pin
MSD_dp OUTPUT PIN 14 Most Significant Digit of Seven-segment Display - Decimal Point Segment (0 = LED ON, 1 = LED OFF)
MSD_g OUTPUT PIN 13 MSD Display Segment G (0 = LED ON, 1 = LED OFF)
MSD_f OUTPUT PIN 12 MSD Display Segment F (0 = LED ON, 1 = LED OFF)
MSD_e OUTPUT PIN 11 MSD Display Segment E (0 = LED ON, 1 = LED OFF)
MSD_d OUTPUT PIN 9 MSD Display Segment D (0 = LED ON, 1 = LED OFF)
MSD_c OUTPUT PIN 8 MSD Display Segment C (0 = LED ON, 1 = LED OFF)
MSD_b OUTPUT PIN 7 MSD Display Segment B (0 = LED ON, 1 = LED OFF)
MSD_a OUTPUT PIN 6 MSD Display Segment A (0 = LED ON, 1 = LED OFF)
LSD_dp OUTPUT PIN 25 Least Significant Digit of Seven-segment Display - Decimal Point Segment (0 = LED ON, 1 = LED OFF)
LSD_g OUTPUT PIN 24 LSD Display Segment G (0 = LED ON, 1 = LED OFF)
LSD_f OUTPUT PIN 23 LSD Display Segment F (0 = LED ON, 1 = LED OFF)
LSD_e OUTPUT PIN 21 LSD Display Segment E (0 = LED ON, 1 = LED OFF)
LSD_d OUTPUT PIN 20 LSD Display Segment D (0 = LED ON, 1 = LED OFF)
LSD_c OUTPUT PIN 19 LSD Display Segment C (0 = LED ON, 1 = LED OFF)
LSD_b OUTPUT PIN 18 LSD Display Segment B (0 = LED ON, 1 = LED OFF)
LSD_a OUTPUT PIN 17 LSD Display Segment A (0 = LED ON, 1 = LED OFF)
FLEX_switch_1 INPUT PIN 41 FLEX DIP Switch Input 1 (1 = Open, 0 = Closed)
FLEX_switch_2 INPUT PIN 40 FLEX DIP Switch Input 2 (1 = Open, 0 = Closed)
FLEX_switch_3 INPUT PIN 39 FLEX DIP Switch Input 3 (1 = Open, 0 = Closed)
FLEX_switch_4 INPUT PIN 38 FLEX DIP Switch Input 4 (1 = Open, 0 = Closed)
FLEX_switch_5 INPUT PIN 36 FLEX DIP Switch Input 5 (1 = Open, 0 = Closed)
FLEX_switch_6 INPUT PIN 35 FLEX DIP Switch Input 6 (1 = Open, 0 = Closed)
FLEX_switch_7 INPUT PIN 34 FLEX DIP Switch Input 7 (1 = Open, 0 = Closed)
FLEX_switch_8 INPUT PIN 33 FLEX DIP Switch Input 8 (1 = Open, 0 = Closed)
PB1 INPUT PIN 28 Push-Button 1 (non–debounced, 0 = button depressed)
PB2 INPUT PIN 29 Push-Button 2 (non–debounced, 0 = button depressed)
Horiz_Sync OUTPUT PIN 240 VGA Video Signal - Horizontal Synchronization
Vert_Sync OUTPUT PIN 239 VGA Video Signal - Vertical Synchronization
Blue OUTPUT PIN 238 VGA Video Signal - Blue Video Data
Green OUTPUT PIN 237 VGA Video Signal - Green Video Data
Red OUTPUT PIN 236 VGA Video Signal - Red Video Data
PS2_CLK BIDIRECTIONAL 30 Clock line for PS/2 Mouse and Keyboard
PS2_DATA BIDIRECTIONAL 31 Data line for PS/2 Mouse and Keyboard
Clock INPUT PIN 91 25.175 MHz System Clock on low skew Global Clock Line
Table 2 : Configuration des broches du FLEX 10K
Gérard Dray – avril 2001 9
Travaux Pratiques : Circuits Logiques
Le logiciel MAX+PLUS II Voici comment se présente le logiciel Max+plus II de la société Altera lors du lancement du programme :
Figure 14 : Fenêtre d’accueil du logiciel ALTERA MAX+plus II
Ce logiciel permet la programmation des circuits programmables Altera. La programmation d’un circuit en utilisant le logiciel MAX+plus II se décompose en 4 phases : 1. saisie de la description du circuit. Pour cela 3 outils sont utilisables :
• description sous la forme d’un schéma électronique, • description textuelle en utilisant un langage de programmation (VHDL
ou AHDL), • description sous la forme de chronogramme.
2. vérification de la description par compilation du circuit, 3. vérification du bon fonctionnement de la description par simulation logico-
temporelle. A ce stade, il peut-être nécessaire de reprendre à la 1ère phase, 4. programmation du circuit physique. Nous traiterons ces phases en détail à travers les différents travaux pratiques.
Découverte de l'environnement de développement Nous allons découvrir, étape par étape, le processus de développement d’un circuit logique à travers un exemple très simple de programmation d’une porte ou exclusif. Les entrées de la porte seront connectées aux boutons poussoir et la sortie sera affichée sur le point de l’afficheur sept segments Démarrez le logiciel MAX+plus II 9.23 Baseline
Gérard Dray – avril 2001 10
Travaux Pratiques : Circuits Logiques
Créez un nouveau fichier de schéma logique. Menu : File 4 New…
Dessiner le schéma d’une porte ou exclusif en utilisant les bibliothèques de portes existantes.
En utilisant la souris, tracez les connexions entre les portes. En double cliquant sur les entrées et la sortie donnez un nom aux connecteurs : E1, E2 et S.
Nous allons maintenant créer un nouveau symbole à partir de notre schéma. Menu : File 4 Create Default Symbol Puis, Menu : File Edit Symbol
Gérard Dray – avril 2001 11
Travaux Pratiques : Circuits Logiques
Créez un nouveau projet : test_portexor. Menu : File 4 Project 4 Name…
Choisir le circuit de destination : FLEX 10K EPF10K20RC240-4 Menu : Assign 4 Device…
Nous allons maintenant utiliser le symbole produit précédemment. Pour cela créez un nouveau fichier graphique et insérez le symbole portexor. Nous allons ajouter un inverseur à la sortie de notre schéma pour que la diode électroluminescente qui sera connectée s’allume pour un 1 logique et s’éteigne pour un 0 logique. Pour pouvoir connecter notre porte aux boutons poussoirs et aux LED, nous rajoutons des entrées et des sorties à notre schéma. En double cliquant sur les entrées et la sortie donnez un nom aux connecteurs : PB1, PB2 et LED.
Gérard Dray – avril 2001 12
Travaux Pratiques : Circuits Logiques
Spécifiez sur quelles broches du circuits seront réellement connectés les éléments PB1, PB2 et LED : PB1 sur la broche 28 du circuit FLEX PB2 sur la broche 29 du circuit FLEX LED sur la broche 14 du circuit FLEX Menu : Assign 4 Pin/Location/Chip… Nous allons maintenant sauvegarder et compiler notre projet. Menu : File 4 Project 4 Save & Compile
Gérard Dray – avril 2001 13
Travaux Pratiques : Circuits Logiques
Pour vérifier si notre schéma fonctionne correctement, nous allons le simuler. Pour cela nous devons dans un premier temps générer les stimuli d’entrée sous la forme de chronogrammes. Menu : File 4 New… Nous allons maintenant importer les entrées et les sorties à partir du schéma compilé. Menu : Node 4 Enter Nodes from SNF…
Nous pouvons maintenant spécifier les stimuli d’entrée sous la forme de chronogrammes. Sélectionner la ligne de BP1, et avec le bouton droit de la souris ouvrir le menu contextuel et choisir pour ce signal un compteur binaire avec un coefficient multiplicateur de 1. Faire de même pour la ligne PB2 en choisissant un facteur 2.
Gérard Dray – avril 2001 14
Travaux Pratiques : Circuits Logiques
Choisissez une zone d’affichage de 0 à 500ns. Menu : View 4 Time Range…
Lancez la simulation. Menu : MAX+plus II 4 Simulator
Vous pouvez observer le résultat de la simulation sur le signal de sortie LED.
Nous pouvons maintenant estimer les délais de propagation des signaux dans notre circuit. Menu :MAX+plus II 4 Timing Analyzer
Gérard Dray – avril 2001 15
Travaux Pratiques : Circuits Logiques
Nous pouvons également obtenir une représentation graphique de l’architecture du circuit obtenu. Menu : MAX+plus II 4 Floorplan Editor
Enfin nous pouvons programmer le circuit FLEX. Menu : MAX+plus II 4 Programmer Choisissez le dispositif ByteBlaster comme moyen de programmation. Menu : Options 4 Hardware Setup … Choisissez le circuit à programmer et le fichier binaire à télécharger. Menu : JTAG 4 Multi-Device JTAG Chain Setup …
Gérard Dray – avril 2001 16
Travaux Pratiques : Circuits Logiques
Cliquez sur Configure et vérifiez le fonctionnement de la programmation sur la carte.
Exercices Appliquez les mêmes étapes pour synthétiser les éléments suivants :
1. Bascule RS asynchrone 2. Bascule RS synchrone 3. Bascule D 4. Bascule D sensible sur front descendant 5. Bascule D sensible sur front montant 6. Bascule D sensible sur front descendant avec entrées de forçage 7. Bascule D sensible sur front montant avec entrées de forçage 8. Registre à décalage de 8 bits avec entrée série 9. Registre à décalage de 8 bits avec entrée parallèle et série
Projet L’objectif de ce projet est de réaliser un dé électronique (8 nombres aléatoires) en utilisant le circuit CPLD FLEX présent sur la carte UP1. Le cahier des charges de ce projet est le suivant :
• Un nombre aléatoire sera généré à chaque pression sur le bouton PB1. • Tant que le bouton PB1 sera pressé, ce nombre sera visualisé sur le
digit de poids fort de l’afficheur sept segments. • Quand le bouton PB1 sera relâché ce nombre sera mémorisé sur le digit
de poids faible de l’afficheur sept segments et le digit de poids fort sera effacé.
• Un générateur de nombres pseudo-aléatoires sera développé en utilisant un « Linear feedback shift register » (LFSR)
• La valeur initiale du générateur (seed) sera initialisée sur les micro-interrupteurs.
• Une pression sur le bouton PB2 réinitialisera le générateur.
Gérard Dray – avril 2001 17