TAVERNIER 6809

C'est la catégorie reine de l'ordinophile, 8 bits et pas un de plus!
Single board ou bus S-100 acceptés.

Modérateurs : Papy.G, fneck, Carl

Avatar de l’utilisateur
mjwurtz
Messages : 90
Inscription : 30 nov. 2014 17:27

Re: TAVERNIER 6809

Message par mjwurtz »

Bonjour Michel et Frédéric,
Ce n'était pas plutôt pour la carte vidéo SVG, ces délais TTL ?
Pour la carte CPU, la mémoire est statique, E et Q devraient suffire à la faire fonctionner sans autre forme de procès...
A la limite, l'idéal serait d'avoir une version CMOS du 6809 avec registres statiques, ce qui permettrait de faire fonctionner le CPU à très basse fréquence, histoire de voir ce qui se passe...
A+,
Michel
Avatar de l’utilisateur
michel guyot
Messages : 612
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour à tous

Mes investigations continuent....

J'ai vérifié que sur quelques adresses précises, les 2 PROMs de décodage faisaient bien leur travail

Ma carte CPU09 d'origine sur laquelle je fais tourner des boucles d'instructions, me sert de référence pour identifier les signaux de sélection des chips

Sur ma carte en essai j'essais de reproduire ces mêmes boucles en les implantant dans l' EEPROM, mais sans succès pour l'instant

Ci-dessous un exemple de ce que je cherche à faire, ROM
Nota: les instructions MUL me permettent de repérer les instructions à l'oscillo

Mais je commets peut-être une erreur dans la programmation de l' EEPROM....

A plus
Michel
2021-09-22 - Essai Carte CPU09.jpg
2021-09-22 - Essai Carte CPU09.jpg (421.96 Kio) Consulté 2069 fois
Avatar de l’utilisateur
leduigou
Messages : 542
Inscription : 08 mai 2011 21:00
Localisation : Paris, 6ème

Re: TAVERNIER 6809

Message par leduigou »

Bonjour,

Il faudrait faire une eprom de test qui n’utilise pas la ram et communique avec le bip. Il y en avait une pour tester un par un les composants sur l’oric.
Le 6809 devrait pouvoir faire cela, sans sous programme… ni pile …

A voir
Frederic
Cordialement
Frédéric

Forget the C:\ prompt! Real computing starts with +++
Avatar de l’utilisateur
michel guyot
Messages : 612
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour Frederic, bonjour à tous

Je suis toujours bloqué sur cette carte....
Bien sur, un mouchard implanté en EEPROM me serait d'un grand secours...c'est un peu ce que je cherche à faire, mais de manière très simple

Mon problème est tout d'abord de cerner la nature du problème hard , soft ou les deux ?
Le schéma de la carte CPU09 est valide et les vérifications que j'ai faites ne montrent pas d'erreur de transcription
La qualité du PCB est plus que correcte, les autres cartes que j'ai réalisé avec JLCPCB n'ont jamais montré de défauts de fabrication
Le câblage de la carte (soudures des composants passifs et supports) peut apporter son lot de problème, je n'ai rien trouvé pour l'instant
Concernant la qualité des composants actifs, là je suis moins affirmatif , plusieurs MC6809 ne fonctionnaient pas du tout (pas d'horloge)
Les mémoires de décodage que j'ai reçues sont des Harris M3-7611A-5 (ma carte CPU09 d'origine est équipée de Harris M1-7611-2)

J'ai tout de même l'impression que le problème se situe au niveau du décodage d'adresse....
J'essaie d'implanter en EEPROM quelques instructions qui tournent en boucle, qui ne nécessitent ni pile, ni RAM, qui sollicitent différentes adresses...
Ces adresses devraient normalement faire réagir le décodage d'adresse...

Quelqu'un pourrait-il me dire si je ne commets pas une erreur de principe dans l'utilisation de l'EEPROM de 8K byte que j'utilise (AT28C64B) ?
L'adresse A12 de cette EEPROM est fixée à 0

A plus
Michel
2021-09-25 - Essai Carte CPU09.jpg
2021-09-25 - Essai Carte CPU09.jpg (385.29 Kio) Consulté 2001 fois
Avatar de l’utilisateur
Franckb78
Messages : 133
Inscription : 12 janv. 2020 20:55
Contact :

Re: TAVERNIER 6809

Message par Franckb78 »

Juste pour rappel, j'ai 5 6809P Thomson qui attendent sagement. Et plein de vieux composants neufs d'époque.

Et de la DRAM en pagaille.


