SlideShare una empresa de Scribd logo
1 de 80
Autor:
Bravo Cordova VeKIN Xiomara
Gmail: xiomileo20@gmail.com
Buses de interconexiónBuses de interconexión
2
Estructura del temaEstructura del tema
 Introducción
 Generalidades: el bus del sistema
 Estructura
 Jerarquías de buses múltiples
 Elementos de diseño de un bus
 Estudio de caso: el bus PCI
 Estructura
 Órdenes
 Transferencia de datos
 Arbitraje
3
BusesBuses
 Un bus es un camino de comunicación compartido
entre dos o más dispositivos
 Cualquier señal transmitida estará disponible para
todos los demás dispositivos
 Sólo un dispositivo puede transmitir en un momento dado
 Si dos dispositivos transmiten al mismo tiempo, sus señales
se solaparán y, probablemente, se distorsionarán
 Los dispositivos deben obtener el control del bus antes de
poder utilizarlo para transferir información
[STALLINGS 3.4]
4
Líneas de comunicaciónLíneas de comunicación
 Un bus suele estar formado por varias líneas de
comunicación
 Cada línea tiene un significado o función particular
 Físicamente, las líneas de comunicación no son sino
un conjunto de conductores eléctricos
 Cada línea transmite señales digitales binarias (0,1)
 Se puede transmitir una secuencia de dígitos binarios a través
de una única línea durante un intervalo de tiempo
 Se pueden utilizar varias líneas del bus para transmitir dígitos
binarios simultáneamente en paralelo
[STALLINGS 3.4]
5
Estructura del temaEstructura del tema
 Introducción
 Generalidades: el bus del sistema
 Estructura
 Jerarquías de buses múltiples
 Elementos de diseño de un bus
 Estudio de caso: el bus PCI
 Estructura
 Órdenes
 Transferencia de datos
 Arbitraje
6
El bus del sistemaEl bus del sistema
 Los computadores poseen diferentes tipos de buses
que proporcionan comunicación a distintos niveles
entre sus componentes
 El bus que conecta los componentes principales del
computador (procesador, memoria y E/S) es el llamado
bus del sistema
[STALLINGS 3.4]
7
Estructura del temaEstructura del tema
 Introducción
 Generalidades: el bus del sistema
 Estructura
 Jerarquías de buses múltiples
 Elementos de diseño de un bus
 Estudio de caso: el bus PCI
 Estructura
 Órdenes
 Transferencia de datos
 Arbitraje
8
Estructura del bus del sistemaEstructura del bus del sistema
 Aunque existen diseños muy diversos, las líneas que
forman el bus del sistema pueden clasificarse en tres
grupos funcionales: datos, dirección y control
 También pueden existir líneas de alimentación para
suministrar energía a los módulos conectados al bus
[STALLINGS 3.4]
9
Líneas de datosLíneas de datos
 Las líneas de datos proporcionan un camino para
transmitir datos entre los módulos del sistema
 El conjunto de las líneas de datos suele
denominarse bus de datos
 Se suele hablar de “anchura del bus” para
referirse al número de líneas de datos
 La anchura del bus de datos es un factor clave para
determinar el rendimiento de un sistema
▫ Cada línea puede transportar un único bit cada vez
▫ La anchura del bus determina cuantos bits se puden transmitir de
forma simultánea y, por tanto, la velocidad de transferencia
[STALLINGS 3.4]
10
Líneas de direcciónLíneas de dirección
 Las líneas de dirección se utilizan para designar la
fuente o el destino del dato situado en el bus de datos
 Posición de memoria
 Dispositivo de E/S
 La anchura del bus de direcciones determina el tamaño
máximo del espacio de direcciones del sistema
 Cuando la E/S está asignada en memoria, el espacio
de direcciones se comparte entre memoria y E/S
 Cuando la E/S está aislada de memoria, los espacios
de direcciones están separados y tienen el mismo
tamaño máximo
[STALLINGS 3.4] [STALLINGS 7.3]
11
Líneas de controlLíneas de control
 Dado que las líneas de datos y direcciones son
compartidas por todos los dispositivos conectados
al bus, debe existir alguna forma de controlar su uso
 El propósito de las líneas de control es:
 Determinar quien accede a las líneas de datos y direcciones
 Gestionar el uso que se hace de esas líneas
▫ Transmitir órdenes que especifican las operaciones a realizar
▫ Transmitir información de temporización que indica la validez de los
datos y direcciones
[STALLINGS 3.4]
12
Algunas líneas de control típicasAlgunas líneas de control típicas
 Escritura en memoria: hace que el dato presente en el
bus se escriba en la posición direccionada
 Lectura de memoria: hace que el dato de la posición
direccionada se sitúe en el bus
 Escritura de E/S: hace que el dato presente en el bus se
transfiera a través del puerto de E/S direccionado
 Lectura de E/S: hace que el dato presente en el puerto
de E/S direccionado se sitúe en el bus
 Transferencia reconocida: indica a un dispositivo que
el dato que envió ha sido aceptado o que el dato que
desea está disponible en el bus
[STALLINGS 3.4]
13
Algunas líneas de control típicasAlgunas líneas de control típicas
 Petición de bus: indica que un dispositivo necesita
disponer del control del bus
 Cesión de bus: indica que se cede el control del bus a
un dispositivo que lo había solicitado
 Petición de interrupción: indica que hay una
interrupción pendiente
 Interrupción reconocida: señala que la interrupción
pendiente ha sido aceptada
 Reloj: se utiliza para sincronizar operaciones
 Reinicio: devuelve los dispositivos conectados a su
estado inicial
[STALLINGS 3.4]
14
Estructura físicaEstructura física
 El bus del sistema se extiende a traves de todos los
componentes del sistema, cada uno de los cuales se
conecta a algunas o a todas las líneas del bus
 Una organización clásica
consiste en una distribución
longitudinal a lo largo de la que
se distribuyen ranuras de
conexión (slots) a intervalos
regulares
[STALLINGS 3.4]
15
Estructura físicaEstructura física
 El sistema completo se introduce dentro de un
chasis que también contiene la fuente de
alimentación, algunos dispositivos periféricos, etc…
 Cada uno de los componentes
principales del sistema
ocupa una o varias tarjetas
que se conectan al bus a
través de las ranuras de
conexión
[STALLINGS 3.4]
16
Estructura físicaEstructura física
 Esta disposición es muy práctica porque permite
expandir el sistema añadiendo nuevas tarjetas o
actualizarlo/repararlo sustituyendo tarjetas
 No obstante, los sistemas actuales tienden a tener sus
componentes principales en una misma tarjeta
 El procesador, la memoria caché y el bus que los
comunica se integran en un único componente
 La memoria y otros dispositivos siguen estando en tarjetas
separadas que se comunican con el procesador por medio
del bus del sistema
[STALLINGS 3.4]
17
Estructura del temaEstructura del tema
 Introducción
 Generalidades: el bus del sistema
 Estructura del bus
 Jerarquías de buses múltiples
 Elementos de diseño de un bus
 Estudio de caso: el bus PCI
 Estructura
 Órdenes
 Transferencia de datos
 Arbitraje
18
Inconvenientes de tener un bus únicoInconvenientes de tener un bus único
 El rendimiento de un bus puede disminuir si se conecta
un gran número de dispositivos
 A más dispositivos conectados, mayor retardo de
propagación
▫ Los dispositivos tardarán más en coordinarse para usar el bus
▫ Si el control del bus pasa con frecuencia de un dispositivo a otro,
los retardos afectarán al rendimiento
 Entre más peticiones reciba el bus, más probable será que
se cruce la barrera de su capacidad máxima, convirtiéndose
el bus en un cuello de botella
▫ Puede resolverse usando buses más rápidos y/o más anchos
▫ La velocidad y la anchura tienen límites físicos, mientras que la
velocidad de transferencia que necesitan los dispositivos conectados
al bus se está incrementando rápidamente
[STALLINGS 3.4]
19
Jerarquía de busesJerarquía de buses
 El bus único está destinado a dejar de utilizarse
 La mayoría de los computadores utilizan varios buses
organizados de forma jerárquica
[STALLINGS 3.4]
20
Jerarquía de busesJerarquía de buses
 El procesador se conecta con la memoria caché
por medio de un bus local al que también pueden
conectarse dispositivos de E/S locales
[STALLINGS 3.4]
21
Jerarquía de busesJerarquía de buses
 El controlador de la memoria caché se conecta tanto al
bus local como al bus del sistema, donde se encuentran
los distintos módulos de la memoria principal
[STALLINGS 3.4]
22
Jerarquía de busesJerarquía de buses
 Los controladores de E/S se pueden conectar
directamente al bus del sistema
 Las transferencias entre la memoria y la E/S no
interferirán en la actividad del procesador
[STALLINGS 3.4]
23
Jerarquía de busesJerarquía de buses
 Es más eficiente conectar los controladores
de E/S a un bus de expansión
 Su interfaz regula las transferencias de datos entre los
controladores E/S conectados a él y el bus del sistema
[STALLINGS 3.4]
24
Jerarquía de busesJerarquía de buses
 El bus de expansión permite:
 Conectar una amplia variedad de dispositivos de E/S
 Aislar el tráfico de información Memoria  Procesador
del tráfico correspondiente a la E/S
[STALLINGS 3.4]
25
Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento
 La jerarquía de buses tradicional es razonablemente
eficiente, pero no consigue adaptarse al continuo
aumento del rendimiento de los dispositivos de E/S
 La respuesta a este problema consiste en utilizar un
bus de alta velocidad
 Estrechamente integrado al resto del sistema
 Sólo se requiere un adaptador (bridge) entre el bus del
procesador y el bus de alta velocidad
 Esta arquitectura recibe el nombre de
“arquitectura de entreplanta”
[STALLINGS 3.4]
26
Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento
 El procesador se conecta por medio de un bus local al
controlador de la memoria caché
 El controlador de la memoria caché se conecta a su vez
al bus del sistema donde está la memoria principal
[STALLINGS 3.4]
27
Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento
 El controlador de la memoria caché está integrado junto
