Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Technologie industrielle

Comprendre les tables de correspondance : des ROM aux ALU avancées

Dans le chapitre précédent, nous avons exploré les dispositifs de mémoire numérique, découvrant comment les cellules de stockage à semi-conducteurs peuvent être adressées précisément à l'aide de valeurs binaires. En pilotant les lignes d'adresse d'une ROM avec des motifs binaires spécifiques, nous pouvons récupérer les données stockées directement depuis ses cellules de mémoire.

Imaginez une ROM qui a été pré-programmée avec une table de vérité pour une fonction logique particulière. Les lignes d'adresse agissent alors comme les entrées de la fonction, tandis que les lignes de données délivrent les sorties correspondantes. Avec cette configuration, une seule puce ROM peut émuler n'importe quelle fonction logique désirée — qu'il s'agisse d'un demi-additionneur, d'un additionneur complet, ou d'un circuit combinatoire entièrement différent — sans aucun recâblage physique.

Ci-dessous se trouve une ROM 4 × 2 bits, configurée pour implémenter un demi-additionneur. Lorsque les entrées A et B sont appliquées aux broches d'adresse, la ROM sort les bits corrects Somme (Σ) et Retenue sortante (Cout).

 

Comprendre les tables de correspondance : des ROM aux ALU avancées

 

Contrairement à un demi-additionneur à base de portes, qui traite les entrées à travers un réseau fixe de portes logiques, cette ROM se contente de « se souvenir » de la sortie correcte pour chaque paire d'entrées. En écrivant une nouvelle table de vérité dans une autre ROM, ou même une EPROM effaçable, nous pouvons reconfigurer instantanément la fonction logique, offrant une flexibilité inégalée.

En essence, une ROM qui délivre des sorties prédéterminées pour chaque entrée possible est appelée une table de correspondance (look-up table). Ce concept reflète comment nous mémorisons les tables de multiplication à l'école : au lieu de recalculer 5 × 6 à chaque fois, nous rappelons qu'il équivaut à 30.

L'utilisation du logiciel (les données stockées dans la ROM) plutôt que du matériel offre plusieurs avantages :

La puissance des tables de correspondance grandit avec la complexité de la fonction. Par exemple, un additionneur 4 bits pourrait être construit en utilisant une ROM avec 8 lignes d'adresse (deux opérandes 4 bits) et 4 lignes de données pour la somme signée. Avec 256 emplacements adressables, chaque combinaison d'entrées doit être soigneusement programmée.

 

Comprendre les tables de correspondance : des ROM aux ALU avancées

 

Programmer une telle table exige de la précision, mais l'avantage du comportement défini par logiciel l'emporte sur le risque d'une entrée mal programmée.

Les tables de correspondance excellent aussi dans la gestion des cas limites, tels que le débordement dans l'addition en complément à deux. Par exemple, ajouter 0111 (7) et 0110 (6) dans un champ 4 bits donne 1001 (–7) au lieu du correct 13. En programmant la ROM pour sortir une valeur personnalisée — peut-être le nombre positif maximal représentable — nous pouvons contrôler la réponse aux conditions de débordement.

Au-delà de l'addition simple, étendre la ROM avec deux lignes d'adresse supplémentaires augmente sa capacité de 256 à 1 024 entrées. Cela permet à la ROM d'effectuer plusieurs opérations basées sur deux bits de contrôle (A8 et A9) : addition, soustraction (les deux ordres), et test d'égalité — le tout sur des opérandes 4 bits.

 

Comprendre les tables de correspondance : des ROM aux ALU avancées

 

Avec encore plus de lignes d'adresse, la ROM peut héberger une large gamme d'opérations binaires, telles que vérifications de parité ou XOR, agissant efficacement comme une Unité Arithmétique et Logique (ALU). Historiquement, les ordinateurs IBM 1401 et 1620 employaient des tables de correspondance pour l'addition, un choix de design qui a valu le surnom « CADET » (Can't Add, Doesn't Even Try).

Une utilisation moderne courante des tables de correspondance basées sur ROM est dans les systèmes de contrôle nécessitant une fonction mathématique précise. Par exemple, les systèmes d'injection de carburant automobile ajustent le rapport air-carburant basé sur la charge moteur, la température ambiante et la pression barométrique. Les capteurs mesurent ces variables, leurs sorties analogiques sont numérisées, et le vecteur numérique résultant sert d'adresse ROM. La ROM sort alors les paramètres d'injection optimaux.

Les ROM corrigent aussi les signaux numérisés. Les transmetteurs thermocouples, par exemple, convertissent une millitension non-linéaire en valeur de température. En stockant des données de correction dans une ROM, le dispositif peut linéariser la sortie, améliorant la précision. Cette application est souvent appelée caractériseur numérique.

 

Comprendre les tables de correspondance : des ROM aux ALU avancées

 

Un autre exemple classique est la traduction de code. Une ROM 128 × 8 peut traduire des codes ASCII 7 bits en codes EBCDIC 8 bits en mappant chaque entrée à sa sortie correspondante dans la table ROM.

 

Fiche de travail associée : Fiche de travail sur les dispositifs de mémoire

Technologie industrielle

  1. Fondamentaux de la mémoire numérique : adressage, accès et volatilité
  2. Comprendre ROM, PROM, EPROM et EEPROM : conception, programmation et identification
  3. Microprocesseurs : l'évolution de l'informatique à programme stocké
  4. Allocation dynamique de mémoire en C : Maîtriser malloc, calloc, realloc et free
  5. Cervoz lance la mémoire DDR4‑2666 pour l'IA industrielle et les solutions IoT
  6. L'informatique neuromorphique magnétique propulse l'efficacité de l'IA à des niveaux humains
  7. Gestion de la mémoire dynamique en C : calloc, malloc et free expliqués
  8. Maîtriser la mémoire dynamique en C++ : Stack vs Heap expliqués
  9. Java 10 : Allouer le tas sur NV-DIMM avec -XX:AllocateHeapAt