La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Arquitectura de PCs Operación de los periféricos del PC.

Presentaciones similares


Presentación del tema: "Arquitectura de PCs Operación de los periféricos del PC."— Transcripción de la presentación:

1 Arquitectura de PCs Operación de los periféricos del PC

2 Principios del hardware E/S El hardware de E/S se considera desde distintos puntos de vista: Ingeniero hardware considera chips, motores, etc. Ingeniero software considera interfaz al software: comandos de hardware y errores reportados Alcance del curso: programación de dispositivos periféricos El curso no cubre: diseño, fabricación, mantenimiento de dispositivos de E/S La programación de dispositivos se relaciona con sus características internas

3 Principios del hardware E/S Dispositivos de E/S: Dispositivos de bloque (ej. discos) Almacenan información en bloques de tamaño fijo con dirección propia Tamaño de bloques: 128B a 1024B En cualquier instante el programa puede leer o escribir cualquier bloque Dispositivos de carácter (ej. teclado, monitor, ratón, impresora, interfaz de red) Transmiten o reciben secuencias de caracteres sin formato de bloque ni direcciones Reloj de la computadora: genera interrupciones a intervalos definidos (no admite direcciones de bloque, ni genera o recibe caracteres)

4 Principios del hardware E/S Composición general de dispositivos de E/S: Componente mecánica: es el “dispositivo de E/S” o “dispositivo periférico”, en tercer escalón de la arquitectura piramidal del PC Componente electrónica: “controlador de bus” o “controlador de dispositivo” en segundo escalón de la arquitectura del PC

5 Arquitectura Piramidal Intel 80x86 CPU Memoria Programa y datos Controlador PCI Controlador de disco Controladores de bus: comunican CPU con buses de expansión Bus PCI Dispositivos PCI Discos Bus IDE Buses de expansión Dispositivos periféricos Bus del sistema Bus de direcciones Bus de datos 2 patas de interrupciones Patas de control Buses de expansión: Interfaces de bajo nivel según estándares internacionales IEEE, ANSI, etc: permite fabricación de controlador y dispositivo por distintas compañías. Se considera por ejemplo interfaz disquete a disquetera y controlador de monitor a monitor

6 Principios del hardware E/S Interfaz de disquete a controlador: Trama de bits serial: encabezado, 4096 bits de datos del sector, y CRC Función del controlador de disquete: Controlador de disquete construye el bloque de bytes, bit por bit, en un buffer Si no tiene errores, copia bloque solicitado por el programador a memoria principal

7 Principios del hardware E/S Interfaz de monitor CRT a controlador: Señal analógica que provoca: escritura en pantalla retroceso de haz horizontal tras barrido de línea retroceso vertical tras barrido de pantalla Función del controlador del monitor: Genera señal para desplegar en pantalla los caracteres escritos por el programador en zona predefinida de memoria Programador inicia el controlador con ciertos parámetros (números de caracteres por línea, de líneas por pantalla, etc.), y se olvida

8 Principios del hardware E/S Interfaz CPU a controlador de bus: registros en el espacio de E/S de la CPU línea de interrupciones IRQ Para PC IBM:

9 Principios del hardware E/S Secuencia general de operación de E/S: Escritura de comando a registros de controlador; muchos comandos requieren parámetros Tras ejecutar comando, el controlador causa IRQ, que ejecuta rutina de atención a la interrupción Rutina de atención a la interrupción verifica resultado de la operación en registros del controlador

10 El sistema de teclado Función principal del sistema de teclado: convertir movimientos de teclas de teclado a datos útiles a los programas Composición del sistema: Teclado (dispositivo de E/S) Controlador de teclado en la placa madre (controlador de dispositivo): chip 8042 para PC >=AT, chip 8055 para PC/XT

11 El sistema de teclado Operación básica: Teclado incluye microcontrolador 8031 u 8048, que controla LEDs y codifica movimiento de tecla en código “Kscan” El micro del teclado envía códigos Kscan a controlador de teclado por línea serie bidireccional dedicada El controlador de teclado recibe Kscan, lo verifica y lo carga en buffer para la CPU

12 El sistema de teclado Bajada tecla “P” en AT: CONTROLADOR DE TECLADO P Línea serie Kscan a Scan de sistema 4DH ES 063H 19H CPU IRQ1 ES 062H ES 061H ES 060H

13 El sistema de teclado Subida tecla “P” en AT: CONTROLADOR DE TECLADO P Línea serie Kscan a Scan de sistema F0H 4DH ES 063H CPU IRQ1 ES 062H ES 061H ES 060H Subida 99H 19H + 80H Subida

14 El sistema de teclado Corresponde al programa que procesa la E/S de teclado determinar si se trata de una “P” mayúscula, minúscula, etc., en función de las teclas activas Por tanto: se trata de una interfaz flexible, que sitúa la complejidad en el software