con el adaptador o dispositivo de acoplo que permite la
conexión con el bus de alta velocidad
[STALLINGS 3.4]
28
Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento
 El bus de alta velocidad se utiliza para conectar los
controladores de E/S rápidos que así lo necesiten
 Los más lentos pueden conectarse al bus de expansión,
que usa una interfaz para adaptar el tráfico que circula
[STALLINGS 3.4]
29
Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento
 La ventaja de esta organización es que el bus de alta
velocidad acerca al procesador los dispositivos que
exigen un rendimiento elevado pero, al mismo tiempo,
es independiente del procesador
[STALLINGS 3.4]
30
Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento
 Los adaptadores e interfaces tratan con las diferencias
de velocidad y de definición de líneas de los buses
 Los cambios realizados en una parte de la arquitectura
no afectan a las demás partes
[STALLINGS 3.4]
31
Estructura del temaEstructura del tema
 Introducción
 Generalidades: el bus del sistema
 Estructura del bus
 Jerarquías de buses múltiples
 Elementos de diseño de un bus
 Estudio de caso: el bus PCI
 Estructura
 Órdenes
 Transferencia de datos
 Arbitraje
32
Elementos de diseño de un busElementos de diseño de un bus
 Existe una gran variedad de diseños de buses pero, en
general, hay unos pocos elementos comunes de diseño
que permiten clasificarlos y distinguirlos unos de otros
[STALLINGS 3.4]
33
Tipos de busesTipos de buses
 Las líneas de bus se pueden dividir en
dos tipos genéricos:
 Dedicadas: están permanentemente asignadas a una función
o a un conjunto de componentes del computador
▫ Un ejemplo típico de dedicación funcional es el uso de líneas
separadas para direcciones y datos
 Multiplexadas: pueden utilizarse para propósitos diferentes
▫ Direcciones y datos podrían transmitirse por la misma línea si se
utilizara una señal de control “Dirección Válida”
▫ Se pone la dirección en el bus y se activa la línea de control, dando un
tiempo para que los distintos controladores lean el bus y comprueben
si están siendo direccionados
▫ Después de un periodo de tiempo se quita la dirección del bus y se
utilizan las mimas líneas para realizar la transferencia
[STALLINGS 3.4]
34
Tipos de busesTipos de buses
 La dedicación física requiere el uso de múltiples
buses, cada uno de los cuales conecta solo a un
conjunto de controladores
 Ventaja: alto rendimiento por el menor número de conflictos
 Desventaja: incremento del costo y el tamaño del sistema
 El multiplexado en el tiempo de las líneas permite
utilizar las mismas líneas para usos diferentes
 Ventaja: normalmente ahorra espacio y costes
 Desventajas:
▫ Los controladores necesitarán una circuitería más compleja
▫ La falta de paralelismo puede reducir el rendimiento
[STALLINGS 3.4]
35
Método de arbitrajeMétodo de arbitraje
 En un momento dado puede haber más de un
controlador intentando usar el bus, pero sólo uno de
ellos puede obtener el control y usarlo para transmitir
 Es necesario disponer de un método de arbitraje que
determine quién utiliza el bus
 En general, los diversos métodos de arbitraje se
pueden clasificar en:
 Centralizados
 Distribuidos
[STALLINGS 3.4]
36
Método de arbitrajeMétodo de arbitraje
 El objetivo de ambos métodos de arbitraje es designar
un dispositivo como “maestro del bus”, el cual iniciará
una transferencia hacia otro dispositivo (esclavo)
 En un esquema centralizado hay un único dispositivo
físico llamado controlador de bus o árbitro
 El árbitro es el responsable de asignar tiempos en el bus
 Puede ser un módulo separado o parte del propio procesador
 En un esquema distribuido no existe un árbitro central
 Cada módulo dispone de lógica para controlar el acceso
 Los módulos actúan conjuntamente para compartir el bus
[STALLINGS 3.4]
37
TemporizaciónTemporización
 El término temporización hace referencia a la forma en
la que se coordinan los eventos en el bus
 Con temporización síncrona, la presencia de un evento en el
bus está determinada por una señal de reloj
▫ El reloj es una línea del bus a través de la que se transmite una
secuencia de 1s y 0s a intervalos regulares de igual duración
▫ El ciclo de reloj o de bus es el intervalo mínimo en el que la señal
toma los dos valores posibles y define la unidad de medida del tiempo
dentro del bus (time slot)
▫ Todos los eventos empiezan al principio del ciclo de bus
 Con temporización asíncrona, la presencia de un evento
en el bus es consecuencia y depende de que se produzca
un evento previo
[STALLINGS 3.4]
38
TemporizaciónTemporización
 La temporización síncrona es más fácil de
implementar y comprobar
 Sin embargo, la temporización síncrona es menos
flexible debido a que todos los dispositivos conectados
al bus deben operar a la misma frecuencia de reloj y,
por tanto, no siempre se aprovecharán sus posibilidades
 La temporización asíncrona permite que una mezcla de
dispositivos rápidos y lentos, construidos con distintas
tecnologías, compartan un mismo bus
[STALLINGS 3.4]
39
Temporización síncronaTemporización síncrona
[STALLINGS 3.4]
40
Temporización asíncrona: lecturaTemporización asíncrona: lectura
[STALLINGS 3.4]
41
Temporización asíncrona: escrituraTemporización asíncrona: escritura
[STALLINGS 3.4]
42
Anchura del busAnchura del bus
 La anchura de un bus es el número de líneas distintas
que lo componen
 La anchura del bus afecta tanto a la capacidad como al
rendimiento del sistema
 Cuanto más ancho es el bus de datos, mayor es el número
de bits que se transmiten a la vez y, por tanto, mayor es el
rendimiento del sistema
 Cuanto más ancho es el bus de direcciones, mayor es el rango
de posiciones a las que se puede hacer referencia y, por tanto,
mayor es la capacidad máxima del sistema
[STALLINGS 3.4]
43
Tipos de transferencia de datosTipos de transferencia de datos
 Un bus permite varios tipos de transferencias de datos
 Todos los buses permiten transferencias de lectura y escritura
▫ Transferencias de lectura: esclavo  maestro
▫ Transferencias de escritura: maestro  esclavo
 En el caso de un bus multiplexado,
primero se especifica la dirección y
luego se transmite el dato
▫ Las lecturas implican esperar la
respuesta del esclavo
▫ Tanto en lecturas como en escrituras
pueden aparecer retardos adicionales
si es necesario tomar el control del
bus dos veces por medio de un
procedimiento de arbitraje
[STALLINGS 3.4]
44
Tipos de transferencia de datosTipos de transferencia de datos
 Un bus permite varios tipos de transferencias de datos
 Todos los buses permiten transferencias de lectura y escritura
▫ Transferencias de lectura: esclavo  maestro
▫ Transferencias de escritura: maestro  esclavo
 En el caso de líneas dedicadas, la
dirección se sitúa en el bus de
direcciones y se mantiene ahí mientras
que el dato se ubica en el bus de datos
▫ En una escritura, el maestro pone el
dato tan pronto se estabiliza la dirección
y el esclavo ha podido reconocerla
▫ En una lectura, el esclavo pone el dato
tan pronto como haya reconocido la
dirección y disponga del mismo
[STALLINGS 3.4]
45
Tipos de transferencia de datosTipos de transferencia de datos
 Algunos buses permiten operaciones combinadas
 Una lectura-modificación-escritura es una lectura seguida
inmediatamente de una escritura en la misma dirección
▫ La dirección se proporciona una sola vez al comienzo de la operación
▫ La operación se considera indivisible para evitar el acceso al dato por
parte de otros maestros del bus (protección de memoria compartida)
[STALLINGS 3.4]
46
Tipos de transferencia de datosTipos de transferencia de datos
 Algunos buses permiten operaciones combinadas
 Una lectura-después-de-escritura consiste en una escritura
seguida de una lectura en la misma dirección
▫ También es una operación indivisible
▫ La lectura puede tener el propósito de comprobar el resultado
[STALLINGS 3.4]
47
Tipos de transferencia de datosTipos de transferencia de datos
 Algunos buses permiten transferencias de
bloques de datos
 Hay un ciclo de dirección y luego varios ciclos de datos
 El primer dato se transmite a/desde la dirección
especificada, mientras que el resto de datos se
transfieren a/desde las direcciones siguientes
[STALLINGS 3.4]
48
Estructura del temaEstructura del tema
 Introducción
 Generalidades: el bus del sistema
 Estructura del bus
 Jerarquías de buses múltiples
 Elementos de diseño de un bus
 Estudio de caso: el bus PCI
 Estructura
 Órdenes
 Transferencia de datos
 Arbitraje
49
El bus PCIEl bus PCI
[STALLINGS 3.5]
 El bus PCI (Peripheral Component Interconnect)
es un bus muy popular de ancho de banda elevado
e independiente del procesador
 Está diseñado para permitir una cierta variedad de
configuraciones basadas en sistemas monoprocesador
y sistemas multiprocesador
 Proporciona un conjunto de funciones de uso general
 Las direcciones y datos están multiplexadas en el tiempo
 El esquema de arbitraje empleado es centralizado
 Utiliza temporización síncrona
50
El bus PCIEl bus PCI
[STALLINGS 3.5]
 El diseño del bus PCI se ha realizado
específicamente para ajustarse a los
requisitos de E/S de los sistemas actuales
 Podemos distinguir tres ventajas del bus PCI
 Es económico: se implementa con muy pocos circuitos
 Es flexible: permite que otros buses se conecten a él
 Es rápido: comparado con otras especificaciones comunes de
bus, proporciona un mejor rendimiento para los subsistemas
de E/S de alta velocidad
▫ Puede utilizarse como bus de periféricos
▫ También puede utilizarse para una arquitectura de entreplanta
51
El bus PCIEl bus PCI
[STALLINGS 3.5]
 Las especificaciones del bus PCI
son de dominio público
 Son respetadas por un amplio abanico de fabricantes de
