Aide mémoire

probee Messages postés 138 Statut Membre -  
Hxyp Messages postés 401 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Je dois présenter un mémoire et voilà le sujet:
construire un microprocesseur qui gère des feux tricolores pour un carrefour a 4voies(construire la mémoire,l'unité de traitement,le jeu d'instructions,l'unité
de commande,....)
Je dois écrire en langage structuré MASM pourriez-vous m'aidez SVP pour mes recherches et comment faire pour gérer les "timers" c'est mon gros problème.
Je compte sur votre aide ou une quelconque orientation.
Merci.

3 réponses

Hxyp Messages postés 401 Date d'inscription   Statut Membre Dernière intervention   54
 
Bonjour,
Juste une idée ou deux; quand vous aurez créer le microprocesseur vous serez en mesure de compter le nombre d'instructions traitées dans un laps de temps et de déterminer la fréquence de celui-ci. Ensuite on peut imaginer créer des flags spécifiques lorsqu'un timer est activé un compteur s'en sert utilisant la valeur du timer et le décrémente en fonction du nombre d'instructions s'écoulant et renvoi à l'adresse pointant sur le code à exécuter une fois arrivé à zéro. Mais ce serait bloquant seulement un timer à la fois utilisant une boucle dans le vide alors peut être qu'il faut penser à créer un genre de tourniquet et un système pour sauvegarder les états des autres timer/processus pour faire une sorte de multithreads (ex: une instructions par program à la fois), faudrait donc créer une sorte de compteur "coeur" qui s'incrémente à chaque instructions sur le processeur permettant à chaque thread (ayant au préalable sauvegarder l'état de ce compteur et registres avant d'être en attente) de savoir où en est le processeur dans le temps lorsqu'il retourne travailler et là on peut pour chaque timer les décrementer en fonction des différences entre leurs sorties et entrées dans le cpu et donc les timers/processus seraient "indépendant"!
0
probee Messages postés 138 Statut Membre
 
merci Hxyp je vois bien ce que tu explique et merci de m'avoir éclairé sur ce.
ça serais bien de voir un bout de code d'un timer/processus si possible pour que je fixe tout ceci.
merci
0
Hxyp Messages postés 401 Date d'inscription   Statut Membre Dernière intervention   54
 
C'est justement pourquoi je n'ai fait que donner une idée ça représente beaucoup de travail pour en arrivé à la création du timer :
création d'un pseudo asm (jeu d'instructions,étude de la création des registres et tout ce qui est nécessaire)
création d'un compilateur de ce pseudo asm en bytecode (parsing + implique création d'un format pour séparer les données du code à exécuter : étude gestion mémoire et chargement pour la suite)
création de l'interpréteur de ce bytecode (le fameux processeur et la partie qui va charger&gérer la mémoire..)
Et c'est dans l'interpréteur qu'il va falloir gérer le timer et qu'on peut donner un bout de code sauf que là il est un peu trop gros pour moi désolé.
0