• Aucun résultat trouvé

2. L'électronique numérique Les circuits et fonctions logiques

N/A
N/A
Protected

Academic year: 2022

Partager "2. L'électronique numérique Les circuits et fonctions logiques"

Copied!
6
0
0

Texte intégral

(1)

1. Au départ ...

L'homme a cherché à fabriquer des machines permettant de faire à sa place certaines tâches. On peut considérer deux axes de développement :

La formalisation de l'écriture des tâches à effectuer ->

algorithmes et théorie des langages.

Le développement de technologies permettant de réaliser ces algorithmes.

Rechercher et noter les fonctions des différents organes de la machine de Babbage

Les machines à calculer ont fait l'objet d'un intérêt particulier, dans le but de faciliter les opérations fastidieuses et limiter les erreurs.

L'avènement des transistors (en commutation) va ouvrir la porte des calculateurs électroniques, avec bien sur le système de numération binaire et les opérateurs logiques...

2. L'électronique numérique – Les circuits et fonctions logiques

2.1. Le formalisme logique

Le traitement électronique a commencé avec des informations simples à traiter de type tout ou rien (binaires) : une lumière est allumée ou éteinte, une store est baissé ou ouvert etc.

Les opérateurs logiques permettent de manipuler ces informations : il fait jour et le store est ouvert alors éteindre la lumière.

La théorie de la logique a été développée par le mathématicien Boole. Elle repose sur une structure d'algèbre composée de deux éléments, 0 et 1 associés au opérateurs logique élémentaires : ET, OU, NON notés (. ; + ; / )

On utilise donc des variables pour représenter les informations :

a : jour a = 0 -- > il ne fait pas jour a = 1 -- > il fait jour b : le store b = 0 -- > le store est ouvert b = 1 --> le store est fermé c : la lampe c = 0 --> la lampe est éteinte c = 1 --> la lampe est allumée On peut alors exprimer des propositions :

il fait jour et le store est ouvert s'exprime a⋅¯b

il ne fait pas jour ou le store est fermé s'exprime ¯a+b

On peut en déduire deux expressions logiques de c (lumière) en fonction de a (jour) et b (store):

c=f(a , b)=...

f est la fonction logique qui donne l'état de la lumière en fonction du jour et du store On peut également représenter la table de vérité de la fonction f.

a b f

Illustration 1: machine analytique de Babbage(imaginée en 1834)

Illustration 2: Triumphator CRN1 (1958) Germany

(2)

L'implémentation des fonctions logiques s'est développée avec les matrices à diodes.

Fin des années cinquantes apparaissent les premiers circuits éléctroniques logiques qui marquent le début de l'ère numérique.

A partir du doc ressource <Fonctions logiques>, compléter ci-dessous les tables de vérité des fonctions logiques élémentaires

a b /a a . b a + b

Afin d'aider à la représentation et pour préfigurer le cablâge d'un cicuit logique, on utilise des symboles pour les opérateurs logiques.

Noter ci-dessous les symboles des opérateurs logiques élémentaires.

2.2. Des opérateurs logiques à l'arithmétique

Utiliser le simulateur logisim pour établir la table de vérité de la structure logique ci-contre.

a b c s r

Ci-dessous les schémas d'un porte logique NON ET (NAND) avec des composants éléctroniques, discrets et intégrés.

Le développement de ces structures a définitivement orienté la représentation de l'information vers le binaire, pour les nombres, mais aussi les caractères, les images, le son etc. Le traitement de ces informations nécessitait de pouvoir manipuler les mots binaires qui les représentent.

Illustration 4: La même structure avec des transistors MOS

Illustration 3: Opérateur logique Full Addition

Illustration 5: Circuit logique discret NAND (technologie DTL)

(3)

Pour cela ont été développés sous forme de circuits intégrés des opérateurs arithmétiques et logiques (addition, multiplication, décalage, ET, OU, XOR...).

L'ensemble de ces circuits appartiennent à la logique combinatoire

En logique combinatoire la sortie S ne dépend que de l'état des entrées

3. Des circuits logiques aux systèmes numériques

