Conception de circuits numériques et architecture des ordinateurs

Documents pareils
Conception de circuits numériques et architecture des ordinateurs

Conception de circuits numériques et architecture des ordinateurs

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

IFT1215 Introduction aux systèmes informatiques

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

Vers l'ordinateur quantique

QUESTION 1 {2 points}

Système binaire. Algèbre booléenne

GPA770 Microélectronique appliquée Exercices série A

Logique séquentielle

ELP 304 : Électronique Numérique. Cours 1 Introduction

Informatique Générale

I- Définitions des signaux.

CH.6 Propriétés des langages non contextuels

Enregistrement et transformation du son. S. Natkin Novembre 2001

CHAPITRE VI ALEAS. 6.1.Généralités.

Le codage informatique

3. SPÉCIFICATIONS DU LOGICIEL. de l'expression des besoins à la conception. Spécifications fonctionnelles Analyse fonctionnelle et méthodes

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Commande Prédictive des. Convertisseurs Statiques

Resolution limit in community detection

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Conversion d un entier. Méthode par soustraction

Les portes logiques. Voici les symboles des trois fonctions de base. Portes AND. Portes OR. Porte NOT

Affichage de la date d'exigibilité sur les documents FAQ INV 011

Exécution des instructions machine

On distingue deux grandes catégories de mémoires : mémoire centrale (appelée également mémoire interne)

UNIVERSITE D'ORLEANS ISSOUDUN CHATEAUROUX

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)

La Certification de la Sécurité des Automatismes de METEOR

Master d Informatique M1 Université Paris 7 - Denis Diderot Travail de Recherche Encadré Surf Bayesien

Annexe 6. Notions d ordonnancement.

Machines virtuelles Cours 1 : Introduction

1.1 L EXPLORATEUR WINDOWS

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

Codage d information. Codage d information : -Définition-

Représentation des Nombres

Objets Combinatoires élementaires

Table des matières. I Mise à niveau 11. Préface

ASR1 TD7 : Un microprocesseur RISC 16 bits

Bureau N301 (Nautile)

Dossier Logique câblée pneumatique


Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

6. Hachage. Accès aux données d'une table avec un temps constant Utilisation d'une fonction pour le calcul d'adresses

I.1- DÉFINITIONS ET NOTIONS DE BASE

Brique BDL Gestion de Projet Logiciel

Acropole Acropole Gestion du courrier - Archivage

Cours d Informatique

TP Codage numérique des caractères. Un ordinateur ne manipule que des 0 et des 1 : Comment alors code-t-il du texte?

Plus courts chemins, programmation dynamique

ALGORITHME GENETIQUE ET MODELE DE SIMULATION POUR L'ORDONNANCEMENT D'UN ATELIER DISCONTINU DE CHIMIE

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

Représentation d un entier en base b

Cours de Master Recherche

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Jeux de caracte res et encodage (par Michel Michaud 2014)

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

Manipulations du laboratoire

Activité 4. Tour de cartes Détection et correction des erreurs. Résumé. Liens pédagogiques. Compétences. Âge. Matériels

INTRODUCTION AUX SYSTEMES D EXPLOITATION. TD2 Exclusion mutuelle / Sémaphores

Les diagrammes de modélisation

Analyse des Besoins (Spécifications)

Cours Informatique 1. Monsieur SADOUNI Salheddine

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Evaluation de la conformité du Système de validation Vaisala Veriteq vlog à la norme 21 CFR Part 11

Architecture des ordinateurs

Mini_guide_Isis.pdf le 23/09/2001 Page 1/14

1 Introduction au codage

J AUVRAY Systèmes Electroniques TRANSMISSION DES SIGNAUX NUMERIQUES : SIGNAUX EN BANDE DE BASE

ADÉQUATION ALGORITHME-ARCHITECTURE APPLIQUÉE AUX CIRCUITS RECONFIGURABLES

Partie 1. Professeur : Haouati Abdelali. CPGE Lycée Omar Ibn Lkhattab - Meknès haouaticpge@gmail.com

Architecture des ordinateurs. Robin FERCOQ

Pourquoi l apprentissage?

Journées MATHRICE "Dijon-Besançon" DIJON mars Projet MySafeKey Authentification par clé USB

Introduction à l étude des Corps Finis

Utiliser les supports d'exemplaires

