Systèmes numériques Du microprocesseur aux circuits logiques.

Slides:



Advertisements
Présentations similaires
Le Nom L’adjectif Le verbe Objectif: Orthogram
Advertisements

ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
LES NOMBRES PREMIERS ET COMPOSÉS
Électronique de base du processeur
L’électronique numérique
Architecture de machines Le microprocesseur
Machines séquentielles
Licence pro MPCQ : Cours
Distance inter-locuteur
TRAITEMENT PROGRAMME DE L’INFORMATION
ARCHITECTURE INTERNE d’un MICROPROCESSEUR
LYCEE MAGHREB ARABE TECHNIQUE
Les numéros
Plan du cours : 2ème Partie
Jacques Lonchamp IUT Nancy Charlemagne – DUT Informatique 1A
Objectifs Nous allons concevoir une mise en œuvre contenant un noyau de jeu d’instructions. Nous verrons comment l’architecture de jeu d’instructions.
Les éléments de mémorisation
Le codage de l ’information
Les circuits séquentiels
Le Concept du programme enregistré
Le jeu d ’instructions Introduction Un jeu d ’instruction classique
Architecture des Ordinateurs
Architecture des Ordinateurs
Introduction à la logique
Les microprocesseurs A. Objectifs de la séquence:
Architecture de machines Eléments de logique
Présentation Unité de codage
Système d’exploitation : Assembleur
Cours Systèmes logiques
Chapitre 8 : L’architecture de base des ordinateurs
ARCHITECTURE GLOBALE CAPTAGE Traitement DES des données GRANDEURS
MACHINE DE MOORE SYNCHRONE SIMPLIFIÉE Professeur à l'UHP / ESIAL
Architecture et technologie des ordinateurs II
Architecture de base d’un ordinateur
Gestion des Périphériques
Architecture et technologie des ordinateurs II
Cours de physique générale I Ph 11
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
LE MICROPROCESSEUR 8086/8088 Architecture externe du 8086
Titre : Implémentation des éléments finis sous Matlab
LES NOMBRES PREMIERS ET COMPOSÉS
Arithmétique des “computers”
LES SYSTEMES AUTOMATISES
Calculs et écritures fractionnaires
RACINES CARREES Définition Développer avec la distributivité Produit 1
Représentation des systèmes dynamiques dans l’espace d’état
Représentation des systèmes dynamiques dans l’espace d’état
Représentation des systèmes dynamiques dans l’espace d’état
DUMP GAUCHE INTERFERENCES AVEC BOITIERS IFS D.G. – Le – 1/56.
1 Licence dinformatique Algorithmique des graphes Problèmes dordonnancement. Utilisation de ce document strictement réservée aux étudiants de l IFSIC dans.
Architecture et technologie des ordinateurs II
Titre : Implémentation des éléments finis en Matlab
Logique séquentielle.
1 INETOP
ΜP David Saint-Mellion.
L'Unité centrale (CPU) Le CPU doit être rapide (mesuré en temps de CPU) UNITE DE CONTROLE Générer les signaux de control/temps Contrôler le décodage/exécution.
Traitement de différentes préoccupations Le 28 octobre et 4 novembre 2010.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
Formation des commissaires sportifs
Cours de langage d'assemblage
Architecture Des Ordinateurs Microprocesseur Et Mémoire
Advanced Boolean Equation Language
Chapitre 3 :Algèbre de Boole
Le codage des nombres binaires
3-Présentation d’un µP simple
Chapitre 5 : Les circuits séquentiels
1 École des Mines de Saint-Etienne. 158, cours Fauriel Saint-Etienne Cedex 2. tél Fax Cours Architecture des.
Patricia Renault UPMC 2005/2006
Les bascules et registres
Étapes pour la Programmation du 68HC11 I. Écriture du programme dans un fichier *.a11 II. Le programme est compilé (traduit en langage machine) III. Le.
Transcription de la présentation:

Systèmes numériques Du microprocesseur aux circuits logiques

Architecture des Ordinateurs 1- Processeurs 2- Mémoire 3- Entrées-Sorties Control Unit Arith. Logic. Unit mémoire E/S Processeur bus

Organisation de la mémoire Processeur Mémoire Instructions + opérandes E/S Ex: addition du contenu du registre R1 avec la valeur numérique 7 ADD R1,#7 B1 07 1011 0001 0000 0111 bus 1011 0001 0000 0111 data @: adresse

