Abdeslam MOKRANI LIN Groupe 2

Documents pareils
Les opérations binaires

IFT2880 Organisation des ordinateurs et systèmes

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

Représentation des Nombres

Système binaire. Algèbre booléenne

VIII- Circuits séquentiels. Mémoires

QUESTION 1 {2 points}

Algèbre binaire et Circuits logiques ( )

Licence Sciences et Technologies Examen janvier 2010

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Logiciel de Base. I. Représentation des nombres

IFT1215 Introduction aux systèmes informatiques

IV- Comment fonctionne un ordinateur?

V- Manipulations de nombres en binaire

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Conversion d un entier. Méthode par soustraction

Représentation d un entier en base b

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

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

Organisation des Ordinateurs

Calculons avec Albert!

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

2.4 Représentation graphique, tableau de Karnaugh

Informatique Générale

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Atelier C TIA Portal CTIA04 : Programmation des automates S7-300 Opérations numériques

Conception de circuits numériques et architecture des ordinateurs

La mémoire. Un ordinateur. L'octet. Le bit

ProCod. Manuel d utilisation. Software de programmation pour codeurs absolus TWK modèles CRF et DAF CRF DF 08 / 10

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

LA GESTION COMMERCIALE DES VEHICULES

Les fonctions logiques

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

Conception de circuits numériques et architecture des ordinateurs

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

Le multiplexage. Sommaire

DU BINAIRE AU MICROPROCESSEUR - D ANGELIS CIRCUITS CONFIGURABLES NOTION DE PROGRAMMATION

SPF FIN. Patris Spécification de Use Case: 15-UC01 Obtenir de l'information patrimoniale. Version 1.1

COMPTABILITÉ EN LIGNE MANUEL DU MODULE BANCAIRE

Systemesdigitaux. Cours 5

ASR1 TD7 : Un microprocesseur RISC 16 bits

Introduction à l architecture des ordinateurs. Adrien Lebre Décembre 2007

Logique séquentielle

Série D65/D75/D72 Afficheurs digitaux modulaires

Architecture : Circuits numériques et éléments d architecture

TD Architecture des ordinateurs. Jean-Luc Dekeyser

Le chiffre est le signe, le nombre est la valeur.

Concevoir son microprocesseur

DM 1 : Montre Autoquartz ETA

TD 1 - Transmission en bande de passe

Cours Informatique 1. Monsieur SADOUNI Salheddine

RESUME DE COURS ET CAHIER D'EXERCICES

Factorisation Factoriser en utilisant un facteur commun Fiche méthode

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

Programmation assembleur : aperçu

Chapitre 6. Fonction réelle d une variable réelle

Electronique Numérique

Introduction à l'informatique. Vincent Boyer et Jean Méhat

module Introduction aux réseaux DHCP et codage Polytech / 5

avec des nombres entiers

Chapitre 1 I:\ Soyez courageux!

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

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

Microprocesseur + Logiciel

Algorithme. Table des matières

Assembleur. Faculté I&C, André Maurer, Claude Petitpierre

Préparez la rentrée!

Bases de données documentaires et distribuées Cours NFE04

Chap 4: Analyse syntaxique. Prof. M.D. RAHMANI Compilation SMI- S5 2013/14 1

TP 2 Réseaux. Adresses IP, routage et sous-réseaux

Architecture des ordinateurs Introduction à l informatique

Chapitre 10 Arithmétique réelle

a) b)

LES CARACTERISTIQUES DES SUPPORTS DE TRANSMISSION

Architecture matérielle des systèmes informatiques

Nouveau Barème W.B.F. de points de victoire 4 à 48 donnes

Tout savoir sur le matériel informatique

I- Définitions des signaux.

CHAPITRE 1. Suites arithmetiques et géometriques. Rappel 1. On appelle suite réelle une application de

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

L AUTOMATISME LE SIGNAL

LA MESURE INDUSTRIELLE

IN Cours 1. 1 Informatique, calculateurs. 2 Un premier programme en C

UFR de Mathématiques et Informatique Année 2009/2010. Réseaux Locaux TP 04 : ICMP, ARP, IP

IMAGES NUMÉRIQUES MATRICIELLES EN SCILAB

UE Programmation Impérative Licence 2ème Année

Service des ressources informatiques - Conseil Scolaire de District Catholique Centre-Sud Page 1

Les équations différentielles

Assembleur i8086. Philippe Preux IUT Informatique du Littoral. Année universitaire 95 96

Bac Blanc Terminale ES - Février 2011 Épreuve de Mathématiques (durée 3 heures)

CORRIGE LES NOMBRES DECIMAUX RELATIFS. «Réfléchir avant d agir!»

Architecture de l ordinateur

Programmation linéaire

