Partie C − Concepts matériels C.1 Configurations matérielles C.2 Gestion d’exceptions C.3 Module de temporisation C.4 Convertisseurs analogique-numérique C.5 Interfaces de communications sérielles GPA770: Microélectronique appliquée Éric Granger
C.1(1) Architecture du système MC9S12C32 GPA770: Microélectronique appliquée Éric Granger
C.1(1) Architecture du système Interface − broches d’entrées/sorties types de broches: broches de tension ou de référence (Vxx) broches pour ports (Pxx) broches divers: signaux externes (XTAL, etc.) GPA770: Microélectronique appliquée Éric Granger
C.1(2) Sous-système de mémoire Modèle général: liste adressable de registres GPA770: Microélectronique appliquée Éric Granger
C.1(2) Sous-système de mémoire Composants de mémoire interne au 68HC12: bloc de registres: configurations du contrôleur RAM: variable temporaires Flash EEPROM: programmes (i.e., séquences d’instructions) et constantes GPA770: Microélectronique appliquée Éric Granger
C.1(3) Sous-système de ports Vue externe Concept d’entrée/sortie parallèle: un port d’e/s est un ensemble de 8 broches qu’on peut connecter avec un bus de data de 8 bits: donc 8 bits pouvant être lus/écrits simultanément GPA770: Microélectronique appliquée Éric Granger
C.1(3) Sous-système de ports Vue interne le 68HCS12 est une architecture d’e/s liée à la mémoire: on contrôle un port d’e/s à travers les registres du port, liés au bloc de registres (voir annexe B p.564 J. Pack) les bus DATA, ADDR et CTRL servent à contrôler les ports d’e/s, comme de la mémoire les mêmes instructions sont utilisées pour accéder la mémoire servent à contrôler les ports d’e/s GPA770: Microélectronique appliquée Éric Granger
GPA770: Microélectronique appliquée Éric Granger
GPA770: Microélectronique appliquée C.2(1) Exceptions GPA770: Microélectronique appliquée Éric Granger
C.2(2) Sous-systèmes du 68HC12 Événements qui enclenchent une RAZ du système: RAZ d’alimentation (‘power on’) RAZ externe RAZ de surveillance d’horloge − CM (‘Clock Monitor’) RAZ de surveillance d’ordinateur − COP (‘Computer Operating Properly’) GPA770: Microélectronique appliquée Éric Granger
C.2(2) Sous-systèmes du 68HC12 Interruption (INT) – événement prioritaire qui est planifié mais imprévu dans le temps, pour: la coordination des activités avec périphériques d’e/s, sans devoir constamment vérifier leur état la gestion élégante des erreurs rappeler au CPU d’effectuer une tâche routinière Suite à la détection de cet événement, le CPU: permet une suspension ordonnée du programme principal exécute une routine de service reprend à l’adresse à laquelle le programme a été suspendu GPA770: Microélectronique appliquée Éric Granger
C.2(2) Sous-systèmes du 68HC12 Catégories d’INT ─ selon le masquage: INT non-masquable ≡ le masque ne peut être activé par instructions pour le TRAP et SWI: on ne peut jamais les masquer pour le XIRQ: le masque est normalement activé (X=1) suite à une RAZ ou un XIRQ, et désactivé (X=0) une seule fois quand le système est stable à l’aide d’un instruction INT masquable ≡ le masque peut être activé et désactivé par instructions le masque est normalement activé (I=1) par instructions, ou avec une RAZ, et désactivé (I=0) par instructions le masque s’active temporairement lors d’un INT non-masquable GPA770: Microélectronique appliquée Éric Granger
C.2(2) Sous-systèmes du 68HC12 Étapes d’activation d’une INT masquable: Activation du système global: il faut désactiver le bit de contrôle I du CCR (fixer I= 0) le bit ‘I’ est contrôlé par les instructions spécialisées: CLI: ‘Clear Interrupt Mask’ – active le système d’INT NM global (I=0) Activation du système local: il faut activer le matériel d’interruption spécifique GPA770: Microélectronique appliquée Éric Granger
C.2(3) Vecteur d’exception Le vecteur d’exceptions: contient toutes les adresses des routines de services d’interruptions chacune de ces adresses est associée avec un type spécifique d’exception GPA770: Microélectronique appliquée Éric Granger
C.2(3) Vecteur d’exception Priorité des exceptions: les exceptions sont exécutées dans l’ordre descendante de priorité, dictée par la table de vecteurs: une exception ne peut interrompre l’exécution d’une routine même si elle détient une priorité plus élevée. Ordre: RAZ: priorité fixe, et ne peut être changée interruptions non-masquables: priorité fixe, et ne peut être changée interruptions masquables: priorité fixe qui peut être modifiée en écrivant une séquence de bits spécifique au registre HPRIO (‘High Priority Interrupt’ – adresse $001F) la dernière colonne de la table donne la valeur qui doit être écrite au HPRIO pour lui allouer la plus haute priorité GPA770: Microélectronique appliquée Éric Granger
C.2(4) Réponses aux interruptions Réponse générale aux INT du 68HCS12: RSI lecture décodage exécution Sauf pour l’instruction REV de la logique floue GPA770: Microélectronique appliquée Éric Granger
C.2(4) Réponses aux interruptions Réponse spécifique aux INT: Entrée en INT: le CPU permet une suspension ordonnée du programme principal termine l’exécution normal de l’instruction en cours stocke tous les registres CPU sur la pile (CCR inclus) transfert le contrôle d’exécution à une RSI qui est spécifique à l’interruption GPA770: Microélectronique appliquée Éric Granger
C.2(4) Réponses aux interruptions Réponse spécifique aux INT: (suite) Sortie d’une INT: à le fin de la RSI, exécute l’instruction RTI restaure l’état original du processeur (la valeur de tous les registres CPU) avec la pile (CCR inclus) transfert le contrôle d’exécution au programme principal, là ou il était avant l’INT GPA770: Microélectronique appliquée Éric Granger
GPA770: Microélectronique appliquée Éric Granger
GPA770: Microélectronique appliquée C.3(2) Module TIM Fonctions principales du TIM: IC (‘Input Capture’): permet de mesurer les caractéristiques d’un signal numérique en entrée OC (‘Output Compare’): permet de générer un signal numérique très précis en sortie PA (‘Pulse Accumulate’): permet de compter des événements internes ou externes GPA770: Microélectronique appliquée Éric Granger
GPA770: Microélectronique appliquée C.3(2) Module TIM GPA770: Microélectronique appliquée Éric Granger
Canaux d’entées/sorties C.3(2) Module TIM Canaux d’entées/sorties GPA770: Microélectronique appliquée Éric Granger
C.3(3) Capter des entrées (IC) Calcule du temps écoulé entre 2 événements: cas 1: 0 débordement t = stop - start cas 2: 1 débordement (ignore le bit C du CCR lors de la soustraction) GPA770: Microélectronique appliquée Éric Granger
GPA770: Microélectronique appliquée Éric Granger
C.4(1) Concepts fondamentaux Rôle du convertisseur: traduire un signal analogique en un {codes binaires} GPA770: Microélectronique appliquée Éric Granger
C.4(1) Concepts fondamentaux Processus de conversion A-N Échantillonnage: mesurer un voltage à un intervalle régulier ou non Ts afin de représenter le signal analogique GPA770: Microélectronique appliquée Éric Granger
C.4(1) Concepts fondamentaux Processus de conversion A-N Taux d’échantillonnage minimum: critère de Nyquist: on doit échantillonner un signal analogique avec une fréquence fs qui est plus de 2 fois le contenu fréquentielle maximum fmax du signal: fs ˃ 2 fmax donne le temps minimum entre 2 échantillons: Ts = 1/fs problème d’alias: si fs ≤ 2 fmax la translation de composantes indésirables de hautes fréquences en basses fréquences GPA770: Microélectronique appliquée Éric Granger
C.4(1) Concepts fondamentaux Processus de conversion A-N b: nombre de bits utilisés par le convertisseur A-N pour encoder les échantillons Quantification (n): nombre de niveaux discrets, entre VRH et VRL, sur lequel le signal analogique est divisé n = (2b niveaux – 1) Résolution (ΔV): la plage de voltage par niveau discret ΔV = (VRH – VRL)/n = (VRH – VRL)/ (2b – 1) volts/niveau GPA770: Microélectronique appliquée Éric Granger
C.4(1) Concepts fondamentaux Techniques de conversion Circuit ‘sample-and-hold: fonction: prendre un échantillon stable du signal analogique s(t) et le retenir pour conversion GPA770: Microélectronique appliquée Éric Granger
C.4(1) Concepts fondamentaux Techniques de conversion N-A méthode par PWM R4 GPA770: Microélectronique appliquée
C.4(1) Concepts fondamentaux Techniques de conversion N-A méthode basée sur le sommateur GPA770: Microélectronique appliquée
C.4(1) Concepts fondamentaux Techniques de conversion N-A méthode basée sur l’échelon R-2R GPA770: Microélectronique appliquée
C.4(1) Concepts fondamentaux Techniques de conversion A-N Méthode par intégration: Vin GPA770: Microélectronique appliquée
C.4(1) Concepts fondamentaux Techniques de conversion A-N méthode de type compteur (rampe) GPA770: Microélectronique appliquée
C.4(1) Concepts fondamentaux Techniques de conversion Méthode par approximation successive: (suite) GPA770: Microélectronique appliquée Éric Granger
C.4(1) Concepts fondamentaux Méthode parallèle (3 bits): compare simultanément VIN à plusieurs voltages de référence un convertisseur à b bits utilise 2b – 1 comparateurs donne une conversion très rapide, mais coûteuse Techniques de conversion GPA770: Microélectronique appliquée Éric Granger
C.4(2) Convertisseur du 68HC12 Sous-système de conversion A-N du 68HCS12: GPA770: Microélectronique appliquée Éric Granger
C.4(2) Convertisseur du 68HC12 Conversion par approximation successive: chaque échantillon du signal analogique → code binaire signé/non-signée justifié à gauche ou non et pondéré, avec 8 ou 10 bits de résolution précision de ± 1 du LSb VRH VRL $00 $FF 1/2FS 1/4FS 1/8FS GPA770: Microélectronique appliquée Éric Granger
GPA770: Microélectronique appliquée Éric Granger
C.5(1) Communications sérielles Communications avec un microcontrôleur applications indépendantes à distance: pour échanger des informations avec un composant distant ex: communications entre deux robots mobiles applications locales spécialisées dans un système: pour interfacer directement avec un composant externes, et donc étendre les capacités ex: communications avec l’afficheur LCD du robot mobile GPA770: Microélectronique appliquée Éric Granger
C.5(1) Communications sérielles Transmission parallèle Synchronisation: permet d’indiquer au récepteur quand les données transmises sont valides Deux techniques de transfert: parallèle synchrone: exploite un fil supplémentaire pour transporter un signal d’horloge commun entre transmetteur et récepteur parallèle asynchrone: exploite deux fils supplémentaires pour réaliser du ‘handshaking’ entre transmetteur et récepteur GPA770: Microélectronique appliquée Éric Granger
C.5(1) Communications sérielles Transmission parallèle Transmission asynchrone: utiliser 2 fils supplémentaires pour réaliser du ‘handshaking’ GPA770: Microélectronique appliquée Éric Granger
C.5(1) Communications sérielles Transmission sérielle Synchronisation: le transmetteur doit indiquer au récepteur quand les bits sont valides Deux techniques de transfert: sériel synchrone: exploite un fil supplémentaire pour transporter un signal d’horloge commun entre transmetteur et récepteur sériel asynchrone: exploite des bits spéciaux pour indiquer le début et la fin d’une communication entre transmetteur et le récepteur GPA770: Microélectronique appliquée Éric Granger
C.5(1) Communications sérielles Transmission sérielle Transmission sériel asynchrone: GPA770: Microélectronique appliquée Éric Granger
C.5(1) Communications sérielles Concepts fondamentaux et terminologie cellule binaire ou période de bit: période de temps réservé pour la transmission d’un bit dans une séquence binaire (1 ∕ taux de transfert) code NRZ (‘Non-Return-to-Zero’): format commun pour le transfert d’une séquence binaire règle: pour transmettre ‘0’ (‘1’), placer la tension L (H) sur le canal pour toute la cellule binaire. GPA770: Microélectronique appliquée Éric Granger
C.5(1) Communications sérielles Concepts fondamentaux et terminologie bit de parité: mécanisme pour détecter une erreur simple de transmission réalisation: bit additionnel (e.g., MSb) qui indique la parité d’une séquence de bits parité paire: le bit de parité est fixé tel qu’il y a un nombre pair de bits = ‘1’ dans le code parité impaire: le bit de parité est fixé tel qu’il y a un nombre impair de bits = ‘1’ dans le code GPA770: Microélectronique appliquée Éric Granger
C.5(2) Sous-systèmes du 68HC12 Module SCI (‘Serial Communications Interface’): types de communications: sérielles asynchrones utilisation typique: communiquer des caractères ASCII à travers 1 fil GPA770: Microélectronique appliquée Éric Granger
C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI GPA770: Microélectronique appliquée Éric Granger
C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Détection et vérification de bits: le récepteur à 16 cycles d’horloge transfert / temps de bit bit de départ: trois ‘1’ successifs, suivis par des ‘0’ à RT1, 3, 5, 7. Détecte le départ si 2 sur RT3, 5, 7 sont ‘0’, mais drapeau de bruit s’active s’il ne sont pas tous à ‘0’ bit de donnée (terminaison): vérifie à RT8, 9, 10. Détecte la valeur majoritaire, mais le drapeau de bruit (d’encadrement) s’active s’ils ne sont pas tous identiques GPA770: Microélectronique appliquée Éric Granger
C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Détection d’erreurs liés à la transmission: bruit: le récepteur vérifie chaque donné transmise 3 fois pour chaque bit – si le vote majoritaire n’est pas unanime, il y a une erreur de bruit parité: le récepteur vérifie que le nombre de ‘1’s dans le code est bien paire ou impair – sinon il y a un erreur de parité GPA770: Microélectronique appliquée Éric Granger
C.5(3) Interface sériel asynchrone Caractéristiques du sous-système SCI Détection d’erreurs liés à la transmission: (suite) encadrement: si le récepteur détecte le bit de départ, mais pas le bit de terminaison généralement à cause des différents taux de transfert – probablement due au fait que les 2 horloges n’opèrent pas exactement à la même fréquences le communication va fonctionner si fclk(transmetteur) est différent de fclk(récepteur) par moins que 4.5% GPA770: Microélectronique appliquée Éric Granger