15 El sistema de video Función principal del sistema de video: genera la señal para desplegar en pantalla a los datos en la RAM de video Composición del sistema de video: Controlador de video Zona de memoria especial denominada “RAM de video”, en el espacio de direcciones de memoria El sistema de video se encuentra físicamente en la “tarjeta de video”

16 El sistema de video La pantalla se pinta por líneas horizontales Los puntos que componen cada línea se denominan “pixeles” En cada línea horizontal, se pinta píxel por píxel de izquierda a derecha En general, se pintan de 200 a 1200 líneas horizontales, con 200 a 1200 pixeles por línea

17 El sistema de video La imagen en pantalla depende de los datos en la RAM de video La correspondencia de imagen en pantalla y los datos en la RAM de video, y la dirección de la RAM de video dependen de 2 atributos del controlador: El modo de funcionamiento del controlador: modo texto: sólo despliega caracteres modo gráfico: despliega gráficos complejos y caracteres en variedad de formas y tamaños El tipo de controlador: monocromo: opera en modo texto o modo gráfico con un solo color color/gráfico (CGA): opera en modo texto o modo gráfico con muchos colores

18 El sistema de video Controlador en modo texto: Pantalla: Pinta 350 líneas de 720 píxeles, visualizados como 25 renglones de 80 caracteres Carácter: rectángulo b x h = 9 x 14 píxeles Patrones de caracteres se guardan en ROM Dirección de comienzo RAM de video: 0xB0000 en controlador monocromo 0xB8000 en controlador color Correspondencia RAM de video – Pantalla: Cada carácter en pantalla corresponde a 2 bytes RAM : LSB: código ASCII de carácter en pantalla MSB: atributo de carácter en pantalla (color, inversión, etc.)

19 El sistema de video Correspondencia RAM video – pantalla para controlador monocromo: 00000H FFFFFH B0000H B009FH B00A0H B013FH B0F00H B0F9FH L1 L2 L25 4000 bytes 20H 07H 20H 07H C1 C2 C80 20H 07H 20H 07H 20H 07H C1C2C3C80 L1 L2 L25 41H ‘A’ A 42H ‘B’ B 33H ‘3’ 3 31H ‘1’ 1 32H ‘2’ 2 C1 C2 C80 B0000H B009FH B0F00H B0F9FH

20 El sistema de video Cursor en modo texto: Indica la posición activa en la pantalla Tiene el tamaño de un carácter (9 x 14 pixeles) Se maneja por comandos al controlador de video

21 El sistema de video Controlador en modo gráfico análogo al modo texto, salvo que: Para tipo monocromo, cada BIT en RAM de video representa un píxel en pantalla En tipo color, un número dado de BITS (por ej. 4 bits para modo gráfico 16 colores) en RAM de video representa un píxel en pantalla

22 Temporizadores del sistema Función de los temporizadores del sistema: soporte a toda función temporizada del sistema. Dos tipos: Temporizadores programables. Se componen de: Oscilador de cristal que genera señal periódica de 1 a 20MHz Contador “cuenta” decrementado cada período del oscilador; provoca interrupción de CPU cuando pasa a 0 Registro con la “cuenta inicial” RTC (Reloj de tiempo real): mantiene la hora actual aún apagado el sistema; se puede leer y escribir

23 Temporizadores del sistema El PC incluye temporizador programable 8254, con oscilador a 1.1932 MHz y 3 temporizadores de 16 bits: Temporizador 0: temporizador primario del sistema Temporizador 1: refresco de DRAM Temporizador 2: de uso general para aplicaciones

24 Temporizadores del sistema Cada temporizador tiene 6 modos de operación, 0 a 5 La conexión de cada temporizador limita los modos disponibles

25 Temporizadores del sistema Clasificación general de modos de operación de los temporizadores programables: Modo un solo disparo Modo onda cuadrada

26 Temporizadores del sistema Ej. “modo un solo disparo”: modo 0 (T0 y T2) Secuencia: Se carga cuenta inicial Temporizador decrementa cuenta si GATE = 1 Cuando cuenta pasa a 0, OUT pasa a 1 La cuenta se detiene si GATE pasa a 0 Ej. con cuenta inicial 4 Clock Gate Out

27 Temporizadores del sistema Ej. “modo onda cuadrada”: modo 3 (T0, T1 y T2) Secuencia: Se carga cuenta inicial. Se supone: par, OUT=1 Cuenta se decrementa por 2 cada ciclo si GATE = 1 Si cuenta pasa a 0: invierte OUT, restaura automáticamente cuenta inicial y reinicia cuenta regresiva Ej. con cuenta inicial 6 Clock Gate Out Resultado: onda cuadrada periódica en OUT (si GATE=1) OUT de T0 = IRQ0 Interrupción periódica = “Tic de reloj”