Le codage informatique

LOGICIEL KIPICAM : Manuel d installation et d utilisation

Information. BASES LITTERAIRES Etre capable de répondre à une question du type «la valeur trouvée respecte t-elle le cahier des charges?

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

Demande d admission au Centre pédagogique Lucien-Guilbault Secteur primaire

2. Couche physique (Couche 1 OSI et TCP/IP)

Précision d un résultat et calculs d incertitudes

Transcription:

Abdeslam MOKRANI LIN Groupe 2 L objectif de ce projet est la réalisation d un circuit permettant d effectuer les deux opérations, addition et soustraction, sur des nombres codés en BCD. Dans le circuit final, on pourra entrer les digits des deux opérandes, ainsi que l opération codée sur quatre bits, séquentiellement en utilisant un bus de quatre bits. L opération est ensuite lancée, le résultat et éventuellement une erreur sont affichés On se limitera sur des nombres positifs ayant le même nombre de digits, un calcul sur deux digits sera présenté. La soustraction de deux nombres générera une erreur si le résultat n est pas positif. Le travail réparti en deux étapes. Dans la première étape on réalise un composant combinatoire permettant d effectuer l opération, les deux opérandes et l opération sont alors entrés en parallèle. La deuxième étape consiste à combiner le composant précédant avec un circuit séquentiel, qui permet de saisir les données nécessaires en série, et de les diriger convenablement vers les entrées parallèles du premier composant. Tous les circuits élémentaires ainsi que le circuit final sont réalisés à l aide du logiciel DigLog, et sauvegardés dans un seul fichier (projet.lgf). Des circuits de tests seront réaliser pour vérifier au fur et à mesure le bon fonctionnement des composants (fichier tests.lgf ).

1. Première étape L addition ou la soustraction de deux nombres décimaux s effectue en additionnant ou soustrayant respectivement deux à deux leurs digits de même poids en partant du poids le plus faible. Si une retenue est générée alors elle sera prise en compte dans le calcul des deux digits suivants s ils existent, affichée sinon. Aucune retenue dans le calcul initial (sur les digits de poids le plus faible). Etant donné que le système électronique utilisé est binaire, chaque digit est alors représenté par un code binaire, le code BCD. Le calcul sur deux digits est alors basé sur des opérations binaires sur leurs codes. Or le code des dix digits possible ( 0,..,9 ) corresponds exactement à leurs valeurs en binaire, donc additionner ou soustraire deux digits où le résultat est représenter par un seul digit (sans retenu générée) revient à additionner ou soustraire leurs deux codes. Il ne restera alors que de résoudre le cas ou une retenue est générée. On va d abord aborder l addition de deux digits pour terminer par réalisez un composant qui calcul le code BCD du digit résultat et éventuellement une retenue. Le même travail sera réalisé pour la soustraction. 1.1. Addition BCD 1.1.1. Additionneur binaire à un bit Demi-Additionneur L addition de deux bits A et B sans retenue entrante (demi-additionneur) est résumée par la table de Karnaugh suivante, où S est le bit résultat et RS la retenue sortante.

Voici le composant correspondant au demi-additionneur réalisé avec DigLog. Additionneur complet (avec retenue entrante) Si une retenue entrante RE existe, alors on doit l additionner au résultat S de l addition des deux bits A et B en utilisant le demi-additionneur précédent. La retenue sortante est alors la somme de la nouvelle retenue RS (addition de RE et S) et l ancienne RS (addition de A et B). Or si l ancienne retenue RS est à 1, alors la somme S = A + B est à 0 (d après la table Karnaugh précédente), soit la nouvelle retenue RS ( de RE + S = RE + 0) à 0. Autrement dit, les deux retenues RS et RS ne peuvent être à 1 en même temps, donc la retenue de l additionneur complet est simplement égale à RS+RS (ou logique). Voici le schéma du circuit de ce composant.

Autre conception. En partant directement du cas où une retenue entrante existe, la table de Karnaugh mène au circuit suivant. On remarque que cette nouvelle version utilise plus de portes logique que l ancienne, on choisit donc l ancienne version. 1.1.2. Additionneur quatre bits Un digit est codé sur 4 bits, on doit donc réaliser un module permettant d additionner deux nombres binaires codés sur 4 bits. Pour cela, il suffit d utiliser 4 additionneurs à un bits, pour additionner les quatre pairs de bits de même poids en s assurant du passage de la retenue. Une éventuelle retenue entrante est prévue ainsi qu une retenue de sotie.

