Directionnalité du Bus de Données : Unidirectionnel (Simplexe) vs Bidirectionnel (Duplex) en Électronique
Modes de Communication du Bus de Données
Un bus de données peut être conçu pour un flux de données unidirectionnel ou bidirectionnel :
Bus de Données Unidirectionnel (Simplexe)
- Les données circulent dans une seule direction fixe.
- Bus séparés nécessaires pour le sens inverse (ex: bus lecture dédié + bus écriture dédié).
- Utilisé dans : Interfaces périphériques simples, lignes de données d'affichage (CPU → écran), sorties de capteurs, registres écriture seule.
- Logique de contrôle plus simple ; pas d'arbitrage nécessaire.
Bus de Données Bidirectionnel (Duplex)
- Les données circulent dans les deux sens sur les mêmes fils — multiplexage temporel.
- Nécessite des tampons tri-state (haute impédance quand non pilotés) et un contrôle de direction (signal lecture/écriture).
- Standard dans : Bus CPU-mémoire (D0-D63), PCI/PCIe (paires de lanes), USB, SATA, mémoire DDR, bus système microprocesseur.
- Plus complexe mais réduit le nombre de broches, pistes PCB, coût.
Half-Duplex vs Full-Duplex
- Half-Duplex : Bidirectionnel mais un sens à la fois (ex: RS-485 2 fils, bus bidirectionnel single-lane).
- Full-Duplex : Bidirectionnel simultané (lanes TX/RX séparées — PCIe, USB 3.x, SATA, RS-485 4 fils).
Pratique Moderne
Presque tous les bus système modernes (DDR, PCIe, USB, Ethernet, NVLink) sont des paires différentielles série full-duplex. Les bus parallèles bidirectionnels (ISA, PCI, FSB) sont legacy. Les caches CPU internes utilisent des ports lecture/écriture larges unidirectionnels.