procesadores y periféricos, por lo que los productos de
diferentes compañías son compatibles
 La asociación PCI SIG (special interest group) continúa el
desarrollo de las especificaciones y vela por que se mantenga
la compatibilidad
 El resultado ha sido que el bus PCI no solo está
ampliamente adoptado en la actualidad sino que
su uso se sigue extendiendo
52
PCI en sistemas monoprocesadorPCI en sistemas monoprocesador
[STALLINGS 3.5]
 Un dispositivo integra el controlador de
memoria y el adaptador al bus PCI
 Proporciona el acoplamiento al procesador (buffer temporal)
 Aísla la capacidad de E/S del procesador de la velocidad real
del bus, lo que posibilita transmitir datos a alta velocidad
53
PCI en sistemas multiprocesadorPCI en sistemas multiprocesador
[STALLINGS 3.5]
 Se pueden conectar una o varias configuraciones
PCI al bus del sistema por medio de adaptadores
 Al bus del sistema sólo se conectan las unidades
procesador/caché, la memoria principal y los adaptadores
 Los adaptadores mantienen la independencia procesador-PCI
54
Estructura del temaEstructura del tema
 Introducción
 Generalidades: el bus del sistema
 Estructura del bus
 Jerarquías de buses múltiples
 Elementos de diseño de un bus
 Estudio de caso: el bus PCI
 Estructura
 Órdenes
 Transferencia de datos
 Arbitraje
55
Estructura del bus PCIEstructura del bus PCI
[STALLINGS 3.5]
 El estándar actual permite configurar el bus PCI como
un bus de 32 ó 64 bits
 Hay 49 líneas de señal obligatorias que se dividen en los
siguientes grupos funcionales:
▫ Terminales de sistema: reloj y reinicio
▫ Terminales de direcciones y datos
▪ 32 líneas para direcciones y datos multiplexadas en el tiempo
▪ Líneas adicionales para interpretar y validar las direcciones y datos
▫ Terminales de control de interfaz: controlan la temporización de las
transferencias y permiten la coordinación entre emisor y receptor
▫ Terminales de arbitraje: no son líneas compartidas – cada maestro
tiene su propio par de líneas que lo conectan con el árbitro del bus
▫ Terminales para señales de error: utilizadas para indicar errores
(paridad…)
56
Estructura del bus PCIEstructura del bus PCI
[STALLINGS 3.5]
57
Estructura del bus PCIEstructura del bus PCI
[STALLINGS 3.5]
58
Estructura del bus PCIEstructura del bus PCI
[STALLINGS 3.5]
59
Estructura del bus PCIEstructura del bus PCI
[STALLINGS 3.5]
 El estándar actual permite configurar el bus PCI como
un bus de 32 ó 64 bits
 La especificación también define 51 señales opcionales que
se dividen en los siguientes grupos funcionales:
▫ Terminales de interrupción: no son líneas compartidas – cada
dispositivo tiene sus propias líneas para generar peticiones a un
controlador de interrupciones
▫ Terminales de soporte de caché: necesarios para permitir memorias
caché en el bus asociadas a un procesador o a otro dispositivo
▫ Terminales de ampliación a bus de 64 bits
▪ 32 líneas para direcciones y datos multiplexadas en el tiempo que
se pueden combinar con las obligatorias para tener un total de 64
▪ Líneas adicionales para interpretar y validar las direcciones y datos, así
como para permitir que dos dispositivos acuerden el uso de los 64 bits
▫ Terminales de test: siguen estándar IEEE para procedimientos de test
60
Estructura del bus PCIEstructura del bus PCI
[STALLINGS 3.5]
61
Estructura del bus PCIEstructura del bus PCI
[STALLINGS 3.5]
62
Estructura del temaEstructura del tema
 Introducción
 Generalidades: el bus del sistema
 Estructura del bus
 Jerarquías de buses múltiples
 Elementos de diseño de un bus
 Estudio de caso: el bus PCI
 Estructura
 Órdenes
 Transferencia de datos
 Arbitraje
63
Órdenes del bus PCIÓrdenes del bus PCI
[STALLINGS 3.5]
 La actividad del bus consiste en transferencias
entre dispositivos conectados al bus
 El dispositivo que inicia la transferencia es el maestro
 Cuando el maestro adquiere el control del bus determina el
tipo de transferencia que se realizará (líneas C/BE)
 Los tipos de órdenes son:
 Reconocimiento de interrupción
▫ Orden de lectura generada por el controlador de interrupciones del
bus
▫ Las líneas de dirección no se utilizan para direccionar el dispositivo
▫ Las líneas de byte activo (byte enable) indican el tamaño del
identificador de interrupción a devolver
64
Órdenes del bus PCIÓrdenes del bus PCI
[STALLINGS 3.5]
 Los tipos de órdenes son:
 Ciclo especial: se utiliza para iniciar la difusión de un
mensaje a uno o más destinatarios
 Ciclo de dirección dual: el maestro utiliza esta orden para
indicar que la transferencia utiliza direcciones de 64 bits
 Lectura de E/S y Escritura de E/S
▫ Se utilizan para intercambiar datos entre el maestro y
un controlador de E/S
▫ Cada dispositivo de E/S tiene su propio espacio de direcciones
▫ Las líneas de direcciones se utilizan para indicar un
dispositivo concreto y para especificar los datos a
transferir a/desde ese dispositivo
65
Órdenes del bus PCIÓrdenes del bus PCI
[STALLINGS 3.5]
 Los tipos de órdenes son:
 Lectura de memoria
▫ Se utiliza para especificar la transferencia de una secuencia de datos
desde memoria durante uno o más ciclos de reloj
▫ Si el controlador de memoria utiliza el protocolo PCI para las
transferencias entre la caché y la memoria principal, la transferencia
se realizará en términos de líneas de caché
▫ Hay tres órdenes de lectura de memoria distintas:
66
Órdenes del bus PCIÓrdenes del bus PCI
[STALLINGS 3.5]
 Los tipos de órdenes son:
 Escritura en memoria
▫ Se usa para transferir datos a memoria durante uno
o más ciclos del bus
▫ Hay dos órdenes de escritura en memoria distintas
▪ Escritura en memoria
▪ Escritura e invalidación de memoria
• Transfiere datos e indica que al menos se ha escrito una línea de caché
• Permite el funcionamiento de una caché write back (postescritura)
 Lectura de configuración y Escritura de configuración
▫ Permiten que el maestro lea y actualice los parámetros de
configuración de un dispositivo conectado al bus
▫ Cada dispositivo puede disponer de hasta 256 registros internos
que permitan configurarlo
67
Estructura del temaEstructura del tema
 Introducción
 Generalidades: el bus del sistema
 Estructura del bus
 Jerarquías de buses múltiples
 Elementos de diseño de un bus
 Estudio de caso: el bus PCI
 Estructura
 Órdenes
 Transferencia de datos
 Arbitraje
68
Transferencias de datos en el bus PCITransferencias de datos en el bus PCI
[STALLINGS 3.5]
 Toda transferencia de datos en un bus PCI es
una transacción única que consta de una fase
de direccionamiento y una o más fases de datos
 Como ejemplo veremos la temporización de una
operación de lectura típica (la de escritura es análoga)
 Los dispositivos conectados al bus interpretan las líneas en los
flancos de subida de la señal de reloj (comienzo del ciclo)
 Todos los eventos se sincronizan en los flancos de bajada de
la señal de reloj (punto medio del ciclo)
69
Transferencias de datos en el bus PCITransferencias de datos en el bus PCI
[STALLINGS 3.5]
70
Transferencias de datos en el bus PCITransferencias de datos en el bus PCI
[STALLINGS 3.5]
a. Una vez que el maestro del bus tiene el control del mismo
inicia la transacción
▫ Sitúa la dirección de inicio en las líneas AD y
la orden de lectura en las líneas C/BE
▫ Activa la señal FRAME, la cual debe permanecer activa hasta
que el maestro esté listo para terminar la última fase de datos
b. Al comienzo del segundo ciclo de reloj, el dispositivo del
que se lee reconocerá su dirección en las líneas AD
c. El maestro deja libres las líneas AD
▫ En todas las líneas que pueden ser activadas por más de un dispositivo
se necesita un ciclo de cambio para que la liberación se complete y el
bus pueda ser utilizado por el dispositivo
▫ El maestro cambia las líneas C/BE para indicar cuáles de las líneas AD
se utilizarán para transferir el dato
▫ El maestro activa IRDY indicando que está listo para recibir el primer dato
71
Transferencias de datos en el bus PCITransferencias de datos en el bus PCI
[STALLINGS 3.5]
d. El dispositivo de lectura se prepara para responder
▫ Activa DEVSEL para indicar que ha reconocido la dirección y va a
responder; la señal permanecerá activa mientras dure la transferencia
▫ Sitúa el dato solicitado en las líneas AD
▫ Activa TRDY para indicar que hay un dato válido en el bus
e. El maestro lee el dato al comienzo del cuarto ciclo de reloj y
cambia las líneas de habilitación de byte según se necesite para
la próxima lectura
f. En este ejemplo, el dispositivo de lectura necesita algún tiempo
para preparar el segundo bloque de datos
▫ Desactiva TRDY para indicar que no transmitirá el próximo ciclo
▫ El maestro, en consecuencia, no lee las líneas de datos al comienzo del
quinto ciclo de reloj y no cambia la señal de habilitación de byte
▫ El nuevo bloque de datos se leerá al comienzo del sexto ciclo
72
Transferencias de datos en el bus PCITransferencias de datos en el bus PCI
[STALLINGS 3.5]
g. Durante el sexto ciclo de reloj, el dispositivo de lectura
sitúa el tercer bloque de datos en el bus, pero el maestro
no está preparado para leerlo
▫ El maestro desactiva IRDY
▫ El dispositivo de lectura mantiene el dato en el bus durante un ciclo extra
g. El maestro sabe que el tercer bloque de datos es el último,
▫ Desactiva FRAME para indicarle al dispositivo de lectura que éste es el
último dato a transferir
▫ Activa IRDY para indica que está listo para completar la transferencia
g. El maestro desactiva IRDY y el dispositivo de lectura contesta
desactivando TRDY y DEVSEL: el bus vuelve a estar libre
73
Estructura del temaEstructura del tema
 Introducción
 Generalidades: el bus del sistema
 Estructura del bus
 Jerarquías de buses múltiples
 Elementos de diseño de un bus
 Estudio de caso: el bus PCI
 Estructura
 Órdenes
 Transferencia de datos
 Arbitraje
