bus stuffing

This commit is contained in:
JOLIMAITRE Matthieu 2024-02-29 10:38:14 +01:00
parent b76ff040bc
commit 917b2258ad
2 changed files with 125 additions and 0 deletions

98
bus/01_init.md Normal file
View file

@ -0,0 +1,98 @@
# Multiplexage
## Pourquoi ?
Machines à plusieurs objectifs.
- sécurisation
- réduction de consomation
- confort de conduite
Grand nombre de périphériques à connecter.
### Conventionnalité : une connection par liaison nécessaire :
```
+---+ +---+
| A |---| B |
| |-+ | |
+---+ | +---+
| |
| +---+
+-| C |
+---+
```
- Nombre de connections exponentelle.
- Difficile à mettre à jour.
### Multiplexage : une connection commune en 'réseau'.
```
+---+ +---+
| A |-+-| B |
+---+ | +---+
|
| +---+
+-| C |
+---+
```
- Nombre de connections linéaire.
- Disponibilité de l'information.
## Avantages
- moins de capteurs et de nombres de liaisons
- le poids et les couts diminuent
- extensibilité avec un cout minimal
- reconnu par une norme iso de fiabilité
## Principes
- un capteur par donnée nécessaire
- échange de donnée sur un cannal global.
### Détail
- Un réseau unifié
- Structuration des trames
- Synchronisation des horloges
- Arbitrage, priorisation de l'accès au Bus
## Architecture en couches
### étage d'entrée
Interface avec les capteurs
### étage de calcul
Le microprocesseur
- contient possiblement des mémoires
### étage de sortie
Interface avec les actionneurs
## Architecture réseau
- maitre esclave
- multi-maitre
- mixte
## Protocole
- l'acheminement des trames
- synchronisation d'horloges
- deux trames peuvent être émise en même temps
- l'arbitrage détermine celle qui est transmise
- la seconde sera ré-émise ensuite pour ne pas perdre d'information
### Méthode CSMA
- chaque message a un ID, un ID faible donne une plus haute priorité
- un temps est réservé pour la lecture des messages à envoyer
- un hashset des IDs supperposés est écrit sur le BUS,
- l'ID le plus faible enverra son message au temps suivant

View file

@ -70,6 +70,10 @@
## Protocole de communication
> Note :
> Dans notre modèle, la seule opération sur le milieu (cable/bus) est l'interruption du signal actuel partagé.
> i.e. écrire 0 sur un signal qui est par défaut à 1.
### Arbitrage
L'arbitrage CSMA se fait en organisant des temps pour que les composants puissent déclarer vouloir envoyer un message.
@ -149,3 +153,26 @@ taile | 1 | 11 | 1 | 1 | 1 | 4 | 0~64 | 15 | 1 | 1 | 1 | 7 | 3 | /
+---+----+---+---+---+---+------+--------+---+---+---+---+---+---
nature |arbitration | control | data | check | aquit.| protocole
```
- DLC : Description des données utiles.
- checksum / CRC : Code de vérification d'un message.
- ACK : Aquitement d'un message.
## Synchronisation STUFF
Un bit est envoyé tout les N bits pour éviter des mots interdits (exemple : 11 × 0 / 11 × 1 ).
Cette responsabilité est celle de l'émetteur et du récepteur.
STUFF-ing à 4 bits :
```
donnée actuelle : 0100.0000.0111
donnée écrite sur le bus : 01001000010001
donnée dé-stuffé : 0100.0000.0111
^\___^\____ bits STUFF-é
```
Selon le protocol, il est également possible d'avoir des bits de 'stuffing' alternant.
> Note :
> Le 'stuffing' peut servir de synchronisation d'horloge car il assure une alternance dans le signal.