Transmission de données : préparation des données cycliques, optimisation du contrôle et de la surveillance

Généralités

Les procédures suivantes pour différentes longueurs de trame montrent qu'aucun changement n'est requis dans la MTU lors du transfert en blocs avec des spécifications de longueur. Les étapes de ce processus et la position des octets de contrôle sont identiques. Seul le nombre de cycles requis pour effectuer le transfert de données change.

Longueur de la trame < Taille du registre Output MTU

Étape

Action

1

Copiez les données série du registre TxByte2 dans le registre TxByteX.

2

Créez l'octet de contrôle dans le registre TxByte1. Spécifiez la longueur des données dans la MTU et définissez la détection de fin de trame = 0.

3

Augmentez le numéro de séquence d'envoi dans le registre OutputSequence. Le module copie les données dans le tampon de transmission au prochain cycle.

4

Attendez que le numéro de séquence d'envoi soit acquitté (cela vaut confirmation du transfert des données dans le registre InputSequence).

5

Créez un octet de contrôle dans le registre TxByte1. Indiquez la longueur de données = 0 et la détection de fin de trame = 1.

6

Augmentez le numéro de séquence d'envoi dans le registre OutputSequence. Le module détecte la fin de la trame et cette dernière est libérée pour être envoyée.

7

Attendez que l'acquittement du numéro de séquence d'envoi apparaisse dans le registre Input-Sequence pour confirmer la réception de la trame.

Une nouvelle trame peut alors débuter.

Longueur de la trame ≥ Taille du registre Output MTU

Étape

Action

1

Copiez le premier bloc des données série du registre TxByte2 dans le registre TxByteX.

2

Créez l'octet de contrôle dans le registre TxByte1. Spécifiez la longueur des données dans la MTU et définissez la détection de fin de trame = 0.

3

Augmentez le numéro de séquence d'envoi dans le registre OutputSequence. Le module copie les données dans le tampon de transmission au prochain cycle.

4

Attendez que l'acquittement du numéro de séquence d'envoi apparaisse pour confirmer le transfert des données dans le registre InputSequence.

5

Répétez les étapes 1 à 4 jusqu'à ce que les données série aient été transférées en blocs.

6

Créez l'octet de contrôle dans le registre TxByte1. Indiquez la longueur de données = 0 et la détection de fin de trame = 1.

7

Augmentez le numéro de séquence d'envoi dans le registre OutputSequence. Le module détecte la fin de la trame et cette dernière est libérée pour être envoyée.

8

Attendez que l'acquittement du numéro de séquence d'envoi apparaisse dans le registre InputSequence pour confirmer la transmission de la trame.

Une nouvelle trame peut alors débuter.

Organigramme de transmission des données : préparation des données cycliques, contrôle maximum et surveillance des étapes individuelles

G-SE-0064570.2.gif-high.gif

 

 

Transmission de données : utilisation du mécanisme Block Forward

Étape

Action

1

Copiez le premier bloc des données série du registre TxByte2 dans le registre TxByteX.

2

Créez l'octet de contrôle dans le registre TxByte1. Spécifiez la longueur des données dans la MTU et définissez la détection de fin de trame = 0.

3

Augmentez le numéro de séquence d'envoi dans le registre OutputSequence. Le module copie les données dans le tampon de transmission au prochain cycle.

4

Répétez les étapes 1 à 3 jusqu'à ce que les données série aient été transférées en blocs.

5

Créez l'octet de contrôle dans le registre TxByte1. Indiquez la longueur de données = 0 et la détection de fin de trame = 1.

6

Augmentez le numéro de séquence d'envoi dans le registre OutputSequence. Le module détecte la fin de la trame et cette dernière est libérée pour être envoyée.

Informations générales

Les acquittements cycliques du numéro de séquence d'envoi transféré des blocs précédents dans le registre InputSequence valent confirmation que ces blocs ont été reçus. Si le numéro de séquence d'envoi demeure inchangé, vous devez répéter la procédure à partir du premier numéro de séquence non acquitté.

Pour surveiller le débit sur le système matériel, il est nécessaire de déterminer le nombre de cycles entre l'augmentation du numéro de séquence d'envoi et la réception de l'acquittement. Le nombre de cycles peut varier énormément en fonction de la relation entre les classes de tâches, les durées de cycle du réseau et la topologie du réseau disponible.

Organigramme de transmission de données : utilisation du mécanisme Block Forward

G-SE-0064571.2.gif-high.gif

 

 

Exemple : partitionnement de l'octet de contrôle et des données de transmission

Vous devez transférer une trame de 27 octets. La taille de la MTU est définie sur 7 octets.

G-SE-0064572.2.gif-high.gif

 

 

Le processus de préparation et de division des données de transmission est le même, que vous utilisiez ou non le mécanisme Block Forward :

oSi vous n'utilisez pas le mécanisme Block Forward après les cycles MTU pour le transfert des données de transmission, le système attend l'acquittement du numéro de séquence d'envoi.

oSi vous utilisez le mécanisme Block Forward, le bloc de données suivant est transféré immédiatement lors du cycle suivant.

Dans les deux cas, une nouvelle trame ne peut être créée qu'après la MTU cycle 6.