74
Arbitraje del bus PCIArbitraje del bus PCI
[STALLINGS 3.5]
 El bus PCI utiliza un esquema de arbitraje centralizado
síncrono en el que cada maestro tiene una única señal
de petición (REQ) y cesión (GNT) del bus
 Estas líneas se conectan a un árbitro central, lo que
permite que los dispositivos accedan al bus tras un
simple intercambio de señales de petición y cesión
75
Arbitraje del bus PCIArbitraje del bus PCI
[STALLINGS 3.5]
 La especificación del bus PCI no indica un algoritmo
particular de arbitraje
 El árbitro puede utilizar cualquier esquema de prioridad
▫ Primero en llegar, primero en servirse
▫ Rotatorio (round robin)
▫ …
 El maestro establece, para cada transferencia que desee
realizar, si tras la fase de dirección sigue una o más fases
de datos consecutivas
 Como ejemplo veremos el intercambio de señales
necesario para decidir cual de entre dos dispositivos,
A y B, obtiene el control del bus
76
Arbitraje del bus PCIArbitraje del bus PCI
[STALLINGS 3.5]
77
Arbitraje del bus PCIArbitraje del bus PCI
[STALLINGS 3.5]
a. Al comienzo del primer ciclo de reloj el árbitro detecta que A ha
activado su señal REQ
b. Durante el primer ciclo de reloj, B activa también su señal REQ
c. Al mismo tiempo, el árbitro activa GNT-A para ceder el bus a A
d. A detecta al comienzo del segundo ciclo de reloj que se le ha
cedido el bus
▫ IRDY y TRDY están desactivadas, por lo que el bus está libre
▫ En consecuencia activa FRAME, pone la dirección en el bus AD y
la orden correspondiente en las líneas C/BE
▫ Además, mantiene activa su señal REQ porque debe realizar otra
transferencia después de ésta
78
Arbitraje del bus PCIArbitraje del bus PCI
[STALLINGS 3.5]
e. Al comienzo del tercer ciclo de reloj el árbitro vuelve a
comprobar las líneas REQ y decide ceder el bus a B para
la siguiente transacción
▫ El árbitro desactiva GNT-A y activa GNT-B
▫ A pesar de tener acceso al bus, B tendrá que esperar a que esté libre,
pues IRDY y TRDY indican que sigue ocupado
e. A desactiva FRAME para indicar que su última transferencia
de datos está activa
▫ Pone los datos en el bus AD y se lo indica al dispositivo destino con IRDY
▫ El dispositivo lee el dato al comienzo del siguiente ciclo de reloj
e. Al comienzo del quinto ciclo de reloj, B encuentra IRDY y
TRDY desactivadas
▫ Toma el control del bus activando FRAME
▫ Desactiva REQ porque no desea transmitir un segundo dato
79
Arbitraje del bus PCIArbitraje del bus PCI
[STALLINGS 3.5]
 Más adelante, el dispositivo A (que mantenía REQ
activa) recuperará el control del bus y continuará la
transmisión pendiente
 Es importante destacar que el arbitraje se produce al
mismo tiempo que el actual maestro del bus realiza
una transferencia
 No se pierden ciclos de bus para realizar el arbitraje
 Esto se conoce como arbitraje oculto o solapado
(hidden arbitration)
80
BibliografíaBibliografía
[STALLINGS]
Organización y arquitectura de computadores
William Stallings
Pearson Education – Prentice Hall, 2005 (7ª edición)

Más contenido relacionado

La actualidad más candente

Control De Acceso Al Medio De Ethernet
Control De Acceso Al Medio De EthernetControl De Acceso Al Medio De Ethernet
Control De Acceso Al Medio De EthernetIsabel Yepes
 
Origen del Modelo OSI y su impacto en als estructuras de redes
Origen del Modelo OSI y su impacto en als estructuras de redesOrigen del Modelo OSI y su impacto en als estructuras de redes
Origen del Modelo OSI y su impacto en als estructuras de redesKim Sorel Rush
 
Organización y estructura interna del cpu
Organización y estructura interna del cpuOrganización y estructura interna del cpu
Organización y estructura interna del cpuIsaí Beto Matz Mijes
 
Buses, Direccionamiento, Temporizacion
Buses, Direccionamiento, TemporizacionBuses, Direccionamiento, Temporizacion
Buses, Direccionamiento, TemporizacionYESENIA CETINA
 
Gestión de entrada salida
Gestión de entrada salida Gestión de entrada salida
Gestión de entrada salida eduardoed5
 
Dispositvos de entrada y salida
Dispositvos de entrada y salidaDispositvos de entrada y salida
Dispositvos de entrada y salidaitzayana bacilio
 
Arquitectura de computadoras
Arquitectura de computadorasArquitectura de computadoras
Arquitectura de computadorasm220
 
TEMA:5.1 PRINCIPIOS DE HARDWARE DE E/S.
TEMA:5.1 PRINCIPIOS DE HARDWARE DE E/S.TEMA:5.1 PRINCIPIOS DE HARDWARE DE E/S.
TEMA:5.1 PRINCIPIOS DE HARDWARE DE E/S.PAOLA ABOYTES
 
Capas del modelo OSI y Protocolos que intervienen en cada capa
Capas del modelo OSI y Protocolos que intervienen en cada capaCapas del modelo OSI y Protocolos que intervienen en cada capa
Capas del modelo OSI y Protocolos que intervienen en cada capaaeross
 
CUADRO COMPARATIVO ENTRE MODELO OSI Y TCP/IP
CUADRO COMPARATIVO ENTRE MODELO OSI Y TCP/IPCUADRO COMPARATIVO ENTRE MODELO OSI Y TCP/IP
CUADRO COMPARATIVO ENTRE MODELO OSI Y TCP/IPdisenarUniminuto
 
Arquitectura de computadoras
Arquitectura de computadorasArquitectura de computadoras
Arquitectura de computadorasfarmero
 
Introducción a la arquitectura de computadores
Introducción a la arquitectura de computadoresIntroducción a la arquitectura de computadores
Introducción a la arquitectura de computadoresJohn Espinoza
 
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOSDISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOSGonzalo Murga Sotelo
 
Administracion de usuarios y grupos
Administracion de usuarios y gruposAdministracion de usuarios y grupos
Administracion de usuarios y gruposJACKELIN SORALUZ
 
Modelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasModelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasYESENIA CETINA
 

La actualidad más candente (20)

Control De Acceso Al Medio De Ethernet
Control De Acceso Al Medio De EthernetControl De Acceso Al Medio De Ethernet
Control De Acceso Al Medio De Ethernet
 
Origen del Modelo OSI y su impacto en als estructuras de redes
Origen del Modelo OSI y su impacto en als estructuras de redesOrigen del Modelo OSI y su impacto en als estructuras de redes
Origen del Modelo OSI y su impacto en als estructuras de redes
 
Organización y estructura interna del cpu
Organización y estructura interna del cpuOrganización y estructura interna del cpu
Organización y estructura interna del cpu
 
Buses, Direccionamiento, Temporizacion
Buses, Direccionamiento, TemporizacionBuses, Direccionamiento, Temporizacion
Buses, Direccionamiento, Temporizacion
 
Gestión de entrada salida
Gestión de entrada salida Gestión de entrada salida
Gestión de entrada salida
 
Sistema de interconexion interna
Sistema de interconexion internaSistema de interconexion interna
Sistema de interconexion interna
 
Dispositvos de entrada y salida
Dispositvos de entrada y salidaDispositvos de entrada y salida
Dispositvos de entrada y salida
 
Arquitectura de computadoras
Arquitectura de computadorasArquitectura de computadoras
Arquitectura de computadoras
 
TEMA:5.1 PRINCIPIOS DE HARDWARE DE E/S.
TEMA:5.1 PRINCIPIOS DE HARDWARE DE E/S.TEMA:5.1 PRINCIPIOS DE HARDWARE DE E/S.
TEMA:5.1 PRINCIPIOS DE HARDWARE DE E/S.
 
Infografia modelo osi
Infografia modelo osiInfografia modelo osi
Infografia modelo osi
 
Capas del modelo OSI y Protocolos que intervienen en cada capa
Capas del modelo OSI y Protocolos que intervienen en cada capaCapas del modelo OSI y Protocolos que intervienen en cada capa
Capas del modelo OSI y Protocolos que intervienen en cada capa
 
Unidad de Control
Unidad de ControlUnidad de Control
Unidad de Control
 
CUADRO COMPARATIVO ENTRE MODELO OSI Y TCP/IP
CUADRO COMPARATIVO ENTRE MODELO OSI Y TCP/IPCUADRO COMPARATIVO ENTRE MODELO OSI Y TCP/IP
CUADRO COMPARATIVO ENTRE MODELO OSI Y TCP/IP
 
Interrupciones
InterrupcionesInterrupciones
Interrupciones
 
Arquitectura de computadoras
Arquitectura de computadorasArquitectura de computadoras
Arquitectura de computadoras
 
Introducción a la arquitectura de computadores
Introducción a la arquitectura de computadoresIntroducción a la arquitectura de computadores
Introducción a la arquitectura de computadores
 
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOSDISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS
DISPOSITIVOS Y MANEJADORES DE DISPOSITIVOS
 
Ciclo de instrucción
Ciclo de instrucciónCiclo de instrucción
Ciclo de instrucción
 
Administracion de usuarios y grupos
Administracion de usuarios y gruposAdministracion de usuarios y grupos
Administracion de usuarios y grupos
 
Modelos de arquitecturas de computadoras
Modelos de arquitecturas de computadorasModelos de arquitecturas de computadoras
Modelos de arquitecturas de computadoras
 