Les cicuits logiques on évolué. La logique séquentielle a permis de traduire l'évolution temporelle d'un système avec l'introduction du changement d'état.

Dans un système séquentiel l’état du système (sortie) est déterminé par l’état des entrées et l’état précédent du système .

Les microprocesseurs sont apparus et avec eux les circuits mémoire. Ce sont alors développées des architectures très complexes capables d'effectuer séquentiellement des opérations sur des données numériques, selon des instructions stockées dans des mémoires.

3.1. Les architectures programmables

L'architecture de Von Neumann

Un CPU (Central Process Unit) avec :

une unité de traitement arithmétique et logique (UAL).

des registres de travail où sont chargées les opérandes

une unité de contrôle qui gère le séquencement des opérations et flux de données.

Un registre d'état reflète l'état du CPU

Des circuits mémoire où se trouvent

les instructions en lecture (programme)

les données en lecture /ecriture

Des circuits de communication Entrée et Sortie.

. L'ensemble est synchronisé par une horloge.

L'architecture de Von Neumann est encore présente dans une majorité de systèmes numériques

Les évolutions visent à limiter les temps d'accès aux données. En effet le CPU attend régulièrement 3 à 4 cycles avant de recevoir une donnée et pouvoir effectuer l'instruction, sachant qu' un cycle machine est de l'ordre de 1 ns.

Un système de bus permet de faciliter la circulation des données au sein du système.

Dessin 1: Architecture de Von Neuman - 1945 Central Processing Unit

Control Unit

Arithmetic Logic Unit

Memory Unit Input

Device Output

Device

Fonction

Entrées Sorties

Fonction

Entrées

Sortie (état présent)

retard État prédédent

(4)

3.2. Le CPU ou microprocesseurs a) Constitution

unité de calcul arithmétique et logique. Ces sont les circuits qui font les opérations élémentaires, logiques et aritmétiques

des registres – (accumulateurs) ou sont stockés les opérandes pour traitement.

unité de contrôle (program counter, registre d'état...)Structure cablé qui encadre le fonctionnement de la structure (flux des données, décodage des codes instructions...) .

b) Jeu d'instructions - programmation

Le jeu d’instructions machines dépend de chaque microprocesseur. On trouve couramment :

intructions de transferts (activité préférée du processeur)

instructions arithmétiques

instructions logiques

instructions entrée / sortie

instructions de branchement (saut de ligne conditionnel ou non) c) Langage machine

Ce sont les codes binaires qui désignent les instructions élémentaires du microprocesseurs, les addresses des données en mémoires et celles des entrées sorties.

L'unité de contrôle suit un cycle d'éxectution au rythme imposé par l'horloge du système.

Chargement du code instruction avec l'adresse pointée par le PC (Program Counter)

Décodage du code instruction et chargement éventuel des données

Exécution de l'instruction par l'ALU ou l'unité de contrôle selon le type d'instruction. Mise à jour du PC avec pointage vers l'instruction suivante (sequence, saut, branchement…).

On n'écrit pas directement les programmes en langage machine. Le langage de plus bas niveau est l'assembleur. Il est constitué de mnémoniques qui expriment directement les instructions élémentaires du processeur. Chaque processeur a donc son assembleur (tendance à l'uniformisation)

Avec un langage de haut niveau, nous sommes loin du langage machine et des instructions du microprocesseur, c'est l'interpréteur qui se chargera de convertir le code source en instructions machines et code binaire... mais il faut plusieurs intermédiaires car outre les instructions il faut gérer la mémoire et l'écriture / lecture des données...

d) Caractéristiques – performances

Compléter les données disponibles du tableau avec cette page Wikipedia

Année 1970 1985 2000 2010 2020

Nombre de transistors 2300 275000 42 000 000

Finesse de gravure (nm) 10000 1500 180

Taille des données 4 bits 32 bits 32 bits

jeux d'instructions 46 ~100

Cadencement max 740 kHz 20Mhz 3,8 GHz

Million d'instruction /seconde (MIPS) 0,09 5 1700

(5)

3.3. Les mémoires

