Les systèmes à microprocesseur EPAI Fribourg - Hervé Page
Structure générale Architecture de von Neumann Bus de données (DB: Data Bus) Architecture de von Neumann Horloge uP RAM ROM I/O Bus de commande Bus d’adresses (AB: Address Bus) uP: microprocesseur (CPU: Central Processing Unit) RAM: mémoire vive (RAM: Random Access Memory) ROM: mémoire morte (ROM: Read Only Memory) I/O: entrées / sorties (I/O: Inputs / Outputs) Horloge: rythme le travail du microprocesseur
Structure générale Architecture de Harvard Programme Bus de données (DB: Data Bus) Bus de commande Bus d’adresses (AB: Address Bus) Programme Données et entrées / sorties Dans ce type d’architecture (par exemple utilisée dans les microcontrôleurs PIC), les mémoires contenant le programme ne partagent pas les mêmes bus que le reste du système.
Le microprocesseur Le microprocesseur est le « cerveau » de notre système Il effectue les instructions contenues dans le programme Il est capable d’effectuer des calculs Il est capable d’effectuer des choix en fonction de critères donnés
Le microprocesseur La famille CISC (Complex Instruction Set Computer) (Pentium, famille 8051) Jeu d’instructions très complet Parfois plusieurs cycles machine par instruction Structure du circuit complexe, donc plus chère La famille RISC (Reduced Instruction Set Computer) (PowerPC de Motorola, famille PIC) Jeu d’instructions limité Une instruction par cycle machine Structure du circuit plus simple, donc moins chère
La mémoire vive Elle perd ses informations si son alimentation est coupée Permet de stocker des données ou des programmes Un bus d’adresses permet de sélectionner la place mémoire Le bus de données permet de faire transiter l’information Des entrées de commande permettent de définir le fonctionnement
La mémoire vive Bus de données bidirectionnel Bus de commande unidirectionnel R/W: lecture /écriture (Read / Write) CS: Sélection du circuit (Chip Select) OE: Validation des sorties (Output Enable) Bus d’adresses unidirectionnel
La mémoire morte Elle garde ses informations si son alimentation est coupée Permet de stocker des programmes permanents Un bus d’adresses permet de sélectionner la place mémoire Le bus de données permet de faire transiter l’information Des entrées de commande permettent de définir le fonctionnement
La mémoire morte Bus de données unidirectionnel Bus de commande unidirectionnel CS: Sélection du circuit (Chip Select) OE: Validation des sorties (Output Enable) Bus d’adresses unidirectionnel
Les entrées / sorties Permet au système de communiquer avec le monde extérieur Reçoit des informations ou des commandes Boutons de commande, capteurs de températures, etc. Clavier, souris d’ordinateur, etc. Envoie des informations ou des commandes Commande de moteurs, d’électro-vannes, de lampes, etc. Ecrans, imprimantes d’ordinateur, etc.
Les entrées / sorties 1 0 0 1 0 1 0 1 1 0 0 1 0 1 0 1 I / O 1 0 0 1 0 1 0 1 1 0 0 1 0 1 0 1 I / O Périphérique Transmission série 1 1 I / O Périphérique Transmission parallèle
L’horloge Donne le rythme de travail au microprocesseur
Le bus de données Permet au microprocesseur de recevoir des données depuis les mémoire ou les entrées Permet au microprocesseur d’envoyer des données à la mémoire vive ou aux sorties Est bidirectionnel
Le bus d’adresses Permet au microprocesseur d’indiquer aux mémoires l’adresse dans laquelle il veut lire Permet au microprocesseur d’indiquer à la mémoire RAM l’adresse dans laquelle il veut écrire Permet au microprocesseur d’indiquer au circuit d’entrées/sorties dans quel port de sortie il veut écrire Permet au microprocesseur d’indiquer au circuit d’entrées/sorties dans quel port d’entrée il veut lire Il est unidirectionnel (dans les systèmes simples, sans DMA)
Le bus de commande Permet au microprocesseur de sélectionner un circuit périphérique Permet au microprocesseur de valider des sorties de circuits périphériques Permet au microprocesseur d’indiquer à la mémoire RAM s’il veut effectuer une opération de lecture ou d’écriture. Le bus est bidirectionnel (Si l’on a des interruptions venant du circuit d’entrées / sorties)
La largeur du bus correspond au nombre Structure générale 8 Bus de données Horloge uP RAM ROM I/O Bus de commande Bus d’adresses 16 La largeur du bus correspond au nombre de lignes parallèles qui le composent (ici, 8 bits pour le bus de données et 16 bits pour le bus d’adresses)
Le microcontrôleur est un circuit comprenant ces (par exemple la famille PIC) Horloge uP RAM ROM I/O Le microcontrôleur est un circuit comprenant ces différents éléments.