La copie d'anciennes EPROM 2708


La suite de la console Coherent Light : les EPROM du séquenceur !

Comme constaté lors de la restauration de la console, le séquenceur utilise deux mémoires EPROM type 2708. Si ces circuits sont encore bons, ils sont toutefois périmés, et ne peuvent plus être lus ou programmés avec des programmateurs actuels.

Comment relire ces vieux composants, pour sauver le contenu et les remplacer par des plus "modernes" ?

EPROM 2708

Mais finalement, que peut-on reprocher à ces vieilles EPROM 2708 / MSM3758 ?

Certainement pas un manque de fiabilité, ces mémoires ont maintenu leur programmation pendant 30 ans pour celle de droite et 35 ans pour celle de gauche ! Donc, on peut parler de composants fiables. Mais hélas, on doit aussi parler de composants totalement obsolètes.  

Obsolètes ? Oui. Ces très anciennes EPROM (1k octets, commercialisées en ... 1975) ont en effet besoin de trois tensions d'alimentations pour fonctionner ! Il leur faut, classiquement, une alimentation +5V. Mais également du +12V et du -5V !

Cela les rend totalement incompatibles avec les programmateurs actuels, qui ne génèrent pas ces tensions. Les mémoires de même type et de générations suivantes (après 1977) ne nécessitent qu'une simple alimentation 5V. Comment pourtant pouvoir au moins relire le code que ces antiques EPROM contiennent ? Et éventuellement les remplacer par d'autres modèles plus récents ?

