Quest-ce que la bande de bits?

Je lis le manuel de référence ARM Cortex M3 et les concepts « bande de bits « , » région de bande de bits « et » alias de bande de bits « apparaissent.

Quest-ce que la bande de bits?

Commentaires

  • Jai dédié une page github pour expliquer ce quest la bande de bits, comment elle fonctionne et comment lutiliser. Je pense quil répond à la plupart des questions sur le bit-banding, nhésitez pas à le (re) visualiser.
  • Ceci est une introduction pratique sur la fonctionnalité de bit-banding dans ARM Cortex M3 atadiat.com/en/articles/…

Réponse

Le centre dinformations ARM fait référence à la bande de bits dans leur documentation Cortex-M3 et -M4, la documentation du compilateur et quelques autres lieux, comme Accueil> Modèle de programmeurs> Bandes de bits . De Accueil> Développement de logiciels pour Cortex-M3> Bandes de bits :

La bande de bits mappe un mot complet de mémoire sur un seul bit dans la région de la bande de bits. Par exemple, écrire sur lun des mots alias définira ou effacera le bit correspondant dans la région de bande binaire.

Cela semble être un moyen dobtenir un seul opération atomique de bits.

Lors de lécriture dans les régions dalias, le bit 0 du mot de 32 bits est utilisé pour définir la valeur dans la région de bande de bits. La lecture à partir de ladresse alias renverra la valeur de la région de la bande binaire du bit 0 et les autres bits seront effacés.

Commentaires

  • Avez-vous une idée de la manière dont les opérations en bandes de bits sont effectuées en interne, et quelles sont les vraies garanties en ce qui concerne latomicité? Si je concevais une puce pour faciliter les opérations de jeu de bits atomiques ou deffacement de bits, jutiliserais deux des bits dadresse supérieurs pour sélectionner entre ' accès normal ' (00), ' écrire ceux ' (01) et ' écrire des zéros ' (1x). De plus, je ' demander au CPU dinverser sa sortie de données lorsque ces bits dadresse étaient 0x11. De cette manière, les bits pourraient être définis ou effacés en un seul cycle, sans avoir besoin dune lecture-modification-écriture. Même si les bits seraient définis par le matériel en même temps que lécriture, …
  • Il suffit de suivre les liens, ya des clochards.
  • @AlKepp, Écrire un peu sur de nombreux systèmes I have used est vraiment atomique avec une seule instruction pour effectuer lacte qui ne peut pas être interrompu.
  • @AlKepp, je nessayais pas dimpliquer quil y avait des systèmes qui ne pouvaient pas faire cela avec une instruction atomique. Vous avez dit, " Lécriture dun bit ne peut pas être vraiment atomique. " Jétais en désaccord avec cette affirmation. Jai utilisé de nombreux systèmes où il est atomique et ils existent.
  • @AlKepp, Le Cortex M3 est un exemple de plus dun microcontrôleur. Limportant pour moi est que vous ne pouvez pas dire que les instructions atomiques nexistent pas si elles existent souvent. Beaucoup de gens ici utilisent des systèmes embarqués dont les ressources sont suffisamment faibles pour que la mémoire soit interne, cest en fait le seul système sur lequel jaime coder. Cela mis à part, dire à quelquun quil nexiste pas alors quil existe et quil est couramment utilisé peut induire en erreur.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *