Aller au contenu

X-death

Modérateur
  • Compteur de contenus

    3 504
  • Inscription

  • Dernière visite

  • Jours gagnés

    26

Réputation sur la communauté

46 Excellent

À propos de X-death

  • Rang
    Blast Processing
  • Date de naissance 30/03/1990

Contact Methods

  • MSN
    bastien.mairey@hotmail.fr
  • Website URL
    http://sega4ever.power-heberg.com

Profile Information

  • Genre
    Not Telling
  • Localisation
    Besançon

Visiteurs récents du profil

Le bloc de visiteurs récents est désactivé et il n’est pas visible pour les autres utilisateurs.

  1. Bon voila le schéma , je sais pas ce que j'ai merdé sur easyEDA je n'est plus mon schéma , je viens de reprendre cela vite fait au multimètre ...

    en tous cas merci 

    Schematic_pcb v1.0_2021-01-22.png

  2. salut je suis limité a 3 message par jour pas evident de repondre ainsi (peu etre un bug ?) , donc pour resumer

    power on ---> TMSS ---> ROM1 

    1er reset ---> ROM2 

    2eme reset ----> retour sur ROM1 bugg pas de son et/ou defaut de sprite

    3eme reset ----> ROM2  bugg pas de son et/ou defaut de sprite

    4eme reset ----> ROM1 sans bug ....ect

  3. =- Présentation de la cartouche -= L’objectif de la X-flash 64 est de permettre rapidement une simulation de composants logique sur des consoles retro 8 et 16 bits. Elle s’adresse donc aux personnes souhaitant faire des tests ou des recherches et ne voulant pas utiliser des plaques à essais et devoir sortir le fer à souder à chaque fois. Elle dispose de plusieurs types de mémoire afin d’assurer une grande compatibilité: -8Mo de mémoire CFI Flash parallèle utilisée pour stocker la Rom. -32 Ko de Fram parallèle et 4Ko de mémoire Eeprom série pour stocker les sauvegardes des Roms - 2Mo EPCS Flash Série pour stocker la configuration du FPGA -32Ko de Ram ( block M3E interne au FPGA) pour servir de mémoire tampon au FPGA La X-flash 64 ne nécessite pas obligatoirement de programmateur externe pour la programmation de la mémoire Flash 8Mo. La programmation de cette mémoire peut se faire par l’intermédiaire d’une communication JTAG/USB le FPGA étant alors utilisé comme micro-processeur. L’utilisateur peut alors se servir de la carte comme d’une cartouche Flash. Il est également possible de programmer la mémoire de 8Mo en utilisant les BUS I/O. Afin de réduire les temps de compilation le projet est divisé en deux systèmes différents: -La partie Flasheur : le FPGA contrôle la programmation de la mémoire -La partie Système : c’est le bus de la machine cible qui va piloter directement la mémoire Le FPGA est relié directement au BUS de la console, son rôle est de piloter l’état des I/O avec les différents composants que l’utilisateur aura simulé. Le code du système peut être modulé et adapté en fonction de la machine cible de l’utilisateur : Sega Megadrive , Super Nintendo , Famicom , Master System etc… L’utilisateur peut donc analyser précisément toute activité sur chaque pin du Bus, le résultat étant exploitable directement sous forme de Chronogramme. Plusieurs codes seront fournis en exemples et en fichiers de configuration prêts à être flashés dans le FPGA. =- Composition de la cartouche -= =- Programmation de la mémoire de 8Mo-= Pour programmer la mémoire Flash directement avec la X-flash 64 le FPGA doit être utilisé comme micro-processeur, une grosse partie de ses cellules logiques sont alors utilisées. Afin de réduire les temps de compilation j’ai créé deux projets séparés pour que l’utilisateur qui souhaite juste uniquement piloter sa console n’ai pas à s’occuper du principe de programmation de la mémoire. Le système peut être ramené au synoptique suivant : Le système de configuration du FPGA est alors composé des éléments suivants : La communication entre l’ordinateur et le système se fait par l’intermédiaire du connecteur JTAG et d’un câble type USB Blaster. Pour simplifier l’utilisation j’ai créé différents scripts Windows qui permettent d’assurer les interactions classiques avec la mémoire : Lecture , Ecriture , Dump , Clean. Exemple : Pour flasher une Rom l’utilisateur doit juste placer un fichier rom.bin et exécuter Flash_ROM.bat L’utilisateur est averti de la progression de l’opération en temps réel et de son bon déroulement. Une fois la programmation terminée l’utilisateur peut ensuite démarrer sa console. =- Simulation de Système-= Afin de simuler un système il est nécessaire de décrire l’état et le comportement de chaque PIN du bus. Le code exemple ci-dessous concerne la Sega Megadrive il peut être modifié ou adapté en fonction d’une autre machine. A la fin de la programmation le fichier de configuration du FPGA au format.sof est créé. Il suffit alors de la programmer dans la mémoire EPCS pour tester le comportement du système en temps réel. Il est également possible d’analyser l’état de chaque pin en live afin de résoudre d’éventuels problèmes : Une fois le fichier de configuration .sof flasher dans la mémoire EPCS il est conservé même en cas de mise hors tension du FPGA. Il est donc possible de partager et de conserver plusieurs fichiers sof pour décrire différentes cartouches : =- Conclusion-= Comme prévu l'intégralité du code et les schémas de la réalisation de la carte seront rendu public dans les prochains jours. Je posterai une vidéo de la cartouche qui reprendras les deux parties : flash et système afin de mieux comprendre le principe fonctionnement. Je suis conscient que le projet paraît complexe après lecture de cet article cependant il est tout à fait possible d'apprendre rapidement à utiliser la cartouche même avec aucune connaissance sur la programmation de système embarqué. Je reste naturellement ouvert à toutes remarques où suggestions Merci de votre lecture et bonne Journée X-death
×
×
  • Créer...