Similar a Buses de interconexión

U3 - Perspectiva de alto nivel del funcionamiento y de las interconexiones de...
U3 - Perspectiva de alto nivel del funcionamiento y de las interconexiones de...U3 - Perspectiva de alto nivel del funcionamiento y de las interconexiones de...
U3 - Perspectiva de alto nivel del funcionamiento y de las interconexiones de...ElChadu
 
Exposicion de buses
Exposicion de busesExposicion de buses
Exposicion de busesdadf100
 
Practica de buses
Practica de busesPractica de buses
Practica de busesNuria Villa
 
Practica de buses
Practica de busesPractica de buses
Practica de busesNuria Villa
 
PRACTICA DE BUSES
PRACTICA DE BUSESPRACTICA DE BUSES
PRACTICA DE BUSESMafersita06
 
Bus de datos, dirección y control
Bus de datos, dirección y controlBus de datos, dirección y control
Bus de datos, dirección y controlJulian1784
 
Transferencia de datos (buses)
Transferencia de datos (buses)Transferencia de datos (buses)
Transferencia de datos (buses)jodete culero
 
Informe sobre Buses informaticos
Informe sobre Buses informaticosInforme sobre Buses informaticos
Informe sobre Buses informaticosespejoconcavo1
 
Curso: Sistema de manufactura: 03 Buses de datos
Curso: Sistema de manufactura: 03 Buses de datosCurso: Sistema de manufactura: 03 Buses de datos
Curso: Sistema de manufactura: 03 Buses de datosJack Daniel Cáceres Meza
 
1.2.1.-Buses
1.2.1.-Buses1.2.1.-Buses
1.2.1.-BusesSpiderHal
 
Mantenimiento de computadores ranuras de buses y tarjetas de entrada
Mantenimiento de computadores ranuras de buses y tarjetas de entradaMantenimiento de computadores ranuras de buses y tarjetas de entrada
Mantenimiento de computadores ranuras de buses y tarjetas de entradaJAXMASTER1
 
Buses de un computador
Buses de un computadorBuses de un computador
Buses de un computadorMAC Cartuche
 

Similar a Buses de interconexión (20)

Buses de arquitectura
Buses de arquitecturaBuses de arquitectura
Buses de arquitectura
 
U3 - Perspectiva de alto nivel del funcionamiento y de las interconexiones de...
U3 - Perspectiva de alto nivel del funcionamiento y de las interconexiones de...U3 - Perspectiva de alto nivel del funcionamiento y de las interconexiones de...
U3 - Perspectiva de alto nivel del funcionamiento y de las interconexiones de...
 
Buses isa
Buses isaBuses isa
Buses isa
 
Buses
BusesBuses
Buses
 
Exposicion de buses
Exposicion de busesExposicion de buses
Exposicion de buses
 
Practica de buses
Practica de busesPractica de buses
Practica de buses
 
Practica de buses
Practica de busesPractica de buses
Practica de buses
 
Buses
BusesBuses
Buses
 
PRACTICA DE BUSES
PRACTICA DE BUSESPRACTICA DE BUSES
PRACTICA DE BUSES
 
Bus de datos, dirección y control
Bus de datos, dirección y controlBus de datos, dirección y control
Bus de datos, dirección y control
 
Transferencia de datos (buses)
Transferencia de datos (buses)Transferencia de datos (buses)
Transferencia de datos (buses)
 
Buses normalizados
Buses normalizadosBuses normalizados
Buses normalizados
 
Informe de TIC
Informe de TICInforme de TIC
Informe de TIC
 
Informe sobre Buses informaticos
Informe sobre Buses informaticosInforme sobre Buses informaticos
Informe sobre Buses informaticos
 
BUSES DE DATOS
BUSES DE DATOS BUSES DE DATOS
BUSES DE DATOS
 
Curso: Sistema de manufactura: 03 Buses de datos
Curso: Sistema de manufactura: 03 Buses de datosCurso: Sistema de manufactura: 03 Buses de datos
Curso: Sistema de manufactura: 03 Buses de datos
 
Sintesis arquitectura
Sintesis arquitecturaSintesis arquitectura
Sintesis arquitectura
 
1.2.1.-Buses
1.2.1.-Buses1.2.1.-Buses
1.2.1.-Buses
 
Mantenimiento de computadores ranuras de buses y tarjetas de entrada
Mantenimiento de computadores ranuras de buses y tarjetas de entradaMantenimiento de computadores ranuras de buses y tarjetas de entrada
Mantenimiento de computadores ranuras de buses y tarjetas de entrada
 
Buses de un computador
Buses de un computadorBuses de un computador
Buses de un computador
 

Último

Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Baker Publishing Company
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleJonathanCovena1
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxAna Fernandez
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPELaura Chacón
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzprofefilete
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdfOswaldoGonzalezCruz
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxjosetrinidadchavez
 
Flores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaFlores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaJuan Carlos Fonseca Mata
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...JAVIER SOLIS NOYOLA
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadAlejandrino Halire Ccahuana
 

Último (20)

Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...Análisis de la Implementación de los Servicios Locales de Educación Pública p...
Análisis de la Implementación de los Servicios Locales de Educación Pública p...
 
Introducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo SostenibleIntroducción:Los objetivos de Desarrollo Sostenible
Introducción:Los objetivos de Desarrollo Sostenible
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
RETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docxRETO MES DE ABRIL .............................docx
RETO MES DE ABRIL .............................docx
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPE
 
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyzel CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
el CTE 6 DOCENTES 2 2023-2024abcdefghijoklmnñopqrstuvwxyz
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
Repaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia GeneralRepaso Pruebas CRECE PR 2024. Ciencia General
Repaso Pruebas CRECE PR 2024. Ciencia General
 
Power Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptxPower Point: "Defendamos la verdad".pptx
Power Point: "Defendamos la verdad".pptx
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptxOLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
OLIMPIADA DEL CONOCIMIENTO INFANTIL 2024.pptx
 
Flores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - BotánicaFlores Nacionales de América Latina - Botánica
Flores Nacionales de América Latina - Botánica
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
LA ECUACIÓN DEL NÚMERO PI EN LOS JUEGOS OLÍMPICOS DE PARÍS. Por JAVIER SOLIS ...
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
Unidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDIUnidad 4 | Teorías de las Comunicación | MCDI
Unidad 4 | Teorías de las Comunicación | MCDI
 
Lecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdadLecciones 04 Esc. Sabática. Defendamos la verdad
Lecciones 04 Esc. Sabática. Defendamos la verdad
 

