[Thomson] SDDRIVE

Placez ici vos trucs et astuces, étalez sans retenue votre savoir-faire et votre science qui va nous permettre de redonner une apparence neuve et fonctionnelle à nos bouzes.

Modérateurs : Papy.G, fneck, Carl

Avatar du membre
jice
Messages : 53
Enregistré le : 21 avr. 2014 15:08

Re: [Thomson] SDDRIVE

Message par jice » 07 déc. 2017 11:00

Impressionnant la démo Daniel ! Bravo :)
Et ce thread se lit comme une aventure :D
TO7 - TO7/70 - TO8 - TO9+

Daniel
Messages : 9607
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel » 07 déc. 2017 13:52

@jice: Merci pour les encouragements. L'aventure n'est pas terminée, par contre le premier obstacle est franchi...

Pour mémoire, le signal SCK en jaune après un filtre RC (R=100 ohms, C=470 pF). En vert la ligne d'adresse /$Axxx

sddrive-glitch6.png
sddrive-glitch6.png (10.76 Kio) Vu 160 fois

J'ai eu l'idée d'ajouter une résistance de pull-up de 1K, voici le résultat :

sddrive-glitch7.png
sddrive-glitch7.png (11.14 Kio) Vu 160 fois

C'est (à mon avis) excellent. Le glitch lors de la montée du signal /$Axxx est à peine discernable. La forme arrondie du signal SCK n'est pas gênante, car avant la carte SD il y a un buffer d'adaptation de niveau (5V --> 3,3V) qui le remet parfaitement en forme.

Cette solution étant la plus simple possible, je vais en rester là, sauf si je rencontre d'autres problèmes par la suite. Dans l'immédiat tout fonctionne merveilleusement bien, j'ai booté plusieurs dizaines de fois sur la carte SD sans la moindre erreur et la démo "Imagine" tourne en boucle depuis ce matin. J'ai juste coupé le son car au bout d'une vingtaine de fois la répétition devient pénible, même si la qualité est bonne.

Maintenant je vais me consacrer au logiciel du contrôleur. Je maîtrise mieux l'informatique que l'électronique, tout devrait bien se passer.
Sauf imprévu, les Thomson auront un nouveau périphérique début 2018.
J'ai déjà reçu le boîtier en plastique, il est noir et brillant, il faudra faire attention aux traces de doigts...
Daniel
L'obstacle augmente mon ardeur.

Avatar du membre
6502man
Messages : 8491
Enregistré le : 12 avr. 2007 22:46
Localisation : VAR
Contact :

Re: [Thomson] SDDRIVE

Message par 6502man » 07 déc. 2017 16:41

Bravo Daniel, pour la résolution du problème, fallait trouvé :D
Phil.

www.6502man.com

To bit or not to bit.
1 or 0.

Avatar du membre
irios
Messages : 3074
Enregistré le : 04 nov. 2007 19:47
Localisation : Rochefort du Gard (30)
Contact :

Re: [Thomson] SDDRIVE

Message par irios » 07 déc. 2017 17:07

Bravo !!!
http://irioslabs.over-blog.com/

La connaissance ne vaut que si elle est partagée par tout le monde.
I2C

jasz
Messages : 219
Enregistré le : 05 oct. 2016 20:05
Localisation : Quelque part dans le 31

Re: [Thomson] SDDRIVE

Message par jasz » 07 déc. 2017 17:47

Félicitations! 8)

Je passe dors et déjà commande :)

Avatar du membre
Totor le Butor
Messages : 1230
Enregistré le : 07 sept. 2011 16:14
Localisation : Paris

Re: [Thomson] SDDRIVE

Message par Totor le Butor » 07 déc. 2017 18:35

Top ! 8)
La résistance de 1k est installée où ?
Directement en sortie du 133 ou après la résistance de 100 ohms ?
Born to bricole
[Rch] Vieux composants électroniques et circuits intégrés toute époque et vieilles cartes .

