in ,

Memory Mapped IO, périphériques et registres

Memory-mapped IO ou MMIO est le processus d’interaction avec les périphériques matériels en E/S sur des adresses mémoire prédéfinies. Toutes les interactions avec le matériel sur le Raspberry Pi se produisent en utilisant MMIO.

Un périphérique est un matériel avec une adresse spécifique dans la mémoire à laquelle il écrit et / ou lit des données. Tous les périphériques peuvent être décrits par un décalage de l’ adresse de base périphérique, qui commence à 0x20000000 sur le modèle Raspberry Pi 1, et à 0x0x3F000000 sur les modèles 2 et 3.

Un registre est un morceau de mémoire de 4 octets à travers lequel un périphérique peut lire ou écrire. Ces registres sont à des décalages prédéfinis à partir de l’adresse de base du périphérique. Par exemple, il est assez commun qu’au moins un registre soit un registre de contrôle, où chaque bit dans le registre correspond à un certain comportement que le matériel devrait avoir. Un autre registre commun celui de l’écriture, où tout ce qui y est écrit est envoyé au matériel.

Déterminer où se trouvent tous les périphériques, quels registres ils ont et comment les utiliser se trouvent principalement dans le manuel du BCM2835 ARM. Le BCM2835 est le nom du chipset utilisé par le Raspberry Pi model 1, et la plupart des informations sont utilisable pour les modèles 2 et 3. Ce document n’est pas facile à analyser, et il manque beaucoup d’informations, mais c’est un bon point de départ.

What do you think?

23 points
Upvote Downvote

commentaires

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.

Chargement & hellip;

Comment installer Netstat sur Ubuntu ?

Comment scanner les ports ouverts sur un serveur avec Netstat ?