Buses de interconexión

  • 1. Autor: Bravo Cordova VeKIN Xiomara Gmail: xiomileo20@gmail.com Buses de interconexiónBuses de interconexión
  • 2. 2 Estructura del temaEstructura del tema  Introducción  Generalidades: el bus del sistema  Estructura  Jerarquías de buses múltiples  Elementos de diseño de un bus  Estudio de caso: el bus PCI  Estructura  Órdenes  Transferencia de datos  Arbitraje
  • 3. 3 BusesBuses  Un bus es un camino de comunicación compartido entre dos o más dispositivos  Cualquier señal transmitida estará disponible para todos los demás dispositivos  Sólo un dispositivo puede transmitir en un momento dado  Si dos dispositivos transmiten al mismo tiempo, sus señales se solaparán y, probablemente, se distorsionarán  Los dispositivos deben obtener el control del bus antes de poder utilizarlo para transferir información [STALLINGS 3.4]
  • 4. 4 Líneas de comunicaciónLíneas de comunicación  Un bus suele estar formado por varias líneas de comunicación  Cada línea tiene un significado o función particular  Físicamente, las líneas de comunicación no son sino un conjunto de conductores eléctricos  Cada línea transmite señales digitales binarias (0,1)  Se puede transmitir una secuencia de dígitos binarios a través de una única línea durante un intervalo de tiempo  Se pueden utilizar varias líneas del bus para transmitir dígitos binarios simultáneamente en paralelo [STALLINGS 3.4]
  • 5. 5 Estructura del temaEstructura del tema  Introducción  Generalidades: el bus del sistema  Estructura  Jerarquías de buses múltiples  Elementos de diseño de un bus  Estudio de caso: el bus PCI  Estructura  Órdenes  Transferencia de datos  Arbitraje
  • 6. 6 El bus del sistemaEl bus del sistema  Los computadores poseen diferentes tipos de buses que proporcionan comunicación a distintos niveles entre sus componentes  El bus que conecta los componentes principales del computador (procesador, memoria y E/S) es el llamado bus del sistema [STALLINGS 3.4]
  • 7. 7 Estructura del temaEstructura del tema  Introducción  Generalidades: el bus del sistema  Estructura  Jerarquías de buses múltiples  Elementos de diseño de un bus  Estudio de caso: el bus PCI  Estructura  Órdenes  Transferencia de datos  Arbitraje
  • 8. 8 Estructura del bus del sistemaEstructura del bus del sistema  Aunque existen diseños muy diversos, las líneas que forman el bus del sistema pueden clasificarse en tres grupos funcionales: datos, dirección y control  También pueden existir líneas de alimentación para suministrar energía a los módulos conectados al bus [STALLINGS 3.4]
  • 9. 9 Líneas de datosLíneas de datos  Las líneas de datos proporcionan un camino para transmitir datos entre los módulos del sistema  El conjunto de las líneas de datos suele denominarse bus de datos  Se suele hablar de “anchura del bus” para referirse al número de líneas de datos  La anchura del bus de datos es un factor clave para determinar el rendimiento de un sistema ▫ Cada línea puede transportar un único bit cada vez ▫ La anchura del bus determina cuantos bits se puden transmitir de forma simultánea y, por tanto, la velocidad de transferencia [STALLINGS 3.4]
  • 10. 10 Líneas de direcciónLíneas de dirección  Las líneas de dirección se utilizan para designar la fuente o el destino del dato situado en el bus de datos  Posición de memoria  Dispositivo de E/S  La anchura del bus de direcciones determina el tamaño máximo del espacio de direcciones del sistema  Cuando la E/S está asignada en memoria, el espacio de direcciones se comparte entre memoria y E/S  Cuando la E/S está aislada de memoria, los espacios de direcciones están separados y tienen el mismo tamaño máximo [STALLINGS 3.4] [STALLINGS 7.3]
  • 11. 11 Líneas de controlLíneas de control  Dado que las líneas de datos y direcciones son compartidas por todos los dispositivos conectados al bus, debe existir alguna forma de controlar su uso  El propósito de las líneas de control es:  Determinar quien accede a las líneas de datos y direcciones  Gestionar el uso que se hace de esas líneas ▫ Transmitir órdenes que especifican las operaciones a realizar ▫ Transmitir información de temporización que indica la validez de los datos y direcciones [STALLINGS 3.4]
  • 12. 12 Algunas líneas de control típicasAlgunas líneas de control típicas  Escritura en memoria: hace que el dato presente en el bus se escriba en la posición direccionada  Lectura de memoria: hace que el dato de la posición direccionada se sitúe en el bus  Escritura de E/S: hace que el dato presente en el bus se transfiera a través del puerto de E/S direccionado  Lectura de E/S: hace que el dato presente en el puerto de E/S direccionado se sitúe en el bus  Transferencia reconocida: indica a un dispositivo que el dato que envió ha sido aceptado o que el dato que desea está disponible en el bus [STALLINGS 3.4]
  • 13. 13 Algunas líneas de control típicasAlgunas líneas de control típicas  Petición de bus: indica que un dispositivo necesita disponer del control del bus  Cesión de bus: indica que se cede el control del bus a un dispositivo que lo había solicitado  Petición de interrupción: indica que hay una interrupción pendiente  Interrupción reconocida: señala que la interrupción pendiente ha sido aceptada  Reloj: se utiliza para sincronizar operaciones  Reinicio: devuelve los dispositivos conectados a su estado inicial [STALLINGS 3.4]
  • 14. 14 Estructura físicaEstructura física  El bus del sistema se extiende a traves de todos los componentes del sistema, cada uno de los cuales se conecta a algunas o a todas las líneas del bus  Una organización clásica consiste en una distribución longitudinal a lo largo de la que se distribuyen ranuras de conexión (slots) a intervalos regulares [STALLINGS 3.4]
  • 15. 15 Estructura físicaEstructura física  El sistema completo se introduce dentro de un chasis que también contiene la fuente de alimentación, algunos dispositivos periféricos, etc…  Cada uno de los componentes principales del sistema ocupa una o varias tarjetas que se conectan al bus a través de las ranuras de conexión [STALLINGS 3.4]
  • 16. 16 Estructura físicaEstructura física  Esta disposición es muy práctica porque permite expandir el sistema añadiendo nuevas tarjetas o actualizarlo/repararlo sustituyendo tarjetas  No obstante, los sistemas actuales tienden a tener sus componentes principales en una misma tarjeta  El procesador, la memoria caché y el bus que los comunica se integran en un único componente  La memoria y otros dispositivos siguen estando en tarjetas separadas que se comunican con el procesador por medio del bus del sistema [STALLINGS 3.4]
  • 17. 17 Estructura del temaEstructura del tema  Introducción  Generalidades: el bus del sistema  Estructura del bus  Jerarquías de buses múltiples  Elementos de diseño de un bus  Estudio de caso: el bus PCI  Estructura  Órdenes  Transferencia de datos  Arbitraje
  • 18. 18 Inconvenientes de tener un bus únicoInconvenientes de tener un bus único  El rendimiento de un bus puede disminuir si se conecta un gran número de dispositivos  A más dispositivos conectados, mayor retardo de propagación ▫ Los dispositivos tardarán más en coordinarse para usar el bus ▫ Si el control del bus pasa con frecuencia de un dispositivo a otro, los retardos afectarán al rendimiento  Entre más peticiones reciba el bus, más probable será que se cruce la barrera de su capacidad máxima, convirtiéndose el bus en un cuello de botella ▫ Puede resolverse usando buses más rápidos y/o más anchos ▫ La velocidad y la anchura tienen límites físicos, mientras que la velocidad de transferencia que necesitan los dispositivos conectados al bus se está incrementando rápidamente [STALLINGS 3.4]
  • 19. 19 Jerarquía de busesJerarquía de buses  El bus único está destinado a dejar de utilizarse  La mayoría de los computadores utilizan varios buses organizados de forma jerárquica [STALLINGS 3.4]
  • 20. 20 Jerarquía de busesJerarquía de buses  El procesador se conecta con la memoria caché por medio de un bus local al que también pueden conectarse dispositivos de E/S locales [STALLINGS 3.4]
  • 21. 21 Jerarquía de busesJerarquía de buses  El controlador de la memoria caché se conecta tanto al bus local como al bus del sistema, donde se encuentran los distintos módulos de la memoria principal [STALLINGS 3.4]
  • 22. 22 Jerarquía de busesJerarquía de buses  Los controladores de E/S se pueden conectar directamente al bus del sistema  Las transferencias entre la memoria y la E/S no interferirán en la actividad del procesador [STALLINGS 3.4]
  • 23. 23 Jerarquía de busesJerarquía de buses  Es más eficiente conectar los controladores de E/S a un bus de expansión  Su interfaz regula las transferencias de datos entre los controladores E/S conectados a él y el bus del sistema [STALLINGS 3.4]
  • 24. 24 Jerarquía de busesJerarquía de buses  El bus de expansión permite:  Conectar una amplia variedad de dispositivos de E/S  Aislar el tráfico de información Memoria  Procesador del tráfico correspondiente a la E/S [STALLINGS 3.4]
  • 25. 25 Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento  La jerarquía de buses tradicional es razonablemente eficiente, pero no consigue adaptarse al continuo aumento del rendimiento de los dispositivos de E/S  La respuesta a este problema consiste en utilizar un bus de alta velocidad  Estrechamente integrado al resto del sistema  Sólo se requiere un adaptador (bridge) entre el bus del procesador y el bus de alta velocidad  Esta arquitectura recibe el nombre de “arquitectura de entreplanta” [STALLINGS 3.4]
  • 26. 26 Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento  El procesador se conecta por medio de un bus local al controlador de la memoria caché  El controlador de la memoria caché se conecta a su vez al bus del sistema donde está la memoria principal [STALLINGS 3.4]
  • 27. 27 Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento  El controlador de la memoria caché está integrado junto con el adaptador o dispositivo de acoplo que permite la conexión con el bus de alta velocidad [STALLINGS 3.4]
  • 28. 28 Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento  El bus de alta velocidad se utiliza para conectar los controladores de E/S rápidos que así lo necesiten  Los más lentos pueden conectarse al bus de expansión, que usa una interfaz para adaptar el tráfico que circula [STALLINGS 3.4]
  • 29. 29 Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento  La ventaja de esta organización es que el bus de alta velocidad acerca al procesador los dispositivos que exigen un rendimiento elevado pero, al mismo tiempo, es independiente del procesador [STALLINGS 3.4]
  • 30. 30 Jerarquía de buses de alto rendimientoJerarquía de buses de alto rendimiento  Los adaptadores e interfaces tratan con las diferencias de velocidad y de definición de líneas de los buses  Los cambios realizados en una parte de la arquitectura no afectan a las demás partes [STALLINGS 3.4]
  • 31. 31 Estructura del temaEstructura del tema  Introducción  Generalidades: el bus del sistema  Estructura del bus  Jerarquías de buses múltiples  Elementos de diseño de un bus  Estudio de caso: el bus PCI  Estructura  Órdenes  Transferencia de datos  Arbitraje
  • 32. 32 Elementos de diseño de un busElementos de diseño de un bus  Existe una gran variedad de diseños de buses pero, en general, hay unos pocos elementos comunes de diseño que permiten clasificarlos y distinguirlos unos de otros [STALLINGS 3.4]
  • 33. 33 Tipos de busesTipos de buses  Las líneas de bus se pueden dividir en dos tipos genéricos:  Dedicadas: están permanentemente asignadas a una función o a un conjunto de componentes del computador ▫ Un ejemplo típico de dedicación funcional es el uso de líneas separadas para direcciones y datos  Multiplexadas: pueden utilizarse para propósitos diferentes ▫ Direcciones y datos podrían transmitirse por la misma línea si se utilizara una señal de control “Dirección Válida” ▫ Se pone la dirección en el bus y se activa la línea de control, dando un tiempo para que los distintos controladores lean el bus y comprueben si están siendo direccionados ▫ Después de un periodo de tiempo se quita la dirección del bus y se utilizan las mimas líneas para realizar la transferencia [STALLINGS 3.4]
  • 34. 34 Tipos de busesTipos de buses  La dedicación física requiere el uso de múltiples buses, cada uno de los cuales conecta solo a un conjunto de controladores  Ventaja: alto rendimiento por el menor número de conflictos  Desventaja: incremento del costo y el tamaño del sistema  El multiplexado en el tiempo de las líneas permite utilizar las mismas líneas para usos diferentes  Ventaja: normalmente ahorra espacio y costes  Desventajas: ▫ Los controladores necesitarán una circuitería más compleja ▫ La falta de paralelismo puede reducir el rendimiento [STALLINGS 3.4]
  • 35. 35 Método de arbitrajeMétodo de arbitraje  En un momento dado puede haber más de un controlador intentando usar el bus, pero sólo uno de ellos puede obtener el control y usarlo para transmitir  Es necesario disponer de un método de arbitraje que determine quién utiliza el bus  En general, los diversos métodos de arbitraje se pueden clasificar en:  Centralizados  Distribuidos [STALLINGS 3.4]
  • 36. 36 Método de arbitrajeMétodo de arbitraje  El objetivo de ambos métodos de arbitraje es designar un dispositivo como “maestro del bus”, el cual iniciará una transferencia hacia otro dispositivo (esclavo)  En un esquema centralizado hay un único dispositivo físico llamado controlador de bus o árbitro  El árbitro es el responsable de asignar tiempos en el bus  Puede ser un módulo separado o parte del propio procesador  En un esquema distribuido no existe un árbitro central  Cada módulo dispone de lógica para controlar el acceso  Los módulos actúan conjuntamente para compartir el bus [STALLINGS 3.4]
  • 37. 37 TemporizaciónTemporización  El término temporización hace referencia a la forma en la que se coordinan los eventos en el bus  Con temporización síncrona, la presencia de un evento en el bus está determinada por una señal de reloj ▫ El reloj es una línea del bus a través de la que se transmite una secuencia de 1s y 0s a intervalos regulares de igual duración ▫ El ciclo de reloj o de bus es el intervalo mínimo en el que la señal toma los dos valores posibles y define la unidad de medida del tiempo dentro del bus (time slot) ▫ Todos los eventos empiezan al principio del ciclo de bus  Con temporización asíncrona, la presencia de un evento en el bus es consecuencia y depende de que se produzca un evento previo [STALLINGS 3.4]
  • 38. 38 TemporizaciónTemporización  La temporización síncrona es más fácil de implementar y comprobar  Sin embargo, la temporización síncrona es menos flexible debido a que todos los dispositivos conectados al bus deben operar a la misma frecuencia de reloj y, por tanto, no siempre se aprovecharán sus posibilidades  La temporización asíncrona permite que una mezcla de dispositivos rápidos y lentos, construidos con distintas tecnologías, compartan un mismo bus [STALLINGS 3.4]
  • 40. 40 Temporización asíncrona: lecturaTemporización asíncrona: lectura [STALLINGS 3.4]
  • 41. 41 Temporización asíncrona: escrituraTemporización asíncrona: escritura [STALLINGS 3.4]
  • 42. 42 Anchura del busAnchura del bus  La anchura de un bus es el número de líneas distintas que lo componen  La anchura del bus afecta tanto a la capacidad como al rendimiento del sistema  Cuanto más ancho es el bus de datos, mayor es el número de bits que se transmiten a la vez y, por tanto, mayor es el rendimiento del sistema  Cuanto más ancho es el bus de direcciones, mayor es el rango de posiciones a las que se puede hacer referencia y, por tanto, mayor es la capacidad máxima del sistema [STALLINGS 3.4]
  • 43. 43 Tipos de transferencia de datosTipos de transferencia de datos  Un bus permite varios tipos de transferencias de datos  Todos los buses permiten transferencias de lectura y escritura ▫ Transferencias de lectura: esclavo  maestro ▫ Transferencias de escritura: maestro  esclavo  En el caso de un bus multiplexado, primero se especifica la dirección y luego se transmite el dato ▫ Las lecturas implican esperar la respuesta del esclavo ▫ Tanto en lecturas como en escrituras pueden aparecer retardos adicionales si es necesario tomar el control del bus dos veces por medio de un procedimiento de arbitraje [STALLINGS 3.4]
  • 44. 44 Tipos de transferencia de datosTipos de transferencia de datos  Un bus permite varios tipos de transferencias de datos  Todos los buses permiten transferencias de lectura y escritura ▫ Transferencias de lectura: esclavo  maestro ▫ Transferencias de escritura: maestro  esclavo  En el caso de líneas dedicadas, la dirección se sitúa en el bus de direcciones y se mantiene ahí mientras que el dato se ubica en el bus de datos ▫ En una escritura, el maestro pone el dato tan pronto se estabiliza la dirección y el esclavo ha podido reconocerla ▫ En una lectura, el esclavo pone el dato tan pronto como haya reconocido la dirección y disponga del mismo [STALLINGS 3.4]
  • 45. 45 Tipos de transferencia de datosTipos de transferencia de datos  Algunos buses permiten operaciones combinadas  Una lectura-modificación-escritura es una lectura seguida inmediatamente de una escritura en la misma dirección ▫ La dirección se proporciona una sola vez al comienzo de la operación ▫ La operación se considera indivisible para evitar el acceso al dato por parte de otros maestros del bus (protección de memoria compartida) [STALLINGS 3.4]
  • 46. 46 Tipos de transferencia de datosTipos de transferencia de datos  Algunos buses permiten operaciones combinadas  Una lectura-después-de-escritura consiste en una escritura seguida de una lectura en la misma dirección ▫ También es una operación indivisible ▫ La lectura puede tener el propósito de comprobar el resultado [STALLINGS 3.4]
  • 47. 47 Tipos de transferencia de datosTipos de transferencia de datos  Algunos buses permiten transferencias de bloques de datos  Hay un ciclo de dirección y luego varios ciclos de datos  El primer dato se transmite a/desde la dirección especificada, mientras que el resto de datos se transfieren a/desde las direcciones siguientes [STALLINGS 3.4]
  • 48. 48 Estructura del temaEstructura del tema  Introducción  Generalidades: el bus del sistema  Estructura del bus  Jerarquías de buses múltiples  Elementos de diseño de un bus  Estudio de caso: el bus PCI  Estructura  Órdenes  Transferencia de datos  Arbitraje
  • 49. 49 El bus PCIEl bus PCI [STALLINGS 3.5]  El bus PCI (Peripheral Component Interconnect) es un bus muy popular de ancho de banda elevado e independiente del procesador  Está diseñado para permitir una cierta variedad de configuraciones basadas en sistemas monoprocesador y sistemas multiprocesador  Proporciona un conjunto de funciones de uso general  Las direcciones y datos están multiplexadas en el tiempo  El esquema de arbitraje empleado es centralizado  Utiliza temporización síncrona
  • 50. 50 El bus PCIEl bus PCI [STALLINGS 3.5]  El diseño del bus PCI se ha realizado específicamente para ajustarse a los requisitos de E/S de los sistemas actuales  Podemos distinguir tres ventajas del bus PCI  Es económico: se implementa con muy pocos circuitos  Es flexible: permite que otros buses se conecten a él  Es rápido: comparado con otras especificaciones comunes de bus, proporciona un mejor rendimiento para los subsistemas de E/S de alta velocidad ▫ Puede utilizarse como bus de periféricos ▫ También puede utilizarse para una arquitectura de entreplanta
  • 51. 51 El bus PCIEl bus PCI [STALLINGS 3.5]  Las especificaciones del bus PCI son de dominio público  Son respetadas por un amplio abanico de fabricantes de procesadores y periféricos, por lo que los productos de diferentes compañías son compatibles  La asociación PCI SIG (special interest group) continúa el desarrollo de las especificaciones y vela por que se mantenga la compatibilidad  El resultado ha sido que el bus PCI no solo está ampliamente adoptado en la actualidad sino que su uso se sigue extendiendo
  • 52. 52 PCI en sistemas monoprocesadorPCI en sistemas monoprocesador [STALLINGS 3.5]  Un dispositivo integra el controlador de memoria y el adaptador al bus PCI  Proporciona el acoplamiento al procesador (buffer temporal)  Aísla la capacidad de E/S del procesador de la velocidad real del bus, lo que posibilita transmitir datos a alta velocidad
  • 53. 53 PCI en sistemas multiprocesadorPCI en sistemas multiprocesador [STALLINGS 3.5]  Se pueden conectar una o varias configuraciones PCI al bus del sistema por medio de adaptadores  Al bus del sistema sólo se conectan las unidades procesador/caché, la memoria principal y los adaptadores  Los adaptadores mantienen la independencia procesador-PCI
  • 54. 54 Estructura del temaEstructura del tema  Introducción  Generalidades: el bus del sistema  Estructura del bus  Jerarquías de buses múltiples  Elementos de diseño de un bus  Estudio de caso: el bus PCI  Estructura  Órdenes  Transferencia de datos  Arbitraje
  • 55. 55 Estructura del bus PCIEstructura del bus PCI [STALLINGS 3.5]  El estándar actual permite configurar el bus PCI como un bus de 32 ó 64 bits  Hay 49 líneas de señal obligatorias que se dividen en los siguientes grupos funcionales: ▫ Terminales de sistema: reloj y reinicio ▫ Terminales de direcciones y datos ▪ 32 líneas para direcciones y datos multiplexadas en el tiempo ▪ Líneas adicionales para interpretar y validar las direcciones y datos ▫ Terminales de control de interfaz: controlan la temporización de las transferencias y permiten la coordinación entre emisor y receptor ▫ Terminales de arbitraje: no son líneas compartidas – cada maestro tiene su propio par de líneas que lo conectan con el árbitro del bus ▫ Terminales para señales de error: utilizadas para indicar errores (paridad…)
  • 56. 56 Estructura del bus PCIEstructura del bus PCI [STALLINGS 3.5]
  • 57. 57 Estructura del bus PCIEstructura del bus PCI [STALLINGS 3.5]
  • 58. 58 Estructura del bus PCIEstructura del bus PCI [STALLINGS 3.5]
  • 59. 59 Estructura del bus PCIEstructura del bus PCI [STALLINGS 3.5]  El estándar actual permite configurar el bus PCI como un bus de 32 ó 64 bits  La especificación también define 51 señales opcionales que se dividen en los siguientes grupos funcionales: ▫ Terminales de interrupción: no son líneas compartidas – cada dispositivo tiene sus propias líneas para generar peticiones a un controlador de interrupciones ▫ Terminales de soporte de caché: necesarios para permitir memorias caché en el bus asociadas a un procesador o a otro dispositivo ▫ Terminales de ampliación a bus de 64 bits ▪ 32 líneas para direcciones y datos multiplexadas en el tiempo que se pueden combinar con las obligatorias para tener un total de 64 ▪ Líneas adicionales para interpretar y validar las direcciones y datos, así como para permitir que dos dispositivos acuerden el uso de los 64 bits ▫ Terminales de test: siguen estándar IEEE para procedimientos de test
  • 60. 60 Estructura del bus PCIEstructura del bus PCI [STALLINGS 3.5]
  • 61. 61 Estructura del bus PCIEstructura del bus PCI [STALLINGS 3.5]
  • 62. 62 Estructura del temaEstructura del tema  Introducción  Generalidades: el bus del sistema  Estructura del bus  Jerarquías de buses múltiples  Elementos de diseño de un bus  Estudio de caso: el bus PCI  Estructura  Órdenes  Transferencia de datos  Arbitraje
  • 63. 63 Órdenes del bus PCIÓrdenes del bus PCI [STALLINGS 3.5]  La actividad del bus consiste en transferencias entre dispositivos conectados al bus  El dispositivo que inicia la transferencia es el maestro  Cuando el maestro adquiere el control del bus determina el tipo de transferencia que se realizará (líneas C/BE)  Los tipos de órdenes son:  Reconocimiento de interrupción ▫ Orden de lectura generada por el controlador de interrupciones del bus ▫ Las líneas de dirección no se utilizan para direccionar el dispositivo ▫ Las líneas de byte activo (byte enable) indican el tamaño del identificador de interrupción a devolver
  • 64. 64 Órdenes del bus PCIÓrdenes del bus PCI [STALLINGS 3.5]  Los tipos de órdenes son:  Ciclo especial: se utiliza para iniciar la difusión de un mensaje a uno o más destinatarios  Ciclo de dirección dual: el maestro utiliza esta orden para indicar que la transferencia utiliza direcciones de 64 bits  Lectura de E/S y Escritura de E/S ▫ Se utilizan para intercambiar datos entre el maestro y un controlador de E/S ▫ Cada dispositivo de E/S tiene su propio espacio de direcciones ▫ Las líneas de direcciones se utilizan para indicar un dispositivo concreto y para especificar los datos a transferir a/desde ese dispositivo
  • 65. 65 Órdenes del bus PCIÓrdenes del bus PCI [STALLINGS 3.5]  Los tipos de órdenes son:  Lectura de memoria ▫ Se utiliza para especificar la transferencia de una secuencia de datos desde memoria durante uno o más ciclos de reloj ▫ Si el controlador de memoria utiliza el protocolo PCI para las transferencias entre la caché y la memoria principal, la transferencia se realizará en términos de líneas de caché ▫ Hay tres órdenes de lectura de memoria distintas:
  • 66. 66 Órdenes del bus PCIÓrdenes del bus PCI [STALLINGS 3.5]  Los tipos de órdenes son:  Escritura en memoria ▫ Se usa para transferir datos a memoria durante uno o más ciclos del bus ▫ Hay dos órdenes de escritura en memoria distintas ▪ Escritura en memoria ▪ Escritura e invalidación de memoria • Transfiere datos e indica que al menos se ha escrito una línea de caché • Permite el funcionamiento de una caché write back (postescritura)  Lectura de configuración y Escritura de configuración ▫ Permiten que el maestro lea y actualice los parámetros de configuración de un dispositivo conectado al bus ▫ Cada dispositivo puede disponer de hasta 256 registros internos que permitan configurarlo
  • 67. 67 Estructura del temaEstructura del tema  Introducción  Generalidades: el bus del sistema  Estructura del bus  Jerarquías de buses múltiples  Elementos de diseño de un bus  Estudio de caso: el bus PCI  Estructura  Órdenes  Transferencia de datos  Arbitraje
  • 68. 68 Transferencias de datos en el bus PCITransferencias de datos en el bus PCI [STALLINGS 3.5]  Toda transferencia de datos en un bus PCI es una transacción única que consta de una fase de direccionamiento y una o más fases de datos  Como ejemplo veremos la temporización de una operación de lectura típica (la de escritura es análoga)  Los dispositivos conectados al bus interpretan las líneas en los flancos de subida de la señal de reloj (comienzo del ciclo)  Todos los eventos se sincronizan en los flancos de bajada de la señal de reloj (punto medio del ciclo)
  • 69. 69 Transferencias de datos en el bus PCITransferencias de datos en el bus PCI [STALLINGS 3.5]
  • 70. 70 Transferencias de datos en el bus PCITransferencias de datos en el bus PCI [STALLINGS 3.5] a. Una vez que el maestro del bus tiene el control del mismo inicia la transacción ▫ Sitúa la dirección de inicio en las líneas AD y la orden de lectura en las líneas C/BE ▫ Activa la señal FRAME, la cual debe permanecer activa hasta que el maestro esté listo para terminar la última fase de datos b. Al comienzo del segundo ciclo de reloj, el dispositivo del que se lee reconocerá su dirección en las líneas AD c. El maestro deja libres las líneas AD ▫ En todas las líneas que pueden ser activadas por más de un dispositivo se necesita un ciclo de cambio para que la liberación se complete y el bus pueda ser utilizado por el dispositivo ▫ El maestro cambia las líneas C/BE para indicar cuáles de las líneas AD se utilizarán para transferir el dato ▫ El maestro activa IRDY indicando que está listo para recibir el primer dato
  • 71. 71 Transferencias de datos en el bus PCITransferencias de datos en el bus PCI [STALLINGS 3.5] d. El dispositivo de lectura se prepara para responder ▫ Activa DEVSEL para indicar que ha reconocido la dirección y va a responder; la señal permanecerá activa mientras dure la transferencia ▫ Sitúa el dato solicitado en las líneas AD ▫ Activa TRDY para indicar que hay un dato válido en el bus e. El maestro lee el dato al comienzo del cuarto ciclo de reloj y cambia las líneas de habilitación de byte según se necesite para la próxima lectura f. En este ejemplo, el dispositivo de lectura necesita algún tiempo para preparar el segundo bloque de datos ▫ Desactiva TRDY para indicar que no transmitirá el próximo ciclo ▫ El maestro, en consecuencia, no lee las líneas de datos al comienzo del quinto ciclo de reloj y no cambia la señal de habilitación de byte ▫ El nuevo bloque de datos se leerá al comienzo del sexto ciclo
  • 72. 72 Transferencias de datos en el bus PCITransferencias de datos en el bus PCI [STALLINGS 3.5] g. Durante el sexto ciclo de reloj, el dispositivo de lectura sitúa el tercer bloque de datos en el bus, pero el maestro no está preparado para leerlo ▫ El maestro desactiva IRDY ▫ El dispositivo de lectura mantiene el dato en el bus durante un ciclo extra g. El maestro sabe que el tercer bloque de datos es el último, ▫ Desactiva FRAME para indicarle al dispositivo de lectura que éste es el último dato a transferir ▫ Activa IRDY para indica que está listo para completar la transferencia g. El maestro desactiva IRDY y el dispositivo de lectura contesta desactivando TRDY y DEVSEL: el bus vuelve a estar libre
  • 73. 73 Estructura del temaEstructura del tema  Introducción  Generalidades: el bus del sistema  Estructura del bus  Jerarquías de buses múltiples  Elementos de diseño de un bus  Estudio de caso: el bus PCI  Estructura  Órdenes  Transferencia de datos  Arbitraje
  • 74. 74 Arbitraje del bus PCIArbitraje del bus PCI [STALLINGS 3.5]  El bus PCI utiliza un esquema de arbitraje centralizado síncrono en el que cada maestro tiene una única señal de petición (REQ) y cesión (GNT) del bus  Estas líneas se conectan a un árbitro central, lo que permite que los dispositivos accedan al bus tras un simple intercambio de señales de petición y cesión
  • 75. 75 Arbitraje del bus PCIArbitraje del bus PCI [STALLINGS 3.5]  La especificación del bus PCI no indica un algoritmo particular de arbitraje  El árbitro puede utilizar cualquier esquema de prioridad ▫ Primero en llegar, primero en servirse ▫ Rotatorio (round robin) ▫ …  El maestro establece, para cada transferencia que desee realizar, si tras la fase de dirección sigue una o más fases de datos consecutivas  Como ejemplo veremos el intercambio de señales necesario para decidir cual de entre dos dispositivos, A y B, obtiene el control del bus
  • 76. 76 Arbitraje del bus PCIArbitraje del bus PCI [STALLINGS 3.5]
  • 77. 77 Arbitraje del bus PCIArbitraje del bus PCI [STALLINGS 3.5] a. Al comienzo del primer ciclo de reloj el árbitro detecta que A ha activado su señal REQ b. Durante el primer ciclo de reloj, B activa también su señal REQ c. Al mismo tiempo, el árbitro activa GNT-A para ceder el bus a A d. A detecta al comienzo del segundo ciclo de reloj que se le ha cedido el bus ▫ IRDY y TRDY están desactivadas, por lo que el bus está libre ▫ En consecuencia activa FRAME, pone la dirección en el bus AD y la orden correspondiente en las líneas C/BE ▫ Además, mantiene activa su señal REQ porque debe realizar otra transferencia después de ésta
  • 78. 78 Arbitraje del bus PCIArbitraje del bus PCI [STALLINGS 3.5] e. Al comienzo del tercer ciclo de reloj el árbitro vuelve a comprobar las líneas REQ y decide ceder el bus a B para la siguiente transacción ▫ El árbitro desactiva GNT-A y activa GNT-B ▫ A pesar de tener acceso al bus, B tendrá que esperar a que esté libre, pues IRDY y TRDY indican que sigue ocupado e. A desactiva FRAME para indicar que su última transferencia de datos está activa ▫ Pone los datos en el bus AD y se lo indica al dispositivo destino con IRDY ▫ El dispositivo lee el dato al comienzo del siguiente ciclo de reloj e. Al comienzo del quinto ciclo de reloj, B encuentra IRDY y TRDY desactivadas ▫ Toma el control del bus activando FRAME ▫ Desactiva REQ porque no desea transmitir un segundo dato
  • 79. 79 Arbitraje del bus PCIArbitraje del bus PCI [STALLINGS 3.5]  Más adelante, el dispositivo A (que mantenía REQ activa) recuperará el control del bus y continuará la transmisión pendiente  Es importante destacar que el arbitraje se produce al mismo tiempo que el actual maestro del bus realiza una transferencia  No se pierden ciclos de bus para realizar el arbitraje  Esto se conoce como arbitraje oculto o solapado (hidden arbitration)
  • 80. 80 BibliografíaBibliografía [STALLINGS] Organización y arquitectura de computadores William Stallings Pearson Education – Prentice Hall, 2005 (7ª edición)