Bus d'adresse vs bus de données
Selon l'architecture informatique, un bus est défini comme un système qui transfère des données entre les composants matériels d'un ordinateur ou entre deux ordinateurs distincts. Initialement, les bus étaient constitués de fils électriques, mais maintenant le terme bus est utilisé plus largement pour identifier tout sous-système physique qui offre les mêmes fonctionnalités que les bus électriques précédents. Les bus informatiques peuvent être parallèles ou série et peuvent être connectés en multipoint, en guirlande ou par des concentrateurs commutés. Le bus système est un bus unique qui aide tous les principaux composants d'un ordinateur à communiquer entre eux. Il est composé d'un bus d'adresses, d'un bus de données et d'un bus de contrôle. Le bus de données transporte les données à stocker, tandis que le bus d'adresses transporte l'emplacement où elles doivent être stockées.
Bus d'adresse
Le bus d'adresse est une partie du bus système de l'ordinateur qui est dédiée à la spécification d'une adresse physique. Lorsque le processeur de l'ordinateur doit lire ou écrire depuis ou vers la mémoire, il utilise le bus d'adresses pour spécifier l'adresse physique du bloc de mémoire individuel auquel il doit accéder (les données réelles sont envoyées via le bus de données). Plus correctement, lorsque le processeur veut écrire des données dans la mémoire, il affirme le signal d'écriture, définit l'adresse d'écriture sur le bus d'adresse et place les données sur le bus de données. De même, lorsque le processeur souhaite lire certaines données résidant dans la mémoire, il affirme le signal de lecture et définit l'adresse de lecture sur le bus d'adresse. Après avoir reçu ce signal, le contrôleur de mémoire obtiendra les données du bloc de mémoire spécifique (après avoir vérifié le bus d'adresse pour obtenir l'adresse de lecture), puis il placera les données du bloc de mémoire sur le bus de données.
La taille de la mémoire adressable par le système détermine la largeur du bus de données et inversement. Par exemple, si la largeur du bus d'adresse est de 32 bits, le système peut adresser 232 blocs de mémoire (ce qui équivaut à 4 Go d'espace mémoire, étant donné qu'un bloc contient 1 octet de données).
Bus de données
Un bus de données transporte simplement des données. Les bus internes transportent des informations dans le processeur, tandis que les bus externes transportent des données entre le processeur et la mémoire. Généralement, le même bus de données est utilisé pour les deux opérations de lecture/écriture. Lorsqu'il s'agit d'une opération d'écriture, le processeur mettra les données (à écrire) sur le bus de données. Lorsqu'il s'agit de l'opération de lecture, le contrôleur de mémoire récupère les données du bloc de mémoire spécifique et les place dans le bus de données.
Quelle est la différence entre le bus d'adresse et le bus de données ?
Le bus de données est bidirectionnel, tandis que le bus d'adresse est unidirectionnel. Cela signifie que les données voyagent dans les deux sens, mais que les adresses voyagent dans un seul sens. La raison en est que, contrairement aux données, l'adresse est toujours spécifiée par le processeur. La largeur du bus de données est déterminée par la taille du bloc de mémoire individuel, tandis que la largeur du bus d'adresse est déterminée par la taille de la mémoire qui doit être adressée par le système.