Quelle est la signification de «demi-bit» dans ce contexte?

21

Dans la spécification RS-232, les bits d'arrêt peuvent être 1, 1,5 ou 2 bits d'arrêt ... Je me demande comment il est possible d'avoir un demi-bit?

De plus, certains calculs ADC utilisent une précision de 0,5 bit dans les spécifications / fiches techniques du CI. Quelqu'un peut-il élaborer sur ce sujet?

mFeinstein
la source

Réponses:

18

Je me demande comment il est possible d'en avoir un demi-morceau?

Dans les communications série asynchrones basées sur UART (dont RS232 est un exemple), un octet série de données est "enfermé" dans un bit de démarrage et un ou des bits d'arrêt. Après le bit d'arrêt, il y a un espace avant l'octet de données suivant et cet espace peut être considéré comme étendant le ou les bits d'arrêt: -

entrez la description de l'image ici

De nombreuses transmissions de données en série utilisent un bit d'arrêt car le récepteur est capable de traiter les octets dans le temps, mais il est parfois utile d'étendre l'écart entre les octets de données en augmentant le nombre de bits d'arrêt. Comme les UART d'envoi et de réception ont une fréquence d'horloge interne beaucoup plus élevée, la fabrication d'une longueur de bit fractionnaire est facile.

Pour un ADC, j'ai joint un dessin: -

entrez la description de l'image ici

La ligne bleue représente une tension d'entrée analogique qui monte linéairement et l'escalier est le numéro numérique de l'ADC essayant de représenter cette tension analogique. Au milieu, j'ai montré en rouge quelle sera l'erreur maximale théorique - pas étonnant qu'elle soit équivalente à 0,5 bit.

Andy aka
la source
Dans certains cas, il peut être utile pour un émetteur UART d'autoriser un nombre fractionnaire de bits d'arrêt légèrement inférieur à un (par exemple 15/16). Si le périphérique X envoie des données au périphérique Y aussi vite que possible, Y doit envoyer un octet de données à Z pour chaque octet qu'il reçoit, et le débit en bauds de X est 0,01% plus rapide que celui de Y, puis un octet tous les 10 000 sera perdu à moins que Y peut transmettre des données avec moins d'un bit d'arrêt complet. J'ai vu un (et un seul) UART qui autoriserait 15/16 bits d'arrêt (pour une raison quelconque, les valeurs autorisées étaient (9..16) / 16 ou (25..32) / 16, mais pas par exemple 17 / 16, ce qui aurait pu être une bonne valeur pour X ci-dessus
supercat
Quelle est la durée du délai supplémentaire? Le bit d'arrêt est-il toujours transféré pendant 150% du temps normal utilisé pour transférer un bit? Y a-t-il d'autres cas?
Unknown123
@supercat Où l'avez-vous vu? Souhaitez-vous publier le lien de la fiche technique si elle est disponible?
Unknown123
@ Unknown123: L'UART était le 2681 nxp.com/docs/en/data-sheet/SCC2681.pdf
supercat
23

Dans les deux cas que vous mentionnez, une quantité analogique est impliquée quelque part.

Dans le cas RS-232, le nombre de «bits d'arrêt» fait référence à un durée , donc 1,5 bits d'arrêt signifie simplement 1,5 fois la durée d'un bit au débit donné.

Dans le cas ADC, une précision de 0,5 bit fait référence à la quantité analogique en cours de conversion, donc 0,5 bit signifie essentiellement que le résultat numérique est garanti pour représenter la quantité analogique arrondie correctement à la représentation numérique la plus proche possible.

microtherion
la source