Organisation de la mémoire processeur 0000 0111 1011 0001 1011 0001 @ CD04 0000 0111 1: positionnement de @ 1 R/W 2: bit R/W en lecture reg. d’adresse 1 CD05H CD04H 3: chip select actif 4: données sur le bus D bus d ’adresse CD04 @ CS CD05

Organisation de la mémoire D bus M D0 CS D1 E S 1 X Z processeur Exemple: mémoires de 2 Mo 21 bits d ’adresse CS0 CS7 a23 a22 a21 déc. 3 vers 8 . a20:a0 @M R/W CS1 CS2 CS3 Décodage d ’adresse @ bus

Entrées / Sorties Une adresse est attribuée au E/S (comme à une position mémoire) D bus 3-états processeur mémoire interface d’entrée interface de sortie R/W CS CS CS Décodage d ’adresse @ bus

CPU La mémoire contient la suite d ’instructions constituant le programme langage machine B1 07 assemblage assembleur ADD R1,#7 compilation langage évolué a=a+7 Trois grands types d’instructions: transfert, calcul, branchement LD R1,#4 :chargement de la valeur numérique 4 dans le registre R1 MOV R2,ad1 :chargement du contenu de la mémoire @ad1 dans R2 ADD R1,#4 :addition de la val. num. 4 au contenu de R1, résultat dans R1 SUB R2,R3 :soustrait le contenu de R3 à celui de R2, résultat dans R2 INC R1 :incrémentation de R1 de 1 BR,ad1 :branchement inconditionnel à l’adresse ad1 JE,ad2 :branchement conditionnel (si le bit Z est égal à 1) à l ’adresse ad2

CPU Codage des instructions . . . Code op. Opérande 1 Opérande 2 Les instructions n ’ont pas toujours le même nombre d’opérandes Nécessité de « calculer » l’adresse de la prochaine instruction Code op. @ CD04 Compteur de programme Code op. @ CD07 Code op. @ CD08 Code op. @ CD10

CPU fetch/decode/execute UC ALU recherche de l’instr. lecture de l’instruction décodage de l’instr. éxécution de l’instr. fetch/decode/execute A0 A7 UC A0 07 Lecture de l ’instruction depuis la mémoire (code op.  registre d ’instruction IR ) ALU Incrémentation du compteur de programme (le PC pointe le premier arg. ou la prochaine instr. ) CD06 CD05 CD04 PC B1 IR Décodage de l’instruction par l’UC A7 Exécution lecture des arguments (inc. PC) exécution CD04 M@R MDR B1 B1 07

CPU Instructions de branchement Branchement inconditionnel Jp @ad1 le PC est chargé avec l ’adresse ad1 Branchement conditionnel Jz @ad2 Appel à un sous programme A0 UC ALU flag PC Saut absolu Saut relatif IR M@R MDR Registre de « flag » ... B1 Z N Ov 07 =1 si le résultat délivré par l ’ALU est nul

CPU Sous Programme Appel à un sous programme call @ad1 UC … @15A0 call @2200 @15A1 inst. @15A2 … ALU flag PC IR @2200 inst. @2201 … … @22E1 ret M@R MDR B1 Mémoriser l ’adresse de retour Pile (stack) 07

CPU Sous Programme Sous programmes imbriqués … UC @15A0 call @2200 PC M@R MDR B1 IR UC 07 ALU A0 flag SP pile Sous programmes imbriqués … @15A0 call @2200 @15A1 inst. @15A2 … @2200 inst. @2201 call @2900 … @22E1 ret @2900 inst. … @29A0 ret Mémoire LIFO (last in - first out) Pointeur de pile (stack pointer)

Unité de Controle @CD04 B1 @CD05 07 UC PCread M@Rwr Memoryread Lecture de l ’instruction depuis la mémoire (code op.  registre d ’instruction IR ) UC PCread M@Rwr Memoryread Memorywait PC en lecture M@R en écriture requête à la mémoire acquitement mémoire X SP pile ALU flag Incrémentation du compteur de programme (le PC pointe le premier arg. ou la prochaine instr. ) PC IR M@Rread Xwr ALUcmd(incX) Zread PCwr M@R en lecture registre X en écriture commande de l’ALU registre Z en lecture PC en écriture Z M@R MDR B1 Décodage de l’instruction par l’UC 07 Exécution lecture des arguments (inc. PC) exécution signal généré par l’UC signal d’entrée de l’UC

