Un prototype programmable pour concrétiser la machine de Turing

Accueil Alan TURING Histoire Machine de Turing Le prototype expérimental réalisé Quelques diagrammes de machines de Turing pour ce prototype Interventions Presse Contact Nouvelle machine
Machines Idées Descriptif Fonctionnement Technologie 1ère machine de Turing Traitement des chaînes Calculateurs Suites Intéressant Lycées Universités Conférences Vidéos


Comment passer d'un concept théorique à une réalisation concréte

 

Dans la publication de Turing, on trouve la phrase :

              A tout instant, le comportement de la machine est déterminé par la m-configuration qn et le symbole lu T(r)

Elle va nous donner le plan général de la machine.

La réalisation sera faite avec les technologies de l'époque qui comprenaient les circuits électriques, les relais, les commutateurs et les moteurs électriques.


 

Le symbole lu T(r) est enregistré dans l'un des trois relais b, 0 et 1.

La m-configuration qn est un état de la machine.

Le commutateur des états connecte les 3 fils, en provenance des relais qui enregistrent le résultat de la lecture, à 3 lignes du lecteur des tables des transitions.

Dans l'exemple du shéma de gauche, la lecture est 0, seul le fil issu du relais 0 est alimenté en courant électrique. Le commutateur des états est dans la position 2. Seule la ligne horizontale en rouge sur le shéma est alimentée en courant électrique.

Cette ligne est déterminée par l'état en cours et le résultat de la lecture

Le comportement de la machine consiste en 3 actions éventuelles :
  1. Ecrire un des symboles b, 0 ou 1
  2. Se déplacer d'une case à droite ou à gauche
  3. Choisir un état parmi 12 états, l'état 12 étant l'état final qui provoque l'arrét de la machine

La rotation du contacteur de l'horloge va provoquer les actions nécessaires en envoyant successivement une impulsion dans :
  • Le mécanisme de lecture : le résultat sera enregistré dans l'un des trois relais b, 0 ou 1.
  • Les relais de la colonne écriture en bas du lecteur des tables des transitions, seule la colonne dans laquelle un trou a été fait dans la ligne rouge va transmettre l'impulsion au mécanisme d'écriture. Ici ce mécanisme écrira un 1.
  • Les relais de la colonne déplacement, ici le déplacement sera d'une case à gauche.
  • Les relais de la colonne changement d'état, ici le nouvel état sera l'état 3.

Conclusion : Tout le schéma électrique est une simple transposition logique du concept décrit par Alan Turing.
Quelques remarques :

Le lecteur des feuilles perforées représentant les tables des transitions, aurait pu être réalisé avec un ensemble de fils électriques et de fiches comme dans les premiers centraux téléphoniques.

Les relais utilisés pour transmettre les actions à effecuer aux différents mécanismes sont des relais doubles.
Par exemple un seul relais suffit pour transmettre les choix de déplacement (Left ou Right). Et 6 relais suffisent pour transmettre les choix d'un nouvel état parmi 12.

Le potentiomêtre rouge à droite de l'horloge permet de régler sa vitesse de rotation donc la fréquence des impulsions.
Ce mécanisme correspond à l'horloge interne d'un micro-ordinateur dont la fréquence cadence le microprocesseur.
Si dans les PC ctuels elle est de l'ordre de plusieurs Gigahertz, pour ce prototype elle est de 0,5 hz environ !

Mais encore faut-il que tous les composants travaillent à une vitesse supérieure ou au moins égale à cette fréquence d'horloge, cela n'a pas toujours été le cas pour les micro-ordinateurs.... et ce n'est pas le cas non plus pour ce prototype.
Les tétes d'écriture/lecture, le mécanisme de déplacement du disque et celui de changement d'état peuvent être plus lents.
Des circuits de "retour" provoquent l'attente de l'horloge du cycle jusqu'é ce que le composant concerné termine sa téche.

Utiliser un relais comme mémoire élémentaire ( 1 bit ):

On utilise un relais qui posséde au moins 2 contacts, quand on envoie une impulsion au point A dans la bobine du relais, la "palette" s'abaisse ce qui a pour effet de faire communiquer les différents contacts.
Dans le schéma ci-dessous le premier contact renvoie alors le courant électrique issu du point B à l'entrée de la bobine... le relais reste ainsi auto-alimenté.
 
Pour remettre le relais à l'état de repos, il suffit de couper le circuit au niveau du point B.
 
La lecture de ce "relais mémoire" se fait en envoyant une impulsion sur le deuxiéme contact, si le relais est au repos, le courant ne passe pas, la lecture est 0, si le relais est enclenché, le courant passe, la lecture est 1.
 

Une coupure de l'alimentation électrique entraine la mise au repos du relais et donc la perte de la mémoire. Dans un ordinateur, les relais sont remplacés par des transistors, mais le principe de fonctionnement reste le même.