In-Circuit Emulator pour Z80 (ICE) ?

Cet espace concerne les composants électroniques, les techniques de réalisation, le soudage, la mesure et ses divers instruments, les programmateurs ou encore votre laboratoire. Recueille également les éventuelles ventes, achat, dons ou recherches.

Modérateurs : Papy.G, fneck, Carl

gotcha
Messages : 2758
Inscription : 30 mars 2017 11:39
Localisation : Isère
Contact :

In-Circuit Emulator pour Z80 (ICE) ?

Message par gotcha »

Appelée aussi ICE, je recherche une solution d’émulation sur PCB de Z80 (EDIT: clé en main). L'idée est de remplacer le Z80 par quelque chose de connecté à un PC et qui permet d’émuler en temps réel le Z80 et de pouvoir comprendre ensuite l'état des registres, le code exécuté etc....

Le but est de faire du debug de code Z80 dans son environnement hardware final, souvent en 'bare metal'. Je m'y intéresse par exemple pour comprendre ce qui se passe sur une carte contrôleur de disque qui est gérée par un Z80.

Je sais qu'il existe d'ancienne solutions, mais c'est globalement inaccessibles aujourd'hui (le peu qui se trouve est trop cher). Ces dernières années, il y a eu des tentatives de recréer un ICE Z80, mais apparemment rien de commercialisé à ce jour.

Auriez-vous des pistes ?

Voici un exemple d'ICE Z80:
Dernière modification par gotcha le 18 janv. 2023 09:06, modifié 1 fois.
Amstrad CPC et Goupil power :mrgreen:
Bénévole à l'association pour un conservatoire de l’informatique et de la télématique (https://www.aconit.org)
Avatar de l’utilisateur
jeffounet
Messages : 1563
Inscription : 25 janv. 2020 06:59
Localisation : Les Angles (30)

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par jeffounet »

Bonjour,

J'ai vu ça:
http://www.tauntek.com/z80-in-circuit-emulator.htm
http://ferretronix.com/nice/

Mais je pense que tu les as trouvé, tu me dira.

Bonne soirée

Jean-François
Il n'y a que 11 sortes de gens, ceux qui comprennent ceux qui ne comprennent pas et ceux qui me font répéter!
Jean-François
gotcha
Messages : 2758
Inscription : 30 mars 2017 11:39
Localisation : Isère
Contact :

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par gotcha »

Merci pour les infos. Ce sont des solutions qu'il faut faire soit même et je ne suis pas sur que toutes les infos soient dispo.
De mon coté, ma préférence est de trouver une solution clés en main pour ce type d'outils.
Amstrad CPC et Goupil power :mrgreen:
Bénévole à l'association pour un conservatoire de l’informatique et de la télématique (https://www.aconit.org)
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par hlide »

Il n'y a apparemment aucune information pour fabriquer ce IZE80. Si je comprends bien, tu souhaiterais avoir la possibilité de déboguer plus finement ? dans la vidéo, one ne voit pas grand chose de cet aspect. Dommage, ça m'aurait permis de comparer avec la solution MCLZ8.
gotcha
Messages : 2758
Inscription : 30 mars 2017 11:39
Localisation : Isère
Contact :

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par gotcha »

Il y a des projets qui existent basés sur le GODIL de OHO Elektronik.

C'est une petite carte contenant un FPGA sur lequel on peut programmer un 'soft core' de Z80 ou autre.
La spécificité de cette carte est que sur l’arrière, on a directement un connecteur DIL.

Malheureusement, la version DIL-40 ne semble plus être disponible.

Discussion ici: Quelques projets l'utilisant: Dessous:
Image


Dessus:
GODIL dessus
GODIL dessus
godil_top.jpg (247.16 Kio) Consulté 2739 fois
Amstrad CPC et Goupil power :mrgreen:
Bénévole à l'association pour un conservatoire de l’informatique et de la télématique (https://www.aconit.org)
Notator
Messages : 1286
Inscription : 09 août 2015 20:13

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par Notator »

Je suis tombé sur ceci, l'émulateur MCLZ8 construit sur base Teensy 4.1, j'ignore ce que ça vaut :

https://hackaday.io/project/188682-mclz ... ccelerator

CLZ8.png
CLZ8.png (794.1 Kio) Consulté 2694 fois
Notator est le nom d'un programme séquenceur Midi et notation musicale pour Atari ST(e) (puis Mac).
gotcha
Messages : 2758
Inscription : 30 mars 2017 11:39
Localisation : Isère
Contact :

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par gotcha »

Le MCLZ8 semble intéressant. Et comme c'est du pure software, c'est plus facile d'accès qu'un FPGA.
Je vais voir s'il y a plus d'infos sur ce projet.
Amstrad CPC et Goupil power :mrgreen:
Bénévole à l'association pour un conservatoire de l’informatique et de la télématique (https://www.aconit.org)
Notator
Messages : 1286
Inscription : 09 août 2015 20:13

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par Notator »

