Buses y Subsistemas Internos de 32 bits Universidad Tecnológica Nacional - FRBA Técnicas Digitales III
Autor: Alejandro Furfaro
1
Evolución de ISA 1
Bus EISA: 1 1 1
1
Se introduce con el procesador 80386 de 32 bits EISA (ISA extendido) es un bus de 32 bits. Electrónica compleja, poco escalable y continúa a 8 MHz.
VESA Local Bus : 1 Desarrollado por un consorcio de fabricantes de controladoras de video. 1 Plantea una extensión al bus ISA de alta velocidad (25 MHz), pero muy orientada a video. No contempla el resto de los dispositivos que demandan velocidad de bus y tampoco muestra escalabilidad suficiente.
Autor: Alejandro Furfaro
2
Bus PCI (Periferical Component Interconnect) 1 1
Se desarrolla debido a la baja velocidad del bus ISA, y las poco eficaces alternativas de alta velocidad. (la mayoría, caras y de poca escalabilidad) Intel en 1990 propone el borrador de la especificación 1.0: 2 2 2 2
1 1
Se forma PCISIG (PCI Special Interest Group como consorcio de fabricantes). Versión 2.0 2
1
32 líneas de datos 33MHz Posee una electrónica sencilla. Permite interconexión con otros buses (como ISA)
66 MHz ->4.224 Gbps (528MB/s).
Versión 2.1 2
64 bits de datos
Autor: Alejandro Furfaro
3
PCI: Diagrama Genérico
Autor: Alejandro Furfaro
4
PCI: estructura y señales: 1 1
Se configura como bus de 32 ó 64 bits. 49 líneas de señal obligatorias. 2 2 2
1
Sistema: reloj y reset Direcciones y datos 32 líneas multiplexadas (datos y direcciones)
Líneas para interpretar y validar 2 2 2
Control de interfaz: coordinan envío y recepción Arbitraje: pares de líneas dedicadas maestros-árbitro Señales de error (ej: paridad).
Autor: Alejandro Furfaro
5
PCI: Señales obligatorias
Autor: Alejandro Furfaro
6
PCI 64 bits 1
Aparecen 51 señales opcionales. 2 2 2 2 2 2
Interrupción: líneas dedicadas para cada dispositivo Soporte de caché para que se conecten al PCI 32 líneas multiplexadas (datos y direcciones) (adicionales) Líneas de interpretación y validación 2 líneas que permiten que 2 dispositivos PCI utilicen 64 bits. Terminales de test: estándar IEEE 1149.1
Autor: Alejandro Furfaro
7
PCI: Transferencia de Lectura
Autor: Alejandro Furfaro
8
PCI: Transferencia de Lectura
a) El master obtiene el control del bus, inicia la comunicación activando FRAME, que deberá permanecer activa hasta que el master termine la comunicación. El master también coloca la dirección de inicio en el bus de direcciones en el flanco ascendente del primer ciclo de clock, y con C/BE (líneas de comandos / Byte Enable), establece la operación a realizar (lectura o escritura de memoria, o de entrada Autor: Alejandro Furfarosalida).
9
PCI: Transferencia de Lectura
b) Al comienzo del clock 2, el dispositivo slave (del cual se leerán los datos) reconoce la dirección colocada en AD.
Autor: Alejandro Furfaro
10
PCI: Transferencia de Lectura
c) El master deja las líneas AD libres. El maestro cambia las líneas C/BE para indicar cuáles de los bytes de las líneas AD se utilizarán para transferir el dato direccionado. El master activa IRDY (Initiator ready) para indicar que está preparado para recibir datos. Autor: Alejandro Furfaro
11
PCI: Transferencia de Lectura d) El slave (dispositivo de lectura seleccionado) activa DEVSEL (Device Select) para indicar que ha reconocido las direcciones y va a responder. Coloca el dato solicitado en las líneas AD y activa TRDY (Target ready) para indicar que hay un dato válido en el bus.
Autor: Alejandro Furfaro
12
PCI: Transferencia de Lectura
e) El master lee el dato al comienzo del clock 4 y cambia las líneas de habilitación de byte según se necesite para la próxima lectura.
Autor: Alejandro Furfaro
13
PCI: Transferencia de Lectura
f) El slave necesita un tiempo adicional para preparar el segundo bloque de datos para la transmisión. Por consiguiente desactiva TRDY para señalar al master que no proporcionará un nuevo dato en el próximo ciclo. En consecuencia, el master no lee las líneas de datos al comienzo del clock 5 y no cambia la señal de habilitación de byte durante ese ciclo. El bloque de datos es Autor: Alejandro Furfaro leído al comienzo del clock 6. 14 Präsentat ion
PCI: Transferencia de Lectura
g) Durante el clock 6, el slave sitúa el tercer dato en el bus. Pero (en este ejemplo específico) el master está ocupado y por lo tanto desactiva IRDY. Esto hará que el esclavo mantenga el tercer dato en el bus durante un ciclo de reloj extra. Autor: Alejandro Furfaro
15
PCI: Transferencia de Lectura
h) El master sabe que el tercer dato es el último y por eso desactiva FRAME. Además, activa IRDY para indicar que está listo para completar esa transferencia. Autor: Alejandro Furfaro
16
PCI: Transferencia de Lectura i) El master desactiva IRDY, con esto hace que el bus vuelva a estar libre, y el slave desactiva TRDY y DEVSEL.
Autor: Alejandro Furfaro
17
PCI: Arbitraje 1
Arbitraje centralizado 2 Cada
maestro tiene dos líneas dedicadas 2 REQ (petición del bus) 2 GNT (concesión del bus) 1
Transmisión 2 Dispositivo
PCI (o CPU) solicita bus activando REQ 2 Espera GNT 2 Usa el bus mientras tenga GNT
Autor: Alejandro Furfaro
18
PCI: Arbitraje
Árbitro de PCI
Autor: Alejandro Furfaro
GNT
REQ
Dispositivo PCI
GNT
REQ
Dispositivo PCI
GNT
REQ
Dispositivo PCI
19
Comparación de buses Bus Type
Bus Width
Bus Speed
MB/sec
ISA
16 bits
8 MHz
16 MBps
EISA
32 bits
8 MHz
32 MBps
VL-bus
32 bits
25 MHz
100 MBps
VL-bus
32 bits
33 MHz
132 MBps
PCI
32 bits
33 MHz
132 MBps
PCI
64 bits
33 MHz
264 MBps
PCI
64 bits
66 MHz
512 MBps
PCI-X
64 bits
133 MHz
1 GBps
Autor: Alejandro Furfaro
20
Bus AGP (Accelerated Graphics Port) 1 1 1
Bus de alto rendimiento para controlador gráfico. AGP reduce cuellos de botella ya que es un bus dedicado de alta velocidad. Necesidades de las aplicaciones gráficas: 2 2 2 2 2 2
1 1 1
Acceso rápido a memoria local de video (refresh) Elementos de píxel (3D) Información del eje Z Planos superpuestos Malla poligonales Texturas
32 líneas multiplexadas: direcciones/datos Alta velocidad (reloj del bus de la CPU) Transmisión: 528 MB/s ó 1 GB/s
Autor: Alejandro Furfaro
21
Procesamiento de Video 3D en PCI Buffer de trama
Buffer Local de Texturas Textura 2
Monitor
Chip Gráfico
Los mapas de textura se leen del disco duro, y se cargan en la memoria del sistema, pero antes pasan a través de la interfaz IDE al bus y al chipset de video. Autor: Alejandro Furfaro
RAM del Sistema a Local
CPU
Textura 1
Chipset PCI
BUS PCI Drive de DISCO
Memoria Del Sistema
Textura 2 Cuando se necesita en mapa de textura para procesar una escena, el procesador lo toma de la memoria del sistema.
Lo procesa y cachea en disco los resultados. Finalmente se almacena en memoria para que lo tome el Chip Gráfico 22
Procesamiento de Video 3D con AGP CPU
Buffer de trama
Memoria Del Sistema Textura 1
Chip Gráfico
Monitor
Chipset
AGP
Textura 2
BUS PCI Drive de DISCO Autor: Alejandro Furfaro
23
Cache L2
Memoria Local
2.0 GB/s
Core
AGP
800 MB/s
Procesador Pentium III
Acelerador Gráfico 528 MB/s Intel 740 132 MB/s
I/O Autor: Alejandro Furfaro
PCI I/O
Intel 440BX 800 MB/s AGPset
Memoria del Sistema
Texturas
BUS AGP sobre Procesador Pentium III
24
Plataforma PCI: Arquitectura y Performance 1
A medida que aumentan los requerimientos de ancho de banda de bus por parte de los dispositivos, las plataformas PCI evolucionaron en una arquitectura compuesta por dos puentes: 2
Norte: representado por el Hub de Memoria.
2
Sur: representado por el Hub de E/S.
1
El concepto Primario es que los recursos de alta performance se conectan al Hub Controlador de Memoria y los de baja performance al Hub Controlador de E/S.
1
Dentro de los recursos de baja performance del Hub Controlador de E/S, algunos requieren conexión de alta performance (p.ej. un CD) y otros se pueden utilizar como un segmento compartido del bus PCI (p.ej. Ethernet y SCSI)
Autor: Alejandro Furfaro
25
Arquitectura PCI
Autor: Alejandro Furfaro
26
Plataforma PCI: Arquitectura y Performance 1
Ya implementado el modelo North Bridge – South Bridge, la evolución de la tecnología siguió incrementando la necesidad de soportar mas recursos de alta performance. 2
El Hub Controlador de Memoria no provee suficiente performance para todos los recursos relativos a la Plataforma de Memoria.
2
Para resolverlo se agregaron segmentos PCI adicionales de alta performance al Controlador del Hub de Memoria.
1
Además de la conexión al Hub Controlador de Memoria, se aumentó el tamaño y la frecuencia del segmento del bus PCI.
1
Con 64 bits en el bus de datos PCI, alcanzó anchos de banda de 532.8 MBps.
1
Es posible integrar los dos Hubs en un solo Host/PCI Bridge.
Autor: Alejandro Furfaro
27
Arquitectura PCI-X 1
PCI-X fue desarrollado para extender la performance de PCI.
1
El Bridge HOST/PCI-X representa una consolidación de los controladores de Hub en una estructura de Bridge único.
1
Inicialmente PCI-X simplemente incrementa la frecuencia de la línea de la señal CLK respecto de PCI con el objeto de incrementar el ancho de banda del segmento del bus.
1
Eventualmente PCI-X DDR y QDR proveen una fuente de sincronismo para mejorar el ancho de banda del segmento. “D” y “Q” se refieren a dual y quad como múltiplos respectivamente de la señal de strobe, dentro de un mismo período de la señal CLK.
1
El incremento en el ancho de banda del segmento del bus reduce ampliamente el número de slots de conexión de placas por cada segmento de bus.
1
El aumento en la performance de los PCI-X DDR y QDR resulta en interconexiones punto a punto.
Autor: Alejandro Furfaro
28
Arquitectura PCI-X
Autor: Alejandro Furfaro
29
Interfaces para dispositivos
•
SCSI:
- HD - CD-ROM - DVD
•
IDE:
- HD - CD-ROM - DVD
Autor: Alejandro Furfaro
30
SCSI (Small Computer System Interface) 1 1 1 1 1
Introducido por Macintosh en 1984 Periféricos externos (8, 16, 32 líneas) Se usa para conectar CDs, DVDs, Audio y HDs. SCSI-1: 5MB/s, SCSI-2: 40MB/s, SCSI-3: 160MB/s Dispositivos encadenados (2 conectores)
Autor: Alejandro Furfaro
31
SCSI (señales) • • • • • • • •
BSY: SEL: C/D: MSG: REQ: ACK: ATN: RST:
Autor: Alejandro Furfaro
ocupado selecciona dispositivo datos / control mensaje solicita transferencia reconoce REQ mensaje disponible inicio del bus
32
SCSI: Temporización
Autor: Alejandro Furfaro
33
IDE (Integrated Drive Electronics) 1
Integrada en placas base (incluyen 2 canales IDE para 4 dispositivos).
1
Comunica CPU con periféricos
1
Costo reducido
1
DMA Integrado en el controlador
1
Rendimiento comparable al SCSI
1
Compatible con ISA, PCI y bus local
Autor: Alejandro Furfaro
34
IDE (cables y conectores) •
PATA SATA 133MB/s 150MB/s
Autor: Alejandro Furfaro
35
Conector IDE ATAPI - 40 Pines
Autor: Alejandro Furfaro
36
Interfaz IDE ATAPI: Direcciones de E/S HEX 1FX 3FX 17X 37X
BINARY 0001 1111 0011 1111 0001 0111 0011 0111
XXXX XXXX XXXX XXXX
DESCRIPTION Primary Command Registers Primary Control Registers Alternate Command Registers Alternate Control Registers
Address bit A7
Autor: Alejandro Furfaro
37
Interfaz IDE ATAPI: Registros
Autor: Alejandro Furfaro
38
Interfaz IDE ATAPI: Registros Registros para lectura: - datos - error - sectores totales - Nº cilindro - Disco/cabeza - Estado Registros para escritura: - datos - características - sectores totales - Nº cilindro - Disco/cabeza - Comando Autor: Alejandro Furfaro
39
Interfaz IDE ATAPI: Comandos
Autor: Alejandro Furfaro
40
SCSI vs. IDE 1
Velocidad de transferencia de datos: 2
1
1
IDE: 133MB/s
Nº de dispositivos: 2
1
SCSI: 160MB/s
SCSI: 32
IDE: 7
Controladora: 2
SCSI es necesario añadirla con bus PCI a la placa base
2
IDE viene incluida
Discos duros: 2
Velocidad:
SCSI 15.000 rpm
IDE: 7.200 rpm
2
Tiempos de acceso:
SCSI: 3-4ms
IDE: 8ms
2
Precio:
SCSI: X
IDE: 0.7 X
Autor: Alejandro Furfaro
41