Unité de Controle Pour chaque instruction, l’UC doit générer des signaux de commande (vers l ’ALU, les registres, la mémoire) en fonction de l’état courant des registres et de stimuli extérieurs UC X SP pile 2 implémentations matérielles ALU flag machine cablée machine microprogrammée PC IR Z M@R MDR B1 07

Numération Représentation d ’un entier: an-1: MSB, bit de poids fort a0: LSB, bit de poids fort 210 = 1024 1 kilo 220 = 1048576 1 Méga Code héxadécimal 1100 0101 1011 0011 C5B3h 1210=Ch

Numération Représentation des entiers négatifs: Module et signe: N = 0an-1….a1a0 -N = 1an-1….a1a0 4 = 0100 -4 = 1100 Complément à 1: N = an-1….a1a0 -N = an-1… a1a0 4 = 0100 -4 = 1011 Complément à 2: N = an-1….a1a0 -N = an-1… a1a0 + 1 = N + 1 4 = 0100 -4 = 1100

Numération Intérêt du C2: Addition binaire: 1 1001 9 +0011 +3 12 1100 La soustraction est un cas particulier de l ’addition: 9 -3 6 1001 +1101 10110

Algèbre de Boole Variable logique: variable appartenant à {0,1} Fonction logique: fonction de variables logiques prenant ses valeurs dans {0,1} Addition: A+B 1 A B Produit: A.B 1 A B 1

Algèbre de Boole Quelques propriétés: (A+B).C = A.C + B.C Théorèmes de de Morgan: A + B = A . B A . B = A + B Généralisation: F(Ai , + , . ) = F(Ai , . , + )

Portes logiques élémentaires Matérialisation des variables logiques : Les variables logiques sont représentées (le plus souvent) par des tensions VH et VL Portes élémentaires: porte NAND Valim A B A A.B B S 1 A B

Portes logiques élémentaires Portes élémentaires: porte NOR Valim A B A+B A B A B 1 S 1 1

Portes logiques élémentaires Simplification d ’une fonction logique Exemple: afficheur 7-segments a N 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 DCBA 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 traduction visuelle de nombres écrits en binaire sur un afficheur comportant 7 DEL f b g e c d le décodeur est un circuit qui active les segments de a à g en fonction du code de N BA DC 00 01 11 10 table de Karnaugh: 00 01 11 10 1 1 1 1 1 1 x x x x 1 1 x x

Portes logiques élémentaires Simplification d ’une fonction logique BA DC 00 01 11 10 a = 00 01 11 10 1 1 1 1 1 1 x x x x 1 1 x x situation jamais atteinte simplification possible:

Portes logiques élémentaires Simplification d ’une fonction logique BA DC 00 01 11 10 a = 00 01 11 10 1 1 1 1 1 1 1 1 1 x x x x Adjacences dans la table de Karnaugh 1 1 1 x x DCBA + DCBA= DCA DB DCB DCA

Paramètres électriques et temporels Définition des niveaux logiques Rappelons le circuit de l ’inverseur CMOS Valim La caractéristique de transfert de l ’inverseur est donné par (série HC): Vs Valim E S Ve Valim

Paramètres électriques et temporels Définition des niveaux logiques Vs Valim A A A vs1 =ve2 ve1 ve2 vs2 vs2 Ve ve1 Valim vs1 =ve2

Paramètres électriques et temporels Définition des niveaux logiques variation de la tension d ’alimentation Vs Valim A ? A A? ve1 ve2 vs2 vs1 =ve2 vs2 Ve ve1 Valim vs1 =ve2 effet de la température

Paramètres électriques et temporels Définition des niveaux logiques Vs Valim VOHmin A A A ve1 ve2 vs2 VOLmax Ve VILmax VIHmin Valim VOLmax < VILmax et VOHmin > VIHmin

Paramètres électriques et temporels Définition des niveaux logiques valeur minimale de la tension d ’entrée pour que le signal soit vu comme « 1 » valeur maximale de la tension d ’entrée pour que le signal soit vu comme « 0 » dans les conditions du test le circuit assure cette tension

Paramètres électriques et temporels Courants de sortie Valim Valim IOH S=0 E=0 E=1 S=1 IOL

Paramètres électriques et temporels Valim Valim Valim Courants de sortie E S E S charge t vs Valim IOH Courant statique  0 Consommation de courant en commutation E 1 =1 =0 0 =0 S =0 =1 =1 t vs IOL

