Aide mémoire
probee
Messages postés
138
Statut
Membre
-
Hxyp Messages postés 401 Date d'inscription Statut Membre Dernière intervention -
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.
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.
A voir également:
- Aide mémoire
- Mémoire vive - Guide
- RAM : type, format, CAS, vitesse, tout sur la mémoire vive - Guide
- C'est un secret bien gardé : ce réglage d'expert peut doper les performances de votre PC - Guide
- Nettoyer memoire iphone - Guide
- L'instruction à 0x emploie l'adresse mémoire 0x l'état de la mémoire ne peut pas être read - Astuces et Solutions
3 réponses
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"!
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"!
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
ça serais bien de voir un bout de code d'un timer/processus si possible pour que je fixe tout ceci.
merci
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é.
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é.