En regardant les brochages de différentes EPROM, il est visible que le circuit qui a succédé à la 2708 est quasiment compatible broche à broche. Il s'agit de la 2716 qui contient 2k octets. Toutes les broches de données, d'adresses et les alimentations 0 et +5V sont identiques.
Bien sur, sur la 2716 on trouve une ligne d'adresse supplémentaire, qui a pris place sur la broche 19 qui était l'alimentation 12V de la 2708.
La broche 21, qui est le -5V sur la 2708 est VPP (tension d'écriture) sur la 2716. En lecture sur la 2716, cette broche est au potentiel 5V.
La broche18, CE (chip enable) sur la 2716 correspond à la tension de programmation sur la 2708 mais en mode lecture elle est à 0V dans les deux cas. 
Enfin, la broche 20 qui est OE (output enable) sur la 2716 est la fonction CS (chip select) sur la 2708.
Avec un minimum de modifications, on peut donc adapter une 2716 pour remplacer une 2708 !   

Et pour relire les 2708 ? Eh bien, construisons un adaptateur ! Celui-ci ne servira qu'à lire ces anciennes 2708 pour pouvoir les remplacer par des 2716 plus faciles à trouver et surtout à (re)programmer. 

EPROM 2708

Un support à faible force d'insertion est monté sur un bout de circuit à pastilles. Un second circuit à pastilles supporte un connecteur "mâle-mâle" 24 broches. Les deux circuits sont montés l'un au-dessus de l'autre, et maintenus en place par deux petites vis et entretoises.

Le connecteur mâle sera donc inséré dans le programmateur, et le support femelle du dessus contiendra la 2708 à lire.

EPROM 2708

Toutes les connexions compatibles broche à broche sont simplement raccordées les unes aux autres (voir schéma ci-dessous). 

La broche 18 du connecteur de base est reliées à la 20 du support 2708. Les broches 19 (A10), 20 (OE) et 21(VPP) du connecteur male ne sont pas connectées : elles ne seront pas nécessaires en lecture seule. La broche 18 du support de la 2708 sera relié au 0V (fil bleu sur la photo) et les broches 19 et 21 du support 2708 seront alimentées via une alimentation externe (via le câble plat qu'on voit sur la photo).  

EPROM 2708

Pour générer les tensions auxiliaires de la 2708 il va donc falloir une alimentation extérieure. Ici, rassemblement des composants et prépartion de la platine auxiliaire. Un câble plat reliera cette platine au support d'adaptation. On y trouvera les connexions suivantes : 0V (comun), +5V provenant du programmateur, +12V  et -5V pour la 2708. 

Pour mettre en service les deux tensions auxiliaires au bon moment, on va simplement détecter la présence du +5V sur le connecteur, 5V fourni par le programmateur lors de la lecture du composant. 

EPROM 2708

Une fois les composants rassemblés, le schéma est établi (en fonction des composants dénichés)...  

Un petit transformateur 12V AC fournit la tension d'alimentation. D1, D3, C1 et C2 forment un doubleur de tension, pour avoir une tension suffisante pour générer le +12V.  D2 et C3 forment un redresseur mono alternance, pour la tension négative. Les régulateurs IC1 (7812) et IC2 (7912), génèrent respectivement le +12V et le -5V.   

Les condensateurs C3, C4, C5 et C6 servent à améliorer la stabilité des deux régulateurs de tension, C7 et C8 améliorent encore le filtrage.

Les deux tensions devront être envoyées vers la 2708 uniquement lorsque celle-ci sera alimentée par le programmeur. C'est le rôle des transistors T1 à T4. T4, connecté en émetteur commun, deviendra actif lorsque la tension d'alimentation sera présente sur la broche 24 du connecteur inséré dans le programeur. T4 va piloter la base de T3, qui passera actif également et rendra conducteurs T1 et T2 simultanément. Les résistances R2 et R3 ont pour but de bloquer les transistors T1 et T2 lorsque T3 est inactif. Le choix des transistors est assez large. Pour T1 et T2 il vaut mieux utiliser des 2N2907 et 2N2222 (ou similaires, question de courant collecteur supporté par le composant mais aussi pour la dissipation thermique), par contre pour T3 on peut utiliser un BC557 et pour T4 un BC547 ou des équivalents.  

Les LED 2 et 3 indiquent la présence des deux tensions lorsque celles-ci sont présentes. La connexion vers le connecteur et le support se fait par un petit câble plat à 5 conducteurs (4 suffisent, mais ici j'utilise la récupération...) Le -5V est ainsi relié à la broche 21 du support, et le +12V est relié à la broche 19 du support. Attention de ne pas se tromper, il ne faut en aucun cas renvoyer ces tensions vers le programmeur ! Il ne doit pas y avoir de jonction entre les broches 19 et 21 du connecteur et du support !

EPROM 2708

Le montage d'alimentation tient sur une plaquette d'essais à pastilles de 10 X 4 cm...  

Connecteur pour l'alimentation et connecteur vers le support adaptateur. C'est plus facile pour ranger ce montage par la suite (ce n'est pas le genre de chose qui sera utilisé souvent) !

EPROM 2708

Voila l'ensemble de la réalisation...   

Deux petits fils sont soudés sur le support adaptateur, pour essai à vide : il faut s'assurer que tout fonctionne et est bien câblé avant de mettre ce montage sur un programmeur ! Cela semble bien en ordre, on va pouvoir relire ces vieux composants... 

EPROM 2708

Le montage de conversion, utilisé sur le programmeur, avec une ancienne EPROM sur le support. 

Lecture de cette vieille mémoire, mais ... le logiciel du programmeur ne connaît pas les 2708 ! Aucune importance. La ligne d'adresse A11, qui n'existe pas dans la 2708, est ici "en l'air" côté programmateur. On peut donc lire ces vieilles 2708 comme des 2716 génériques ! Le programmeur va alors générer un fichier de 2k octets, contenant deux fois le contenu de la 2708 (puisque A11 n'est pas utilisée par la 2708, le programmateur va "voir" deux fois son contenu).   

EPROM 2708

Vue rapprochée de la vieille EPROM sur le support...   

Pour le programmeur, c'est une 2716 ! Bien sur ceci ne fonctionnera que pour lire les anciennes 2708 / MSM3758. Mais cela fonctionne !

EPROM 2708

Une fois les deux anciennes 2708 lues, et les fichiers binaires sauvés, programmation de deux 2716, directement sur le programmateur. Les voici à la place des 2708 dans la console Coherent Light.

Attention ! Avant de remettre en service avec les 2716 il faut modifier les câblages allant aux broches 19 et 21 sur le circuit qui va recevoir les nouvelles EPROM ! Si les 2716 sont alimentées comme des 2708 elles vont claquer, car non prévues pour le +12 et le -5 volts ! La broche 19 de la 2716 doit être mise au 0V, et la broche 21 au +5V ! Il faut donc modifier le circuit imprimé avant d'utiliser les 2716.   

Voila donc les vieilles 2708 hors service, elles auront fort bien conservé leurs données pendant 3 décennies. Toute la question est de savoir combien de temps elles auraient encore été bonnes. 10, 20 ans ? Comment le savoir ? Dans d'autres conditions d'usage, certaines de ces mémoires ont perdu leur contenu après une vingtaine d'années...   

Ce fut l'occasion de réaliser aussi ce petit montage, simple, et permettant de sauvegarder le contenu de ces vieilles mémoires, qui ne serait pas facile (voire impossible) à refaire en cas d'effacement du contenu !

© Radiocollection.be, Thierry Magis 2015


Retour page restauration console Coherent Light

Retour page expérimentations

Page accueil