28 Sistema de disquete Función principal del sistema de disquete: leer y escribir los datos de un disquete Descripción: Disquete: medio magnético continuo Disquetera: motor que rota al disquete cabezal lector/escritor que se desplaza por un motor paso a paso sobre 2 rieles radiales

29 Sistema de disquete Sistema físico: Cabezal lector (disquetera) Medio magnético continuo (disquete) Motor de rotación (disquetera) Desplazamiento discreto de cabezal hace que los datos se almacenen en círculos concéntricos: “pistas” Cada pista se divide en sectores: - Sectores tienen igual número de bytes - Unidad de almacenamiento del disquete - Sectores de ambos lados forman cilindro - Hueco indica comienzo de pista

30 Sistema de disquete Cada sector de un disquete se refiere por una coordenada tridimensional: Cilindro o pista: 0 el más externo Cabezal: 0 superior, 1 inferior Sector: los sectores de una pista se numeran en sentido horario desde 1

31 Sistema de disquete Formato de cada pista del disquete: Hueco Pulsos de sincronización Concatenación de sectores. Cada sector se compone de: Marca de referencia ID de sector (se inicia al dar formato al disquete): Cilindro “C” (se inicia al número de cilindro CHS) Cabezal “H” (se inicial al número de cabezal físico CHS) Sector “R” (se inicia al número de sector CHS) Código de tamaño “N” (2 indica 512 bytes) Datos de los sectores CRC

32 Sistema de disquete Secuencia lectura de sector (2, 0, 3) CPU Búsqueda C = 2 Buffer 000 001 1FF D0 D1 D1FF Registro de datos Controlador de disquete Registro de estado 0 1 2 Transferencia de datos por bus de sistema de disquete Lectura (2,0,3) Verifica C = 2 Si no hay otra transferencia por 2 seg se apaga motor Enciende motor

33 Sistema de disquete DMA: Buffer 000 001 1FF D0 D1 D1FF Controlador de disquete CPU 00000H 10000H 10200H FFFFFH Disquetera Controlador DMA Memoria principal Dirección de memoria Número de bytes 10000H 1FFH Comandos de transferencia INTRIRQ6 Bus de datos RD WR D0 D1 D1FF Inicio DMA

34 Sistema de disquete El controlador sólo lee bloque por medio: mientras transmite datos a memoria se pierde bits del sector siguiente Por tanto, lectura de dos sectores consecutivos requiere un rotación completa Solución: numerar sectores teniendo en cuenta factor de salto (“Interleaving”)

35 Sistema de disco duro Disco duro es una generalización de disquete: se organiza como pila de platos rotatorios, con estructura de cada plato igual a disquete Alternativamente un disco se puede ver como cilindros concéntricos, donde cada cilindro tiene tantas pistas como cabezales

36 Sistema de disco duro Disco como cilindros concéntricos:

37 Sistema de disco duro Las pistas del disco se dividen en sectores Todas las pistas tienen el mismo número de sectores Un sector se refiere por su coordenada CHS: Cilindro C (0..65535) Cabeza H (0..15) Sector S (1..255)

38 Sistema de disco duro En discos duros la geometría vista por el controlador de disco difiere de la geometría física, ya que: Tienen más sectores físicos en pistas externas que en internas (aumenta capacidad de almacenamiento). Sin embargo, la geometría que ve controlador de disco tiene igual número de sectores en todas las pistas Por compatibilidad hacia atrás: el PC original destina sólo 6 bits a la coordenada S del CHS, y un total de 24 bits a la coordenada CHS. Se transforman las coordenadas para permitir el acceso a todos los sectores Discos duros se denominan IDE (Integrated Device Electronics) por la electrónica que convierte parámetros al controlador en parámetros internos

39 Sistema de disco duro El procesamiento de la electrónica hace innecesario el conocimiento del detalle físico por parte del programador

40 Ej.: Secuencia de lectura de sector 001 de dispositivo 0 del canal primario de PC >= AT (no usa DMA) CPU Controlador de canal primario 01F0H 01F1H 01F2H 01F3H 01F4H 01F5H 01F6H 01F7H 00H 01H 00H A0H 20H Disco duro Bus ATA-2 00H INTRIRQ14 Nr. sectores Sector Cilindro L Cilindro H Nr.Disco-Cabezal Comando lectura Buffer 000 001 1FF D0 D1 D1FF D0 D1D2 D3 Sistema de disco duro

41 Como el controlador de disco es más complicado que el controlador de disquete, el acceso a datos de disco es más simple que el acceso a datos de disquete El acceso a disco duro requiere un único comando con varios parámetros El acceso a disquete requiere de una secuencia de comandos (encender motor, búsqueda, verificación, lectura/escritura, apagar motor) Sistema de disco duro


Descargar ppt "Arquitectura de PCs Operación de los periféricos del PC."

Presentaciones similares


Anuncios Google