L hameçonnage de type PUMP & DUMP. -C est quoi? -Comment se fait la propagation? -Comment l identifier -Micro caps & Penny stocks -Autres

LES TYPES DE DONNÉES DU LANGAGE PASCAL

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

Algèbre binaire et Circuits logiques ( )

Contexte et motivations Les techniques envisagées Evolution des processus Conclusion

Livrable 2.1 Rapport d analyse et de restructuration de code monothread des modules P, T, Q et F de l encodage MPEG-4 AVC

Théorie et Codage de l Information (IF01) exercices Paul Honeine Université de technologie de Troyes France

Programmation linéaire

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

Patentamt JEuropaisches. European Patent Office Numéro de publication: Office européen des brevets DEMANDE DE BREVET EUROPEEN

Chapitre 1 I:\ Soyez courageux!

Mini_guide_Isis_v6.doc le 10/02/2005 Page 1/15

MODELES DE DUREE DE VIE

L AUTOMATISME LE SIGNAL

CODAGE DES SMS. 2 Commandes «AT» 25 3 Matériels utilisés 55 4 Interfacer un téléphone GSM 73 5 Réalisations électroniques 101

Programmation assembleur : aperçu

Chapitre 10 Arithmétique réelle

Introduction aux algorithmes répartis

1 Démarrer L écran Isis La boite à outils Mode principal Mode gadget Mode graphique...

Transcription:

Conception de circuits numériques et architecture des ordinateurs Frédéric Pétrot Année universitaire 2016-2017

Structure du cours C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 Codage des nombres en base 2, logique booléenne, portes logiques, circuits combinatoires Circuits séquentiels Construction circuits complexes Micro-architecture et fonctionnement des mémoires Machines à état Synthèse de circuits PC/PO Optimisation de circuits PC/PO Interprétation d'instructions Interprétation d'instructions Interprétation d'instructions Introduction aux caches 2 / 28

Intérêt Intérêt La description du comportement temporel d'un système nécessite un formalisme précis. Dans le cas du matériel, on sait que les opérations doivent se faire dans un ordre donné. 3 / 28

Plan Plan détaillé du cours d'aujourd'hui 1 Machines avec un nombre ni d'états Dénitions Représentations usuelles en matériel Déterminisme 2 Implantation matérielle des machines à états Encodages Structure matérielle 3 Specications 4 / 28

Machines avec un nombre ni d'états Plan 1 Machines avec un nombre ni d'états Dénitions Représentations usuelles en matériel Déterminisme 2 Implantation matérielle des machines à états Encodages Structure matérielle 3 Specications 5 / 28

Machines avec un nombre ni d'états Dénitions Machines à états Machine à états (Finite State Machine, FSM) But en matériel : Décrire de manière synthétique un comportement séquentiel Constituée : d'états, en nombre ni un état est représentatif des changements eectués sur les entrées depuis le démarage du système de transitions entre états ces transitions sont étiquetées par des conditions calculées à partir des entrées d'actions, visibles en sortie ces actions peuvent être associées aux états ou aux transitions entre états 6 / 28

Machines avec un nombre ni d'états Dénitions Machines à états Plus formellement : I est l'alphabet d'entrée O est l'alphabet de sortie S est un ensemble non vide d'états, et s 0 l'état initial Θ est la fonction de transition entre états Θ : I S S Γ est la fonction de sortie Γ : S O pour les machines de Moore Γ : I S O pour les machines de Mealy 7 / 28

Machines avec un nombre ni d'états Représentations usuelles en matériel Graphe de transitions Représentation graphique : FSM souvent représentées sous la forme d'un Graphe de transitions ou State Transition Graph (STG) G(V, A) est un graphe orienté v V est un état, étiqueté avec un nom d'état si un ou plusieurs arcs (v i, v j ) existent dans G, alors a k ij A est une transition, k identiant une transition particulière les transitions a k ij entre états sont étiquetées par des conditions c k ij = t(i ) dépendantes des entrées valeur de sortie notée dans v i pour machines de Moore valeur de sortie notée sur a k ij pour machines de Mealy 8 / 28

Machines avec un nombre ni d'états Représentations usuelles en matériel Exemple de STG Compteur/décompteur modulo 4 entrée : I = {r, i, d} soit rien, incrémente, décrémente états : S = {s 0, s 1, s 2, s 3 } sortie : O = {z, u, d, t}, soit zéro, un, deux, et trois r r i s 0 s 1 z u d i d d i s 3 t d i s 2 d r r 9 / 28

