6.8 KiB
6.8 KiB
TEMA 1: Introducción
1. Estructura básica de un computador
!Pasted image 20250218105957.png !Pasted image 20250218110013.png !Pasted image 20250218110027.png
2. Entrada/Salida
!Pasted image 20250218110130.png El sistema de E/S tiene varias funciones:
- Direccionamiento: para seleccionar el dispositivo
- Sincronización: para iniciar la transferencia
- Transferencia: método de transferencia
Interfaz E/S (simplificada)
!Pasted image 20250218110255.png
Entrada/Salida programada
- La comunicación siempre la inicia la CPU
- Método de queries para conocer el estado del módulo E/S
- Inconvenientes:
- La CPU tiene que gastar tiempo de ejecución en atender a los procesos E/S
- Ventajas:
- Alta velocidad Hay dos tipos de direccionamiento:
- Mapeado en memoria: la CPU ve los dispositivos E/S como posiciones de memoria. Es más sencillo pero se pierde espacio de memoria.
- Aislado: las direcciones E/S se diferencian mediante una señal de control.
Entrada/Salida por interrupciones
- Un dispositivo puede llamar la atención de la CPU:
- El módulo E/S provoca la interrupción
- La CPU le comunica un orden de E/S y vuelve a lo suyo (cambio de contexto)
- Cuando la subrutina de E/S se ejecuta el módulo de E/S lo comunica para que el CPU decida cuál será su próxima acción y estado.
- Ventajas:
- Atención inmediata
- El CPU puede hacer otras cosas mientras el dispositivo E/S está ocupado
TEMA 2: Buses locales normalizados
1. Concepto de bus normalizado
Bus: conjunto de líneas eléctricas sobre la PCB. Es un medio compartido.
Ejemplo de bus y sus líneas
Un ejemplo de bus sería el Bus de Control con las líneas típicas:
- Memory write
- Memory read
- I/O Write
- I/O Read
- Transfer ACK
- Bus Request
- Bus Grant
- Int Request
- Int ACK
- Clock
- Reset
Procesos de transferencia
Por ejemplo para la escritura E/S:
- El módulo de E/S que quiere iniciar la transferencia solicita el uso del bus (Bus Request)
- El arbitrador concede el bus (Bus Grant)
- Sitúa en el bus de direcciones (AB) la dirección o puerto E/S donde quiere transferir el dato
- Sitúa el dato a transferir en el bus de datos (DB)
- Activa la línea de I/O Write del bus de control
- El destinatario ha recibido el dato (Transfer ACK)
- Deja libre el bus para su uso
NOTACIÓN
- Bus Master:Módulo que inicia la transmisión
- Bus Slave:Módulo direccionado por el Bus Master
- Arbitrador:circuito especial que recoge las peticiones para tomar el control del bus y decide quién lo toma
## 2. Métodos de conexión de un dispositivo al bus local
### Conexión directa
**Restricciones:**
- Depende del CPU
- Sólo lo puede usar un dispositivo local para evitar problemas de impedancia por extra carga
- Costosa, debido a la alta frecuencia
- No permite transferencias de datos entre CPU y otros dispositivos mientras se usa este bus con otros periféricos
**Ejemplo:** VLB tipo A
!Pasted image 20250225111612.png
### Conexión mediante buffer
**Mejoras:**
- Sólo presenta una impedancia. Usualmente hasta 3 dispositivos
**Restricciones:**
- En esencia, con buffer y el local son un único bus: cualquier transferencia iniciada por CPU alcanzará el bus local con buffer. **NO** es posible la utilización simultánea.
**Ejemplo:** VLB tipo B
!Pasted image 20250225111801.png
### Conexión con filosofía workstation
**Mejoras:**
- Introducción de caché L2 unida a un puente para adaptar las velocidades de transferencia entre bus local del CPU y el de E/S.
- Independencia del procesador que implementa la CPU.
**Ejemplo:** PCI
!Pasted image 20250225111938.png
## 3. PnP
### El problema
- Hay un número limitado de IRQs, canales DMA, puertos de E/S y regiones de memoria E/S
- Algunas IRQs y direcciones están muy estandarizadas
- No hay automatización de las tareas de configuración de periféricos
### Solución PnP
1. El programa de configuración PnP encuentra todos los dispositivos que soportan PnP y pregunta a cada uno qué recursos del bus necesitan.
2. Decide qué recursos puede adjudicar.
3. Establece un criterio mediante el cual adjudicar recursos del bus.
## 4. Bus SPI
- El bus SPI (Serial Peripheral Interface) fue desarrollado por Motorola en 1980. Sus ventajas respecto a otros sistemas han hecho que se convierta en un estándar.
- El bus SPI tiene arquitectura Master-Slave. El dispositivo maestro puede iniciar la comunicación con uno o varios esclavos y envía (Tx) o recibe (Rx) datos de ellos. Los esclavos ni pueden iniciar comunicación ni comunicarse entre ellos.
- Hay una línea para transmisión (Tx) y otra para recepción (Rx) por lo que la comunicación es Full Dúplex.
- Es síncrono, el dispositivo maestro proporciona el CLK.
!Pasted image 20250225112945.png
- **MOSI (Master-Out, Slave-In):** para la comunicación maestro a esclavo.
- **MISO (Master-In, Slave-Out):** para la comunicación esclavo a maestro.
- **SCK (Clock):** señal de CLK del maestro.
!Pasted image 20250225113139.png
5. Bus I2C
- El estándar I2C (Inter-Integrated Circuit) requiere únicamente dos cables para su funcionamiento, uno para CLK y otro para el envío de datos (SDA). El funcionamiento es más complejo así como su circuitería.
!

- En el bus cada dispositivo tiene una dirección, que se emplea para acceder a ellos de forma individual. Esta dirección puede ser fijada por hardware o software.
- En general, cada dispositivo conectado al bus debe tener dirección única. Se podría cambiar la dirección o implementar un segundo bus.
- Este bus tiene una arquitectura maestro-esclavo. Es posible que haya más de un maestro pero SÓLO un maestro a la vez.
- Es síncrono, el maestro proporciona CLK.
- Tiene resistencias de pull-up a
V_{CC}.