Processeur Hitachi HD63C09EP
Modérateurs : Papy.G, fneck, Carl
Processeur Hitachi HD63C09EP
Dans une quête de performance ultime pour le MO5, j'ai remplacé le processeur Thomson EF6809EP par un Hitachi HD63C09EP :
Malheureusement l'écran de démarrage n'affiche pas le texte attendu :
Je recherche des témoignages ou des conseils pour m'aider à progresser.
Malheureusement l'écran de démarrage n'affiche pas le texte attendu :
Je recherche des témoignages ou des conseils pour m'aider à progresser.
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Processeur Hitachi HD63C09EP
Fausse alerte
Le problème ne venait pas du processeur Hitachi, mais d'un mauvais contact dans l'extension mémoire 64K. Je l'ai enlevée, et maintenant le MO5 fonctionne à merveille (au moins pour les premiers tests) avec son nouveau processeur.
Actuellement le 63C09 est en mode "compatibilité 6809", il n'y a donc pratiquement pas de différence avec le 6809. Seules quelques instructions non documentées réagissent différemment, mais elles sont très rarement utilisées.
La suite du projet : tester le mode 63C09, avec moins de cycles consommés par les instructions du 6809, beaucoup d'instructions nouvelles et des registres supplémentaires, y compris un registre 32 bits qui ouvre des perspectives encore inexplorées. Un terrain de jeu nouveau pour les thomsonistes
Le problème ne venait pas du processeur Hitachi, mais d'un mauvais contact dans l'extension mémoire 64K. Je l'ai enlevée, et maintenant le MO5 fonctionne à merveille (au moins pour les premiers tests) avec son nouveau processeur.
Actuellement le 63C09 est en mode "compatibilité 6809", il n'y a donc pratiquement pas de différence avec le 6809. Seules quelques instructions non documentées réagissent différemment, mais elles sont très rarement utilisées.
La suite du projet : tester le mode 63C09, avec moins de cycles consommés par les instructions du 6809, beaucoup d'instructions nouvelles et des registres supplémentaires, y compris un registre 32 bits qui ouvre des perspectives encore inexplorées. Un terrain de jeu nouveau pour les thomsonistes
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Processeur Hitachi HD63C09EP
Tu l'as trouvé où ?
Chaque fois que j'ai essayé d'en acheter, c'était des faux
[EDIT] Je doute que ce soit une version C car c'est un fake.
Chaque fois que j'ai essayé d'en acheter, c'était des faux
[EDIT] Je doute que ce soit une version C car c'est un fake.
Re: Processeur Hitachi HD63C09EP
Je suis incapable de dire si c'est un vrai ou un faux, mais pour l'usage que j'en fait il me va très bien. Mon MO5 tourne avec depuis trois quarts d'heure, j'ai testé une dizaine de softs commerciaux et jusqu'à présent tout se passe bien. L'horloge est à 1 MHz, pour rester compatible avec les autres composants (en particulier la mémoire), le 6309 est donc loin de sa fréquence maxi.
http://cgi.ebay.fr/ws/eBayISAPI.dll?Vie ... 0951222499
http://cgi.ebay.fr/ws/eBayISAPI.dll?Vie ... 0951222499
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Processeur Hitachi HD63C09EP
Mon impression :
Le dessus de ton circuit n'est pas granuleux de par sa fabrication.
Il a été poncé, une couche de peinture immitant l'aspect granuleux a été passée
avant l'inscription de la nouvelle ref (HD63C09P).
C'est probablement un HD6309EP ou pire un MC6809EP
Gratte un peu le dessus avec une lame de rasoir ou de cutter, tu devrais voir la peinture partir.
Le dessus de ton circuit n'est pas granuleux de par sa fabrication.
Il a été poncé, une couche de peinture immitant l'aspect granuleux a été passée
avant l'inscription de la nouvelle ref (HD63C09P).
C'est probablement un HD6309EP ou pire un MC6809EP
Gratte un peu le dessus avec une lame de rasoir ou de cutter, tu devrais voir la peinture partir.
Re: Processeur Hitachi HD63C09EP
J'ai essayé ce petit programme :
Après exécution, un PRINTPEEK(&H900E) affiche 3, ce n'est donc pas un 6809
Après, que ce soit un 6309, ou un 63B09, ou un 63C09, peu importe pour ce que je veux faire. Je ne gratterai pas la peinture granuleuse, elle est très bien réussie, même un expert pourrait se tromper.
De toutes façons je ne dépasserai pas 1 MHz. Mais à moi tous les registres supplémentaires, les opérations entre registres, les multiplications sur 32 bits et autres fonctions cachées du 6309, sans parler de l'économie de cycles pour les intructions normales du 6809
Code : Tout sélectionner
ORG $9000
9000 3407 PSHS A,B,CC
9002 CC0102 LDD #$0102
9005 103089 ADDR A,B
9008 FD900D STD $900D
900B 3587 PULS CC,B,A,PC
900D 00 FCB $00
900E 00 FCB $00
Après, que ce soit un 6309, ou un 63B09, ou un 63C09, peu importe pour ce que je veux faire. Je ne gratterai pas la peinture granuleuse, elle est très bien réussie, même un expert pourrait se tromper.
De toutes façons je ne dépasserai pas 1 MHz. Mais à moi tous les registres supplémentaires, les opérations entre registres, les multiplications sur 32 bits et autres fonctions cachées du 6309, sans parler de l'économie de cycles pour les intructions normales du 6809
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Processeur Hitachi HD63C09EP
Daniel,
C'est malheureusement avec ce genre de comportement que les vendeurs chinois de composants contrefaits
prospèrent. La démarche normale serait d'ouvrir un litige chez Ebay pour contrefaçon et de mettre au vendeur
un carton rouge.
Et pas besoin d'être un expert pour détecter ce genre de faux grossier.
Un exemple de faux HD63C09 venant de UTsource (Ebay)
C'est malheureusement avec ce genre de comportement que les vendeurs chinois de composants contrefaits
prospèrent. La démarche normale serait d'ouvrir un litige chez Ebay pour contrefaçon et de mettre au vendeur
un carton rouge.
Et pas besoin d'être un expert pour détecter ce genre de faux grossier.
Un exemple de faux HD63C09 venant de UTsource (Ebay)
Re: Processeur Hitachi HD63C09EP
Super Daniel
Moi aussi j'aurais bien aimé en mettre un dans mon MO5.
Surtout pour OS9 ou le noyau est prévu pour les 2 processeurs en assemblage conditionnel.
Mais le défaut de cette méthode c'est que il n'y a plus la possibilité d'échange de programme.
Si tu écris une routine optimisée pour le 6309, tu sera le seul a pouvoir en profiter
Et adieux la compatibilité
Jacques
Moi aussi j'aurais bien aimé en mettre un dans mon MO5.
Surtout pour OS9 ou le noyau est prévu pour les 2 processeurs en assemblage conditionnel.
Mais le défaut de cette méthode c'est que il n'y a plus la possibilité d'échange de programme.
Si tu écris une routine optimisée pour le 6309, tu sera le seul a pouvoir en profiter
Et adieux la compatibilité
Jacques
-
- Messages : 7987
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: Processeur Hitachi HD63C09EP
Oui c'est clair que le 6309 est super. On gagne un max de cycles avec les nouvelles instructions (ADDR/SUBR/CMPR), et les anciennes mystérieusement lente sur le 6809 (TFR/EXG) prennent seulement 4/5 cycles au lieu de 6/8. ABX qui compte 3 cycles redescend à 1 seul sur le hitachi. Les modes d'adressages sont aussi beaucoup plus rapides: l'indexation "D,R" ne prends que 2 cycles au lieu de 4, et mieux si on utilise les nouveaux registres "W,R" ne prends qu'un seul cycle et ",W++" 1 cycle aussi. Ce registre W est sympa car il peut être utilisé comme accu, mais aussi comme registre d'indexe.Daniel a écrit :De toutes façons je ne dépasserai pas 1 MHz. Mais à moi tous les registres supplémentaires, les opérations entre registres, les multiplications sur 32 bits et autres fonctions cachées du 6309, sans parler de l'économie de cycles pour les intructions normales du 6809
Pour rêver aux possibilités ==> http://www.coco3.com/community/wp-conte ... n_Sets.pdf
C'est vraiment dommage que le TO9+ n'ai pas été équipé de cette puce en mode compatibilité et via un bouton turbo pouvant la faire tourner à 2Mhz (ou 3.5)... J'imagine qu'à 3.5Mhz en mode natif, cette puce se compare assez favorablement au 8088 à 4.77Mhz, ce qui aurait pu ouvrir le marché de la bureautique aux TO9+.
Dernière modification par __sam__ le 22 avr. 2014 22:55, modifié 2 fois.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: Processeur Hitachi HD63C09EP
L'idée m'est venu en lisant un article de Hirotsugu Kakugawa
Je voulais vérifier que ça pouvait être utilisé dans le MO5. Apparemment c'est le cas, puisque la première instruction non documentée essayée a marché (l'addition de deux registres). Je testerai aussi le gain de cycles en mode natif, juste pour le fun, car je n'ai aucunement l'intention de réécrire tout les softs Thomson pour leur faire gagner 10% en vitesse. Par contre je serais content de savoir que c'est possible.
Le gain de cycles, et surtout la présence de registres supplémentaires, pourraient améliorer très sensiblement la vitesse de transfert avec une carte SD. Avec le soft utilisant des composants standard je n'ai pas plus d'un ou deux utilisateurs, si je leur demande de changer le processeur leur nombre tendra rapidement vers zéro.
Code : Tout sélectionner
===*===*===*===*===*===*===*===*===*===*===*===*===*===*===*===
A MEMO ON THE SECRET FEATURES OF 6309
by Hirotsugu Kakugawa, (kaku...@csl.hiroshima-u.ac.jp)
Computer Systems Lab., Information Engineering Course,
Graduate School of Engineering, Hiroshima Univ., Japan
1. ** INTRODUCTION **
The CPU 6309 by HITACHI has secret features which is not written in
its manual. The purpose of this memo is to introduce them.
The features was originally reported in a magazine,
Oh!FM (1988 Apr.), which was written in Japanese. I did not tried all
of the features reported in the article, but I report the features as
far as I know.
HITACHI says in the manual of 6309 that 6309 is compatible with 6809,
but some OS-9 hackers found that it has secret features.
It has following features:
1. More registers (additional two 8 bit accumulators, 8 bit
register, and a 16 bit register),
2. Two modes (6809 emulation mode and native mode),
3. Reduced execution cycles in native mode,
4. More instructions (16 bit x 16 bit multiplication, 32 bit / 16 bit
division, inter-registers operation, block transfer, bit
manipulating operation which is compatible with 6801 has, etc)
5. Error trap by illegal instruction, zero division.
..........
Le gain de cycles, et surtout la présence de registres supplémentaires, pourraient améliorer très sensiblement la vitesse de transfert avec une carte SD. Avec le soft utilisant des composants standard je n'ai pas plus d'un ou deux utilisateurs, si je leur demande de changer le processeur leur nombre tendra rapidement vers zéro.
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
Re: Processeur Hitachi HD63C09EP
Pour le fun j’essaierais bien, sauf si il faut dessouder le CPU sur la carte mère
Avec le gain de vitesse de ce CPU tu doit pouvoir faire de superbe démos
Avec le gain de vitesse de ce CPU tu doit pouvoir faire de superbe démos
-
- Messages : 7987
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: Processeur Hitachi HD63C09EP
Oui le gain de vitesse n'est possible qu'en mode natif. En mode émulation les cycles sont identiques. A noter: en lisant la doc hitachi, j'ai l'impression que les nouvelles instruction sont aussi dispo en mode émulation, mais avec un temps d'exécution calé sur ce qu'il se passe sur un 6809 avec le reg D (donc bien plus lent que le mode natif).Daniel a écrit :Je voulais vérifier que ça pouvait être utilisé dans le MO5. Apparemment c'est le cas, puisque la première instruction non documentée essayée a marché (l'addition de deux registres). Je testerai aussi le gain de cycles en mode natif
Il y aura peut-être un soucis si tu essaye le mode natif dans les interruptions: le registre W est pushé entre D et DP en cas d'IRQ ce qui introduit un décalage mémoire entre ces registres (et aussi entre D et les regs d'index X, Y etc).
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
Re: Processeur Hitachi HD63C09EP
Le premier test que j'ai fait montre que les instructions supplémentaires (au moins ADDR) sont disponibles en mode émulation.
Je suis bien conscient des modifications des programmes imposées par le mode natif, et aussi du comportement différent sur instruction invalide. Il condamne en particulier les loaders inventés par William Hennebois pour la protection des cassettes Infogrames. Pour faire propre, il faudrait aussi modifier les roms Thomson pour mettre en $FFF0 l'adresse de traitement des instructions invalides. Mais alors les programmes utilisant cette donnée pour tester le type de machine ne fonctionneront plus.
Tout ça pour dire que le remplacement du 6809 ne fera pas de miracles, mais c'est super intéressant pour s'amuser un peu.
@6502man : La plupart des MO5 à clavier gomme ont un support pour le processeur. Le clavier mécanique est plus épais, il n'y a plus de place pour le support et il a donc été supprimé. Encore que sur le mien j'ai dessoudé le processeur pour mettre un support, le clavier force un peu, mais on arrive à refermer presque complètement le couvercle.
@marcopolo : Tu as raison de t'insurger contre les fournisseurs de faux composants. J'ai mis une pastille rouge à UT source pour m'avoir vendu des eproms "neuves" déjà programmées et même pas effacées, une pastille grise à un autre chinois pour m'avoir vendu 10 cartes SD "neuves" qui contenaient des données de GPS et avaient ensuite été reformatées. Pour le HD63C09EP s'est un peu différent : je ne cherchais pas particulièrement ce modèle, je voulais seulement un 6309 pour tester les nouvelles instructions, j'ai pris le premier trouvé. Qu'il soit "C" ou "B" ou simple 6309 m'importe peu, je m'amuse bien avec. Si Hitachi veut porter plainte contre gc_supermarket, j'échange volontiers mon processeur contre un autre garanti authentique. Je ne suis pas assez qualifié pour prouver que c'est un faux, et je n'ai pas le courage de lutter seul contre les faussaires chinois.
Je suis bien conscient des modifications des programmes imposées par le mode natif, et aussi du comportement différent sur instruction invalide. Il condamne en particulier les loaders inventés par William Hennebois pour la protection des cassettes Infogrames. Pour faire propre, il faudrait aussi modifier les roms Thomson pour mettre en $FFF0 l'adresse de traitement des instructions invalides. Mais alors les programmes utilisant cette donnée pour tester le type de machine ne fonctionneront plus.
Tout ça pour dire que le remplacement du 6809 ne fera pas de miracles, mais c'est super intéressant pour s'amuser un peu.
@6502man : La plupart des MO5 à clavier gomme ont un support pour le processeur. Le clavier mécanique est plus épais, il n'y a plus de place pour le support et il a donc été supprimé. Encore que sur le mien j'ai dessoudé le processeur pour mettre un support, le clavier force un peu, mais on arrive à refermer presque complètement le couvercle.
@marcopolo : Tu as raison de t'insurger contre les fournisseurs de faux composants. J'ai mis une pastille rouge à UT source pour m'avoir vendu des eproms "neuves" déjà programmées et même pas effacées, une pastille grise à un autre chinois pour m'avoir vendu 10 cartes SD "neuves" qui contenaient des données de GPS et avaient ensuite été reformatées. Pour le HD63C09EP s'est un peu différent : je ne cherchais pas particulièrement ce modèle, je voulais seulement un 6309 pour tester les nouvelles instructions, j'ai pris le premier trouvé. Qu'il soit "C" ou "B" ou simple 6309 m'importe peu, je m'amuse bien avec. Si Hitachi veut porter plainte contre gc_supermarket, j'échange volontiers mon processeur contre un autre garanti authentique. Je ne suis pas assez qualifié pour prouver que c'est un faux, et je n'ai pas le courage de lutter seul contre les faussaires chinois.
Daniel
L'obstacle augmente mon ardeur.
L'obstacle augmente mon ardeur.
-
- Messages : 2366
- Inscription : 06 avr. 2009 12:07
Re: Processeur Hitachi HD63C09EP
J'en possède 2-3 que j'ai achetés il y a une quinzaine d'années maintenant chez un broker serieux. Je n'avais jamais essayé, c'est une excellente nouvelle qu'il fonctionne sans modification de l'électronique.
Le TO9+ équipé de ce processeur et avec OS9 comme OS aurait probablement fait des étincelles effectivement ...
Surtout quand on pense que le 8088 necessite 98 cycles pour une multiplication entière (11 sur 6809) ... j'adore cet exemple ...
Le TO9+ équipé de ce processeur et avec OS9 comme OS aurait probablement fait des étincelles effectivement ...
Surtout quand on pense que le 8088 necessite 98 cycles pour une multiplication entière (11 sur 6809) ... j'adore cet exemple ...
-
- Messages : 7987
- Inscription : 18 sept. 2010 12:08
- Localisation : Brest et parfois les Flandres
Re: Processeur Hitachi HD63C09EP
11 cycles sur 6809 et 10 sur 6309 (le pipeline fait gagner un cycle je pense: quand il fetch l’instruction suivante il effectue la dernière étape de la multiplication). Quant au mul 16*16->32 il ne prends que 30 cycles pour multiplication signée. Maaaaagique!
Le DIVQ (division signée 32 / 16) prend lui 34 et 40 cycles suivant les modes d'adressages. A peine plus lent. Superbe.
Il faudra voir ce que donneront les expérimentations de Daniel en mode natif, mais je suis un peu inquiet du layout de la pile pendant les interruptions en mode natif. Il n'est pas exclus que les routines IRQ ou FIRQ du moniteur MO5 s'appuient sur l'organisation de la pile pour faire des décision, et comme celle-ci est un peu chamboulée ça risque de se passer mal.
Le DIVQ (division signée 32 / 16) prend lui 34 et 40 cycles suivant les modes d'adressages. A peine plus lent. Superbe.
Il faudra voir ce que donneront les expérimentations de Daniel en mode natif, mais je suis un peu inquiet du layout de la pile pendant les interruptions en mode natif. Il n'est pas exclus que les routines IRQ ou FIRQ du moniteur MO5 s'appuient sur l'organisation de la pile pour faire des décision, et comme celle-ci est un peu chamboulée ça risque de se passer mal.
Samuel.
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos
A500 Vampire V2+ ^8^, A1200 (030@50mhz/fpu/64mb/cf 8go),
A500 GVP530(MMU/FPU) h.s., R-Pi, TO9, TO8D, TO8.Démos