Machines avec un nombre ni d'états Représentations usuelles en matériel Table de transitions Table de transitions ou State Transitions Table (STT) Représentation tabulaire : représentation du graphe G(V, A) sous une forme de table Utile à la synthèse en vue de l'implantation de Θ et Γ forme générale : état courant entrée état futur sortie S0 I0 S1 O0 S0 I1 S2 O3 question : est-ce une machine de Moore ou de Mealy? 10 / 28

Machines avec un nombre ni d'états Représentations usuelles en matériel Exemple de STT Compteur/décompteur modulo 4 état courant entrée état futur sortie s 0 r s 0 z s 0 i s 1 z s 0 d s 3 z s 1 r s 1 u s 1 i s 2 u s 1 d s 0 u s 2 r s 2 d s 2 i s 3 d s 2 d s 1 d s 3 r s 3 t s 3 i s 0 t s 3 d s 2 t 11 / 28

Machines avec un nombre ni d'états Déterminisme Déterminisme : complétude et orthogonalité Contrainte en matériel : Les machines à états sont déterministes : pour un état initial donné et une séquence d'entrées donnée, c'est toujours la même séquence de sortie qui est produite Assuré par deux propriétés sur les arcs sortant d'un état Soit Succ i S l'ensemble des successeurs de s i S complétude : s j Succ i c ij = 1 En d'autres termes, le ou les conditions sur tous les arcs sortant donnent 1 Cela signie que, dans l'état courant, pour toutes les congurations d'entrées, l'état futur est connu 12 / 28

Machines avec un nombre ni d'états Déterminisme Déterminisme : complétude et orthogonalité orthogonalité : s j, s k Succ i Succ i, avec j k, c ij c ik = 0 En d'autres termes, il n'y a pas 2 arcs sortants pour lesquels une combinaison des entrées est vraie Cela signie que pour une conguration des entrées données, un état et un seul est l'état futur Ces deux propriétés seront forcément imposées par l'implantation 13 / 28

Implantation matérielle des machines à états Plan 1 Machines avec un nombre ni d'états Dénitions Représentations usuelles en matériel Déterminisme 2 Implantation matérielle des machines à états Encodages Structure matérielle 3 Specications 14 / 28

Implantation matérielle des machines à états Encodages Encodages Pourquoi : Les alphabets d'entrée et de sortie sont des symboles Le matériel manipule des bits, pas des symboles nécessité d'encoder ces symboles en chaînes de bits Encodage des entrées/sorties souvent imposé par le matériel utilisé avec la FSM Encodage des états étant donnés n états, comment choisir leur représentation binaire? inuence majeure sur la complexité de Θ et Γ 15 / 28

Implantation matérielle des machines à états Encodages Encodage des états Problème : choisir une injection des états vers une chaîne de bits taille b de la représentation binaire : log 2 n b n nombre m d'encodages distincts pour b = log 2 n : m = (2b 1)! 1 (2 b n)!b! m croît très vite toute injection fait l'aaire certaines ont des implantations plus simples que les autres 1. E. J. McCluskey, and S. H. Unger, "A note on the number of internal variable assignments for sequential switching circuits", IRE Trans. on Electronic Computers, vol. EC-8, pp. 439-440, December 1959." 16 / 28

Implantation matérielle des machines à états Encodages Encodage 1 parmi n Ou encore One-Hot coding : b = n Un état est représenté par un unique bit à 1 On note le bit i de la chaîne de bits r i machine dans l'état s i si r i = 1 machine dans un état et un seul j i, r j = 0 état initial : s k pour lequel r k = 1 encodage unique : la permutation des r i ne change pas les équations, seulement les noms Θ simple à calculer : soit Pred i S l'ensemble des prédécesseurs de s i, alors r i = s h Pred i r h c k hi distance de Hamming h = 2 n bits au lieu de log 2 n 17 / 28

Implantation matérielle des machines à états Encodages Encodage logarithmique Ou logarithmic encoding, donc b = log 2 n Un état est représenté par un produit de littéraux (r i ou r i ) quelques exemples : ordre naturel : s 0 0, s 1 1,..., s n 1 n 1 ordre naturel inverse : s 0 n 1, s 1 n 2,..., s n 1 0 tirage aléatoire sans remise quel encodage minimise les équations logiques? il faut essayer les m pour savoir,... non soluble en temps polynômial on se contentera d'une approche intuitive dans les TDs Θ et Γ sont des fonctions de potentiellement tous les r i 18 / 28

