B11&B17 - Étude d'un système numérique But : exemples de codes binaires et prin

B11&B17 - Étude d'un système numérique But : exemples de codes binaires et principes de base du traitement numérique de l'information dans un système à microprocesseur. Réalisation d'un générateur de signaux programmable. 1ère partie : étude générale du système On utilise une carte MC09 (fabricant : SERIElectronique) à microprocesseur type 6809, associé à une carte d'entrée/sortie (ref 003) branchée sur le connecteur 1 à l'aide d'un câble plat en nappe. Remarque : un microcontrôleur intègre en un seul boîtier l'ensemble des éléments de cette carte plus quelques autres (CAN, CNA,...). Le microcontrôleur correspondant au µP 6809 a pour référence µC 6811. Toutefois, dans une première approche des systèmes numériques, il est plus commode d'étudier un système "éclaté" faisant apparaître chaque sous-ensemble de façon distincte. µP 6809 RAM 6116 EPROM 2732 PIA 6821 Afficheurs Adresses Données Clavier Bus Données PIA 6821 VIA 6822 Timer 6840 ACIA 6850 EPROM 2732 connecteur 1 connecteur 2 System User System Bus Adresses Brochage du 6809 : Schéma fonctionnel du 6809 : E F H I N Z V C UAL Acc A Acc B X Y U S PC registre d’instructions registre d’état CC unité de contrôle registres d’adresse compteur programme RESET NMI FIRQ IRQ bus de données bus d’adresses RAM / ROM 8 16 µP R/W H G. Pinson - Physique Appliquée Codage B11-TP / 1 ---------------------------------------------------------------------------------------------------------------------------------------------------------------- ISBN 978-2-9520781-1-5 http://www.syscope.net © G. Pinson, 2011 1) Repérer sur la carte (double face) les différents composants du système : - le clavier constitué d'un pavé numérique matriciel de 16 touches hexadécimales, de 12 touches de fonction et de deux touches spéciales (RST : remise à zéro ; NMI : interruption). - les afficheurs 7-segments hexadécimaux répartis en deux groupes : à gauche, 4 digits pour les adresses ; à droite 2 digits pour les données. - le microprocesseur (abrégé : µP) et le quartz 4MHz qui lui est associé (fréquence horloge système : fµP = 1 MHz ⇔ TµP = 1 µs). - le bus de données et le bus d'adresse. - la mémoire, composée de : - 4 ko de RAM répartie en deux circuits intégrés type 6116 de 2 ko chacun - plusieurs EPROM type 2732 de 4 ko chacune, dont : - une EPROM marquée "MC09" contenant le "système d'exploitation", qui est un ensemble de programmes gérant le clavier, l'affichage, etc. - une EPROM marquée "TS2" contenant certains programmes utilisés en TP. - les interfaces d'entrée/sortie (abrégé : E/S ou IO : Input/Output) : parallèle (PIA 6821 : Parallel Interface Adapter), série (ACIA 6850 : Asynchronous Interface Adapter), temporisateur programmable (PTM : Programmable Timer 6840), etc. - les connecteurs, dont celui de l'alimentation (0/5V). 2) Du point de vue matériel, le µP 6809 comprend notamment : - une Unité Arithmétique et Logique (ALU : Arithmetic and Logic Unit) qui exécutent les opérations booléennes et les calculs numériques. - deux registres de travail ou "accumulateurs" A et B - un compteur programme (PC : Program Counter) - quatre registres d'adresse (X, Y, S, U) - un registre d'état (CC : Code Condition register) contenant un ensemble d'indicateurs binaires ou "drapeaux". Les quatre bits de poids faibles sont : - (b3) N : indicateur de résultat négatif - (b2) Z : indicateur de résultat nul - (b1) V : indicateur de dépassement (V : overflow) - (b0) C : retenue de calcul (C : carry) - quatre entrées d'interruption : RES (RESet), NMI (Non Masquable Interrupt), IRQ (Interrupt Request), FIRQ (Fast IRQ). 3) Utilisation du clavier : NB : notation des nombres : nb entiers notation "Motorola" notation "Intel" (valeur en base 10) base 10 1100 1100 1100 base 2 %1100 b1100 12 base 16 $1100 h1100 4352 - Brancher l'alimentation de la carte. Faire un RESET. - Examen des registres : observer le contenu des registres (clavier : REG puis INC ou DEC). - Examen de la mémoire : lire la mémoire (clavier : MEM) à l'adresse $8000 (clavier : taper 0 0 0 0). Ecrire par exemple $11 à cette adresse (les DELs vertes correspondantes s'allument sur la carte d'E/S). Puis incrémenter (INC) jusqu'à l'adresse $8002 et écrire $48 (DELs rouges). Terminer par clavier : FIN puis RESET. (soit, au clavier : MEM, 8, 0, 0, 0, 1, 1, INC, INC, 4, 8, FIN, RESET) Quelle est la valeur de $11 et de $48 en binaire ? G. Pinson - Physique Appliquée Codage B11-TP / 2 ---------------------------------------------------------------------------------------------------------------------------------------------------------------- ISBN 978-2-9520781-1-5 http://www.syscope.net © G. Pinson, 2011 4) Carte mémoire : a) Convertir sous forme hexadécimale les nombres 16 3, 2 10, 2 12– 1. b) Convertir sous forme décimale les nombres $A000, $1000, $0FFF c) Quelle est la "largeur" (nb bits) du bus de données ? Du bus d'adresse ? d) Quelle est la taille de l'espace adressable total ? Combien de bits sont nécessaires pour adresser 4 ko de mémoire, sachant que : 1 ko = 1024 octets ? e) La RAM débute à l'adresse $0000 . Quelle est l'adresse la plus haute de cette mémoire ? f) L'EPROM système finit à l'adresse $FFFF. Quelle est son adresse la plus basse ? g) Le long d'un axe gradué de $0000 à $FFFF (document réponse), dessiner une carte simplifiée de l'espace adressable (memory map) en précisant l'endroit où se trouvent les différents composants, sachant que : - l'EPROM "TS2" commence à l'adresse $A000 - les I/O (entrées/sorties) sont entre les adresses $8000 et $9FFF h) Schéma électrique (partiel) de l'adressage : celui-ci comprend notamment deux CI 74138 décodeur/démultiplexeur "1 parmi 8" : 16 15 14 13 12 11 10 9 1 2 3 4 5 6 7 8 A13 A14 A15 16 15 14 13 12 11 10 9 1 2 3 4 5 6 7 8 A10 A11 A12 EPROM support Z8 (TS2) EPROM support Z7 EPROM support Z6 (système) Z2 PIA 6821 utilisateur Z3 VIA 6522 Z4 TIMER 6840 Z5 ACIA 6850 Z11 PIA 6821 système libre libre 74138 74138 RAM 6116 support Z9 RAM 6116 support Z10 D'après ce schéma, dresser la carte mémoire du système (cf doc réponse), sachant que : - les différents circuits sont sélectionnés par un 0 sur leur entrée de sélection (CS : Chip Select"). - les EPROM ont 12 bits d'adresse internes - la table de vérité du 74138 est la suivante : broche 6 4 5 3 2 1 fonction CS1 CS2 CS3 A2 A1 A0 X X 1 X X X X 1 X X X X 0 X X X X X 1 0 0 1 1 1 1 0 0 1 1 0 1 0 0 1 0 1 1 0 0 1 0 0 1 0 0 0 1 1 1 0 0 0 1 0 1 0 0 0 0 1 1 0 0 0 0 0 15 14 13 12 11 10 9 7 Out 0 Out 1 Out 2 Out 3 Out 4 Out 5 Out 6 Out 7 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 1 1 5) Interruptions : Exécuter le programme "chronomètre", adresse $AE97 (clavier : EXC, A, E, 9, 7, EXC). Ce programme fait appel à une technique de programmation dite "par interruptions" matérialisée par une ligne de commande reliant le timer à une entrée d'interruption du µP ( € FIRQ ). Relever à l'oscilloscope ce signal (broches 4 du µP ou 9 du timer). Quelle est sa période ? G. Pinson - Physique Appliquée Codage B11-TP / 3 ---------------------------------------------------------------------------------------------------------------------------------------------------------------- ISBN 978-2-9520781-1-5 http://www.syscope.net © G. Pinson, 2011 Puis, en agissant sur les touches RST et NMI, indiquer dans quel ordre de priorité sont exécutées les interruptions FIRQ, RESET et NMI. 6) Pour information : quelques instructions courantes du µP 6809 (NB : pour plus de détails, cf la table de programmation fournie par le constructeur) : Mouvements de données Mouvements de données Opérateurs Opérateurs Branchements et sauts Branchements et sauts divers divers LD lecture (LOAD) CLR RAZ BEQ Branchement si = 0 SWI fin (END) ST écriture (STORE) ADD addition BNE Branchement si ≠ 0 NOP tempo 2 µs TFR transfert entre registres SUB soustraction BGT branchement si > MUL multiplication BGE branchement si ≥ NEG changement de signe BLE branchement si ≤ INC incrémentation BLT branchement si < DEC décrémentation JMP saut inconditionnel (GOTO) CMP comparaison JSR saut à sous-programme COM NON RTS fin de sous-programme AND ET RTI fin de s-pg d'interruption OR OU EOR OU Exclusif LSL décalage à gauche LSR décalage à droite ROL rotation à gauche ROR rotation à droite 2ème partie : codes binaires I- Un exemple de code uploads/S4/ b11-tp-pdf.pdf

  • 25
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Fev 19, 2022
  • Catégorie Law / Droit
  • Langue French
  • Taille du fichier 0.1274MB