Ce sont des circuits constitués de cellules élémentaires. Chacune d'elle mémorise un bit. La majorité des circuits mémoires sont cependant organisés pour gérer des mots de 8, 16, 32, 64 bits...

Les technologies de mémoires diffèrent par

leur niveau d'intégration (nombre de cellules / mm2) ou leur capacité / unité de surface.

le temps d'accès

l'énergie consommée est aujourd'hui un facteur prédiminat

leur apptitude à conserver ou non l'information hors tension (non alimentées).

Ces critères déterminent l'usage et la performance des différentes technologies.

Quelques chiffres :

Technologie Temps d'accès

Registre ~ 1ns

Cache ~ 4ns

Mémoire vive (RAM) quelques 10 ns

Flash < 1 ms

Disque Dur ~10 ms

Réseau quelques ms à ???

Les registres et les mémoires caches se trouvent dans le microprocesseur.

La RAM est sur la carte mère où se trouve également le microprocesseur L'emplacement des autres peut varier.

Illustration 7: Structure d'une mémoire 8 bits

(6)

4. Systèmes embarqués - Robotique.

Les systèmes embarqués regroupent l'ensemble des systèmes numériques (électroniques) présents sur les équipements et appareils qui n'ont pas une vocation purement informatique (Tout ce qui n'est pas un ordinateur).

Exemples : Pilotage des machines et des procédés industriel, automobile, électroménager, téléphone portable, robotique et tout appareillage dont le fonctionnement est géré par de l'électronique… C'est à dire quasiment partout !

Capteurs et actionneurs

Les systèmes embarquées traitent des informations du domaine réel. Elles sont acquises par le biais de capteurs qui convertissent les grandeurs physiques (température, pression acoustique, force etc.) en tensions électriques analogiques (qui varient de manière continue dans le temps). Ces dernières sont ensuite numérisées pour être traitées par le système.

Animation flash Caractéristiques :

Criticité : ces systèmes sont critiques dans le sens où ils agissent directement sur leur environnement matériel avec des conséquences immédiates.

Réactivité : le temps de réaction est imposé par l'environnement, on parle aussi de systèmes temps réel.

Autonomie, fiabilité et sécurité : une fois en production, les systèmes doivent fonctionner sans intervention de l'homme, sans erreur, le plus longtemps possible, indépendamment des contraintes environnementales.

Programmation

La programmation de ces systèmes se fait à bas niveau, c'est à dire que les instructions et actions sont étroitement liées aux caractéristiques des circuits de l'environnement matériel à programmer.

Les plate-formes de développement utilisent souvent le langage C mais aussi Ada et bien sur l'assembleur qui est une écriture mnémonique du langage machine. On rencontre aussi des langages et environnements spécifiques aux systèmes à programmer.

Les plate-formes matérielles sont souvent constituées de microcontrôleurs ou SoC (System On Chip) qui intègrent dans un seul composant une architecture standard complète (microprocesseur, RAM, EEPROM FLASH, CAN)

Illustration 8: La voiture de demain...

Références

Documents relatifs

Le point virgule permet d’écrire plusieurs instructions sur la même ligne,. Il supprime

 Il envoie un signal sur la ligne d'occupation pour préciser que le bus est

En utilisant la méthode des tableaux de Karnaugh, donner l'expression la plus simplifiée possible de la fonction logique F de 4 variables définie par la table de vérité suivante

• Tous les termes pour lesquels la fonction est à 1 (0) doivent être pris au moins une fois dans un regroupement ou seuls si aucun regroupement n ’est possible. • Faire

Cette société établit des factures numérotées (en incrémentant partant de 1 et en réinitialisant à 1 le 1er janvier de chaque année) et datées, comprenant le

Ces erreurs, se traduisant par des écarts à la courbe de transfert théorique , sont dues essentielle- ment aux résistances (précision et stabilité en température),

Pour l’ensemble des activités réalisées dans l’entreprise: Activité schéma analytique, Activité costing, Activité budgétaire, Activité de tableau de bord, Activité de

7 Un process impose les contraintes temps réel suivantes : temps de latence &lt;1000µs et temps séparant 2 événements consécutifs &gt;2ms.. On choisira le mode d'