Au fur et à mesure que les tests de codage avancent, je me rends compte que le CPLD se rempli très vite et que, si le nombre d’entrée sortie est suffisant, le nombre de cellules disponibles devient très en dessous de mes prévisions.

Il faut, en effet, des compteurs pour les adresses de lecture vidéo mais également, pour l’échantillonnage de la vidéo native, des registres à décalage supplémentaires. Force est de constater que 128 cellules ne suffiront pas. Qu’à cela ne tienne, je vais doubler la mise en mettant un second CPLD. J’affecte le premier à la gestion des adresses et le second à la gestion des données.

Le gros problème étant de synchroniser rigoureusement les cycles des deux CPLD. Et là j’en ai ch…. Pas moyen de trouver une méthode de synchronisation qui ne me décale pas les signaux d’une demi période d’horloge. Les horloges de bases étant les mêmes toute tentative de synchronisation provoque des « glitch » qui perturbe les signaux.

La seule solution possible est de faire sortir les signaux de cycles d’un CPLD vers l’autre, On gagne en synchro puisque le décalage est égal au temps de propagation d’un CPLD soit 10ns max.

A ce stade, la carte d’évaluation est insuffisante pour tester un montage à deux CPLD et plutôt qu’en faire une seconde qu’il faudrait interconnecter avec une foule de liaison pouvant induire des faux contacts, je décide de me faire réaliser une carte que j’espère finalisée.

 

 

 

Je détermine donc les lignes qui seront utiles pour chaque CPLD, je prévois quelques lignes inter-CPLD de plus au cas où, qui donne à peu près ceci :

Et que je m’empresse à transformer en Circuit Imprimé pour l’envoyer réaliser chez le chinois, oui, oui, mais un autre. Ce n’est pas très cher et c’est de bonne qualité. Pour une première commande si la carte fait moins de 100x100mm la confection de cinq cartes ne coute que quelques euros pour une grosse semaine de délais. Plutôt intéressant, donc on y va !

 

 

 

 

 

 

 

 

 

 

 

 

Une semaine plus tard, il ne reste qu’à câbler le tout et commencer à intégrer les fonctionnalités désirées. Et voici la carte dotée de l’ensemble de ses composants :

Avant d’en arriver là il m’a fallu passer quelques jours pour « déverminer » la carte. Ben oui, nul n’est parfait et je me suis aperçu que j’étais loin de l’être.

-        Contrôle des alimentations : Ok

-        Contrôle des lignes JTAG, car une des fonctionnalités que je n’ai pas testées est le chainage de deux CPLD via le bus JTAG : Ok

-        Contrôle des lignes à destination de la vidéo du TRS-80 : Mince, j’ai oublié de router trois pistes ! Je place donc mes trois premiers straps

Je connecte à présent ma carte au bus d’extension du TRS-80… rien ne se passe ! Pas d’alimentation.

La ligne 39 du bus s’extension est pourtant supposée me donner du 5V. Je déconnecte, démonte le TRS-80 et m’aperçois que la documentation n’est conforme et que la piste 39 est connectée à la masse. Pas étonnant que je n’ai pas trouvé d’alimentation, un strap de plus sur la carte. En contrôlant plus finement la documentation et le câblage réel, je m’aperçois également que les numéros de broches ne correspondent pas au connecteur ; elles sont inversées paires et impaires.

 

 

Pour résoudre ce problème, je décide re reprendre le cordon en nappe qui relie la carte au TRS-80 en inversant deux à deux chaque paire et un coupant le fil 39 pour y insérer une prise d’alimentation qui me donnera le 5V nécessaire à l’alimentation de la carte vidéo. Fort heureusement je dispose d’une imprimante 3D pour que ça reste esthétique.

 

 

La carte ainsi connectée ne pose plus de problème. Elle est bien alimentée et ne perturbe pas le fonctionnement de l’ordinateur.