Paramètres électriques et temporels Courants de sortie courant maximal délivré par l ’alimentation au repos courants minimaux fournis à la charge pendant les transitions

Paramètres électriques et temporels Paramètres temporels E S condition de charge E t tp: temps de propagation tt: temps de transition S tf t tpHL tpLH

Paramètres électriques et temporels Paramètres temporels écart relatif maximal

Quelques fonctions combinatoires La plupart de ces fonctions sont nécessaires à la réalisation d ’un système à µP, elles existent souvent aussi sous la forme de boitiers standards Comparaison de deux mots binaires

Quelques fonctions combinatoires Générateur de parité Lors du traitement ou de la transmission d'un mot binaire, il peut arriver qu'une erreur sur un des bits intervienne (à la suite d'une variation des tensions d'alimentation ou d'une perturbation). En ajoutant à l'information utile, un bit supplémentaire appelé "bit de parité", il est possible de détecter qu'une erreur s'est produite. Ce bit vaut "1" si le nombre de "1" contenu dans le mot utile est pair: Ex: A7:A0 0 1 1 0 0 1 0 1 Seven Sodd 1 0 A7:A0 0 1 1 0 1 1 0 1 Seven Sodd 1 0 contradiction

Quelques fonctions combinatoires Multiplexeur/Démultiplexeur 1

Quelques fonctions combinatoires Arithmetic and Logic Unit ALU 16 bits registre opérande choix de l ’opérande choix d ’un fonctionnement « en ligne » ou synchronisé bits d ’état sélection de l ’opération retenue entrante sortie 3-états

Quelques fonctions combinatoires Arithmetic and Logic Unit

Logique séquentielle Principe E1 S1 E2 S2 État initial Mémorisation 1 1 1 E1 1 S1 E2 S2 1 État initial Mémorisation

Logique séquentielle Principe E1 S1 E1 1 E2 S1 S2 mém. Table de vérité S1 1 1 E1 1 E2 S1 S2 mém. Table de vérité E2 S2

Logique séquentielle Principe t t Les sorties dépendent des entrées, des états précédents des entrées et des temps de retard dans les circuits

Logique séquentielle Principe S E1 Q T R E2 Table de vérité t T 1 R 1 R E2 1 R Table de vérité t S T 1 R 1 X S 1 X Q 1 t T mém. S t

Logique séquentielle D latch D E1 Q T E2 t Table de vérité T 1 D 1 X Q D 1 X Q 1 mém.

Logique séquentielle D bascule D (D flip-flop) Q T T ’ t t t Table de vérité T ’ t T  1,0 D 1 X Q 1 t T Q mém. t

Logique séquentielle Applications des bascules D D0:Dn Registre parallèle Division de fréquence T t Q D Q t D T Q t

Logique séquentielle J K T Q bascule JK (JK flip-flop) J X 1 K T 0,1, 1 K T 0,1,  état futur Qn Qn-1 mémor. mise à 0 mise à 1 toggle T t K J Q Toggle (J=1 et K=1) Mémor. (J=0 et K=0) Mise à 1 (J=1 et K=0) Mise à 0 (J=0 et K=1) J 1 X K état antérieur Qn-1 état futur Qn

Logique séquentielle Fonctions séquentielles: comptage t t t t 7 1 2 3 1 2 3 Chaque sortie est obtenue à partir de la précédente par une division par 2 de la fréquence

Logique séquentielle Fonctions séquentielles: comptage J Q K T 1 Q0 Q1 7 1 2 3 7 6 4

Logique séquentielle Fonctions séquentielles: comptage Q0 change d ’état à chaque transition de Ck Q1 change d ’état à chaque transition de Ck, si Q0=1 Q1 change d ’état à chaque transition de Ck, si Q0 .Q1 =1 Q0 Q1 Q2 1 J Q K T J Q J Q Ck T T K Q K Q Compteur synchrone

Logique séquentielle Fonctions séquentielles: comptage

Logique séquentielle Fonctions séquentielles: registres D0:Dn Registre parallèle: T Q0:Qn Les données d ’entrée (D0:Dn) sont transmises en sortie (Q0:Qn) à chaque front d ’horloge

Logique séquentielle Fonctions séquentielles: registres 1 1 1 D Q T D 1 1 1 D Q T D Q T Registre à décalage: D Q T Q T