Différences entre versions de « XGecu-EEPROM »

De MCHobby - Wiki
Sauter à la navigation Sauter à la recherche
 
(43 versions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
== Introduction ==
+
== Préambule ==
 
Après avoir installé [[XGecu-install-Linux|XGPro sur mon PC Linux]] pour piloter XGecu, il est temps d'évoluer vers la suite du projet.
 
Après avoir installé [[XGecu-install-Linux|XGPro sur mon PC Linux]] pour piloter XGecu, il est temps d'évoluer vers la suite du projet.
  
Initialement, je voulais remplacer la UVPROM 27512 d'une carte Z80 sur laquelle  [https://github.com/mchobby/kicad-public-projects/tree/main/HASKEL-Z80 je fais un peu de rétro-ingénierie](Github) et [https://forum.system-cfg.com/viewtopic.php?f=18&t=14526&p=232910&hilit=dtmf#p232910 fil de discussion](System-cfg.com).
+
Initialement, je voulais remplacer la UVPROM 27512 d'une carte Z80 sur laquelle  [https://github.com/mchobby/kicad-public-projects/tree/main/HASKEL-Z80 je fais un peu de rétro-ingénierie](Github) documenté sur ce [https://forum.system-cfg.com/viewtopic.php?f=18&t=14526&p=232910&hilit=dtmf#p232910 fil de discussion](System-cfg.com).
  
[[Fichier:carte-z80.png]]
+
[[Fichier:carte-z80.png|800px]]
  
 
La UVPROM se trouve est à l'emplacement ROM1 où son remplacement EEPROM/FLASH est déjà en place.
 
La UVPROM se trouve est à l'emplacement ROM1 où son remplacement EEPROM/FLASH est déjà en place.
  
Le remplaçant est un composant [https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwi8o-Lx0tiBAxV_fKQEHXiYDtwQFnoECA8QAQ&url=https%3A%2F%2Fwww.greenliant.com%2Fproducts%2F%3Finode%3D40825&usg=AOvVaw04aRHFSYZM5Fjzm27OjN94&opi=89978449 GLS27SF512 de GreenLiant] qui est une mémoire Flash NAND électriquement compatible avec une ROM 25C512
+
Le remplaçant est un composant [https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=&cad=rja&uact=8&ved=2ahUKEwi8o-Lx0tiBAxV_fKQEHXiYDtwQFnoECA8QAQ&url=https%3A%2F%2Fwww.greenliant.com%2Fproducts%2F%3Finode%3D40825&usg=AOvVaw04aRHFSYZM5Fjzm27OjN94&opi=89978449 GLS27SF512 de GreenLiant] qui est une mémoire Flash NAND électriquement compatible avec une UVPROM 27512.
 +
 
 +
Je suis arrivé à cette référence en passant par les produits SST 27F512 (Silicon Storage Technology) plus connu sur le WEB mais malheureusement indisponible en 2023 sur la Belgique.
 +
 
 +
Vous verrez plus loin qu'aucune information n'est a jeter.
 +
 
 +
[[Fichier:GLS27SF512-replacing-27512.png|320px]]
 +
 
 +
Le GLS27SF512 fonctionne en logique 5V et est pin-compatible avec le 27C512 et donc aussi le 27512.
 +
 
 +
Faut-il encore arriver à programmer notre nouvelle "EEPROM" mémoire Flash!
 +
 
 +
[https://arduino103.blogspot.com/2023/07/programmeur-deeprom-en-micropython.html Après de terribles frustrations à réaliser un programmeur avec MicroPython], j'ai fini par opter pour un programmeur [[XGecu-install-Linux|XGecu puisqu'il est capable de fonctionner sous Linux]] grâce à Wine.
 +
 
 +
== Exemples XGpro ==
 +
 
 +
=== Lecture UVPROM 27512 ===
 +
 
 +
Avant de programmer une mémoire Flash (EEPROM), il serait bien d'extraire le contenu de l'EEPROM déjà en place sur ma carte.
 +
 
 +
[[Fichier:UVPROM-27512.png|220px]]
 +
 
 +
Commençons par placer l'UVProm 27512 sur le XGecu (le marquage en demi-lune -surligné en blanc- est orienté vers le levier).
 +
 
 +
[[Fichier:XGecu-27512.png|384px]]
 +
 
 +
Ensuite on démarre le programme XGPro et nous identifions le composant.
 +
 
 +
Cliquer sur le bouton "Select IC" et retrouver l'entrée 27512 en DIP28 à l'aide de la recherche suivante:
 +
 
 +
[[Fichier:XGecu-UVPROM-Select.png]]
 +
 
 +
Le composant sélectionné, il est alors possible de lire le contenu de l'UVPROM en pressant le bouton "READ".
 +
 
 +
[[Fichier:XGecu-UVPROM-Read.png]]
 +
 
 +
Ce qui affiche la boîte de dialogue de lecture.
 +
 
 +
[[Fichier:XGecu-UVPROM-Read-Popup.png]]
 +
 
 +
Reste à presser le bouton "Read" pour débuter la lecteure
 +
 
 +
[[Fichier:XGecu-UVPROM-Read-Popup2.png]]
 +
 
 +
Enfin, nous disposons des données dans la mémoire tampon du programme
 +
 
 +
[[Fichier:XGecu-UVPROM-data.png]]
 +
 
 +
Cliquer sur le point de menu "File | Save ..." permet de sauver le fichier sous différents formats.
 +
 
 +
[[Fichier:XGecu-UVPROM-save.png]]
 +
 
 +
=== Programmer le GLS27SF512 ===
 +
Cette partie du tuto propose de programmer l'EEPROM/Flash GLS27SF512 à l'aide d'un adaptateur PLCC32 disponible dans le kit XGecu.
 +
 
 +
[[Fichier:GLS27SF512-replacing-27512.png|220px]]
 +
 
 +
J'ai opté pour l'adaptateur PLCC32-DIP28 convenant au 27C64/27C512 (puisque l'UVPROM 27512 est un DIP28).
 +
 
 +
Le GLS27SF512 étant compatible 5V, j'ai gardé le cavalier de l'adaptateur fermé.
 +
 
 +
Comme vous pouvez le voir, l'EEProm GLS27SF512 est déjà en place dans le support PLCC32.
 +
 
 +
[[Fichier:XGecu-GLS27SF512-PLCC32-adapter.png|384px]]
 +
 
 +
Ensuite on démarre le programme XGPro et nous identifions le composant à programmer.
 +
 
 +
La référence GLS27SF512 n'est pas disponible dans l'énorme base-de-données de XGPro.
 +
 
 +
Par contre, nous avons une mémoire Flash SST27SF512 réputé compatible avec un 27C512 (lecture) mais aussi compatible avec le GLS27SF512 de Greenliant.
 +
 
 +
Cliquer sur le bouton "Select IC" et retrouver l'entrée SST27SF512 en DIP28 à l'aide de la recherche suivante:
 +
 
 +
[[Fichier:XGecu-EEPROM-Select.png]]
 +
 
 +
Après la sélection du Composant, '''il faut absolument décocher "Check ID"''' car ce que nous allons programmer est un GLS27SF512 (compatible SST27SF512) et non un SST27SF512.
 +
 
 +
Si XGpro vérifie l'ID (''identification'') du composant alors il refusera de programmer le GreenLiant (parce que ce n'est pas un SST).
 +
 
 +
[[Fichier:XGecu-EEPROM-Check-ID.png|1024px]]
 +
 
 +
Enfin, une fois le composant sélectionné, nous avons les options suivantes à notre disposition:
 +
* '''READ''' : Lecture
 +
* '''ERASE''' : Effacer
 +
* '''PROG.''' : Programmer
 +
 
 +
C'est le moment d'utiliser le menu "File | Load File" pour charger un fichier.
 +
 
 +
Comme je dispose d'un fichier binaire avec 64 Kio de données qui est chargée dans le Buffer (mémoire tampon) de XGPro.
 +
 
 +
[[Fichier:XGecu-Load-File.png]]
 +
 
 +
Les données chargées dans le Buffer, il ne reste plus qu'a presser le bouton "PROG".
 +
 
 +
[[Fichier:XGecu-Prog1.png]]
 +
 
 +
Presser le bouton "Program" et c'est fait.
 +
 
 +
[[Fichier:XGecu-Prog2.png]]

Version actuelle datée du 4 octobre 2023 à 14:00

Préambule

Après avoir installé XGPro sur mon PC Linux pour piloter XGecu, il est temps d'évoluer vers la suite du projet.

Initialement, je voulais remplacer la UVPROM 27512 d'une carte Z80 sur laquelle je fais un peu de rétro-ingénierie(Github) documenté sur ce fil de discussion(System-cfg.com).

 

La UVPROM se trouve est à l'emplacement ROM1 où son remplacement EEPROM/FLASH est déjà en place.

Le remplaçant est un composant GLS27SF512 de GreenLiant qui est une mémoire Flash NAND électriquement compatible avec une UVPROM 27512.

Je suis arrivé à cette référence en passant par les produits SST 27F512 (Silicon Storage Technology) plus connu sur le WEB mais malheureusement indisponible en 2023 sur la Belgique.

Vous verrez plus loin qu'aucune information n'est a jeter.

 

Le GLS27SF512 fonctionne en logique 5V et est pin-compatible avec le 27C512 et donc aussi le 27512.

Faut-il encore arriver à programmer notre nouvelle "EEPROM" mémoire Flash!

Après de terribles frustrations à réaliser un programmeur avec MicroPython, j'ai fini par opter pour un programmeur XGecu puisqu'il est capable de fonctionner sous Linux grâce à Wine.

Exemples XGpro

Lecture UVPROM 27512

Avant de programmer une mémoire Flash (EEPROM), il serait bien d'extraire le contenu de l'EEPROM déjà en place sur ma carte.

 

Commençons par placer l'UVProm 27512 sur le XGecu (le marquage en demi-lune -surligné en blanc- est orienté vers le levier).

 

Ensuite on démarre le programme XGPro et nous identifions le composant.

Cliquer sur le bouton "Select IC" et retrouver l'entrée 27512 en DIP28 à l'aide de la recherche suivante:

 

Le composant sélectionné, il est alors possible de lire le contenu de l'UVPROM en pressant le bouton "READ".

 

Ce qui affiche la boîte de dialogue de lecture.

 

Reste à presser le bouton "Read" pour débuter la lecteure

 

Enfin, nous disposons des données dans la mémoire tampon du programme

 

Cliquer sur le point de menu "File | Save ..." permet de sauver le fichier sous différents formats.

 

Programmer le GLS27SF512

Cette partie du tuto propose de programmer l'EEPROM/Flash GLS27SF512 à l'aide d'un adaptateur PLCC32 disponible dans le kit XGecu.

 

J'ai opté pour l'adaptateur PLCC32-DIP28 convenant au 27C64/27C512 (puisque l'UVPROM 27512 est un DIP28).

Le GLS27SF512 étant compatible 5V, j'ai gardé le cavalier de l'adaptateur fermé.

Comme vous pouvez le voir, l'EEProm GLS27SF512 est déjà en place dans le support PLCC32.

 

Ensuite on démarre le programme XGPro et nous identifions le composant à programmer.

La référence GLS27SF512 n'est pas disponible dans l'énorme base-de-données de XGPro.

Par contre, nous avons une mémoire Flash SST27SF512 réputé compatible avec un 27C512 (lecture) mais aussi compatible avec le GLS27SF512 de Greenliant.

Cliquer sur le bouton "Select IC" et retrouver l'entrée SST27SF512 en DIP28 à l'aide de la recherche suivante:

 

Après la sélection du Composant, il faut absolument décocher "Check ID" car ce que nous allons programmer est un GLS27SF512 (compatible SST27SF512) et non un SST27SF512.

Si XGpro vérifie l'ID (identification) du composant alors il refusera de programmer le GreenLiant (parce que ce n'est pas un SST).

 

Enfin, une fois le composant sélectionné, nous avons les options suivantes à notre disposition:

  • READ : Lecture
  • ERASE : Effacer
  • PROG. : Programmer

C'est le moment d'utiliser le menu "File | Load File" pour charger un fichier.

Comme je dispose d'un fichier binaire avec 64 Kio de données qui est chargée dans le Buffer (mémoire tampon) de XGPro.

 

Les données chargées dans le Buffer, il ne reste plus qu'a presser le bouton "PROG".

 

Presser le bouton "Program" et c'est fait.