Une idée vite fait pour valider peut être un tas de chose : sans ram sans eeprom, forcer le bus data sur 0x12 (NOP). Et donc voir si ca s'agite correctement coté bus d'adresse ?
Avatar de l’utilisateur
michel guyot
Messages : 612
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour Franckb78

Que veux-tu dire par forcer le bus datas sur 0x12 (NOP) ?
Michel
Avatar de l’utilisateur
Franckb78
Messages : 133
Inscription : 12 janv. 2020 20:55
Contact :

Re: TAVERNIER 6809

Message par Franckb78 »

8 resistances de rappel vers le 0v ou le +5v. Genre 1k, 2k2.

Le proc démarerra avec son PC à 0x1212 (normalement) l'incrementera , ne lira que des NOP et tout ca en boucle de 0 à 64k sur le bus d'adresse.
Comme si il était 'seul' sans périqphériques RAM/ROM. Mais tu as peux être déja determiné qu'il démarre correctement.
Avatar de l’utilisateur
michel guyot
Messages : 612
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour Franckb78

OK , j'ai compris
Je vais tenter la manip
Non, je ne suis pas encore certain que le processeur démarre sur le vecteur reset, d'où mes interrogations sur la mise en oeuvre de l' EEPROM

A plus
Michel
Avatar de l’utilisateur
michel guyot
Messages : 612
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour

Je poursuis mes investigations....

Un point positif tout de même, le système de décodage d'adresse réalisé par les deux PROMs fonctionne correctement
Sur ma carte en essai j'ai conservé uniquement les deux PROMs
En plaçant cette carte sur le bus de mon TAVERNIER, quelques boucles d'instructions placées en RAM permettent de faire apparaître des adresses précises et de vérifier que le décodage d'adresse de la carte en essai réagit correctement en dynamique
==> mon problème vient donc du fait que sur ma carte le système de décodage ne doit pas recevoir les bonnes adresses....

Pour Franckb78
J'ai placé mon processeur sur une plaquette d'essais et forcé les datas à 0 via des résistances de 1.6k.
L'horloge fonctionne, les signaux E et Q sont corrects (1MHz)
Le signal R/W (largeur 1µs) apparait toutes les 6µs
Une activité apparait sur le bus adresse mais sans analyseur logique l'interprétation reste difficile...!

A plus
Michel
Avatar de l’utilisateur
leduigou
Messages : 542
Inscription : 08 mai 2011 21:00
Localisation : Paris, 6ème

Re: TAVERNIER 6809

Message par leduigou »

Michel,

Essaye un programme de ce type, et regarder ce qui se passe sur la patte PA2.

****************************************
* ROM DE TEST POUR CARTE TAVERNIER *
* UTILISE LE PIA EN $EB00 SUR PA2 *
* POUR COMMUNIQUER ... *
* *
* LE 26/09/21 PAR FLD *
****************************************
*
PIADRA EQU $EB00
PIACRA EQU $EB01
CREN MACRO
* MACRO POUR PRODUIRE &1 CRENEAUX
TFR D,U SAUVEGARDE A ET B
* X EST LE COMPTEUR DE CRENEAUX
* Y EST LA LONGUEUR DU CRENEAUX
LDX #&1
LOOP0 LDY #&2
* PREPARE A
LDA PIADRA
ORA #$04 PA2 a 1
STA PIADRA
LOOP1 LEAY -1,Y
BNE LOOP1
LDY #&2
ANDA #$FB PA2 a 0
STA PIADRA
LOOP2 LEAY -1,Y
BNE LOOP2
LEAX -1,X
BNE LOOP0
TFR U,D RESTORE A et B
ENDM

ORG $1000
START
* INIT OF THE PIA
*****************
LDX #PIADRA
LDD #$3AFF
STA 3,X
STB 2,X
LDD #$3E3A
STA 3,X
STB 1,X
LDD #$9F06
STA 0,X
STB 1,X
LDA #$01
STA 0,X
* ENVOI 2 CRENEAUX LONGS
CREN 2,1000
* A PARTIR D'ICI, FAIRE DES TESTS
* ET UTILISER LES CRENEAUX POUR
* COMMUNIQUER ...
JMP START
END

Ce programme n'utilise que le 6809, le PIA et le décodage.
Tu peux ajouter en suite des tests et faire des signaux long ou courts pour savoir où tu en es ...
L'idée est d'écrire dans un registre, puis de le vérifier en lecture.
A et B sont préservés en U. X et Y sont modifiés, S n'est pas utilisé.

A+
Frédéric
Cordialement
Frédéric

Forget the C:\ prompt! Real computing starts with +++
Avatar de l’utilisateur
michel guyot
Messages : 612
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Pour Franckb78