Daniel
Messages : 9607
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel » 07 déc. 2017 19:06

C'est après la résistance de 100 ohms, juste à l'entrée du module de la carte SD. Il y a le condensateur de 470 pF vers la masse et la résistance de 1K vers le +5V. Dès que j'aurai fini le schéma définitif de l'ensemble contrôleur + interface carte SD je le publierai dans ce fil de discussion.
Merci à tous ceux qui m'ont aidé !

[Edit]
J'ai oublié de préciser qu'avec le filtre du signal SCK après la porte NAND, il n'est plus nécessaire de filtrer les lignes d'adresse en entrée.
C'est un gain de 13 résistances et de 13 condensateurs. Le circuit imprimé sera plus simple et la fabrication plus facile.
Pour le filtre, j'ai essayé différentes valeurs de condensateurs. Avec 220 pF ou 1 nF ça ne marche pas, il faut impérativement 470 pF.
Sans la résistance de 100 ohms ça ne marche pas davantage. Je n'ai pas essayé d'autres valeurs.
[/Edit]
Daniel
L'obstacle augmente mon ardeur.

Avatar du membre
Totor le Butor
Messages : 1230
Enregistré le : 07 sept. 2011 16:14
Localisation : Paris

Re: [Thomson] SDDRIVE

Message par Totor le Butor » 07 déc. 2017 20:49

Daniel a écrit :
07 déc. 2017 19:06
C'est un gain de 13 résistances et de 13 condensateurs
Champagne !!! :mrgreen:
Daniel a écrit :
07 déc. 2017 19:06
Avec 220 pF ou 1 nF ça ne marche pas, il faut impérativement 470 pF.
Sans la résistance de 100 ohms ça ne marche pas davantage.
A cette fréquence, les filtres sont très chatouilleurs et dépendent entièrement des types de circuit utilisés, du type de parasite à supprimé/atténué et surtout de la charge sur le signal à remettre en forme.
A ma connaissance il n'existe pas de formule standard à utiliser et il n'est pas rare de trouver des montages alambiqués avec des associations de diode, résistance et condensateur (Cf le DAI par exemple).
Born to bricole
[Rch] Vieux composants électroniques et circuits intégrés toute époque et vieilles cartes .

Daniel
Messages : 9607
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel » 08 déc. 2017 10:33

Ci-dessous le schéma provisoire de SDDRIVE (Cliquez sur l'image pour l'agrandir) :

Image


Et voici à quoi ressemblera la carte (Sous réserve de modifications ultérieures) :

Image


Le boîtier :

Image
Daniel
L'obstacle augmente mon ardeur.

Daniel
Messages : 9607
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel » 08 déc. 2017 21:42

Après les dernières modifications le contrôleur SDDRIVE fonctionne parfaitement bien sur MO5. Il a ensuite été testé avec quelques autres machines, une dizaine d'essais sur chaque (chargement d'un jeu). Je note ci-dessous le nombre de tentatives réussies pour 10 essais :
- MO5 : 10/10 8)
- MO6 : 10/10 8)
- TO7/70 : 10/10 8)
- TO8D : 10/10 8)
- TO8 n°1 : 5/10 :roll:
- TO8 n°2 : 1/10 :twisted:

La bonne nouvelle, c'est qu'il a fonctionné sur TO8 alors qu'avant la modif la carte SD ne s'initialisait jamais. Mais il y a un vrai problème avec cette machine, il va falloir l'élucider, et ce n'est pas facile. On peut exclure un problème soft puisque de temps en temps ça marche. Qu'a donc de particulier le TO8 ?

Côté soft le BIOS (initialisation, lecture/écriture secteur, formatage, etc.) et le programme SDDRIVE_SEL (choix du fichier SD dans la liste du répertoire principal) sont terminés et en cours de test. Il ne reste que de petites corrections et optimisations à terminer. Les tests de vitesse montrent les progrès réalisés. En débit pur, c'est 4 fois plus rapide, mais ce n'est pas pour autant que toutes les opérations de chargement vont 4 fois plus vite, car il y a des temps de traitement des données incompressibles. Néanmoins on constate un net progrès par rapport au contrôleur CS91-280. Comparés avec ceux d'une vraie disquette, les temps de chargement d'un jeu sont en moyenne divisés par 2 ou 3.

