¿Cómo viajan los bits de un lugar a otro?
Durante un proceso de datos, los bits de los números binarios que representan ya sea datos, instrucciones, direcciones o resultados, pueden existir dentro de un computador de dos formas.
Transmitiéndose: Por las líneas conductoras a velocidades electrónicas de un lugar de almacenamiento a otro.
Cada bits se guarda como uno o cero, según uno de dos estados posibles “si-no”, en la memoria o en registros.
En un computador esos dos estados son generados por medio de circuitos electrónicos, por lo cual en una escritura se puede pasar muy rápidamente de un estado al otro para cambiar el valor del bit almacenado.
Cuando no existe voltaje, no hay volts de tensión, existe almacenado un bit de valor cero.
Entonces, cuando se manifiestan los volts, indicara que existe almacenado un bit que vale 1. Este tipo de señales eléctricas, registradas a tomar solo dos valores o niveles (alto o bajo), se denominan señales digitales binarias o simplemente binarias.
Puede decirse que el bit de valor 0 ò 1, se transmitió a través del cable que sale del origen hasta el lugar de destino, donde su valor (0 ò 1) es detectado merced al valor de la señal eléctrica binaria censada en el destino.
Esta señal eléctrica es “portadora” y transportadora de información binaria.
Imaginemos 8 llaves suponiendo que cada una de ella llega un cable hasta un microprocesador, este podrá sensar si cada lleva guarda un 1 o 0. Basta una sola pila conectada a todas las llaves para detectar si cada una transmite o no. Asimismo, deberá llegar al microprocesador el cable conectado al negativo común (“masa”o”tierra”) respecto del cual se mide la tensión eléctrica del cable de salida de cada llave. Así operan los conductores del bus que comunican la memoria con el microprocesador.
Lo descripto para un movimiento de datos desde momería al microprocesador vale también para otro en sentido inverso, cuando en una escritura de memoria, una copia del registro de datos (RDA) debe ir hacia memoria. Hay que imaginar llaves que en RDA guardan una combinación de bits, con cables que salen de ellas hacia la memoria.
El bus de dirección, tiene un solo sentido de envio: del microprocesador a memoria. En el registro de dirección RDI se formaba el número binario que era la dirección que se enviaba a memoria para acceder directamente a la posición a leer o escribir. Los cables que salen de estas llaves van hacia memoria, constituyendo el bus de dirección.
¿Qué diferencia existe entre transmisión de bits en paralelo y en serie?
El bus de dirección, tiene un solo sentido de envio: del microprocesador a memoria. En el registro de dirección RDI se formaba el número binario que era la dirección que se enviaba a memoria para acceder directamente a la posición a leer o escribir. Los cables que salen de estas llaves van hacia memoria, constituyendo el bus de dirección.
¿Qué diferencia existe entre transmisión de bits en paralelo y en serie?
La forma de enviar varios bits juntos de un lugar a otro por cables, se denominan transmisión paralelo. Por cable se puede enviar un solo bit por vez.
La transmisión serie o “serial” supone enviar por un solo cable, los bits que se quiere transmitir. Para poder distinguir ceros o unos repetidos; se requiere que los 5 o 0 volts que representa cada bit, duren un lapso de tiempo fijo estipulado.
Transmisión de bits en serie tiene lugar, a través de uno de los conductores del cable de conexionado del teclado o del mouse al computador. La transmisión paralela solo puede darse entre lugares próximos, como los existentes dentro del gabinete del computador.
¿Qué es información digital, y que significa computador “digital”?
El concepto de información digital se aplica para todo aquello que está representado mediante ceros y unos dentro de una computadora. La información digital no sólo son textos electrónicos, también se incluyen las imágenes, el audio y el video, que al igual que los textos tienen diferentes formatos, codificaciones y representaciones en el mundo electrónico. Documentos de texto, imágenes, videos, animaciones, sonidos, etc., son convertidos a formato digital y almacenados en archivos que se distinguen unos de otros mediante el empleo de etiquetas pegadas al nombre que distinguen su naturaleza (doc, txt, jpg, gif, wav, etc.).
Un computador digital es sinónimo de computador. Indica el tipo de máquina que operan con señales eléctricas digitales binarias, que siempre es posible representar mediante números binarios.
Una computadora es una colección de circuitos integrados y otros componentes relacionados que puede ejecutar con exactitud, rapidez, y de acuerdo a lo indicado por un usuario o automáticamente por otro programa, una gran variedad de secuencias o rutinas de instrucciones que son ordenadas, organizadas y sistematizadas en función a una amplia gama de aplicaciones prácticas y precisamente determinadas, proceso al cual se le ha denominado con el nombre de programación. Por otra parte, para que la computadora pueda ser útil, es necesario que ésta interactúe con el exterior pidiendo datos para ser procesados, y muestre de alguna forma los resultados que obtiene.
¿Qué es información analógica?
Los relojes digitales y analógicos son exponentes de dos formas diferentes de obtener información. Un reloj solar es un dispositivo solar analógico. Se basa en el movimiento de la sombra de un objeto iluminado por el sol, que sirve como símil o analogía del transcurso continúo del tiempo.
La sombra pasa teóricamente por infinitos puntos, sin solución de continuidad. Cada uno de los puntos significa información y entre dos posiciones siempre será posible encontrar otras intermedias.
Las manecillas de un reloj analógico, que se mueven en forma continua, pasan también por infinitas posiciones para estimulación horaria. La existencia de números en tales relojes puede no ser necesaria. Solo bastan unas pocas marcas de referencia en el cuadrante para estimular la hora. Existe un sin número de dispositivos mecánicos ideados para estimar o medir magnitudes físicas, los cuales presentan variaciones análogas a éstas. La temperatura se mide por su efecto dilatador.
La altura del aceite en el motor de un auto se representa por la película oscura que dejan en la varilla. La velocidad de un vehículo se representa por la oposición de la aguja en un cuadrante en función del número de vueltas por segundo que da una rueda. El peso de un objeto, en una balanza a resorte, por el estiramiento que sufre este a causa de dicho peso. La longitud de una pieza de género puede medirse en relación con el número de vueltas de debe dar un cilindro donde se enrolla.
La señales eléctricas que se haces variar en forma analógica a las variaciones que presentan ciertas magnitudes, como las tonalidades de gris o colores de una imagen cuando es barrida por una imagen.
En un escáner mediante la filas de fotodiodos –uno al lado de otro- muy sensible a las variaciones luminosas, se barre una imagen que se quiere almacenar en memoria. Una luz ilumina la zona que ya está barriendo, y lo fotodiodos censan la luz reflejadas por la pequeñas superficies que esta de bajo de cada uno. Cuando pasa por zona de color negro no circula corriente eléctrica y por zonas blancas dará a lugar a una intensidad de corriente máxima. Las distintas tonalidades de grises reflejan valores intermedios de luz y en correspondencia por el diodo circulara una corriente proporcional al tono de gris censado. Existen infinitos tonos de grises por lo cual la corriente que regula cada fotodiodo puede tomar infinito valores entre los dos extremos para el negro y el blanco.
¿Qué implica una conversión analógica-digital (A/D) y en que periféricos tiene lugar?
En el interior de un computador solo puede existir señales digitales, y que señales provenientes del exterior son analógicas, como las que se generan cuando un escáner barre una imagen, o las enviadas vía modem por una línea telefónica, se requiere también que dichos periféricos se lleve a cabo una conversión A/D. igualmente será necesario convertir en señales eléctricas digitales el movimiento de la bolita del mouse, o las señales analógicas de audio y video que llegan a una plaqueta para multimedia.
En relación con la digitalización, trataremos una forma de conversión A/D empleada para cada tipo de señales eléctricas de variaciones relativamente lenta. La figura 1.56 ilustra los conceptos relacionados con la conversión A/D. los instantes t1, t2, t3… se toma una muestra, o sea se mide el valor de una señal eléctrica analógica hipotética que varía entre 0 y 1 volts.
En t2, t3… se han determinado los valores enteros 1001 (9 en vez de 8,8), 1100 (12 en vez de 11,6)… etc. Si todos estos números binarios se guardan ordenados en memoria, la curva continua de la figura 1.56 quedara memorizada dentro del computador como el conjunto de puntos separados de la figura 1.57. Si se unen estos, resulta una figura de forma parecida a la original, que en lugar de tomar 16 niveles de valor 0000 a 1111, se determinan 32 (de 00000 a 11111), existirá un menor error de cuantificación. En general, cuanto más bits se utilicen para representar cada medición, y cuanto menos separados estén los instantes t1, t2, t3… mayor será la correspondencia entre la señal analógica y los números que representan puntos cuantificados de ella en la memoria, requiriéndose mayor espacio en está para guardarlos.
También podemos decir que el mouse común la conversión analógica digital es la parte mecánica: el movimiento de la bolita se convierte y descompone en movimientos analógicos en dos direcciones perpendiculares que comunican a dos rueditas que pueden girar. Los dientes de cada ruedita al girar van dejando pasar o cortar un haz de luz que incide sobre ellos, generada por un dispositivo fotoemisor. En el giro de cada rueda es censado por un fotodetector. De esta forma, el movimiento continuo de la bolita transmitido a las dos ruedita se convierte en dos series de señales digitales que permiten determinar la dirección y velocidad de ese movimiento. Se ha realizado así una conversión A/D.
¿Qué implica una conversión digital-analógica (D/A) y que periféricos la llevan a cabo?
Mientras que una conversión A/D está relacionada con la entrada de datos desde el exterior hacia un computador, una conversión A/D se requiere para ciertos tipos de salida desde esta hasta hacia el mundo exterior.
La señal eléctrica digital que representan unos y ceros, se transforma en una señal analógica.
Así una conversión A/D se realiza en una plaqueta de video para que el monitor pueda brindar una amplia graduación de colores, a fin de obtener una imagen más real.
En un modem, las acciones de convertir los unos y ceros provenientes del computador en variaciones de una señal eléctrica que se envía por línea telefónica, se denomina “modulación”.
¿Qué hardware encontramos para la entrada/salida de datos, desde los periféricos hasta la porción central de un computador?
La función primera de los periféricos es convertir señales que representan datos extremos en internos en las operaciones de entrada, o a la inversa en operaciones de salida.
En una PC existen periféricos que están fuera del gabinete del computador (teclado, impresora, mouse, etc.) y otros que están dentro del mismo (unidades de disco –flexibles, rígidas, CD ROM- o un módem interno).
Siempre existe un medio que representa el mundo exterior: el papel de la impresora, las teclas del teclado, la pantalla del monitor, la superficie donde se desplaza la bolita del mouse, la imagen que recorre el scanner, el disco fijo o inserto en la unidad correspondiente, etc.
En la operación de datos que llegan del exterior a un periférico tienen como destino la memoria principal, mientras que en una operación de salida el movimiento es el contrario.
¿De qué forma intervienen las 4 etapas del hardware citadas en operaciones de E/S, desde o hacia distintos periféricos?
MOUSE: en él tiene lugar la conversión A/D.
Los pulsos generados (de la bolita según 2 ejes perpendiculares) son enviados en serie por la electrónica del mouse, a través de un conductor contenido en el cable de salida. Este cable se conecta a la plaqueta multifunción, donde está la interfaz “port serie” (electrónica intermedia).
Un circuito de ésta es un registro port de datos, siendo como cada registro, hardware dedicado al almacenamiento temporario de los datos que llegan desde la electrónica del mouse.
Del port, dichos datos salen en paralelo, a través de las líneas de datos de un bus de E/S, y así llegan al registro AX de la UPC. Por último del registro AX pasan a memoria, donde un programa hace que el cursor del mouse aparezca en pantalla.
IMPRESORA: operación de salida tiene lugar cuando pasan de la memoria principal al registro AX datos a imprimir, un byte por vez. Estos bites de datos desde AX, a través del bus ISA, llegan simultáneamente a un registro port de datos de la interfaz, que los guarda temporariamente. Este port forma parte de la circuitería de la interfaz “port paralelo” también ubicada en la tarjeta multifunción (nivel electrónico intermediario). De este port cada byte a imprimir pasa en paralelo – a través del conector y cable que lo vincula con la impresora- a la memoria de almacenamiento temporario de este periférico, que forma parte de su electrónica. Esta también se encarga de convertir la información binaria a imprimir, contenida en su memoria en señales graficas en tinta negra o color sobre un soporte de papel, que oficia de mundo exterior.
La electrónica del periférico TECLADO está contenida en una pastilla con un microprocesador dedicado. El mismo, entre otras funciones detecta que tecla se pulso o ibero. Luego envía es serie, hacia el registro port del teclado el código binario de dicha tecla por una línea, la cual forma parte de un cable que se enchufa a un conector de la “motherboad”, el teclado no se conecta a una tableta insertable de la “motherboard”. La electrónica intermedia (interfaz con port) del teclado, conocida como controladora de teclado, está en la plaqueta principal. Del port citados, los 8 bits del código de la tecla siguen en paralelo por el bus ISA hasta el registro AX de donde van a memoria principal.
Si hablamos de un periférico insertado dentro de la pc. (Cd room, disco rígido, etc.) Tiene una electrónica que en operación de entrada hacia la memoria censa los bits grabados en serie en un sector de la pista de un disco, denominada VRAM, DONDE contiene una pequeña porción de la memoria, uno a uno, mediante el cabezal. Luego de memorizar transitoriamente en unos registros estos bites del sector leído, la electrónica mediante un conector con “agujas” a la plaqueta multifunción, donde existen interfaces para varios periféricos. De ésta los datos leídos siguen camino- por las líneas de datos del bus al cual ella está conectada- hacia la porción central con destino a la memoria principal.
Una operación de entrada implica un movimiento de datos inverso al descripto.
En la plaqueta multifunción están los port que forman parte de la interfaz de la disquetera, mientras que en un disco rígido o en un CD tipo IDE, dichos port están en la electrónica del periférico.
Actualmente están en la “mother” de una PC, la electrónica y conectores que antes estaban en la plaqueta, con interfaces para unidades de disco (duro y CD) disqueteras, y las interfaces “port serie” y “port paralelo”, típicamente usadas para el mouse e impresora.
El periférico MODEM interno junto con su interfaz “port serie” están en una plaqueta insertable, a la cual se conecta una línea telefónica.
En una operación de entrada, la señal analógica modulada llega por dicha línea al circuito demodulador – que forma parte de la electrónica del periférico módem- que la convierte en una serie de pulsos (conversión A/D). Estos entran a la electrónica intermediaria, o sea a la interfaz del módem en donde son convertidos en 8 bits en paralelo (conversión serie a paralelo) y pasados a un port de datos. Desde este se transferirán a través de un bus al registro AX de la UCP, y luego por otro bus llegaran a la memoria. De manera inversa en una operación de salida.
Periférico, monitor, por empezar “plaqueta de video”- que se enchufa a la motherboard”- además de portar la electrónica intermediaria, contiene una pequeña porción de la memoria principal, denominada VRAM, donde se almacena la información a visualizar. Esta llega a la VRAM merced a la ejecución de un programa por el microprocesador, y es convertida en señales analógicas o la electrónica intermedia. Por tres conductores del cable que une la plaqueta de video con el monitor, éstas señales (y las del sincronismo) llegan a la electrónica del monitor, que se encarga de convertirlas en una imagen visible en pantalla (soporte que conforta el mundo exterior). Obsérvese que la VRAM, y liego de una conversión A/D la información a visualizar entra directamente en la electrónica del monitor, sin que medie entre esta y la memoria principal.
¿Qué es un port?
Cuando se habla de port se asume que se trata de un registro temporario, que está en la electrónica intermediaria contenida en una plaqueta interfaz, o en chips de la motherboard, dedicado a guardar datos en tránsito entre el periférico y la porción central, en una operación de entrada o salida.
Vale destacar que un port solo trabaja con información digital.
PORT designa a un registro que está en la electrónica intermedia (interfaz).
¿PORQUE OPERAN COMO BUFFERS ALGUNAS ZONAS DE MEMORIA, LOS PORTS DE UNA INTERFAZ, LA MEMORIA CACHÉ Y OTRAS MEMORIAS?
BUFFERS: adapta 2 velocidades distintas, permitiendo independencia entre un transmisor y un receptor, con el fin de que ambos puedan estar simultáneamente ocupados sin que el más rápido pierda tiempo esperando al otro.
En computación, se empezó a usar la denominación de MEMORIA BUFFER para zonas de la memoria principal donde se guardan datos en TRANSITO, desde o hacia periféricos. Poe ej. Permanecen en una de Zonas datos que van llegando a una cierta velocidad provenientes de un disco, para ser procesados luego, a gran velocidad, mediante la ejecución de algún programa por la UCP.
Mientras los datos van arribando a memoria, la UCP puede dedicarse a ejecutar otro programa.
Otra zona de la memoria son los datos a imprimir, que un programa deja rápidamente en ella, para que sean enviados a una impresora a una velocidad en promedio menor. El teclado también tiene reservado en la memoria un buffer para los códigos de teclas pulsadas.
En general cada periférico puede tener en memoria principal su zona de buffer.
Otro buffer inteligente es la MEMORIA CACHE, interpuesta en entre la memoria principal y la UCP. El cache recibe de la memoria principal DRAM, a una cierta velocidad, las instrucciones que será ejecutada próximamente por la UCP, y los datos que serán procesados por ellas. Como ser al triple o más velocidad, la UCP puede tomar del cache dichas instrucciones y datos, dado que se trata de una memoria SRAM (static ram), de acceso más rápido que la DRAM de memoria principal.
También en la electrónica de periféricos, como las unidades de discos, la impresora, y el teclado, existen MEMORIAS BUFFERS, para guardar temporariamente información, en tránsito hacia o desde el medio exterior.
¿QUÉ SON LAS DIRECCIONES DE LOS PORTS DE UNA INTERFAZ, Y COMO SE VINCULA ESTA CON LA PORCION CENTRAL ATRAVES DEL BUS AL CUAL SE CONECTA?
Cada interfaz puede verse en parte en parte como una pequeña memoria RAM, cuyos registros de ports se pueden leer o escribir del mismo modo como si fueran posiciones de memoria, para lo cual cada port tiene asignado en una interfaz un número fijo, que es su dirección.
Un cable de lectura o escritura, ordena la lectura o escritura de un port.
Al igual que la memoria, la interfaz está ligada a la UCP, a través de un bus, con líneas para direcciones, datos y control.
Otra función central de la plaqueta interfaz, es generar por una línea la señal que se envía a la UCP para solicitarle interrupción del programa en curso de la ejecución (IRQ – interrupt request- en las PC).
Puertos de salida/entrada.
Los puertos de salida/entrada son elementos materiales del equipo, que permiten que el sistema se comunique con los elementos exteriores. En otras palabras, permiten el intercambio de datos, de aquí el nombre interfaz de entrada/salida (también conocida como interfaz de E/S). Dicha interfaz puede ser de tipo físico, o puede ser a nivel de software (por ejemplo, los puertos que permiten la transmisión de datos entre diferentes ordenadores), en cuyo caso se usa frecuentemente el término puerto lógico.
Puerto Serie.
Los puertos seriales (también llamados RS-232, por el nombre del estándar al que hacen referencia) fueron las primeras interfaces que permitieron que los equipos intercambien información con el "mundo exterior"(frecuentemente utilizado por computadoras y periféricos). El término serial se refiere a los datos enviados mediante un solo hilo: los bits se envían uno detrás del otro en contraste con el puerto paralelo que envía varios bits simultáneamente.
Originalmente, los puertos seriales sólo podían enviar datos, no recibir, por lo que se desarrollaron puertos bidireccionales (que son los que se encuentran en los equipos actuales). Por lo tanto, los puertos seriales bidireccionales necesitan dos hilos para que la comunicación pueda efectuarse.
La comunicación serial se lleva a cabo asincrónicamente, es decir que no es necesaria una señal (o reloj) de sincronización: los datos pueden enviarse en intervalos aleatorios. A su vez, el periférico debe poder distinguir los caracteres (un carácter tiene 8 bits de longitud) entre la sucesión de bits que se está enviando.
Ésta es la razón por la cual en este tipo de transmisión, cada carácter se encuentra precedido por un bit de ARRANQUE y seguido por un bit de PARADA. Estos bits de control, necesarios para la transmisión serial, desperdician un 20% del ancho de banda (cada 10 bits enviados, 8 se utilizan para cifrar el carácter y 2 para la recepción).
Ésta es la razón por la cual en este tipo de transmisión, cada carácter se encuentra precedido por un bit de ARRANQUE y seguido por un bit de PARADA. Estos bits de control, necesarios para la transmisión serial, desperdician un 20% del ancho de banda (cada 10 bits enviados, 8 se utilizan para cifrar el carácter y 2 para la recepción).
Los puertos seriales, por lo general, están integrados a la placa madre, motivo por el cual los conectores que se hallan detrás de la carcasa y se encuentran conectados a la placa madre mediante un cable, pueden utilizarse para conectar un elemento exterior. Generalmente, los conectores seriales tienen 9 ó 25 clavijas y tienen la siguiente forma (conectores DB9 y DB25 respectivamente):
Un PC posee normalmente entre uno y cuatro puertos seriales.
Puerto en Serie
Mientras que otras interfaces como Ethernet, FireWire, y USB mandaban datos como un flujo en serie, el término "puerto serie" normalmente identifica el hardware más o menos conforme al estándar RS-232, diseñado para interactuar con un módem o con un dispositivo de comunicación similar.
Actualmente en la mayoría de los periféricos serie, la interfaz USB ha reemplazado al puerto serie puesto que es más rápida. La mayor parte de las computadoras están conectadas a dispositivos externos a través de USB y, a menudo, ni siquiera llegan a tener un puerto serie.
El puerto serie se elimina para reducir los costes y se considera que es un puerto heredado y obsoleto. Sin embargo, los puertos serie todavía se encuentran en sistemas de automatización industrial y algunos productos industriales y de consumo.
Los dispositivos de redes, como los enrutadores y conmutadores, a menudo tienen puertos serie para modificar su configuración. Los puertos serie se usan frecuentemente en estas áreas porque son sencillos, baratos y permiten la interoperabilidad entre dispositivos. La desventaja es que la configuración de las conexiones serie requiere, en la mayoría de los casos, un conocimiento avanzado por parte del usuario y el uso de comandos complejos si la implementación no es adecuada.
Puertos Series Modernos.
Uno de los defectos de los puertos serie iniciales era su lentitud en comparación con los puertos paralelos - 19.2 kbits por segundo- sin embargo, con el paso del tiempo, están apareciendo multitud de puertos serie de alta velocidad que los hacen muy interesantes ya que presentan las ventajas del menor cableado y solucionan el problema de la merma de velocidad usando un mayor apantallamiento, y más barato, usando la técnica del par trenzado. Por ello, el puerto RS-232, e incluso multitud de puertos paralelos, se están sustituyendo reemplazándose por los nuevos puertos serie como el USB, el FireWire o el Serial ATA.
Tipos De Comunicación En Serie.
Simplex
En este caso el emisor y el receptor están perfectamente definidos y la comunicación es unidireccional. Este tipo de comunicaciones se emplean, usualmente, en redes de radiodifusión, donde los receptores no necesitan enviar ningún tipo de dato al transmisor.
Duplex, half duplex o semi-duplex
En este caso ambos extremos del sistema de comunicación cumplen funciones de transmisor y receptor y los datos se desplazan en ambos sentidos pero no de manera simultánea. Este tipo de comunicación se utiliza habitualmente en la interacción entre terminales y una computadora central.
Full Duplex
El sistema es similar al duplex, pero los datos se desplazan en ambos sentidos simultáneamente. Para que sea posible ambos emisores poseen diferentes frecuencias de transmisión o dos caminos de comunicación separados, mientras que la comunicación semi-duplex necesita normalmente uno solo. Para el intercambio de datos entre computadores este tipo de comunicaciones son más eficientes que las transmisiones semi-dúplex.
Puerto Paralelo.
Un puerto paralelo es una interfaz entre una computadora y un periférico, cuya principal característica es que los bits de datos viajan juntos, enviando un paquete de byte a la vez. Es decir, se implementa un cable o una vía física para cada bit de datos formando un bus. Mediante el puerto paralelo podemos controlar también periféricos como focos, motores entre otros dispositivos, adecuados para automatización.
El cable paralelo es el conector físico entre el puerto paralelo y el dispositivo periférico. En un puerto paralelo habrá una serie de bits de control en vías aparte que irán en ambos sentidos por caminos distintos.
Los puertos paralelos en los PC pueden utilizarse para enviar 8 bits (un octeto) simultáneamente por 8 hilos.
Los primeros puertos paralelos bidireccionales permitían una velocidad de 2,4 Mb/s. Sin embargo, los puertos paralelos mejorados han logrado alcanzar velocidades mayores.
El EPP (puerto paralelo mejorado) alcanza velocidades de 8 a 16 Mbps.
El ECP (puerto de capacidad mejorada), desarrollado por Hewlett Packard y Microsoft. Posee las mismas características del EPP con el agregado de un dispositivo Plug and Play que permite que el equipo reconozca los periféricos conectados.
Los puertos paralelos, al igual que los seriales, se encuentran integrados a la placa madre. Los conectores DB25 permiten la conexión con un elemento exterior (por ejemplo, una impresora).
Un puerto paralelo de impresora en la parte trasera de un portátil Compaq N150.
Conexión física del puerto.
El interfaz puerto paralelo se basa en un conector hembra de 25 pines. La tabla muestra las líneas del puerto paralelo y su significado lógico en una conexión PC-impresora:
Pin del ordenador | Nombre Línea | Significado |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18-25 | STROBE D0 D1 D2 D3 D4 D5 D6 D7 ACK BUSY PE SLCT AUTO FEED ERROR INIT SLCT IN GND | Indica Transmisión Línea de datos Bit 0 Línea de datos Bit 1 Línea de datos Bit 2 Línea de datos Bit 3 Línea de datos Bit 4 Línea de datos Bit 5 Línea de datos Bit 6 Línea de datos Bit 7 Ultimo carácter aceptado Impresora ocupada Impresora sin papel Impresora en ON LINE CR Automático después de LF Error en la transmisión de datos Realizar reset de la impresora Activar ON LINE en la imp. Masa |
Programación del puerto.
El puerto paralelo se puede programar mediante un acceso a la BIOS del PC o mediante la programación directa del puerto. Cualquiera de las dos opciones es totalmente correcta pero nosotros nos hemos decantado por la de más fácil implementación, la programación directa.
En la programación directa del puerto, lo único que realizamos es un acceso a las direcciones de dicho puerto.
El acceso a las direcciones del puerto se puede realizar, por ejemplo, mediante la instrucción outport u outport del lenguaje C. Una vez realizado el acceso a un registro del puerto podremos leerlo y/o escribirlo dependiendo lo que nos permita realizar cada puerto...
¿Cuál es la estructura interna de una interfaz “Port paralelo” y que protocolo cumple una impresora conectada a ella?
Esta interfaz consta de tres registros ports: para datos, status y control. Estos se pueden comunicar con el registro AX a través de 8 líneas de datos del bus, mediante a instrucción IN o OUT, según sea.
Están conectados a conductores del cable que une la electrónica de la impresora con la plaqueta.
Funcionamiento típico de la interfaz port paralelo conectado a una impresora:
Desde la zona de buffer de impresión de memoria principal de la impresora llega al registro AX un byte a imprimir, a la ejecución de una instrucción que ordena este movimiento. La ejecución de la instrucción siguiente (OUT) ordena escribir dicho byte en el Port de datos de dirección 0287h, este guarda temporariamente el byte a imprimir.
Se ejecuta nuevamente una instrucción de movimiento tipo I1 que ordena pasar al registro AX el byte de comando 01111111, este byte (OUT), viaja por las líneas de datos del bus y se escribe en el Port de dirección 027ª. El primer bit de este byte ligado a la línea STROBE llega con el valor cero 0.
Al detectar la electrónica de la impresora que STROBE=0, toma del port de datos los 8 bits llegados en el primer paso. Estos viajan por los 8 conductores del cable conexionado, transmitiéndose así hacia un buffer (parte de la misma electrónica).
Inmediatamente, la impresora envía a la plaqueta con la interfaz: un 0 por la línea ACK, reconociendo que recibió el byte enviado en el paso 1, y un 0 por la línea BUSY, para indicar que está ocupada. Estas dos líneas llegan a los correspondientes bits del port se status, por lo que ambos ceros quedan escritos en el mismo, resultando la combinación 00111111.
Por la rapidez con que el microprocesador ejecuta instrucciones, se debe controlar de no enviar otro byte al port de datos, antes que la impresora haya tomado el anterior. A tal efecto, la subrutina del BIOS contiene instrucciones para leer repetidamente el port de status, de dirección 0279 (IN). Los 8 bits de este port llegaran por el bus de datos al registro AX para determinar si cambiaron del valor 00111111, al valor 11111111; esta implica que la impresora puso en el 1 el bit BUSY del port status.
La determinación anterior, permite conocer cuando la impresora puso en 1 el bit BUSY del port se status, lo cual implica que está lista para guardar otro en su buffer, por lo que se puede enviar un nuevo byte a imprimir, mediante el primer paso.
Esta secuencia preestablecida de señales a enviar y recibir entre la subrutina y la impresora, constituye el protocolo para impresión por el port paralelo.
Un protocolo es un sistema de reglas y procedimientos que gobierna la comunicación entre dos o más dispositivos.
Puede estimarse en 10 microsegundos el tiempo que insume el protocolo, entre el envio de un byte a imprimir y el siguiente. Esto implica la posibilidad de enviar por un port paralelo unos 100.000 bytes/seg, cifra que en la práctica es mucho menor cuando opera una impresora.
El Port paralelo presenta una línea de solicitud de interrupción (IRQ), que forma parte de las líneas de control del bus. Se activa cuando se puede enviar otro byte al Port de datos.
En una PC al envío de cada byte a imprimir no se hace por interrupción, sino por polling: instrucciones de la subrutina del BIOS leen repetidamente el valor del bit BUSY, hasta detectar que cambio de valor, entonces se envía otro byte al Port.
¿Cuál es la estructura interna de una interfaz “port serie”, y como esta preparada para conectar un modem usando el protocolo RS232C?
Por la interfaz serial denominada “Port Serie” o de comunicación (COM 1, 2, 3, o 4 en una PC) pueden entrar bits en serie desde el exterior y transmitirse hacia la porción central; o bien desde ésta salir hacia ella 8 bits en paralelo y transmitirse hacia el exterior en serie.
Esta interfaz esta preparada para cumplir con las normas RS232C; por lo tanto, ella puede ser interfaz de un modem, o de cualquier dispositivo que envié o reciba datos en serie conforme a dicha norma, supondremos conectado a la interfaz un modem. Si este es interno, estará en una misma plaqueta junto a su interfaz. En caso de un modem externo, el mismo se puede conectar a cualquier interfaz “port serie” disponible.
El funcionamiento y control de la interfaz “port serie” se basa en un chip denominado “Universal Asynchronnous Receiver-Trasmiter” (UART). Este chip presenta una línea de entrada de datos RD, y otra línea salida de datos TD. Cuando a una interfaz “port serie” se conecta un periférico de entrada, como el mouse, solo se usa la línea RD, dado que únicamente se realizan operaciones de entrada.
La línea RD entra a un registro que convierte a paralelo el byte de datos que encontraron en serie, y los pasa al port de datos recibidos. Este port puede ser leído como cualquier port, de un byte por vez, mediante la ejecución de una instrucción como IN.
En una operación de salida, mediante la ejecución de OUT, un byte contenido en AX pasa por las líneas de datos del bus al port de datos a transmitir, y de este pasa en paralelo a otro registro. Este es el encargado de convertir el byte de paralelo a serie, para que salgan, bit a bit, por la línea TD.
La línea TD o la RD permanecen en el nivel alto hasta que tenga lugar una transmisión de datos.
Cuatro registros ports direccionables para comandos que se escriben antes de que se transmitan datos entre dos módems intercomunicados. Dentro de estos cuatro, existen dos ports designados de “bauds rates”, para fijar la velo0cidad con que se recibirán y transmitirán los bits.
El registro port para control de línea permite fijar por programa
* La cantidad de bits en serie que se recibirán o transmitirán por vez.
* Si al final de los bits en serie recibidos o transmitidos, habrá 1,1 ½ o 2 bits de final.
* Si se detectara o no si hubo un bit errado en la transmisión, usando un bit extra de paridad.
* Si cada grupo de bits transmitidos o recibidos con paridad tendrá un número par o impar de unos.
El port de habilitar interrupciones permite activar la línea de solicitud de interrupciones (IRQ) en función:
- Del estado de los ports de datos
- Del cambio de valor de cualquier bit de los ports para protocolo y “status”.
Dos registros ports direccionables de la UART se usan para llevar acabo el protocolo RS232C:
- El registro de control del modem (OUT) genera hacia esta las señales RTS y DTR.
- Un registro de estado del modem (IN) guarda el valor de las líneas DSR, CTS,RI y RLSD que provienen del mismo.
Estas señales se relacionan con el protocolo que debe suceder antes de que el computador envié datos al modem. Antes de enviar un byte al modem, debe darse la siguiente secuencia de señales.
- En a la ejecución de OUT, se direcciona (03FC) el port de control de modem, para escribir 00000010. El “uno” de 00000010 activa la línea DTR, que avisa al modem que se le enviara un byte.
- El modem responde que esta conectado, activando la línea DSR, con lo cual se escribe un “uno” en el port de estado del modem, formándose 00100000. En la ejecución de IN se direcciona (03FE) y lee este port, y una copia de esta llegara al registro AX.
- Cuando 00100000 llega a AX, el programa detecta que el modem esta activo, y ahora se escribe 00000011 al port de control del modem, mediante la ejecución de OUT. El ultimo “uno” de 00000011 activara la línea RTS, para preguntarle si esta listo (“ready”) para recibir.
- Si el modem esta listo, activa la línea TS, con lo cual se escribe otro “uno” en el port de estado del modem, formándose la combinación 00110000 pues DSR debe seguir activada. En la ejecución de IN se direcciona (03FC) y lee este port, y una copia de esta combinación llegara al registro AX.
- Luego que AX recibió 00110000, el programa detecta que se puede enviar un byte, pasándose a ejecutar una instrucción OUT, que direcciona (03F8^2), y escribe a) el registro de transmisión de datos con los valores supuesto 11100110. Entonces la UART calcula que el valor del noveno bit (de paridad) que se le debe agregar es 1, si se ha establecido por programa que las confinaciones a enviar deben tener un numero par de unos; y la UART también inserta los bits de comienzo y final. Después de agregar estos bits, la UART realiza una conversión de paralelo a serie y transmite uno a uno los bits hacia el modem, por la salida TD (5b).
¿Cuales son las características de otras interfaces, como la de unidad de disquete, la unidad de disco rígido y la de video y la de video?
Estas interfaces están diseñadas para ser conectadas a ellas, los periféricos indicados. Unos reciben comandos para dichos periféricos y otros cuando son leídos indican su estado, de la forma vista para las interfaces “paralelo” y “serie”. Para disquetes, disco rigido y CD ROM, los comandos son del tipo: posicionar el cabezal, leer o escribir un sector, que serán tomados por la electrónica que controla la cabeza y los movimientos mecánicos, esta informa mediante códigos en los ports de “status” si hubo algún error. La plaqueta interfaz “controladora de video contiene una parte de la memoria principal (VRAM) donde la UPC escribe datos en binarios luego se verán como texto o grafico en la pantalla; esto indica que no presenta ports intermediarios para datos. Contiene ports direccionales; en ellos subrutinas del BIOS para video escriben una serie de comandos que establecen la resolución en grises o colores, manejo del cursor y otros que se verán en la pantalla.
Para las PC existen versiones de plaquetas para ser conectadas a distintos tipos de buses. Asi, se tiene plaquetas multifunción y de video para ser conectadas a l bus tradicional ISA, otra para ser conectadas al bus local VESA y otras para la conexión al bus local PCI.
¿En que se diferencia una E/S por acceso indirecto a memoria (AIM), de una E/S por acceso directo a memoria (ADM?
Las operaciones de E/S de datos se hacen a travez de interfaces con registros ports parar datos. El pasaje de datos del registro port de datos de una interfaz hasta memoria principal, o en sentido contrario constituye la fase de transferencia de una operación de entrada o salida.
Para la entrada de datos del teclado la fase de transferencia será:
Port de Datos Registro AX Memoria Principal
Esta “triangulación” se realiza mediante la ejecución de instrucciones del BIOS. Desde el port los datos pasan al registro AX del procesador mediante la ejecución de una instrucción tipo IN y desde AX llegan a la zona buffer de memoria reservada para ellos; mediante una instrucción de movimiento como I vista. A esta forma la llamaremos E/S con Acceso Indirecto a Memoria (AIM). Cuando en una operación de entrada se leen los 512 bytes de un sector de un disquete, la fase de transferencias se realiza por Acceso Directo a Memoria
Port de datos = memoria principal
Para realizar ADM se requiere una circuitería complementaria a una interfaz, que pueda leer o escribir datos en memoria principal como lo hace el microprocesador.
En una operación de salida existen dos formas para transferir datos de memoria a un port:
Por AIM:
Memoria Principal Registro AX Port de Datos
Los datos que están en una zona buffer de memoria pasan al registro AX del microprocesador y desde AX llegan al port direccionando; luego los datos siguen hacia el periférico.
Por ADM:
Memoria Principal Port de Datos
El AIM es un proceso controlado por software, dado que es ordenado mediante instrucciones, en cuya ejecución debe estar ocupada la UCP; mientras que el ADM es controlado por circuitería, sin ejecución de instrucciones.
LAS INTERUPCIONES POR HARDWARE: “TIMBRES” PARA LLAMAR A SUBRUTINAS
¿Qué son las Interrupciones?
Una interrupción supone la suspensión temporaria de la ejecución de un programa, para pasar a ejecutar una subrutina de servicio de interrupción, la cual en general no forma parte del programa. Luego de ejecutarse dicha subrutina, debe reanudarse la ejecución de dicho programa.
Las interrupciones es la forma en que se llama, para su ejecución, a subrutina de un sistema operativo y de la ROM BIOS.
Existen interrupciones por software e interrupciones por hardware.
¿Cómo opera una interrupción por hardware externa?
Una función de una plaqueta interfaz es generar la señal IRQ que se envía por un cable hacia un subsistema ligado a la UCP, para solicitarle a esta la interrupción del programa en curso de ejecución, se trata de una interrupción que tiene su origen en el hardware: la activación de dicha señal IRQ por una interfaz causara se irrumpa momentáneamente la ejecución de un programa, y que la UC pasa a ejecutar la subrutina de la ROM BIOS o del sistema operativo preparada para atender la interfaz; Al finalizar sigue la ejecución del programa interrumpido.
Todas estas líneas se dirigen a un chip “arbitro de solicitudes de interrupción”, que cuando se activan varias IRQ simultáneamente, da curso solo a la que tiene subíndice menor. Una salida de ésta chip es que activa la línea de control INTR que entra a la UC para indicar que hay una solicitud interrupción activa.
¿Cómo operan las interrupciones por software?
Se realiza ejecutando el código de una instrucción que ordena llamar a subrutinas del sistema operativo o de la ROM BIOS cuando se necesita el servicio de una de ellas. A diferencia de las interrupciones por hardware, esta queda establecida en que momento de la ejecución de un programa sucederá, pues se trata de una instrucción que esta en determinado lugar de un programa, que llama a dichas subrutinas.
Es importante saber que tanto las interrupciones por software y hardware son mecanismos para llamar a subrutinas del SO o de la ROM BIOS.
¿Cómo se retorna al programa interrumpido?
En el caso de haber una interrupción la UC guarda automáticamente en memoria la dirección de retorno, donde esta la interrupción a partir de la cual continua el programa interrumpido, luego que se ejecuto se podrá retornar a ejecutar el programa.
¿Qué es la zona de memoria principal denominada “PILA”?
La dirección de retorno se guarda en una zona elegida de memoria principal denominada pila. Esta se utiliza para retornar al programa que llamo a una subrutina o que fue interrumpido.
La pila es necesaria, por que es común que la subrutina llamada por una interrupción a su vez sea interrumpida para llamar a otra subrutina.
Para entender a fin de guardar ordenadamente la dirección de retorno de un programa interrumpido y de las sucesivas subrutinas que fueron interrumpidas y con cada una se va escribiendo en posiciones sucesivas decrecientes.
Con cada interrupción se apila en la cima de la pila la información que permite retornar al programa. Cuando no suceden mas interrupciones, se retorna a la subrutina cuya dirección de retorno esta en la cima de la pila, la ultima es la primera que retorna.
En la UCP existe un registro “puntero de pila” que contiene la dirección de la pila que en el presente corresponde a su cima, siendo el mismo actualizado en forma automática por la UC cada vez que se escriba o se lea.
Flavia Delgado, Magali Pintos, Celestina Goi, Valeria Verajones, Macarena Stangafero