Bibliothèque technique gratuite ENCYCLOPÉDIE DE LA RADIOÉLECTRONIQUE ET DU GÉNIE ÉLECTRIQUE Émulateur de ROM. Encyclopédie de l'électronique radio et de l'électrotechnique Encyclopédie de l'électronique radio et de l'électrotechnique / microcontrôleurs L'émulateur décrit dans l'article, associé à un ordinateur, peut remplacer sa ROM lors du débogage du logiciel d'un dispositif à microprocesseur. Cela vous permettra de corriger rapidement le programme, ce qui vous fera gagner du temps qui serait autrement consacré à la reprogrammation de l'EEPROM. L'émulateur est relativement lent car il ne possède pas sa propre RAM. Mais pour la même raison, c'est simple et bon marché. L'un des problèmes qui se pose lors du développement d'équipements à microprocesseur est le débogage d'un programme écrit en ROM. Habituellement, à cette fin, des ROM dites reprogrammables (RPZU) sont utilisées avec un effacement des informations par irradiation ultraviolette. Étant donné que toute modification du programme entraîne la nécessité d'effacer l'EEPROM et d'y réécrire des informations, le débogage prend beaucoup de temps. De plus, après 10 à 25 cycles, avec chacun desquels la fiabilité du stockage des données diminue, le microcircuit doit être remplacé. Ainsi, le travail créatif est éclipsé par le processus mécanique fastidieux d'écrasement, sans parler de l'aspect financier du problème - les EEPROM avec effacement UV ne sont pas bon marché. L'émulateur aidera à résoudre le problème, dont le schéma de principe est illustré à la Fig. 1. Au lieu d'une puce ROM d'une capacité allant jusqu'à 64 Ko, une prise XP1 est insérée dans le panneau de l'appareil en cours de débogage qui lui est destiné. Selon le type de ROM, seul l'ordre de connexion des fils de l'émulateur aux contacts de la fiche peut changer (celui représenté sur le schéma correspond à une puce 27512 d'une capacité de 64 Ko). La fiche XP2 est connectée à la prise de port parallèle LPT1 de tout ordinateur personnel (PC) compatible IBM. Étant donné que le port est principalement destiné au transfert de données vers un périphérique externe (imprimante), il dispose de 12 lignes de sortie et d'un total de cinq lignes d'entrée. Cela force le multiplexage de l'adresse ROM 16 bits reçue par l'ordinateur, ce qui, bien sûr, affecte la vitesse d'émulation. L'émulateur se compose des blocs fonctionnels suivants : un générateur d'horloge (DD1.1-DD1.2), un synchroniseur d'horloge (DD2.2, DD3.1), un dispositif de déclenchement (DD2.1), un compteur d'impulsions (DD4), un formateur d'impulsions d'écriture de bloc d'adresse (DD1.5, DD3.3), un registre de données (DD5) et un multiplexeur d'adresses (DD6, DD7). Le travail commence par l'arrivée d'un signal de bas niveau CS du dispositif à microprocesseur à l'entrée S (broche 4) du déclencheur DD2.1 (les chronogrammes des signaux sont illustrés à la Fig. 2). Ce dernier passe dans un état correspondant au 1 logique sur la sortie directe (broche 5) reliée à l'entrée D (broche 12) du déclencheur DD2.2. Au déclin de l'impulsion d'horloge (celle-ci est fournie par l'inverseur DD1.4), un 1 logique apparaît également à la sortie (broche 9) de DD2.2, permettant le passage d'impulsions d'horloge vers la sortie de l'élément DD3.1. Ils sont comptés par le compteur DD4 dont les signaux de sortie des deux chiffres les moins significatifs commandent les multiplexeurs d'adresses DD6 et DD7. L'adresse ROM est transmise au PC en quatre groupes de quatre bits : A0 - A3, A4 - A7, A8 - A11, A12 - A15. Pour le recevoir, les entrées ERROR sont utilisées. Port parallèle SLCT, ACK, PE. Le compteur DD4 est couvert par des contre-réactions de telle sorte que son facteur de conversion est de 5. C'est le nombre de périodes d'impulsions d'horloge que prend le cycle d'émulation. Dans les quatre premières impulsions de la sortie de l'élément DD3.4, arrivant à l'entrée BUSY du port LPT simultanément avec la commutation des multiplexeurs. synchroniser la procédure de lecture de l'adresse par le calculateur. Dans la cinquième période, l'ordinateur envoie un octet de données aux sorties DATA1 -DATA8, qui doivent être situées dans la ROM émulée à l'adresse spécifiée. Cet octet est stocké dans le registre DD5. À la fin de la période, le déclencheur DD2.1 revient à son état d'origine. Certes, ce dernier ne se produira que si le signal CS est terminé à ce moment. Sinon, le cycle décrit se répétera. L'émulateur est assemblé sur une carte de circuit imprimé double face dont le dessin est illustré à la fig. 3. La carte fournit des groupes de plots de contact X1-X4, auxquels les fils sont soudés aux fiches XP1 et XP2. Au lieu des microcircuits indiqués sur le schéma de circuit, il est permis d'utiliser leurs analogues fonctionnels de toute série TTL ou TTLSH (K155. K555. KR1533. KR531). Lors du remplacement de la puce DD1, une sélection d'éléments générateurs d'horloge (R1, R3, C2) peut être nécessaire, dont la vitesse d'émulation dépend du taux de répétition des impulsions. Le réglage de la fréquence au-dessus de 100 kHz n'est pas recommandé, car cela peut entraîner des dysfonctionnements. La prise XP1 peut être réalisée à partir d'une EEPROM défectueuse avec effacement UV. Après avoir brisé la fenêtre transparente, vous devez retirer les conducteurs fins reliant le cristal aux plages de contact du boîtier. Les fils du câble sont soudés à la partie extérieure des bornes de manière à ne pas gêner l'insertion de l'ancien microcircuit dans le panneau. L'algorithme de fonctionnement de l'émulateur décrit ci-dessus nécessite le passage du dispositif à microprocesseur au mode pas à pas. C'est pratique pour la première "exécution" du programme et les premières étapes de son débogage. Pour travailler en mode continu, il est nécessaire de compléter l'émulateur avec un dispositif de synchronisation, en l'assemblant selon le schéma illustré à la Fig. 4. Il est conçu pour le microprocesseur KR580VM80A avec le générateur d'horloge KR580GF24 et a été testé sur l'ordinateur Radio-86RK. Pour d'autres types de microprocesseurs, il peut être nécessaire de modifier le synchroniseur. Le tableau montre la procédure d'émulation de ROM par un ordinateur à vitesse maximale. Il est écrit dans le langage ASSEMBLY intégré au système de programmation Borland Pascal et est destiné à être utilisé dans les programmes développés à l'aide de ce système. La variable globale pDATA de type pointeur dans le programme principal doit être définie à l'adresse du premier élément du tableau d'octets contenant l'image ROM émulée. L'échange de données se déroule à une vitesse maximale en minimisant le nombre d'accès à la mémoire du PC et en utilisant des registres de processeur pour le stockage temporaire des données (l'accès à la mémoire prend plusieurs fois plus de temps qu'une opération de registre à registre). La particularité de la procédure décrite est qu'il s'agit d'une boucle infinie et, dans un souci d'accélération du travail, désactive toutes les interruptions, y compris celles du clavier. Ainsi, vous pouvez arrêter l'émulation uniquement en appuyant sur le bouton "RESET" du PC ou en coupant son alimentation. L'affichage de toute information sur le fonctionnement de l'appareil en cours de débogage sur l'écran du moniteur du PC est également exclu. Éliminer ces défauts est à la portée d'un programmeur de compétence moyenne, mais seulement au prix d'un ralentissement de la procédure. Les touches spécifiées dans la ligne de commande ou dans le fichier de configuration définissent le mode d'émulation, sélectionnez le fichier avec l'image de la ROM émulée. La ligne de commande a priorité sur le fichier de configuration. Les clés suivantes sont fournies : -sf - l'émulation la plus rapide (en utilisant la procédure décrite ci-dessus) ; -sns - mode, un peu plus lent que le précédent, car il permet d'interroger le clavier et de quitter en appuyant sur la touche [Esc] ; -sp est le mode le plus lent. L'écran du moniteur affiche l'adresse de chaque cellule ROM accessible par le périphérique en cours de débogage, ainsi que les données qui en découlent. Le processus de lecture des quarts de l'adresse est également affiché. Ceci est pratique aux étapes initiales du débogage d'un dispositif à microprocesseur, car cela vous permet de surveiller la progression de l'exécution de son programme. -f filename - spécifie le nom du fichier avec l'image ROM : /y - désactive le contrôle de l'égalité de la longueur du fichier image ROM de la capacité d'information de ce dernier ; /? - Affiche une aide sur les modes de fonctionnement de l'émulateur. Appuyer sur la touche [F2] arrête le processus de lecture de l'adresse en cours et met le programme en mode d'attente pour une nouvelle adresse. Une image ROM est un fichier binaire dans lequel tous les octets stockés dans la ROM émulée sont écrits séquentiellement, dans l'ordre croissant des adresses, en partant de zéro. - codes de commandes et données du dispositif à microprocesseur débogué. Notez que les espaces dans la séquence d'adresses ne sont pas autorisés. Les valeurs des cellules inutilisées doivent également être écrites dans le fichier. Un tel fichier peut être créé à l'aide de l'assembleur croisé TASM, s'il est appelé depuis la ligne de commande TASM.EXE -85 -g3 PROG.ASM Ici, le commutateur -85 définit le type de processeur (8085) auquel le programme traduit PROG.ASM est destiné, et -g3 spécifie la sortie du résultat sous forme binaire. Le fichier PROG.OBJ résultant peut servir d'image ROM pour l'émulateur. Auteurs : S. Belyaev, D. Chernykh, Tambov Voir d'autres articles section microcontrôleurs. Lire et écrire utile commentaires sur cet article. Dernières nouvelles de la science et de la technologie, nouvelle électronique : Machine pour éclaircir les fleurs dans les jardins
02.05.2024 Microscope infrarouge avancé
02.05.2024 Piège à air pour insectes
01.05.2024
Autres nouvelles intéressantes : ▪ Carte d'évaluation STEVAL-IDB009V1 ▪ Dommages causés aux antibiotiques et aux antiseptiques ▪ Réseaux d'antennes phasées adaptatives ▪ Scanners biométriques pour smartphones Fil d'actualité de la science et de la technologie, nouvelle électronique
Matériaux intéressants de la bibliothèque technique gratuite : ▪ section du site Commandes de tonalité et de volume. Sélection d'articles ▪ article Échelle - tel qu'imprimé. Conseils pour le maître de maison ▪ article Qu'est-ce qu'une rose des vents ? Réponse détaillée ▪ article de chasseur de têtes. Description de l'emploi ▪ Article Antenne spirale UHF. Encyclopédie de l'électronique radio et de l'électrotechnique
Laissez votre commentaire sur cet article : Toutes les langues de cette page Page principale | bibliothèque | Articles | Plan du site | Avis sur le site www.diagramme.com.ua |