Voici le schéma d un tel composant réalisé avec DigLog. 1.1.3. Additionneur BCD à un digit soit deux digits D1 et D2, si en additionnant D1 et D2 on obtient un digit DS sans retenue (DS<10), le code BCD de DS est le résultat d addition binaire à quatre bits des codes BCD de D1 et D2. Dans ce cas on utilise l additionneur réalisé précédemment (Ceci correspond à 50% des cas). Sinon, l addition binaire renvoie un résultat S ne correspondant pas à un digit (10 S < 16) ou bien un résultat S avec une retenue si S 16. La valeur de S ne correspond donc pas au code BCD du digit résultat, on dit qu il y a eu un dépassement. Il faut donc réaliser une conversion vers le bon code.

Détection du dépassement Voici la table de Karnaugh pour détecter le cas où 10 S < 16 avec A, B, C et D respectivement les bits du poids le plus fort au plus faible de S. Si RS est la retenue sortante de l addition, alors il y a dépassement si RE ou Dep1, soit RE+AB+AD. Correction Si un dépassement a eu lieu, alors on doit décaler le résultat de six pour omettre les six valeurs ne correspondant pas à des codes BCD ( 1010 b.. 1111 b ). Il suffit donc d ajouter la valeur 6 ( 0110 b ). Exemples : 5 + 4 = 0101 b + 0100 b = 1001 b = 9 ( pas de dépassement). 5 + 7 = 0101 b + 0111 b = 1110 b ( dépassement car 1110 b n est pas un code BCD) 1110 b + 0110 b = 0010 b avec une retenue soit 3 avec une retenue, ce qui correspond au résultat désiré. Pour ajouter la valeur 6, on doit utiliser un second additionneur à quatre bits où le premièr opérande est le résultat de l addition, et l autre la valeur 6 s il y a dépassement, 0 sinon.

Le tout est résumé par le circuit suivant qui définit le module d addition BCD. 1.2. Soustraction BCD Un premier choix de conception revient à convertir le code du digit à soustraire à son complément à deux, puis l additionner avec le code de l autre digit (additionneur quatre bits). On teste si le résultat est positif ( absence de retenue ). Si oui, alors le calcul est finit. Sinon, le calcul réalisé est la négation de la différence des deux digits codé en complément à deux, on doit donc faire une correction vers la valeur qui code de digit résultant de la soustraction et générer une retenue. Toutefois, on préfère une conception avec des soustracteurs binaires, car ceci utilisera moins de portes logiques (pas de complément à deux). On va donc reprendre exactement les mêmes étapes que pour l addition.

1.2.1. Soustracteur à un bit Demi-soustracteur à un bit Table de Karnaugh : Circuit : Soustracteur complet Comme pour l addition, on déduit le circuit suivant pour la soustraction avec retenue entrante.

1.2.2. Soustracteur quatre bits Le circuit suivant définit le module de soustraction binaire sur quatre bits. 1.2.3. Soustracteur BCD Par un raisonnement similaire à celui de l addition BCD, on déduit qu une soustraction de deux digits avec le soustracteur à quatre bits est valide si aucune retenue n est générée (pas de dépassement de 10 car il s agit d une soustraction). Dans le cas contraire, on doit soustraire du résultat obtenu la valeur 6 et générer une retenue (cela revient exactement à additionner le premier opérande avec dix puis effectuer la soustraction, mais cela est beaucoup plus coûteux en porte logiques).

Voici le circuit d un tel composant. On remarque que ce circuit est plus simple que celui de l addition sur quatre bits, cela s explique par le fait qu en soustraction on ne traite pas les résultats négatifs. 1.3. Le circuit de control Le circuit de control permet de choisir entre deux résultats calculés (addition ou soustraction), un résultat prend 5 bits, la valeur du digit résultant sur 4 bits et la retenue. Ce circuit correspond tout simplement à un multiplexeur avec une entrée de commande à un bit, qui code les deux chois possibles.

Voici le circuit correspondant.

On combine le circuit de control précédent avec un additionneur BCD et un soustracteur BCD pour obtenir un seul composant permettant de réaliser les deux opérations au choix.

Voici circuit qui utilise deux composants d addition et soustraction BCD. Il permet de réaliser une opération sur deux digits. La retenue du calcul sur les digits du poids faible est bien transmise au calcul sur les digits suivants. Si après une soustraction une retenue est générée, alors le résultat est négatif, on affiche alors une erreur. On peut avoir un résultat sur 3 digits dans le cas d une addition, le digit des centaines est alors la retenue sortante.

1. Second étape Pour pouvoir sauvegarder les opérandes et opération entrées en série, on a besoin de registre de sauvegarde réalisé à l aide de bascule D. Voici les circuits correspondants.

Pour sauvegarder les données entrées en série, on doit réaliser un circuit qui commande les entrées des registres pour autoriser l écriture. Voici le circuit de commande suivi du circuit final d adition et soustraction BCD.