Transferencia de datos y del control
El C.I. 8251 cuenta con varios buffers a través de los cuales fluyen los datos. Este flujo de datos se ilustra en la figura 8.10. Los datos serie de entrada se reciben y se ensamblan en unidades de datos de 8 bits en el buffer RB. Una vez que se ha ensamblado el dato en el buffer de RB, a continuación se transfieren al buffer RA. La CPU puede llevar el contenido del buffer RA ejecutando۱ una instrucción IN XXH (donde XXH es el código de selección para datos, y C/D(=0). Mientras la CPU lee el contenido del buffer RA, el próximo dato serie se puede estar ensamblado en el buffer RB. Por «ensamblar» se entiende al hecho de recibir 8 bits en serie por medio de una línea y almacenarlos en un registro para tenerlos disponibles en paralelo.
Cuando el siguiente byte se ha terminado de ensamblar en el buffer RB, se desplazará al buffer RA borrando el contenido anterior de RA. Si el contenido anterior RA no se ha leído, se registra una bandera de error en el registro de estados (error de atención-overrum).
Los datos de salida que envía la CPU se reciben en buffer TA, si el buffer TB está vacío, el contenido de TA se desplaza a TB de donde son enviados en forma serie al periférico de salida conectado a la 8251. Mientras el buffer TB está enviando el dato, la CPU puede cargar el siguiente dato en TA tan pronto el buffer TB se vacíe el dato nuevo se desplaza de TA y TB. Si el buffer TA está vació cuando el buffer TB termina de enviar el dato serie, el C.I. 8251 inserta caracteres SYNC en el buffer TB si se está trabajando en modo síncrono. En cambio, si se está trabajando en modo asíncrono, la línea de transmisión toma el nivel de «marca».
Las palabras de control también se reciben en el buffer TA pero ahora no pasan al buffer TB sino que su función es la de modificar la lógica de trabajo del C.I. 8251 para satisfacer el comando de control ordenado. El 8251 no tiene un buffer dedicado para la palabra de control pero cuando se reciben en el buffer TA alteran la lógica de funcionamiento del USART.
Fuente: Apuntes de Arquitectura de computadoras de la FCA de la UNAM