J'ai raconté des bêtises, les datas n'étaient pas forcées à $12 (NOP)
Aprés correction de mon montage, l'adresse qui apparait sur les bus (A0 à A15) est bien incrémentée....à chaque instruction NOP

Le processeur tourne rond, un doute supplémentaire évacué, merci Franck

Pour Fréderic
Merci pour ce petit utilitaire...
Je vais voir ce que cela donne..

A plus
Michel
Avatar de l’utilisateur
Franckb78
Messages : 133
Inscription : 12 janv. 2020 20:55
Contact :

Re: TAVERNIER 6809

Message par Franckb78 »

Tu as fais un paté sur la pin 21 de U8. A priori c'est connecté mais vérifie quand même

Sur U5, vérifies que de temps en temps D0,D1,D2, D3 descendent à tour de role.

Je rajouterais des étiquettes juste pour info, genre ROM_CS RAM_CS PERIPH_CS EXTERNAL_CS (d'après ce que je lis).

Si ca bagote ca valide BA BS et la bascule D, U2 ,U3, c'est pas mal...
(toujours en NOP)
et U6 doit aussi bagoter ;)
Avatar de l’utilisateur
michel guyot
Messages : 612
Inscription : 20 mars 2016 16:01
Localisation : Pyrénées orientales

Re: TAVERNIER 6809

Message par michel guyot »

Bonjour Franckb78

Je progresse tout doucement

J'ai replacé le processeur sur la carte en essai, sans RAM et sans EEPROM
Toujours en forçant les datas à $12, le processeur démarre bien et balaye en boucle toutes les adresses

Sur A0, la période est de 4µs ce qui correspond au 2 cycle d' exécution de l'instruction NOP

Sur la PROM HAUTE (U5) les sorties O1, O2, O3, O4 descendent à tour de rôle avec des durées conformes à la largeur des plages d'adresses
O1 Pin 12 Buffer Données RAM => 120,320 ms
O2 Pin 11 UVPROM => 8,192 ms
O3 Pin 10 SRAM => 2,048 ms
O4 Pin 9 /CE PROM BASSE => 512 µs

Sur la PROM BASSE , les sorties semblent descendre, j'ai un peu de mal à les saisir à l'oscillo , la largeur des impulsions étant plus faible
O1 Pin 12 TIMER => 10 µs
O2 Pin 11 ACIA => 4 µs
O3 Pin 10 PIA => 8 µs
O4 Pin 9 PERI => 4 µs

Mes essais précédents effectués en générant des adresses particulières sur le BUS à partir de mon TAVERNIER, ont montré que les deux PROMs de décodage réagissaient correctement.
Je vais tout de même voir si je peux trouver une autre façon de régler le TRIGGER

A priori, il doit être possible de refaire le même genre d'essai avec une EEPROM remplie uniquement avec des NOP.....
Frederic m'a aussi transmis un utilitaire à placer en EEPROM et qui devrait m'aider dans mes investigations


A plus
Michel
Avatar de l’utilisateur
Franckb78
Messages : 133
Inscription : 12 janv. 2020 20:55
Contact :

Re: TAVERNIER 6809

Message par Franckb78 »

c'est effectivement la prochaine étape, mettre une eeprom avec quelquechose de connu et un résultat attendu.

comme simplement écrire a une adresse RAM et vérifier que R/W répond selon le programme.


genre (je connais pas cet assembleur mais tu comprendras)

Code : Tout sélectionner

RAM eq 0

start:
sta A, RAM
nop
nop
nop
nop
sta A, RAM
nop
nop
nop
nop
nop
nop
nop
nop
jmp start

; reset vector 
org $FFFE
start
si tu vois R/W s'activer alternativement entre 4 et 8 cycles, c'est bon pour la ROM, le prog tourne.

Tu as bien sur mis les jumpers correspondant à l' eeprom en place.....
Avatar de l’utilisateur
leduigou
Messages : 542
Inscription : 08 mai 2011 21:00
Localisation : Paris, 6ème

Re: TAVERNIER 6809

Message par leduigou »

Bonjour Michel,

Je pense qu’il est délicat d’utiliser la RAM pour les 1ers tests. En effet la sélection de la page se fait par le PIA et tu risques de ne pas maîtriser la sélection.
D’où ma proposition de tester le PIA sans la RAM au début.
Cela va sans dire (mais peut-être mieux en le disant) pour mes test j’ai mis un « org $1000 », pour toi, tu implantes le code en ROM avec le vecteur de reset qui pointe dessus comme dans tes tests à toi.

Bon courage
Frederic
Cordialement
Frédéric

Forget the C:\ prompt! Real computing starts with +++
Répondre