Retour au cours

Mémoire morte (ROM) et tables de consultation (Look-up Tables)

Systèmes de logique numérique : de zéro à expert

47. Mémoire morte (ROM) et tables de consultation (Look-up Tables)

La ROM n'est pas seulement destinée aux microprogrammes (firmware) ; sa structure en fait un élément de logique combinatoire incroyablement polyvalent, agissant comme un générateur de fonction universel via une table de consultation (LUT).

Structure de la ROM

  1. Décodeur d'Adresse : Un décodeur N-vers-$2^N$ prend les N entrées d'adresse et active exactement une ligne (ligne de mot) dans la matrice mémoire.
  2. Matrice Mémoire : Une grille de fusibles ou de connexions programmables stockant les données.
  3. Tampons de Sortie : Connectent la donnée de la ligne de mot sélectionnée aux lignes de données de sortie.

La ROM comme Circuit Combinatoire Universel

Tout circuit combinatoire (toute table de vérité) peut être implémenté à l'aide d'une ROM.

  • Entrées : Les variables de la fonction booléenne sont connectées aux lignes d'adresse de la ROM.
  • Sorties : Les sorties de la fonction sont connectées aux lignes de données de la ROM.
  • Programmation : La ROM est 'programmée' en stockant les valeurs de sortie de la table de vérité aux adresses mémoire correspondantes.

Exemple : Implémentation d'un Additionneur Complet

  1. Les Entrées (A, B, $C_{in}$) deviennent 3 lignes d'adresse (8 adresses au total).
  2. Les Sorties (S, $C_{out}$) deviennent 2 lignes de données.
  3. La matrice ROM stocke les valeurs S et $C_{out}$ pour les 8 combinaisons d'entrée. Conception plus simple, mais souvent moins efficace que les portes minimisées.