[µc]Expliquer les registres
Répondre à la discussion
Affichage des résultats 1 à 14 sur 14

[µc]Expliquer les registres



  1. #1
    adrien4607

    [µc]Expliquer les registres


    ------

    Bonjour tous le monde ,
    Pour mon projet de qualification de fin d'année (horloge à tube nixie), j'utilise un microcontrôleur Atmel que j'ai programmer en C++, le soucis est que nous n'avons eu aucun cours sur les µc, j'ai tous appris grâce au web et à l'analyse de code source ...

    Le problème c'est que j'aimerais bien définir se que c'est un registre, je vois se que c'est mais je ne vois pas comment l'expliquer ....



    Merci d'avance

    -----

  2. #2
    DAUDET78

    Re : [µc]Expliquer les registres

    J'aime pas le Grec

  3. #3
    gcortex

    Re : [µc]Expliquer les registres

    Grosso modo, les registres "utilisateur" sont utilisés pour des variables locales.
    Le µC les utilise en général plusieurs fois, mais pas longtemps avant qu'ils soient écrasés par d'autres variables.
    Dernière modification par gcortex ; 29/05/2014 à 13h06.

  4. #4
    adrien4607

    Re : [µc]Expliquer les registres

    Oki, merci

  5. A voir en vidéo sur Futura
  6. #5
    zibuth27

    Re : [µc]Expliquer les registres

    hello,

    en stockage de variables, les registres sont surtout utilisés pour leur accès rapide (par comparaison à la mémoire externe ou à la mémoire de masse)

    dans un µcontroleur, les registres ne servent pas qu'à contenir des variables !!
    ils servent aussi à:
    • contenir l'état système
    • contenir les commandes et états des périphériques ( compteurs, état et direction des I/O, commande des interruptions, commande et résultats des convertisseurs A/D, etc)


    voici les 4 pages décrivant les registres du mega328 qui anime les arduinos (parmi les 660 pages de la datasheet)

    bravo déjà d'avoir attaqué le micro uniquement avec le Web !


    saluts
    Images attachées Images attachées
    Dernière modification par zibuth27 ; 29/05/2014 à 15h24. Motif: complément

  7. #6
    narakphysics

    Re : [µc]Expliquer les registres

    Bonjour à tous et à toutes

    J'en profite pour poser une question :
    Quel est l'emplacement physique des registres? Est ce la RAM ou l'EEPROM ou un autre type de RAM plus particulier?
    Merci d'avance

  8. #7
    gcortex

    Re : [µc]Expliquer les registres

    Ce sont des bascules D qui sont plus complexes que des cellules de RAM.
    Les registres sont parfois adressables par une adresse de RAM.

  9. #8
    DAUDET78

    Re : [µc]Expliquer les registres

    Citation Envoyé par narakphysics Voir le message
    Quel est l'emplacement physique des registres? Est ce la RAM ou l'EEPROM ou un autre type de RAM plus particulier
    Surtout pas l'EEPROM ni la FLASH ! Le registre serait mourru en peu de temps .... C'est une RAM dédié
    J'aime pas le Grec

  10. #9
    Fred_du_92

    Re : [µc]Expliquer les registres

    Citation Envoyé par narakphysics Voir le message
    Bonjour à tous et à toutes

    J'en profite pour poser une question :
    Quel est l'emplacement physique des registres? Est ce la RAM ou l'EEPROM ou un autre type de RAM plus particulier?
    Merci d'avance
    ça va dépendre des registres et de l'architecture du micro. Il y a les registres de calcul, les registres d'état du processeur (Stack pointer, Program Counter, Status, etc.) et les registres dédiés aux périphériques (SFR ou Special Function Register).

    En général les registres de calcul et ceux du processeur sont quelque-part dans le coeur, en dehors du mapping mémoire, on ne peut donc pas parler franchement de zone mémoire, c'est un fonctionnement différent.

    Pour les SFR, ils peuvent aussi se trouver dans un espace différent des mémoires classiques comme sur les AVR ou être mappés dans l'espace mémoire global comme sur un Cortex-Mx

    Etant donné de toutes façons que ces registres ne sont pas sauvegardés en cas de coupure de l'alimentation, on peut les assimiler à de la RAM quoiqu'il en soit.

  11. #10
    narakphysics

    Re : [µc]Expliquer les registres

    Merci à vous pour vos réponses,

    Si J'ai bien compris, les registres se trouvent dans la RAM. Et la raison principale c'est la vitesse de lecture ainsi que de l'écriture.
    Si on on prend le cas par exemple d'un DISCRETE INPUT, normalement l'état de ce pin est sauvegardé dans un registre interne. Et si on veut que le Pin va réagir en temps réel, il faut que l'écriture et la lecture soient plus rapide.
    Est ce juste?

  12. #11
    Jack
    Modérateur

    Re : [µc]Expliquer les registres

    Si J'ai bien compris, les registres se trouvent dans la RAM
    Que veut dire "se trouvent dans la RAM"? Les registres sont de la RAM. Comme Fred_du_92 vient de l'expliquer, certains se trouvent dans l'espace d'adressage, d'autres non selon leur fonction.

  13. #12
    gcortex

    Re : [µc]Expliquer les registres

    Oui et non. les registres à usage général sont dans le µP et ne font pas partie physiquement de la RAM,
    même si parfois ils occupent les premières adresses de la RAM. idem pour les registres de périphériques.

    La lecture d'une pin ne peut pas vraiment se faire en temps réel, car il faut attendre que la valeur bascule à 1 ou 0.

    La vitesse, c'est seulement quand on fait une opération sur des registres et qu'on y stocke le résultat.
    Par ailleurs adressage dans RAM ou périphérique, çà prend souvent le même timing, et souvent 1 cycle.

    A ceci j'ajouterais le principe de localité spatiale et localité temporelle qui sont souvent liées.
    C'est pour çà que le peu de registres sont suffisants pour faire un traitement rapide.

  14. #13
    Fred_du_92

    Re : [µc]Expliquer les registres

    Citation Envoyé par Jack Voir le message
    Que veut dire "se trouvent dans la RAM"? Les registres sont de la RAM. Comme Fred_du_92 vient de l'expliquer, certains se trouvent dans l'espace d'adressage, d'autres non selon leur fonction.
    Et surtout selon l'architecture....

  15. #14
    adrien4607

    Wink Re : [µc]Expliquer les registres

    Citation Envoyé par zibuth27 Voir le message
    hello,

    en stockage de variables, les registres sont surtout utilisés pour leur accès rapide (par comparaison à la mémoire externe ou à la mémoire de masse)

    dans un µcontroleur, les registres ne servent pas qu'à contenir des variables !!
    ils servent aussi à:
    • contenir l'état système
    • contenir les commandes et états des périphériques ( compteurs, état et direction des I/O, commande des interruptions, commande et résultats des convertisseurs A/D, etc)


    voici les 4 pages décrivant les registres du mega328 qui anime les arduinos (parmi les 660 pages de la datasheet)

    bravo déjà d'avoir attaqué le micro uniquement avec le Web !


    saluts
    Un énorme merci c'est exactement se que je cherchai !
    Je n'arrivais plus à tombé sur le mot "périphériques" et vos explication vont me permettre d'aller un peut plus loin dans la description


    Encore un grand merci à vous tous

Discussions similaires

  1. accés au registres
    Par Hayuki dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 16/06/2010, 14h25
  2. Les registres des PIC
    Par Zonda G25 dans le forum Électronique
    Réponses: 5
    Dernier message: 04/06/2009, 20h24
  3. registres
    Par invitedc31ba8c dans le forum Électronique
    Réponses: 4
    Dernier message: 05/04/2007, 21h36
  4. Registres PIC
    Par Toufinet dans le forum Électronique
    Réponses: 2
    Dernier message: 23/05/2006, 22h56
  5. les registres
    Par invite459a4ddc dans le forum Logiciel - Software - Open Source
    Réponses: 9
    Dernier message: 13/01/2004, 23h25
Découvrez nos comparatifs produits sur l'informatique et les technologies.