Implantation matérielle des machines à états Structure matérielle Structure matérielle in : ensemble des signaux encodant les éléments de I r : ensemble des registres encodant les éléments de S out : ensemble des signaux encodant les éléments de 0 Machine de Moore in n Θ r d q b Γ p out Machine de Mealy in n Θ r d q b Γ p out 19 / 28

Implantation matérielle des machines à états Structure matérielle Synthèse de l'automate in : r : fournie par l'extérieur, uniquement utilisée en entrée de Θ et Γ q b 1 0, sortie de la bascule b bits code l'état courant d b 1 0, entrée de la bascule b bits code l'état futur out : calculée en fonction de l'état courant q b 1 0 in intervient dans les machines de Mealy l'état futur d b 1 0 jamais! 20 / 28

Implantation matérielle des machines à états Structure matérielle Synthèse de l'automate Choix des encodages : exemple du compteur modulo 4 entrées : 3 valeurs codées sur 2 = log 2 3 signaux c = { 1 compte, 0 ne compte pas. p = choix arbitraire : dicté par l' expérience { 1 incrémente, 0 décrémente. sorties : 4 valeurs codées sur 2 = log 2 4 signaux o 1 o 0 {z, u, d, t} = {00, 01, 10, 11} choix arbitraire : dicté par l' expérience car c'est directement l'encodage de la valeur voulue états : 4 états codées sur 2 = log 2 4 signaux {s 0, s 1, s 2, s 3 } = {00, 01, 10, 11} choix minisant la fonction de sortie 21 / 28

Implantation matérielle des machines à états Structure matérielle Synthèse de l'automate Graphe de transitions : c c s 0 00 cp cp s 1 01 cp cp cp cp s 3 11 cp cp s 2 10 c c Synthèse one-hot au tableau 22 / 28

Implantation matérielle des machines à états Structure matérielle Synthèse de l'automate Table de transition : état entrée état sortie courant q 1 q 0 cp futur d 1 d 0 o 1 o 0 s 0 00 r 0 s 0 00 z 00 s 0 00 i 11 s 1 01 z 00 s 0 00 d 10 s 3 11 z 00 s 1 01 r 0 s 1 01 u 01 s 1 01 i 11 s 2 10 u 01 s 1 01 d 10 s 0 00 u 01 s 2 10 r 0 s 2 10 d 10 s 2 10 i 11 s 3 11 d 10 s 2 10 d 10 s 1 01 d 10 s 3 11 r 0 s 3 11 t 11 s 3 11 i 11 s 0 00 t 11 s 3 11 d 10 s 2 10 t 11 23 / 28

Implantation matérielle des machines à états Structure matérielle Synthèse de l'automate Exploitation de la table de transitions : Θ Γ calcul des expressions des d i = t i (q b 1, q b 2,..., q 0, in p 1, in p 2,..., in 0 ), pour i = 0,..., n 1 Machines de Moore, calcul des expressions des o i = g i (q b 1, q b 2,..., q 0 ), pour i = 0,..., n 1 Machines de Mealy, calcul des expressions des o i = g i (q b 1, q b 2,..., q 0, in p 1, in p 2,..., in 0 ), pour i = 0,..., n 1 24 / 28

Implantation matérielle des machines à états Structure matérielle Synthèse de l'automate Mise en uvre sur l'example : d 0 q 1 q 0 q 1 q 0 q 1 q 0 q 1 q 0 c p 1 1 c p 1 1 cp 1 1 cp 1 1 d 1 q 1 q 0 q 1 q 0 q 1 q 0 q 1 q 0 c p 1 1 c p 1 1 cp 1 1 cp 1 1 25 / 28

Specications Plan 1 Machines avec un nombre ni d'états Dénitions Représentations usuelles en matériel Déterminisme 2 Implantation matérielle des machines à états Encodages Structure matérielle 3 Specications 26 / 28

Specications Grâce à des diagrammes de temps Extraction de l'automate : ck e ss se A A B C C D B D A B 27 / 28

Specications À partir de spécications textuelles on cherche à détecter le passage à 1 d'un signal e on cherche à détecter une certaine séquence d'entrée, genre digicode Réponse au tableau 28 / 28