Bug des solénoïdes SYSTEM 80A
Impulsions indésirables
Pilotage hasardeux des solénoïdes
SYSTEM 80/80A/80B
Carte CPU, conception et critiques
Sur la carte CPU, la section concernant la commande des solénoïdes et des sons est d'une complexité étonnante. Une simple étude du schéma suffit à remarquer la lourdeur de la solution mise en oeuvre, avec des inversions multiples des signaux et des sorties peu cohérentes avec l'utilisation d'une carte driver séparée. Le résultat est complexe, peu performant, sujet à pannes.
Et si cela ne suffisait pas, nous avons découvert également que le pilotage logiciel de cette partie était particulièrement mal écrit. Il en résulte des anomalies, certes peu remarquables au premier abord, mais qui peuvent se réveler génantes dans le cas où l'on souhaite utiliser ces sorties pour des extensions.
Principe fondamental de fonctionnement
Le port A du 6532 U6 est utilisé pour activer deux groupes de solénoïdes, à travers un décodeur 74LS139.
Les sorties sont validées par deux signaux 1G et 2G. On remarque également la présence d'un 7404 sur les entrées A/B sur 74LS139.
Pilotage théorique et bug
En principe, lorsque l'on pilote le port A du 6532, il n'y aucune garantie que tous les signaux commutent exactement au même instant. On peut effectivement constater des ecarts de quelques ns selon les broches.
Sur la carte CPU, l'utilisation du 7404 induit également un retard suplémentaire de quelques ns (parfois quelques dizaines de ns) sur les entrées A/B. Il est par conséquent évident, que les signaux A/B et G ne sont pas présentés au même instant au 74LS139.
La bonne pratique est de, d'abord s'assurer que les entrées 1G/2G ne sont pas actives, ensuite présenter sur A/B la sélection du solénoïde, et enfin activer la sortie 1G/2G.
Malheureusement, les programmeurs n'ont absolument pas tenu compte de cette contrainte et pilotent le port A en une seule fois ! Lorsque l'on procède ainsi, on autorise les sorties du 74LS139 (via les broches 1G/2G) alors que les entrées ne sont pas encore stabilisées. Il en résulte, que de temps en temps, on retrouve un peu n'importe quoi sur ces sorties !
En utilisant un analyseur logique rapide, il est très facile de mettre en évidence ces impulsions parasites.
Conséquences et correctif
Pratiquement, ce bug passe souvent inaperçu, car les impulsions parasites sont extrémement courtes. Une impulsion de quelques ns n'est absolument pas visible et ne suffit pas à activer une bobine.
En revanche, si on désire réutiliser les sorties pour commander un module électronique, ces micro-impulsions sont parfaitement détectées et peuvent causer des dysfonctionnements.
Nous avons apporté un correctif au SYSTEM 80A pour pouvoir piloter proprement une carte d'extension lampes. Ce correctif est inclu avec l'adaptateur PROM unique.