Du pur software ??? :shock:

Moi, je vois que le Z80 est remplacé par la carte MCLZ8, laquelle se relie en USB sur un PC...
Notator est le nom d'un programme séquenceur Midi et notation musicale pour Atari ST(e) (puis Mac).
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par hlide »

MCLZ8 en attente de soudure...
IMG_20221216_170120 - Copy.jpg
IMG_20221216_170120 - Copy.jpg (682.73 Kio) Consulté 2667 fois
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par hlide »

La partie émulation Z80 est du pur software. Les quatre puces servent de level shifters (5 V <-> 3.3 V).

Et non, il y a un ARM Cortex de 600 MHz qui émule le Z80. La connexion USB vers le PC, c'est juste un terminal.
Zebulon
Messages : 2787
Inscription : 02 nov. 2020 14:03

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par Zebulon »

Tu as commandé les PCB avec les quatre puces CMS déjà soudées ?

Comment interagit-on ensuite avec le Teensy, via un terminal texte ?
gotcha
Messages : 2758
Inscription : 30 mars 2017 11:39
Localisation : Isère
Contact :

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par gotcha »

hlide a écrit : 19 janv. 2023 22:35 La partie émulation Z80 est du pur software.
Oui, c'est effectivement ce que j'entendais par 'pur software'. Sur l'autre solution, c'était un core Z80 en FPGA.
Amstrad CPC et Goupil power :mrgreen:
Bénévole à l'association pour un conservatoire de l’informatique et de la télématique (https://www.aconit.org)
gotcha
Messages : 2758
Inscription : 30 mars 2017 11:39
Localisation : Isère
Contact :

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par gotcha »

Je vois les Teensy 4.1 à 2€ sur aliexpress et à 50€ sur les plateformes européennes.
Il n'y aurait pas un peu de spéculation comme pour les Raspberry PI ??

A priori, le prix officiel est de l'ordre de 30$ : https://www.pjrc.com/store/teensy41.html
Dernière modification par gotcha le 20 janv. 2023 00:10, modifié 1 fois.
Amstrad CPC et Goupil power :mrgreen:
Bénévole à l'association pour un conservatoire de l’informatique et de la télématique (https://www.aconit.org)
Avatar de l’utilisateur
hlide
Messages : 3469
Inscription : 29 nov. 2017 10:23

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par hlide »

Oui, j'ai décidé de le tester car j'ai un projet plus ambitieux en tête et ce MCLZ8 va me servir de tremplin à mes idées.

Tu flashes le firmware INO qui émule le Z80 dans le teensys puis tu places le teensys sur le PCB. Le PCB se place sur le socle Z80. L'interaction avec le terminal est minimal, il s'agit surtout de taper 0, 1, 2, 3 qui sont des modes d'accès mémoires au bus Z80. Mais on peut ajouter du code pour rajouter des fonctionnalités via ce terminal.

0 : émulation 100% conforme du bus mémoire et timing des instructions. Reproduction des cycles et des signaux d'accès mémoire sur le bus Z80.
1 : émulation 100% du timing des instruction mais la ram est interne en lecture et l'écriture en write-through. Reproduction des cycles et des signaux d'accès mémoire sur le bus Z80 en écriture seulement. Comme si on avait un cache pour la RAM.
2 : exécution des instructions à la vitesse de l'ARM et ram interne en lecture mais écriture en write-through. Cycles raccourcis au strict minimum et des signaux d'accès mémoire sur le bus Z80 en écriture seulement. Comme si on avait un cache pour la RAM.
3 : exécution des instructions à la vitesse de l'ARM et ram interne aussi bien en lecture et écriture. Cycles raccourcis au strict minimum et accès mémoire interne.

Bien sûr, il faudra adapter dans le code le décodage d'adresse par rapport à la machine cible :
- reconnaissance de la partie RAM qui peut faire l'objet d'une redirection en RAM interne pour la lecture (voir l'écriture).
- reconnaissance des parties mémoires comme la vidéo RAM ou périphériques dont on doit assurer la représentation des signaux d'accès mémoire sur le bus Z80 inconditionnellement.
gotcha
Messages : 2758
Inscription : 30 mars 2017 11:39
Localisation : Isère
Contact :

Re: In-Circuit Emulator pour Z80 (ICE) ?

Message par gotcha »

En mode 0, on peut émuler un Z80 en temps réel jusqu'à combien de Mhz ?
Amstrad CPC et Goupil power :mrgreen:
Bénévole à l'association pour un conservatoire de l’informatique et de la télématique (https://www.aconit.org)
Répondre