Retro-ingénierie d'une carte Z80


Bonjour à tous,

En m'intéressant aux projets rétros, j'en suis venu à m'intéresser au Z80 et ses diverses architectures... puis arrive cette ancienne centrale téléphonique propulsée par des cartes Z80 (voir l'article "Récupération: du Z80 dans une vieille centrale téléphonique analogique").


Carte Processeur Z80

La carte processeur offre tout ce qui est nécessaire pour réaliser un système à base de Z80.


Dans le premier article, le carte mère Z80 était détaillée avec l'emplacement de tous les composants et leur identification (tel que libellé sur la sérigraphie) avec la valeur des composants passif (résistance, condensateur, etc).

Test de démarrage

Après avoir identifié tension d'alimentation (5V et GND) sur le port P2, j'ai mis a carte sous tension puis inspecté le signal Clock sur le Z80 à l'aide d'un oscilloscope.

C'est comme cela que j'ai appris que le processeur est cadencé à 2 Mhz.

Pour m'assurer du bon fonctionnement général de la carte, j'ai effectué les vérification suivantes:

  • Vérifier le bus d'adresse: A0 présente de l'activité => OK
  • Contrôler le bus de donnée: D0 à D7 présentent de l'activité => OK
  • Vérifier le signal Chip Select (ou CHip Enabled) sur la RAM et les ROM: Activité => OK

Tout cela indique que la carte est en état de fonctionnement :-)

Reconstitution du schéma

Collecte d'information technique

Après une collecte minutieuse des fiches techniques pour les composants de la carte, cela permet d'identifier la fonction (et nom) de chaque broche de chaque composant .

Préparation Kicad

Kicad est un logiciel open-source permettant de réaliser des cartes électronique.
Ce qui m'intéresse ici c'est de saisir le schéma.

Si le Z80 et les Z80-PIOs sont présents... tout comme les composants logiques les plus répandu... ce n'est pas le cas de la SRAM, du Z80-CTC et nombre d'autres composants relatif au traitement DTMF (la partie téléphonie).

Il faut donc créer une série de composant complémentaire pour Kicad (ce qui réclame déjà un temps certain).

Préparatif du schéma

Créer un nouveau projet Kicad pour débuter la saisie du schéma.
Y placer tous les composants principaux (Z80, ROMs, SRAM, tous les composants logiques, etc).

Perso, je garde une disposition proche de celle de la carte (y compris l'orientation du brochage) afin de faciliter la transposition entre la carte et le schéma.

Décodage de la carte

La carte est en double-face, il est donc possible de suivre les pistes (plus ou moins car elles sont parfois masquées sous certains composants).
C'est aussi le moment de sortir le multimètre en test de continuité... pour s'assurer que l'on suit bien la bonne piste.

Truc & astuce: Kicad propose la fonctionnalité de libellé (Label  en anglais) permettant de nommer des signaux (donc pas besoin de fils). Cela permet d'éviter de tirer de nombreux fils et d'avoir des raccordements spaghetti dans tous les sens.
Il n'est même pas nécessaire de tirer les bus immédiatement.

Par où commencer?

  1. Par le bus de donnée (8 lignes)
  2. Puis le bus d'adresse (16 lignes) qui fera intervenir les premiers composants logiques de sélection ROM / RAM.
  3. Puis les Chip Select et/ou Chip Enabled où il y aura aussi des composants logiques dans la chaîne de commande.
  4. Viennent ensuite les signaux read/write/M1 que l'on retrouve autour du Z80
  5. Suivre tous les signaux des PIOs (soit 3 * 16 broches)
  6. Suivre tous les signaux du connecteur P1 (2x 23 broches)
  7. Suivre Signal d'horloge

A ce stade, 80 à 90% des relevés sont faits et vérifiés!
Voilà ce que cela donne sur le schéma avec assignation des libellés... un vrai travail de fourmi

J'espère qu'en cliquant dessus il sera possible de l'agrandir assez pour inspecter les premiers détails du schéma.

Schéma préliminaire - cliquer pour agrandir

Dominique


Aucun commentaire