Code : Tout sélectionner

=============================================
Temps comparés entre les contrôleurs sur MO6
- CD90-351 avec disquette 3,5 pouces
- CS91-280 avec interface SDMOTO et carte SD
- SDDRIVE avec interface SDDRIVE et carte SD
=============================================
Fonction               CD90-351   CS91-280   SDDRIVE 
--------------------   --------   --------   --------  
Charger MACH3             0:58       0:32      0:17
Charger SPACE RACER       0:25       0:15      0:11
Charger TURBO CUP         1:13       0:56      0:38        
DSKINI0                   0:35       0:02      0:01  
BACKUP0TO1                3:45       2:56      1:20 
Daniel
L'obstacle augmente mon ardeur.

Avatar du membre
irios
Messages : 3074
Enregistré le : 04 nov. 2007 19:47
Localisation : Rochefort du Gard (30)
Contact :

Re: [Thomson] SDDRIVE

Message par irios » 08 déc. 2017 22:47

Daniel,
Quel est le signal que tu prends sur le TO8 pour valider ton adresse ? D'ailleurs, même question pour les autres machines ? :D
En effet, je pense que le signal d'horloge E y est pour quelque chose. :mrgreen:
http://irioslabs.over-blog.com/

La connaissance ne vaut que si elle est partagée par tout le monde.
I2C

Daniel
Messages : 9607
Enregistré le : 01 mai 2007 18:30
Localisation : Vaucluse
Contact :

Re: [Thomson] SDDRIVE

Message par Daniel » 09 déc. 2017 08:11

Si l'adresse est simplement décodée sans validation, il y a un glitch au moment ou l'une des lignes d'adresse inversée (/$Axxx, A11 et A6) change d'état. Je l'explique par le temps de propagation dans les inverseurs.

J'ai donc eu l'idée de valider l'adresse par le signal d'horloge E. Dans ce cas le glitch est supprimé, comme je m'y attendais, mais il en apparaît un autre juste à la fin du top d'horloge SCK en sortie du 74LS133 (voir mes posts précédents). C'est pourquoi j'ai abandonné cette solution, je suis revenu à la première en ajoutant un filtre RC.

J'ai prévu de faire un autre essai de la deuxième solution (valider l'adresse par le signal d'horloge E) en ajoutant aussi le filtre RC en sortie.

Après je pourrais essayer la technique du transistor, c'est certainement plus propre. La seule difficulté est de trouver la place sur mon prototype pour ajouter les trois transistors et les résistances qui vont avec.

Un autre point à étudier : le filtre RC s'applique uniquement au signal SCK à destination de la carte SD. Par contre, dans la logique de commande du buffer 74LS125, le glitch n'est pas éliminé, car j'utilise directement la sortie du 74LS133 (voir schéma). Il faudrait essayer de prendre le signal après le filtre RC et pas avant.
Daniel
L'obstacle augmente mon ardeur.

Avatar du membre
Silou78
Messages : 83
Enregistré le : 11 févr. 2017 14:54
Localisation : Yvelines (78)

Re: [Thomson] SDDRIVE

Message par Silou78 » 09 déc. 2017 08:46

Bonjour,
Et pourquoi ne pas essayer aussi de réduire le glitch en augmentant le retard sur les lignes d'adresses non-inversées ? Par exemple en remplaçant le 100pF par un 470pF ? On devrait plus ou moins ramener le temps de montée aux alentours du temps de propagation des inverseurs, mais est-ce que ce sera suffisant pour éliminer complètement le problème, là est toute la question...
Sylvain
Les + malins et les + chanceux sont au sommet, les autres grenouillent.
La vie est un éternel combat contre soi-même.

Répondre