arquitectura de computadoras

213
Ing. Miguel CAMARENA INGARUCA ARQUITECTURA DE COMPUTADORAS CATEDRÁTICO: PRESENTADO POR : ACUÑA TENORIO, Mario CASTILLON POMA, Darwin LANDEO RIVERA Daniel LAURA HUAROC, Kenil OSORES RAMOS, Jimmy

Upload: jimmy-osores

Post on 01-Jun-2015

5.934 views

Category:

Technology


4 download

DESCRIPTION

La tecnología de computadores ha progresado increíblemente en los últimoscincuenta años.

TRANSCRIPT

Page 1: ARQUITECTURA DE COMPUTADORAS

Ing. Miguel CAMARENA INGARUCA

ARQUITECTURA DE COMPUTADORAS

CATEDRÁTICO:

PRESENTADO POR :

ACUÑA TENORIO, MarioCASTILLON POMA, DarwinLANDEO RIVERA Daniel LAURA HUAROC, KenilOSORES RAMOS, Jimmy

Page 2: ARQUITECTURA DE COMPUTADORAS

TEMA 1:

La Norma de Conexión

RS 232

Page 3: ARQUITECTURA DE COMPUTADORAS

Introducción a la norma de conexión RS 232

El modelo de conexión RS describe la forma de conectar el terminal a un módem, para la transmisión de datos en serie.

La norma RS 232 proviene de la EIA RS-232 que fue propuesta en 1969 por la Asociación de industrias Electrónicas.

DTEMode

m DCE

Modem

DCE

EQUIPO TERMINAL DE DATOS:DATA TERMINAL EQUIPMENT

DTE

RS means Recommended Standard

Page 4: ARQUITECTURA DE COMPUTADORAS

Introducción a la norma de conexión RS 232

Aunque la norma se estableció para equipos informáticos a módems, la realidad es que se esta empleando masivamente para comunicar equipos informáticos entre sí, sin la inclusión del módem. Por este motivo no se puede aplicar directamente la norma y la interpretación que da sus diferentes señales puede diferir de un fabricante a otro. Esta norma es especialmente difundida a nivel de microcomputadores

Page 5: ARQUITECTURA DE COMPUTADORAS

Especificaciones Generales

1. ESPECIFICACIÓN ELÉCTRICA:

En la figura se muestra circuitos equivalente de emisores y receptores, que se aplican a todas las señales que componen la norma.

+15V a +3V Nivel bajo

-15V a -3V Nivel alto

V0

C0

R0(3000−7000Ω)

EMISOR RECEPTOR

CL

(¿2500 pF)

RL (3000−7000Ω)

EL>(2V )

Page 6: ARQUITECTURA DE COMPUTADORAS

Especificaciones Generales

2. ESPECIFICACIÓN LÓGICA

La norma RS-232-C contempla 25 señales, de la cuales se puede emplear menos de 10. las más importantes son:

Pata 2 Transmisión de datos de DTE a DCE.

Pata 3 Trasmisión de datos de DCE a DTE.

Pata 20 DTR, el equipo DTE está en estado operativo.

Pata 6 DSR, el equipo DCE está en estado operativo.

Pata 4 RTS, petición de DTE para iniciar el envio.

Pata 5 CTS, DCE está dispuesto a recibir.

Pata 8 DCD, el DCE detecta portadora

Pata 7 Masa

Pata 1 Tierra de protección

Page 7: ARQUITECTURA DE COMPUTADORAS

Especificaciones GeneralesESPECIFICACIÓN LÓGICA

Conexión lógica de las señales más importantes de la norma RS-232-C

DTE

TD 2RD 3

DTR 206

RTS 45

8

7TIERRA 1

DCE

23

206 DSR

4

5 TS

8 DCD

71 TIERRA

DATOS

Ya que esta norma se utiliza para interconectar equipos directamente, el asignar a estos el tipo DTE o DCE, es totalmente arbitrario por lo que se puede ocasionar problemas a la hora de conectar equipos de diferentes fabricantes.

Page 8: ARQUITECTURA DE COMPUTADORAS

Especificaciones Generales3) ESPECIFICACIÓN MECÁNICA

Lo más habitual es usar conectores del tipo DB-25, que consta de25 patitas repartidas de la siguiente manera:

1 2 3 4 5 6 7 8 9 10 11 12 13

14 15 16 17 18 19 20 21 22 23 24 25

El conexionado puede realizarse con cables planos, hilos trenzados, o cables coaxiales según la distancia entre el emisor y el receptor.

Page 9: ARQUITECTURA DE COMPUTADORAS

Especificaciones GeneralesESPECIFICACIÓN MECÁNICA

No.pin Descripción Label1 Protective ground (shield) GND2 Transmitted data TD3 Received data RD4 Request to send RTS5 Clear to send CTS6 Data set ready (DCE Ready) DSR7 Signal ground/Common return SG8 Primary carrier detect CD9 Positive DC Test Voltage10 Negative DC Test Voltage11 Unassigned12 Secondary carrier detec13 Secondary clear to send14 Secondary transmitted data15 DCE transmission signal timing16 Secondary received data17 Receiver signal timing18 (Local Loop Back)19 Secondary request to send20 Data terminal ready (DTE Ready) DTR21 Signal quality detector (Remote lookback) CG22 Ring indicator RI23 Data signal rate selector CH/C124 DTE transmit signal timing25 Busy

Descripción de cada uno de los 25 pines, antes mencionados.

Page 10: ARQUITECTURA DE COMPUTADORAS

Método de transmisión

El método de transmisión es el que la define la transferencia elemental del bus serie.

Aunque el método de transmisión no forma parte de la norma RS-232-C, por lo general se emplea el de tipo asíncrono con formato start/stop. El envio se hace por bytes individuales. Además la información se suele codificar en ASCII.

START D0 D1 D2 D3 D4 D5 D6 D7 PARIDAD STOP 1 STOP 2

DATO

INFORMACIÓN DE UN BYTE COMPLETA

Page 11: ARQUITECTURA DE COMPUTADORAS

Método de transmisión

En la figura anterior la línea de comunicación está normalmente en estado 1, empleándose su paso a 0 como señal de comienzo del envio de un byte(START).Seguidamente se vienen los bits de datos, que pueden ser de 5 a 8.

A continuación un byte de paridad que es opcional y, finalmente uno o dos bits de STOP que avisan el fin de un byte. Si se desea enviar otro byte, se repite el proceso y en caso contrario queda la línea con nivel 1.

Page 12: ARQUITECTURA DE COMPUTADORAS

Método de transmisión

La información no se codifica para la transmisión, siendo el estado 0 o 1 de la línea, el valor directo de cada bit. Este hecho obliga a que el receptor este sincronizado con la unidad recibida, lo que se realiza con el flanco descendente del bit de START.

Ante elevadas velocidades de transmisión se utiliza el modo síncrono que esta formado por uno o dos bytes de sincronismo( en el caso del código ASCII este byte es 0010110), seguidos por los bytes de datos. La transmisión debe de ser continua por lo que el emisor deberá intercalar automáticamente, bytes de sincronismos cuando sean necesarios. El receptor ha de sincronizarse con la cadena de bits que recibe.

Page 13: ARQUITECTURA DE COMPUTADORAS

Método de transmisión Formato de la comunicación síncrona en la norma RS-232-C

SINCRONISMOSINCRONISMODATO 0 DATO 1 DATO 2 DATO 3 DATO 4

BYTES DE SINCRONISMO BYTES DE DATOS

Protocolo de comunicación

Establece la comunicación a nivel de transferencia de bloques de información. Se emplea dos técnicas

Protocolo por señales

Protocolo por códigos

Page 14: ARQUITECTURA DE COMPUTADORAS

Protocolo de comunicación

Se utilizan algunas señales de la norma RS-232-C para que los dispositivos indiquen si pueden recibir o no información.

PROTOCOLO POR SEÑALES

En este caso, la señal DTR o RTS indica que el dispositivo DTE está conectado o dispuesto, mientras que las señal DSR o CTS indica si lo está el DCE

La pareja de señales DTR/DSR, o bien, RST/CTS se suelen emplear con este fin.

Page 15: ARQUITECTURA DE COMPUTADORAS

Protocolo de comunicación

Se utilizan diversas técnicas basadas en códigos. Una de ellas utiliza los códigos XON (carácter DC1 en ASCII) y XOFF (carácter DC3 en ASCII) para que el receptor indique si puede recibir información.

PROTOCOLO POR CÓDIGOS

Se supone que el receptor está en disposición de recibir la información, por lo que el emisor comienza a enviarla. Si el receptor se aproxima a la saturación de su memoria de recepción, envía un XOFF para detener la transmisión. Una vez que ha vaciado su memoria, envía un XON para que el emisor reanude el envio de información.

El proceso es el siguiente:

DC1: DEVIDE CONTROL 1XONDC3. DEVICE CONTROL 3XOFF

Page 16: ARQUITECTURA DE COMPUTADORAS

Protocolo de comunicación

Otro protocolo por códigos muy empleado es el que utiliza los caracteres ASCII ETX y ACK.

PROTOCOLO POR CÓDIGOS

Suponiendo que esta disponible el receptor, el emisor inicia la transmisión enviando una línea de información, que finaliza en el código ETX . Una vez que el receptor ha asimilado la línea y está en disposición de recibir más información envía el código ASCII ASK, con el que informa al emisor de su situación. La máxima longitud de las líneas de información es de 80 a 132 bytes.ETX: FÍN DE TEXTO

ACK: ACKNOWLEDGEMENT

Page 17: ARQUITECTURA DE COMPUTADORAS

Diseño de una interfaz RS-232-C

La sencillez en el diseño de una interfaz RS-232-C se debe a los circuitos integrados VLSI disponibles. En concreto se puede utilizar una pastilla denominada 8251 USART, la cual:

Realiza todas las operaciones necesarias para serializar la información transformada y transformar en paralelo la que recibe.

Genera las formas de onda correspondiente a la velocidad de transmisión seleccionada y la que sincroniza la recepción.

8251 USART

Page 18: ARQUITECTURA DE COMPUTADORAS

Diseño de una interfaz RS-232-C

Diseño de una comunicación doble que sigue la norma RS-232-C DO-D7

AO-A15

IO/M

RESETRDWRCLK

INT

MICROPROCESADOR

3,07 MHz

74190

RESETRDWRCLK

5VT +RDYR∗RDYTxCR∗C

CSC /D T ∗ D

DTR  

RTS  

R∗ DDSR

CTS

USART 82581

DATOS ENVIADOS

CONTROL

DATOS ENVIADOS

CONTROL

1489

1488

G1 74138G2A

G2B

A1-A2-A3

D0-D7

A0

BUS DE DATOS

BUS DE DIRECCIONES

Page 19: ARQUITECTURA DE COMPUTADORAS

Diseño de una interfaz RS-232-C

Se usan las señales CTS, RTS, DTR y DSR para indicar el estado de los equipos conectados. Los relojes de transmisión y recepción se derivan del reloj principal del microprocesador(suponiendo que funciona a 3,702 MHz), mediante un divisor por 10. Si además, se programa al USART para que divida por 64 esta frecuencia, se obtiene la velocidad de transmisión y recepción de 48000 baudios.

Page 20: ARQUITECTURA DE COMPUTADORAS

TEMA 2:

Computadores de altas prestaciones

Page 21: ARQUITECTURA DE COMPUTADORAS

El reforzamiento del paralelismo y el aumento de la velocidad del

procesamiento

TEMA 2.1:

Page 22: ARQUITECTURA DE COMPUTADORAS

El reforzamiento del paralelismo y el aumento de la velocidad del

procesamiento

La ampliación de las áreas de aplicación de los computadores a campos que tienen que efectuar un enorme número de operaciones sobre grandes masas de datos estructurados, exigen la mejora constante de sus prestaciones.

Procesamiento de imágenes en tiempo real. Meteorología Cálculo y control de las trayectorias de los

robots.

El incremento de la potencia de las máquinas programadas no solo se consigue con la aplicación de los últimos avances , sino mejorando sus arquitectura interna y los recursos del sistema lógico.

Page 23: ARQUITECTURA DE COMPUTADORAS

El reforzamiento del paralelismo y el aumento de la velocidad del

procesamiento Estas características están motivadas por tres

causas:

NECESIDAD DE INCREMENTO CONTINUO DE LA POTENCIA DEL CALCULO:

Los monoprocesadores pueden llegar a un máximo de potencia de 1 GFLOP(mil millones de operaciones de coma flotante por segundo), considerando las limitaciones de velocidad de transmisión en el silicio.

DESFASE ENTRE LA ARQUITECTURA DE VON NEUMANN, Y LOS REQUERIMIENTOS DE LOS NUEVOS SISTEMAS LÓGICOS Y LENGUAJES.

LAS CONSIDERACIONES QUE RESPETO AL COSTE, EXISTIAN EN EL PASADO.

Debido a que la tecnología actual VLSI proporciona elementos baratos especialmente cuando se utilizan de forma repetitiva.

Page 24: ARQUITECTURA DE COMPUTADORAS

Aumento de la velocidad del procesamiento.

Para elevar la velocidad de procesamiento de los computadores, existen diferentes alternativas entre las que destacan:

1. Empleo de tecnologías más rápidas. Para poder disponer de máquinas que trabajan a más de 100 Megaflops, se precisan de memorias de tiempos de acceso de muy pocos ns. Las tecnologías basadas en el efecto de Josephson y otras consiguen retardos inferiores al ns, pero teniendo en cuenta el tiempo imprescindible para circular las señales a las distancias a las que se sitúan, los componentes de la máquina.

2. Reducir el número de niveles de puertas para realizar algoritmos, como sucede en los sumadores con acarreo anticipado.

3. Aumentar la complejidad de los circuitos combinatorios. En este aspecto se puede hacer referencia al uso del PAL, en el proceso de codificación de las instrucciones.

Page 25: ARQUITECTURA DE COMPUTADORAS

Aumento de la velocidad del procesamiento.

Otras alternativas son:

Diseño de nuevas organizaciones y estrategias de funcionamiento de las memorias. Ejemplos de esta técnica son la memoria virtual, la memoria cache y la memoria entrelazada.

Sustitución del sistema lógico por equipo físico. Se tiende a construir por circuitería ciertas funciones repetitivas que hasta ahora se realizaban por el sistema lógico.

Aumento del grado de paralelismo o concurrencia, desde el nivel e las instrucciones hasta el de los programas.

Utilización de estructuras segmentadas en las que, mientras se procesan unos datos, se capturan los próximos a procesarse, consiguiendo un mayor aprovechamiento de los componentes del sistema.

Page 26: ARQUITECTURA DE COMPUTADORAS

Aumento de la velocidad del procesamiento.

El paralelismo ha ido aumentando en la forma de operar de los sistemas, desde el tratamiento en lotes, en donde los programas se agrupaban en lotes para irlos realizando uno tras otro.

MULTIPROCESAMIENTO: Donde se ejecutan varios programas simultáneamente, usando sistemas dotados de varios procesadores.

Otras técnicas:

Tiempo Compartido: Diversos procesos compartían la UCP.

Multiprogramación: Ejecuta en forma concurrente varios programas residentes en la memorias principal.

Page 27: ARQUITECTURA DE COMPUTADORAS

La potenciación del paralelismo se puede dirigir hacia el grado de concurrencia de los procesos, que puede alcanzar desde la ejecución simultánea de diferentes programas, hasta la que se consigue entre las diversas partes en las que se descompone una instrucción.

SISTEMAS UNIPROCESADORES:

Arquitecturas para el reforzamiento del paralelismo Pipe-Line o de segmentación Matricial o Array

Los modernos supercomputadores disponen de tres recursos que explotan el paralelismo y que dan lugar a tres tipos de computadores:

De segmentación «Matricial» o Array Multiprocesador.

Aumento de la velocidad del procesamiento.

Page 28: ARQUITECTURA DE COMPUTADORAS

TEMA 2.2:

Clasificación de las arquitecturas del

computador propuesto por Flynn

Page 29: ARQUITECTURA DE COMPUTADORAS

Clasificación de las arquitecturas del computador propuesto por Flynn

Esta clasificación divide a los computadores, atendiendo a su paralelismo explicito en 4 grupos:

SISD: Flujo único de instrucciones-flujo único de datos

SIMD: Flujo único de instrucciones-flujo múltiple de datos

MISD: Flujo múltiple de instrucciones-flujo único de datos

MIMD: Flujo múltiple de instrucciones-flujo múltiple de datos

Page 30: ARQUITECTURA DE COMPUTADORAS

Clasificación de las arquitecturas del computador propuesto por Flynn

Esquema simplificado de la arquitectura SISD

MEMORIA PRINCIPAL

(INSTRUCCIONES Y DATOS)

FLUJO DE DATOS

FLUJO DE INSTRUCCIONES

UNIDAD OPERATIVA(ALU Y REGISTROS)

FLUJO DE INSTRUCCIONES

UNIDAD DE CONTROL

(DECODIFICADOR DE INSTRUCCIONESY SECUENCIADOR)

Page 31: ARQUITECTURA DE COMPUTADORAS

Clasificación de las arquitecturas del computador propuesto por Flynn

Arquitectura SISD

La memoria principal genera el flujo de instrucciones a la Unida de Control, que tras decodificarlas e interpretarlas, ordena sus ejecución en la Unidad Operativa compuesta por la ALU, y los registros internos de trabajo. El flujo de datos bidireccional comunica a la memoria principal y a la Unidad Operativa. En el funcionamiento de los computadores SISD solo hay una corriente de instrucciones unidireccional y otra de datos bidireccional.

Page 32: ARQUITECTURA DE COMPUTADORAS

Clasificación de las arquitecturas del computador propuesto por Flynn

Arquitectura SIMD

En los computadores con esta arquitectura, la unidad de control existente supervisa el funcionamiento del conjunto de unidades operativas disponibles.

La estructura corresponde a los llamados procesadores matriciales. La unidad de control interpreta las instrucciones y envía las correspondientes señales de control a las unidades operativas encargadas de se ejecución. La unidad de control comienza la búsqueda de una nueva instrucción, nada más iniciada la ejecución de la anterior, siendo posible de esta forma, realizar.

Page 33: ARQUITECTURA DE COMPUTADORAS

Clasificación de las arquitecturas del computador propuesto por Flynn

Arquitectura SIMDEsquema simplificado de la

arquitectura SIMD

MEMORIA PRINCIPAL

(ESTRUCTURA MODULAR

COMPARTIDA)

UNIDADOPERATIVA

1

UNIDADOPERATIVA

2

UNIDADOPERATIVA

X

DATOS

DATOS

DATOS

UNIDAD DE CONTROL

FLUJO DE INSTRUCCIONES

Page 34: ARQUITECTURA DE COMPUTADORAS

Clasificación de las arquitecturas del computador propuesto por Flynn

Esta estructura consta de varias unidades de control que reciben diferentes flujos de instrucciones que son ejecutadas en las correspondientes Unidades Operativas, las cuales se alimentan de un único flujo de datos.

Arquitectura MISD

Page 35: ARQUITECTURA DE COMPUTADORAS

Clasificación de las arquitecturas del computador propuesto por Flynn

Arquitectura MISD

Arquitectura SIMD de múltiple flujo de instrucciones y flujo único de datos.

MEMORIA PRINCIPAL

(ESTRUCTURA MODULAR

COMPARTIDA)

UNIDADDE CONTROL

1

UNIDADDE CONTROL

2

UNIDADDE CONTROL

X

INSTRUCCIONES

FLUJO DE DATOS

UNIDADOPERATIVA

1

UNIDADOPERATIVA

2

UNIDADOPERATIVA

X

INSTRUCCIONES

INSTRUCCIONES

Page 36: ARQUITECTURA DE COMPUTADORAS

Clasificación de las arquitecturas del computador propuesto por Flynn

Es una estructura típica de un sistema multiprocesador, que puede definirse como un conjunto de procesadores serie, cuyas unidades operativas soportan un flujo de datos y las unidades de control, un flujo de instrucciones.

Arquitectura MIMD

MEMORIA PRINCIPAL

(ESTRUCTURA MODULAR

COMPARTIDA)

UNIDADDE CONTROL

1

UNIDADDE CONTROL

2

UNIDADDE CONTROL

X

INSTRUCCIONES UNIDADOPERATIVA

1

UNIDADOPERATIVA

2

UNIDADOPERATIVA

X

INSTRUCCIONES

INSTRUCCIONES

DATOS

DATOS

DATOS

Page 37: ARQUITECTURA DE COMPUTADORAS

Clasificación comercial de los computadores

De acuerdo a las realizaciones concretas, los computadores se pueden clasificar de las siguiente manera:

Procesadores Segmentados

Dividen los procesos con los que forman cadenas secuenciales de trabajo.

VECTORIALES:

Se utilizan en el procesamiento de vectores en «serie». No se necesita terminar completamente el proceso de un elemento para iniciar el del siguiente.

ARRAY:

Son procesadores segmentados de dos dimensiones con varias cadenas de flujos de datos.

Page 38: ARQUITECTURA DE COMPUTADORAS

Clasificación comercial de los computadores

Procesadores de Arquitectura SIMD

MATRICIALES:

Formados por una matriz síncrona de procesadores paralelos.

ASOCIATIVA: Son procesadores en los que la

memoria de acceso es asociativa. Se accede por contenido y no por dirección.

Multiprocesadores

Están formados por una serie de elementos de proceso de instrucciones, que se conectan con los módulos de memoria a través de una red.

Ejemplo: procesadores sistólicos.

Page 39: ARQUITECTURA DE COMPUTADORAS

Clasificación comercial de los computadores

Procesadores de quinta generación

Gracias a las nuevas estructuras VLSI y los nuevos desarrollos del sistema lógico se desarrollan:

Procesadores con tratamiento de base de datos.

Procesadores de flujos de datos, carecen de flujo de control y de contador de programa. Las instrucciones se activan de acuerdo a la disponibilidad de los operandos.

Procesadores inteligentes, procesan bases de conocimiento y disponen de una interfaz natural para el interfaz con el operador humano.

Page 40: ARQUITECTURA DE COMPUTADORAS

TEMA 2.3:

Técnicas para acelerar el funcionamiento del

sistema digital

Page 41: ARQUITECTURA DE COMPUTADORAS

INTRODUCCION Y CONCEPTO DE LA TECNICA DE SEGMENTACIÓN

Dentro de las técnicas utilizadas para acelerar el funcionamiento de un sistema digital, esta el tratamiento en cadena de la secuencia de operaciones que debe de realizar.

SEGMENTADO O PIPELINE:

A. Es así como se denomina al tratamiento en cadena, consiste en dividir la función F a realizar en una serie de subfunciones (F1,F2,F3,…Fn) que se pueden ejecutar en forma independiente.

B. Si se dispone de unidades individuales para procesar cada subfunción(F), se puede configurar una cadena, que soporte el tratamiento simultáneo de tantos procesos como subfunciones existen.

Page 42: ARQUITECTURA DE COMPUTADORAS

INTRODUCCION Y CONCEPTO DE LA TECNICA DE SEGMENTACIÓN

A. Un operador completo solo atiende un proceso hasta que lo realiza, los demás esperan su turno.

OPERADOR COMPLETO

ENTRADA

SALIDA DE RESULTADOS

COLA DE PROCESOS

16 5 4 3 2

Page 43: ARQUITECTURA DE COMPUTADORAS

INTRODUCCION Y CONCEPTO DE LA TECNICA DE SEGMENTACIÓN

B. Un proceso en cadena con cuatro etapas puede atender cuatro procesos a la vez

OPERADORES PARCIALES SIMPLES

ENTRADA

SALIDA DE RESULTADOS

COLA DE PROCESOS

123456

Page 44: ARQUITECTURA DE COMPUTADORAS

Características de la Segmentación

Como las subfunciones Fi son más simples que la función total F, se pueden ejecutar en una fracción del tiempo T que le toma a la función F.

Si se parte de que los tiempos de las n funciones son iguales, cada una tendrá una duración de T/n, con lo cual se pueden ejecutar n procesos en un periodo de tiempo T.

En un computador el flujo de instrucciones circula por una serie de unidades elementales en cadena, que realizan una operación simple cada una, y cuyo conjunto completa la ejecución de las instrucciones .Estas unidades tienen las siguientes funciones:

Búsqueda de la instrucción Decodificación

Búsqueda de operandos Ejecución

Page 45: ARQUITECTURA DE COMPUTADORAS

Características de la Segmentación

Esquema de un computador con las unidades fundamentales que se utilizan para llevar a cabo las fases en las que se descompone una instrucción

MEMORIA PRINCIPAL

DIRECCIÓN

INSTRUCCIÓN

CONTADOR DE

PROGRAMA

REGISTRO DE

INSTRUCCIONES

DECODIFICADOR

DEINSTRUCCIONES

FASE DE BUSQUEDA

DE INSTRUCCIONES

(FBI)

UNIDAD DE CONTROL

BÚSQUEDADE

OPERANDOS

SECUENCIADOR

FASE DE DECODIFICACIÓN

(FD)

FASE DE BUSQUEDA

DE OPERANDOS

(FBO)

CONTROLFASEDE

EJECUCIÓN(FE)

ALU

REGISTROS

UNIDAD OPERATIVA

DATOS

Page 46: ARQUITECTURA DE COMPUTADORAS

Características de la Segmentación

Procesamiento segmentado en cadena de la secuencia de instrucciones

ENTRADA

FLUJO DE INSTRUCCIONES

FASE DE BÚSQUEDA

DE INSTRUCCIONES

FBI

FASE DE DECODIFICACIÓN

FD

FASE DE BÚSQUEDA

OPERANDOSFBO

FASE DE EJECUCIÓN

FE

SALIDA

RESULTADOS

Page 47: ARQUITECTURA DE COMPUTADORAS

Características de la Segmentación

Existe un reloj que genera impulsos de sincronismo de periodo t, que es el tiempo que dura cada fase. Si hay que procesar 5 instrucciones (I1, I2, I3, I4, I5):

Primer impulso(t1) Fase de búsqueda de la instrucción T1

Segundo impulso(t2) I1 pasa a la unidad encargada de la decodificación (FD)

Cuarto impulso(t4)

Ejecución completa de I1 I2 en la fase de búsqueda de los

operandos I3 en la de decodificación I4 en la de búsqueda de código

OP

.

.

.

.

.

.

Page 48: ARQUITECTURA DE COMPUTADORAS

Características de la Segmentación

Procesamiento de las instrucciones a través de los bloques funcionales

FBII1

FD FBO FEI5I4I3I2

SALIDA

RELOJt1

FBII2

FDI1

FBO FEI5I4I3

SALIDA

RELOJt2

FBII3

FDI2

FEI5I4

SALIDA

RELOJ

FBII4I5

SALIDA

RELOJ

t1

FBOI1

t3t2 t1

t3t2 t1t4

FDI3

FBOI2

FEI1

Page 49: ARQUITECTURA DE COMPUTADORAS

Conclusiones sobre la segmentación

Es una técnica muy apropiada en los computadores y se puede aplicar a sus 3 grandes bloques: Unidad de Control, Unidad Lógico Aritmética y Memoria Principal.

La UC es una buena candidata para el tratamiento en cadena, puesto que la ejecución de instrucciones se divide en una serie de etapas.

Page 50: ARQUITECTURA DE COMPUTADORAS

Conclusiones sobre la segmentación

El concepto de cadena aplicado a la memoria principal es ligeramente distinto, puesto que su funcionamiento se basa en una serie de accesos independientes en módulos de memoria distintos, no existiendo interrelación ni comunicación entre dichos módulos.

La unidades operativas más complejas como las que manejan datos en coma flotante, también adoptan el método segmentado. Las distintas fases en la que se dividen estas operaciones se pueden realizar por circuitos específicos que configuran una cadena.

Page 51: ARQUITECTURA DE COMPUTADORAS

Estructura y tipo de cadenas

Las cadenas suelen ser de funcionamiento síncrono y utilizan unos registros intermedios entre la distintas etapas que las componen.

Cada registro almacena información la información de salida de una etapa y de entrada a la siguiente. De esta manera la información de un proceso determinado va pasando registro a registro, sufriendo la transformación correspondiente a cada etapa.

Todos los componentes están gobernados mediante un único reloj, cuyos flancos hacen que todas las informaciones avancen una posición simultáneamente.

Page 52: ARQUITECTURA DE COMPUTADORAS

Estructura típica de las cadenas:

Estructura y tipo de cadenas

1º ETAPA

F1

REG

ISTR

OENTRADA

F2

REG

ISTR

O

2º ETAPA 3º ETAPA

F3

REG

ISTR

O

F4

4º ETAPA

SALIDA

RELOJ

Page 53: ARQUITECTURA DE COMPUTADORAS

Clasificación de las cadenas:

Estructura y tipo de cadenas

CADENA UNIFUNCIÓN

CADENA MULIFUNCIÓN

Realizan solo una función

Entrada de los procesos

Entradas de control: Definen la función a realizar en cada situación

Dependiendo del sistema con el que se pueden reconfigurar, se divide en:

Dinámicamente reconfigurables Estáticamente reconfigurables

Page 54: ARQUITECTURA DE COMPUTADORAS

Cadenas estáticamente reconfigurables:

Estructura y tipo de cadenas

Diseñadas para ser reconfiguradas en muy pocas ocasiones. Actúan como si fueran unifunciones entre cada cambio. Tratan todo un lote de procesos in alterar su funcionamiento.

Cadenas dinámicamente reconfigurables: Pueden reconfigurarse para cada entrada y se

emplean en las Unidades de Control, puesto que cada instrucción necesita un tratamiento ligeramente diferente de la de las demás.

CADENA LINEAL

CADENA NO LINEAL

A Cada etapa de la cadena, le sigue otra.

Detrás de cada etapa hay diversos caminos, e incluso realimentaciones para formar bucles.

Page 55: ARQUITECTURA DE COMPUTADORAS

Parones y choques en las cadenas

HAZARDS O PARONES

Representan el mayor problema de tratamiento en cadena. Surgen cuando se produce alguna causa que impide que se siga introduciendo elementos en la cadena, quedando esta vacía.

Instrucciones de bifurcación Es un caso de parón en Unidades de Control con tratamiento en cadena.

I1

I1: INSTRUCCIÓN DE BIFURCACIÓN CONDICIONAL

I2 I3

si no

Hueco en la

cadena

Reducen la capacidad del proceso

CHOQUE

Proceso 1

Proceso 2ETAPA

Por ejemplo:

Page 56: ARQUITECTURA DE COMPUTADORAS

Memorias entrelazadasLa velocidad de las memorias principales es

bastante inferior que la de la lógica utilizada en las Unidades de Control y en la de las Aritmética Lógicas. Para soslayar este problema, se divide la memoria principal en varios módulos autónomos.

Cada módulo funciona de manera independiente, por lo que se puede acceder al mismo tiempo a tantas posiciones de memoria principal como módulos tenga.

Page 57: ARQUITECTURA DE COMPUTADORAS

ORGANIZACIÓN MODULAR ENTRELAZADA: Es una manera de organizar la memoria que permite ir entrelazando los accesos entre los diversos módulos que constituyen la memoria principal.

Memorias entrelazadas

Entrelazado simple:

Se puede acceder a todos los módulos de memoria al mismo tiempo. La información accedida de cada

módulo se almacena en su registro cerrojo correspondiente, en donde se van extrayendo mientras se realiza un nuevo acceso a todos los módulos.

La información accedida de cada módulo se almacena en su registro cerrojo correspondiente, en donde se van extrayendo mientras se realiza un nuevo acceso a todos los módulos.

Page 58: ARQUITECTURA DE COMPUTADORAS

Memorias entrelazadas

Estructura de la memoria principal para configurar el entrelazado simple:

MEMORIA PRINCIPAL

MÓDULO 1

MÓDULO 2

MÓDULO N

.

.

.R

EG

ISTR

O

CER

RO

JO

REG

ISTR

O

CER

RO

JO

REG

ISTR

O

CER

RO

JO

BIT DE DIRECCIONES

MU

LTIP

LEXO

R

BUS DE DATOS

SELECCIÓN DE ENTRADA

n (N=2n)

Memoria de entrelazado simple:

Page 59: ARQUITECTURA DE COMPUTADORAS

Memorias entrelazadas

Memoria de entrelazado simple:

Cuando se realiza el primer acceso , se obtienen N palabras, una de cada módulo. En los siguientes accesos se van obteniendo el mismo número de informaciones simultáneas.

2º ACCESO

Para los N módulos

1º ACCESO

3º ACCESO

Palabra 2º Palabra N

Palabra 1º Palabra 3º Palabra 2º Palabra Nº

Palabra 1º

Page 60: ARQUITECTURA DE COMPUTADORAS

Memorias entrelazadas

Memoria de entrelazado simple:

El entrelazado simple funciona de forma satisfactoria en los accesos secuenciales, como ocurre con la ejecución de las instrucciones, o en el tratamiento de vectores.

Sin embargo esta estructura no es demasiado practica para el caso de los acceso no secuenciales , tales como el tratamiento de bucles y de bifurcaciones o de datos no ordenados secuencialmente.

Page 61: ARQUITECTURA DE COMPUTADORAS

Memorias entrelazadasEntrelazado complejo:

Cuando los accesos están solapados en el tiempo, tal y como se representa en la figura. Los registros almacenan la dirección a la que desea acceder en cada módulo, por lo que su distribución no debe de ser secuencial.

Número

Tiempo de acceso a los módulos=

Tiempo que cada uno de los módulos puede disponer del bus de direcciones para recibir su dirección y del bus de datos para enviar o recibir su información.

Page 62: ARQUITECTURA DE COMPUTADORAS

Memorias entrelazadasEntrelazado complejo: Organización de una memoria principal con entrelazado complejo.

OCUPADO/COMPLETO

SELECCIÓN

CONTROLADOR DE

MEMORIA

COMANDO

DIRECCIONES

COMANDOS

REG

ISTR

O

CER

RO

JO

REG

ISTR

O

CER

RO

JO

REG

ISTR

O

CER

RO

JOD

IREC

CIO

NES

MÓDULO 1

MÓDULO 2

MÓDULO N

MU

LTIP

LEXO

R

BUS DE SIMPLE

PALABRA

Page 63: ARQUITECTURA DE COMPUTADORAS

Memorias entrelazadasEntrelazado complejo:

Los comienzos de acceso a estos módulos se solapan en el tiempo , de forma que los tiempos de ocupación de los buses por cada módulo no se superpongan. Este tipo de entrelazado exige que la memoria disponga de una unidad de distribución de accesos que se encargue de enviar a cada módulo las peticiones de acceso en el momento pertinente y que resuelva los choques.

Page 64: ARQUITECTURA DE COMPUTADORAS

Memorias entrelazadas

Entrelazado complejo:

El rendimiento óptimo de la memoria entrelazada se obtiene cuando los accesos que se solicitan a la memoria principal en cada ciclo, corresponden a módulos distintos. Sin embargo con frecuencia surgen peticiones simultáneas sobre el mismo módulo, en cuyo caso, aparece un problema de choques, teniendo que atender a una de las peticiones y hacer esperar a las demás.

Page 65: ARQUITECTURA DE COMPUTADORAS

Memorias entrelazadasEntrelazado complejo:

La forma en la que se ordenan las peticiones sucesivas de memoria tiene una influencia importante sobre la cantidad de choques.

Entrelazado de orden inferior:

Si por ejemplo la memoria tiene 4 módulos, el primer módulo estaría ocupado por las posiciones de memoria 0,4,8,12,…, mientras que el segundo ocuparía las posiciones 1,5,9,13,etc.

Empleando módulos de 2n posiciones, se asignan las 2n primeras posiciones al primer módulo, las posiciones de la 2n a la 22n -1 al segundo módulo y así sucesivamente

Entrelazado de orden superior:

Es cuando las posiciones sucesivas de memoria principal 0,1,2,3,4,…se asignan a módulos complejos.

Page 66: ARQUITECTURA DE COMPUTADORAS

Los Parones en las secuencias de instrucciones:

El problema de los parones en las secuencias de instrucciones ocurre con las instrucciones condicionales, con las interrupciones y con las dependencias entre datos.

Los parones de dependencia entre datos se producen cuando una instrucción requiere como dato un dato que debe de generar una instrucción anterior.

Page 67: ARQUITECTURA DE COMPUTADORAS

Los Parones en las secuencias de instrucciones:

EJEMPLO:En el cuadro se muestra cómo la necesidad del dato A, que se genera en la instrucción suma(ADD), obliga a esperar a la instrucción de incremento, originando un hueco.

A00 A

IMC AHUECO

Parón originado por la dependencia de datos entre una instrucción y la siguiente.

Page 68: ARQUITECTURA DE COMPUTADORAS

Los Parones en las secuencias de instrucciones:

Los parones por bifurcación condicional se producen al reconocerse la dirección de bifurcación hasta que la instrucción de bifurcación pueda tratar la condición que, normalmente genera la instrucción anterior.

B2

HUECO

Page 69: ARQUITECTURA DE COMPUTADORAS

Los Parones en las secuencias de instrucciones:

Es una técnica que se utiliza para evitar el problema de los huecos y de los retardos introducidos por las bifurcaciones condicionales.

Cadena de predicción:

Se evita el hueco que causa la bifurcación tomando a priori una de la dos alternativas de bifurcación.

Si esta corresponde con la alternativa supuesta, se sigue el procesamiento con el consiguiente ahorro de tiempoCuando

se conoce la condición

Y si no, se desecha el proceso realizado por la instrucción de bifurcación

Page 70: ARQUITECTURA DE COMPUTADORAS

Los Parones en las secuencias de instrucciones:

Es una técnica mucho más económica que la anterior que permite aprovechar el hueco que dejan las bifurcaciones condicionales

Bifurcación retardada:

Consiste en rellenarlo con instrucciones anteriores a la bifurcación y que, por tanto, deben de ejecutarse independientemente del camino seguido por ésta.

El mayor obstáculo de este procedimiento consiste en que no siempre se pueden retardar las instrucciones para rellenar el hueco y en el esfuerzo adicional de programación que ello supone.

Page 71: ARQUITECTURA DE COMPUTADORAS

La segmentación en la Unidad de Control Microprogramada

Las unidades de control microprogramadas suelen emplear el concepto de encadenamiento o segmentación para acelerar su funcionamiento. Si se analizan las subfunciones que comprenden el ciclo básico de ejecución de las microinstrucciones, se puede establecer la siguiente división:

1. Cálculo de la siguiente microdicrección, el tiempo utilizado en realizar esta subfunción, se le conoce como TCD.

2. Acceso a la memoria de control, cuyo tiempo recibe el nombre de simplificado de TMC.

3. Activación de los órganos del computador con las señales obtenidas de memoria de control. Este tiempo se llama TOC

Page 72: ARQUITECTURA DE COMPUTADORAS

La segmentación en la Unidad de Control Microprogramada

Tratamiento en Serie: Se produce cuando no se dispone de un registro de

almacenamiento intermedio.

TIEMPO

TCDi TMCi TOCi

TCDi TMCi+1 TOCi+1

Page 73: ARQUITECTURA DE COMPUTADORAS

La segmentación en la Unidad de Control Microprogramada

Tratamiento en Cadena con secuenciamiento explicito: Se origina cuando hay dos etapas en la Unidad de Control,

puesto que el registro de microinstrucción permite simultanear el acceso a la memoria de control con el uso de señales cargadas anteriormente en dicho registro.

TIEMPO

TCDi

TMCi-1

TOCi-2

TCDi+1

TMCi

TOCi-1

TCDi+2

TMCi+1

TOCi

Page 74: ARQUITECTURA DE COMPUTADORAS

TEMA 2.4:

Computadores Vectoriales

Page 75: ARQUITECTURA DE COMPUTADORAS

Computadores vectoriales:

Un operando vectorial está formado por una lista ordenada de n elementos. Cada elemento es un cantidad escalar, que puede ser un número en coma flotante, un entero, un valor lógico o un carácter.

Tipos de Operaciones Vectoriales:

V: operador matricialE:operando escalar

Page 76: ARQUITECTURA DE COMPUTADORAS

Computadores vectoriales:

Primer tipo

Tipos de Operaciones Vectoriales:

Segundo tipo

se encuentran las operaciones que afectan independientemente a cada elemento del vector, formándose un vector resultado, donde cada elemento es el resultado de aplicar la operación al elemento correspondiente del primer vector.

Está compuesto por aquellas operaciones en las que , operando con los elementos de un vector, se obtiene un resultado escalar. Es el caso de hallar por ejemplo la suma de los elementos del vector.

Ejemplo: Raíz cuadrada del vector

Page 77: ARQUITECTURA DE COMPUTADORAS

Computadores vectoriales:

Tipos de Operaciones Vectoriales:

Tercer tipo

Son las operaciones que obtienen un vector a partir de otros dos.

Por ejemplo se tiene a la suma de vectores.

Cuarto tipo

Se opera aplicando un escalar a cada elemento para obtener un vector resultado.

Por ejemplo se tiene a la suma de un escalar con un vector.

Page 78: ARQUITECTURA DE COMPUTADORAS

Computadores vectoriales:

Instrucciones Vectoriales:

Están disponibles en el lenguaje máquina de los procesadores vectoriales, y se especifican mediante los siguientes campos:

Código de operación

Direcciones Base

Incremento de dirección

Desplazamiento

Longitud del vector

Selecciona la unidad funcional o reconfigura una unidad multifuncional de manera que ejecute la operación indicada.

Son las direcciones de comienzo de los vectores operandos y de resultado.

Son las direcciones de comienzo de los vectores operandos y de resultado.

Sumándolo a la base se obtiene la dirección de un elemento buscado dentro de un vector.

Page 79: ARQUITECTURA DE COMPUTADORAS

Computadores vectoriales:

Técnica de Segmentación:

Es muy aplicada a las instrucciones vectoriales porque, mientras con procesadores escalares convencionales, cada elemento debe de ejecutarse completamente para dar paso al siguiente, en la técnica de segmentación para empezar a ejecutarse un elemento basta con que éste libre el primer paso del proceso completo.

Page 80: ARQUITECTURA DE COMPUTADORAS

Computadores vectoriales:

Grados de paralelismo:

Algoritmo Paralelo(AP) Lenguaje de Alto nivel(LAN) Código Objeto(CO) Código Máquina(CM)

Número de operaciones que pueden ejecutarse simultáneamente

AP

LAN

CO

CM

AP

LAN

CO

CM

En el primer caso se usa un LAN especial para procesos paralelos, mientras que en el segundo caso se usa un LAN convencional y un compilador de vectorización.

Page 81: ARQUITECTURA DE COMPUTADORAS

Computadores vectoriales:Diagrama de un procesador vectorial con múltiples unidades de ejecución o pipes.

MEMORIA PRINCIPAL DE ALTA

VELOCIDAD

UNIDAD DE PROCESO DE

INSTRUCCIONES

CONTROLADOR DE

INSTRUCCIONES

VECTORIALES

CONTROLADOR DE ACCESO VECTORIAL

REGISTROS VECTORIALES

REGISTROS ESCALARES

PIPE1

PIEP1

PIPE1

PIEP1

PIEP1

PIEP1

PR

OC

ES

AD

OR

ES

CA

LAR

PR

OC

ES

AD

OR

V

EC

TO

RIA

L

La unidad de proceso de Instrucciones, las recoge y las decodifica, trasladándolas a las sección de instrucciones vectoriales o escalares, cada una de las cuales consta de un procesador multi-pipe

Page 82: ARQUITECTURA DE COMPUTADORAS

Computadores vectoriales:

Arquitectura de «Cray-1»

El Cray-1 es uno de los procesadores vectoriales más modernos.

Emplea una tecnología ECL de 0,7 ns y MOS de 70 ns.

Frecuencia de reloj de 12,5 ns y no puede trabajar de forma autónoma .

La sección de memoria se organiza en 8 o 16 bancos con 72 módulos cada uno

La memoria principal esta configurada por circuitos integrados tipos RAM, que conforman un mínimo de un millón de palabras de 72 bits, 8 de las cuales e utilizan para la detección de errores dobles y corrección de los simples

Page 83: ARQUITECTURA DE COMPUTADORAS

Computadores vectoriales:Arquitectura de «Cray-1»

Diagrama General del conexionado del Cray-1 a un computador principal o host

SECCION DE EJECUCIÓN(REGISTROS, UNIDADES

FUNCIONALES, BUFFERS DE INSTRUCCIONES)

SECCION DE MEMORIA0,25 m/0,5m/1M

(PALABRAS BIPOLARES DE 64 BITS)

SECCION DE E/S12 CANALES DE ENTRADA12 CANALES DE SALIDA

MCUSUBSISTEMA DEALMACENAMIEN

TOMASIVO

HOST, ANFITRIÓN, SISTEMA DE

E/S, PERIFÉRICOS

Page 84: ARQUITECTURA DE COMPUTADORAS

Arquitectura de «Cray-1»

Procesador Cray-1

Memoria principal con un ciclo de 50ns, es decir 4 periodos de reloj. Se pueden transferir la unidad de ejecución 1, 2 o 4 palabras por periodo de reloj.

La unidad de Control de mantenimiento se encarga de la inicialización del sistema y la supervisión de su funcionamiento.

Computadores vectoriales:

La sección de E/S contiene 12 canales e entrada, y otros 12 de salida. Cada canal tiene una frecuencia de transferencia de 80 MBytes/s como máximo.

Page 85: ARQUITECTURA DE COMPUTADORAS

Arquitectura de «Cray-1»

Computadores vectoriales:

Esquema general interno de la Unidad de Ejecución del computador «Cray-1»

MEMORIA

REGISTROS VECTORIALES

V0V1

V?

00

??

SUMALÓGICA

DESPLAZAMIENTO

UNIDADESFUNCIONALES VECTORIALES

SUMAPRODUCTO

AP.RECIP

UNIDADESFUNCIONALES

DE COMA FLOTANTE

SUMA

LÓGICA

DESPLAZ.

UNIDADESFUNCIONALESESCALARES

SUMA

PRODUCTO

UNIDADESFUNCIONALES

DE DIRECCIONES

CONTEO

VN

P

S7

S1S0

REGISTROS ESCALARES

T00

T77

A7

A1A0

REGISTROS DE DIRECCIONES

B00

377

VL

0 12

3

NIP

LIP

CIPBUFFERDE INSTRUCCIONES

EJECUCIÓN

0001

17

Page 86: ARQUITECTURA DE COMPUTADORAS

Arquitectura de «Cray-1» Consta de 64*4 buffers de instrucciones y 800 registros con

diferentes funciones,. Tiene 12 unidades funcionales agrupadas en unidades vectoriales de coma flotante, de tipo escalar y de direcciones

Computadores vectoriales:

Sección de Ejecución

UNIDADES FUNCIONALES VECTORIALES

UNIDADES ESCALARES

UNIDADES FUNCIONALES

DE COMA FLOTANTE

UNIDADES DE DIRECCIONES

Suma Desplazamien

to Lógicas

Suma Producto Aproximación

Reciproca

Suma Lógicas Conteos Desplazamientos Conteos de unos y

ceros

Suma Producto

REGISTROS USADOSS o VS o VS o V

S y VS y VS y V

SSSS

AA

Calcula el reciproco

Cuenta número de unos o números de ceros tras un uno

UNIDADES FUNCIONALES DEL CRAY-1

Page 87: ARQUITECTURA DE COMPUTADORAS

Arquitectura de «Cray-1»

Computadores vectoriales:

Las operaciones aritméticas pueden efectuarse con datos de 24 bits, mientras que las de coma flotante con datos de 64 bits.

Sección de Ejecución

Los registros escalares y de direcciones pueden acceder directamente a la memoria o a través de los 64 registros T y B. El registro CIP contiene la instrucción en curso, mientras que el registro NIP almacena la próxima instrucción a ejecutar. Ambos registros constan de 16 bits. Si la instrucción es de 32 bits también se utiliza el registro LIP ara contener los 16 bits de menos peso de la instrucción.

Page 88: ARQUITECTURA DE COMPUTADORAS

TEMA 2.5:

Computadores Array

Page 89: ARQUITECTURA DE COMPUTADORAS

Computadores «array»

Los procesadores segmentados array tienen una estructura de dos dimensiones con múltiples cadenas de flujos de datos para operaciones aritméticas de alto nivel:

Productos de matrices Cálculo de la matriz inversa Etc.

La arquitectura segmentada se basa en tablas celulares de unidades aritméticas.

Page 90: ARQUITECTURA DE COMPUTADORAS

Computadores «array»

Procesador Pipe Line Array

Tiene una estructura de pipe-line de tres direcciones de flujo de datos para la multiplicación de dos matrices. Cada célula efectúa una operación de producto interno aditivo.

tt2

t1

a33

00

a32

a23

0

a31

a22

a13

0a21

a12

00a11

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

P

0 0 0

a

a

b b0

0

c

d

b11 0 0

b21 b12 0

b31 b22 b13

0 0 b33

0 b32 b23

t8

t7

t6

C31

C21

C11

C32

C33

C22 C23

C12 C13

t8

t7

t6

Page 91: ARQUITECTURA DE COMPUTADORAS

Computadores «array»

Procesador Pipe Line Array

Los registros de las terminales de entrada y salida están sincronizados por el mismo reloj. El array de la figura anterior efectúa el producto de matrices de orden de 3 por 3.

A . B=¿(a11 a12 a13a21 a22 a23a31 a32 a33

) (a11 a12 a13a21 a22 a23a31 a32 a33

) (a11 a12 a13a21 a22 a23a31 a32 a33

)¿ ¿C.

Las matrices de entrada ingresan al procesador por las direcciones horizontal y vertical. Para realizar el producto de dos matrices de orden n se necesita:

3n2−4 n+2celdas P

3n−1 periodosde reloj

Para completar el proceso:

Page 92: ARQUITECTURA DE COMPUTADORAS

Arquitectura del computador AP-120B Interconexión del computador AP-120B al principal o

host.

IMPRESORA

TERMINAL

CPU

MEMORIAFICHERO DE DISCO

CONTROL(16 BITS)

INTERFAZ

FUNCIONES

CONMUTADORES

DISPLAY

REGISTROS DEL PANEL FRONTAL

DIRECCION DEMEMORIA DEL

HOST (ANFITRION)

REGISTROS DMA

DIRECCION DEMEMORIA DEL

AP

CONTAJE DE PALABRAS

CONTROL

FORMATO

FICHERO DE CIINTA

DIRECCIÓN HOST

MÁXIMO DE 16 BITS

DATOS(16 Ó 32 BITS))

CPU

MEMORIADE

DATOS

AP-120B

DATOS(36 BITS))

CONTROL(16 BITS)

DIRECCION MEMORIA AP

Page 93: ARQUITECTURA DE COMPUTADORAS

Arquitectura del computador AP-120B Diagrama funcional del computador AP-

120BM

EM

OR

IA

D

E

CO

NTR

OL

UN

IDA

DES

D

E C

ON

TR

OL

SEC

CIÓ

N D

E M

EM

OR

IAS

EC

CIÓ

N D

E E

/SMEMORIA DE PROGRAMA

-DIRECCIONES OPERANDOS-ALU

-REGISTRO DE DIRECCIONES DE MEMORIAMA,DMA,TPA

MEMORIA DE TABLAS

REGISTROS X

REGISTROS Y

MEMORIA PRINCIPAL DE DATOS

INTERFAZ CON HOST:-FUNCIONES-CONMUTADORES-DISPLAY

10P16 /32

PIOP

PM

SPFN

TM

DPX

DPY

MDMDI

INBS

INBS

A2

A1

FA

M2

M1

FM

MD

BUS DE BITS UNIDADES ARITMÉTICAS

SUMADOR DE COMAFLOTANTE

MULTIPLICADOR DE COMAFLOTANTE

Page 94: ARQUITECTURA DE COMPUTADORAS

Arquitectura del computador AP-120B En la figura anterior se ve que el AP-120B se tratase de una

terminal más, pero habiendo entre el host y el AP-120B unos registros que facilitan la interfaz, los cuales tienen las siguientes funciones:

REGISTRO DE FUNCIONES: Comandos típicos tales como Start, Stop, etc.

REGISTRO DE CONMUTADORES: Enviar datos de control, parámetros o direcciones del principal al AP-120B

REGISTRO DISPLAY O PRESENTADORES: Permiten visualizar el contenido de los registros del procesador array

DIRECCION DE MEMORIA DEL PRINCIPAL

DIRECCION DE MEMORIA DEL AP-120B

RECUENTO DE PALABRAS

Funciones de los registros

Page 95: ARQUITECTURA DE COMPUTADORAS

Arquitectura del computador AP-120B

REGISTRO DE FORMATO: Convierten el formato LP del computador principal al del AP-120B y viceversa.

Funciones de los registros

REGISTRO DE CONTROL

Memoria de Control

Memoria de programa(MP), contiene las Instrucciones a ejecutar por la unidad de control. Tiene un máximo de 4k palabras, pudiendo hacerse ampliaciones de 256 palabras. Cada palabra es de 64 bits.

Memoria principal de datos(MD), Almacenamiento principal de datos con palabras de 38 bits. Ampliaciones de 2 u 8K palabras hasta un máximo de un millón.

Sección de memoria

Page 96: ARQUITECTURA DE COMPUTADORAS

Arquitectura del computador AP-120B

Memoria de tablas(TM), Permite guardar constantes muy utilizadas. Puede ser de tipo RAM o ROM.

Sección de memoria

Tablas de registros X, Y, DPX, DPY: Forman dos bloques acumuladores de 38 bits. Cada bloque tiene 16 acumuladores pudiendo ser accedido por el AP-120B directamente.

Direcciones de operandos y ALU(SPFN), Contiene 16 registros con las direcciones de los operandos para la ALU, la cual efectúa operaciones aritméticas con enteros de 16 bits.

Unidad de Control

Registro de direcciones(MA, TMA, DPA): La ALU deja direcciones de los resultados en uno de estos 3 registros, según sea la dirección de memoria de tablas, de memoria de tablas o de registros X y Y.

Page 97: ARQUITECTURA DE COMPUTADORAS

Arquitectura del computador AP-120B

Sumador de coma flotante(FA), suma dos números de coma flotante A1 y A2 que pueden provenir de diferentes registros, dejando el resultado en uno de estos dos registros

Unidades Aritméticas

FM, M, DPY,DPX,CERO, A1

FM, M, DPY,MD,CERO, A2

A1

A2ALINEAMIENTO DE

FRACCIONES Y DE SUMABUFFE

R

NORMALIZACIÓN Y REDONDEO

FA

M2, A2, DPX, DPY

Page 98: ARQUITECTURA DE COMPUTADORAS

Arquitectura del computador AP-120B

Multiplicador de coma flotante(FA), multiplica dos números de coma flotante M1 y M2.

Unidades Aritméticas

DPX,DPY,TM, FM

FA, DPX, DPY, MD

P1

P2

INICIO DE PRODUCTOS

DE FRACCIONES

BUFFER2

TERMINO DEL PRODUCTO DE

FRACCIONES

FM

M1, A1, MD, DPX, DPY

BUFFER2

SUMA DE EXPONENTES

NORMALIZACION Y REDONDEO

Page 99: ARQUITECTURA DE COMPUTADORAS

TEMA 2.6:

Arquitectura SIMD: Procesadores Matriciales y Asociativos

Page 100: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMD

Un procesador matricial, esta conectado al host a través de una Unidad de Control. El computador principal es una máquina de propósito general que dirige las operaciones de todo el sistema. La unidad de Control del computador matricial supervisa la ejecución de programas del computador matricial cuyos resultados son enviados al mundo exterior a por el host.

Además de los computadores matriciales, estas arquitecturas también comprenden a los procesadores asociativos caracterizados por el empleo de memorias direccionables por contenido.

Page 101: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMD

Procesadores matriciales:

Es una matriz síncrona de procesadores paralelos formados por múltiples elementos de proceso, supervisados por una Unidad de Control.

Configuraciones básicas

1. Cada PE se compone de una ALU con sus respectivos registros de trabajo y una memoria local (PEM).La unidad de control tiene además su propia memoria de almacenamiento del programa que se ejecuta. Para el intercambio de datos entre los diferentes PE, se tiene una red de interconexión controlada por la UC.

2. No se dispone de bloques de memoria para cada PE, sino de un grupo de bloques de memoria (M). Por otra parte no existe red de interconexión, pero si red de alineamiento que conecta a los PE con las memorias.

Page 102: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMDProcesadores matriciales: Configuración 1

DATOS E INSTRUCCIONES

CU

MEMORIA

PE1

PEM1

PE2

PEM2

PEn

PEMn

RED

DE I

NTER

CO

NEX

IÓN

I/O

BUS DE DATOS

CONTROL

Page 103: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMDProcesadores matriciales: Configuración 2

DATOS E INSTRUCCIONES CU

MEMORIA

PE1

PEM1

PE2

PEM2

PEn

PEMn

RED

DE I

NTER

CO

NEX

IÓN

I/O

BUS DE DATOS

M1

M2

Mn

Page 104: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMD

Procesadores matriciales:

Características

C= {N ,F , I , M } ; DONDE :

N:Número de PE F:funciones de transmisión de datos por las

redes de interconexión o alineamiento. I: instrucción máquina M:Máscara para habilitar y deshabilitar los PE.

Page 105: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMD

Arquitectura del MPP

MPP(Masivelly

Parallel Processor)

Procesador de alta integración desarrollado por la NASA para procesar las imágenes enviadas por los satélites artificiales.

Contiene una matriz de 128 *128 =16384 microprocesadores en paralelo. Además el MPP tiene una unidad de control microprogramada (ACU) y cada PE tiene asociado 1 Kbits de memoria de acceso directo.

Tiene 132 columnas, 128 normales y 4 de reserva. Las funciones aritméticas de cada PE se ejecutan mediante un sumador serie y un registro de desplazamiento.

UNIDAD DE MANDATO DE PROGRAMAS: microordenador que controla el flujo de datos en la matriz, carga programas en el controlador, ejecuta rutinas de autodiagnóstico y facilita el desarrollo de programas

Page 106: ARQUITECTURA DE COMPUTADORAS

Arquitectura general del Sistema MPP

INTERFAZ DE ENTRADA DE

128 BITS

INTERFAZ DESALIDA DE 128 BITSUNIDAD

MATRICIAL (ARU)

CO

NM

UTA

DO

RES

CO

NM

UTA

DO

RES

UNIDAD DE CONTROL DE

LA MATRIZ (ACU)

CONMUTACIÓN

UNIDAD DE MANEJO DE

PROGRAMAS Y DATOS PDMU

CONTROL ESTADO

CONTROL ESTADO

CONTROL ESTADODATOS DE PROGRAMA

S

REGISTRO DE

ENTRADA (PDMU ARU)

REGISTRO DE SALIDA

(PDMU ARU)

CINTA MAGNETIC

A

DISCO TERMINALALFANUMERIC

O

IMPRESORA

ORDENADOR EXTERNO

INTERFACEPARA

CONTROLEXTERNO

Page 107: ARQUITECTURA DE COMPUTADORAS

Características del MPP

El ordenador externo de control que se usa es el PDP-11/34. El MPP incluye periféricos como controlador de cinta magnética, impresora, terminal y dos discos de 67 Mbytes.

Arquitecturas SIMD

Puede trabajar independientemente, sin ordenador externo, en modo standalone, mediante el terminal y los comandos propios del MPP. En el modo online el ordenador externo, le suministra datos, programas y petición de trabajo, también recibe los datos generados por el MPP e información sobre su estado.

La frecuencia de reloj para el funcionamiento de la matriz es de 10 MHz.

Page 108: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMD

Procesadores asociativos:

Son del tipo matricial, pero sustituyendo a la memoria de acceso directo(RAM) , por otra de tipo CAM. Mientras que en la RAM se precisa de la dirección antes que de acceso al dato, en las CAM los datos son direccionables por contenido, permitiendo el acceso a numerosas palabras de memoria. Además se caracterizan porque las operaciones lógicas y aritméticas se ejecutan sobre muchos conjuntos de argumentos en una instrucción simple.

Page 109: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMD

Procesadores asociativos:

Es un procesador asociativo bit-serie, por lo que su coste es reducido en comparación con los de estructura paralela.

Arquitectura del

procesador STARAN

Esta compuesto de 32 módulos asociativos de matrices, como máximo. Cada módulo contiene 256 palabras de 256 bits cada una, de acceso multidimensional, una red de permutación y un selector.

Cada elemento del proceso opera en serie, bit a bit, en los datos de todas las palabras de acceso multidimensional(MDAM)

Page 110: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMDProcesadores asociativos:

Arquitectura del procesador STARANMódulo asociativo de la matriz del

computador STARAN

ENTRADA

RED DE PERMUTACI

ÓN

SELECTOR

MEMORIA DE ACCESO

MULTIDIMENSIONAL

ALU(256 ELEMENTOS DE

PROCESO)

SALIDA

SEÑALES

Page 111: ARQUITECTURA DE COMPUTADORAS

Utilizando la red de permutación los datos almacenados en la MDAM, pueden ser accedidos por los canales de E/S en bit/slice, word slices o en una combinación de ambos. Esta red se utiliza también para desplazar o manipular datos, permitir búsquedas paralelas, operaciones entre las palabras de la MDAM.

Arquitectura del

procesador STARAN

Para localizar un datos particular el STARAN inicia una búsqueda con un medio de comparación a través de una lógica de control asociativa.

Arquitecturas SIMD

Procesadores asociativos:

Page 112: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMD

Arquitectura del procesador STARANDiferenciación entre las operaciones paralelas en

el STARAN

Procesadores asociativos:

BIT SLICE

WORD SLICE

WORDS

BIT

S

CONTROL

256 PALABRAS * 256 BITS

PIQ

Page 113: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMDProcesadores asociativos:

Arquitectura del procesador STARANArquitectura General por Bloques

EQUIPO DE

USUARIO

TIPICO

ORDENADORESPERIFERICOSPANTALLASSENSORES

PI0

PIO

EP

BIO

DMA

UNIDAD DE INTERFAZ

MODULO ASOCIATIVO DE

MATRIZ

MODULO ASOCIATIVO DE

MATRIZ

LOGICA DE FUNCIONES EXTERNAS

LOGICA DE CONTROL

SECUENCIAL

LOGICA DE PAGINADOS

DE PROGRAMAS

LOGICA DE CONTROL

ASOCIATIVO

MEMORIA DECONTROL DEL PROCESADOR ASOCIATIVO

LOGICA DE PUERTAS DE MEMORIA

BIO

DMA

PIO

PIO

SEÑALES DE

CONTROL

EP

DISCO

Page 114: ARQUITECTURA DE COMPUTADORAS

Arquitecturas SIMDProcesadores asociativos:

Arquitectura del procesador STARANArquitectura General por Bloques

La unidad de interfaz incluye conexión con sensores convencionales, pantallas interactivas y dispositivos de almacenamiento masivo. Dentro de las opciones de E/S se contempla:

ACCESO DIRECTO A MEMORIA CANALES DE E/S(BIO) CANALES DE FUNCIONAMIENTO EXTERNO(EXF) CANALES DEFUNCIONAMIENTO PARALELO(PIO)

Cada módulo asociativo e la matriz puede contener hasta 256 entradas y 256 salidas en la unidad de interfaz

Page 115: ARQUITECTURA DE COMPUTADORAS

TEMA 2.7:

Multiprocesadores o Computadores

MIMD

Page 116: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

La arquitectura MIMD comprende N elementos de procesos de instrucciones, que se conectan con M módulos de memoria principal a través e una red de interconexión. Además existe una unidad de coordinación que controla y sincroniza los procesos en ejecución, aunque no se ejecute el código objeto.

Un multiprocesador está compuesto por múltiples procesadores de instrucciones, que cooperan para tener un fin común. Este concepto es distinto al del computador múltiple que esta formado por varios computadores autónomos que pueden trabajar o no coordinadamente.

Page 117: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

Esquema General de la Arquitectura MIMD

RED DE

CONEXIÓN

MODULO 1

MODULO 2

MODULO M

COORDINADOR CENTRAL

PROCESADOR 1

PROCESADOR 2

PROCESADOR N

MEMORIA PRINCIPAL

Page 118: ARQUITECTURA DE COMPUTADORAS

En el caso de INTEL este ultimo tiempo ha llegado al numero de 8 núcleos, en un solo encapsulado, con su afamado CORE I7(Que en realidad consta de 4 procesadores físicos y ocho lógicos, y a través de una tecnología llamada HT se logra hacer que el sistema reconozca 8 núcleos)

MULTIPROCESADORES ACTUALES

Por parte de AMD presenta procesadores de dos núcleos, de cuatro y de tres núcleos, si de tre, con su serie phenom X3, que son una buena opción para aquellos que buscan performance y precio, ya que son mejores que los de dos núcleos, y mas baratos que aquellos de cuatro.

Page 119: ARQUITECTURA DE COMPUTADORAS

Procesadores con 8 Y 12 núcleos en 2010 (AMD) Los nombres en clave de estos desarrollos son Sao Paolo y Magny-Cours,

para los procesadores de 8 y 12 núcleos respectivamente. Según la información oficial, ambas CPUs utilizarían una arquitectura de 45 nanómetros con un nuevo socket, el G34, que vendría a ser una actualización del actual Socket F utilizado en los microprocesadores Opteron destinados a estaciones de trabajo profesionales y servidores.

Procesadores con 32 núcleos (Intel) Los actuales dual-core se quedarán en agua de borrajas si se cumplen las

previsiones de Intel que en menos de cuatro planea tener disponible un microprocesador con 32 núcleos trabajando conjuntamente.

Tal y como indican en TG Daily, Intel anunció hace cinco años que querían lograr disponer de un microprocesador a 20 GHz en la segunda mitad de esta década. Nada menos que mil millones de transistores (no parece mucho teniendo en cuenta los súper núcleos actuales de Intel, AMD, NVIDIA o ATI) tendría ese monstruito, pero las cosas han cambiado sensiblemente.

No hay un número específico de núcleos programado para esos procesadores que Intel ha denominado “many cores” (multinúcleo), pero el primero de ellos parece responder al nombre de Gulftown, englobado en el proyecto Keifer, y que integraría 32 núcleos. la tecnología de fabricación utilizada sería de 32 nm, y constaría de ocho nodos de procesamiento con 4 núcleos cada uno, y que en total podrían acceder a una caché de 24 Mbytes de lo que se denomina “Last Level”, o último nivel.

NOTICIAS DE PROCESADORES INTEL

Page 120: ARQUITECTURA DE COMPUTADORAS

* LO QUE SE VIENE

Page 121: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

Clasificación de las arquitecturas de los multiprocesadores

SISTEMAS FUERTEMENTE ACOPLADOS

Se comunican a través de una memoria principal compartida, disponiendo cada procesador de una cache propia. Admiten un lato nivel de interacción entre las tareas, sin que se produzca un deterioro importante en la respuesta. Este tipo puede utilizar todos los recursos del sistema

SISTEMAS DÉBILMENTE ACOPLADOS

Cada procesador tiene un dispositivo de E/S y una memoria local. Los mensajes se realizan a través de un sistema de transferencia global a granes velocidades (1Mbp/s)

Page 122: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

ESTRUCTURA DE UN SISTEMA DÉBILMENTE ACOPLADO

MEMORIA LOCAL

E/S

SISTEMA DE TRANSFERENCIA DE

MENSAJESPROCESADOR

CANAL Y ARBITRO

CANAL Y ARBITRO

Módulo

1M

ódulo

N

Page 123: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

ESTRUCTURA DE UN SISTEMA FUERTEMENTE ACOPLADO

DISCO DISCO

RED DE INTERCONEXIÓN

DE E/S

RED DE INTERCONEXIÓN DE LAS SEÑALES

DE INTERRUPCIÓN

PROCESADOR1

NPROCESADOR

RED DE INTERCONEXIÓN

MEMORIA LOCAL NO MAPEADA

MEMORIA LOCAL MAPEADA

MEMORIA LOCAL NO MAPEADA

MEMORIA LOCAL MAPEADA

MÓDULOS DE MEMORIA

COMPARTIDA

1

p

Page 124: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

Sistemas operativos Clásicos

SISTEMA OPERATIVO

MAESTRO-ESCLAVO Las rutinas del supervisor se ejecutan desde un único y exclusivo procesador «maestro»

SISTEMA OPERATIVO CON SUPERVISORES

SEPARADOS EN CADA PROCESADOR Duplicación de ciertas rutinas del

supervisor en cada procesador.

SISTEMA OPERATIVO DE PUNTO FLOTANTE

Permite ejecutar varias rutinas del supervisor a la vez. Cuando hay un fallo en el procesador no afecta demasiado al sistema.

Page 125: ARQUITECTURA DE COMPUTADORAS

Sistemas Operativos para Multiprocesadores

Page 126: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

Estructuras

Red de interconexión Común

Topología más simple y económica. Presenta un bus común compartido por todos los elementos del sistema

Red de interconexión «crossbar switch»

Control de las comunicaciones que recae en una unidad especial de conmutación que dirige el flujo de información de los buses.

Red de interconexión con memoria multipuerta

Distribuye las funciones de control, comunicación entre las unidades controladoras de los módulos de memoria.

Page 127: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

Red de interconexión Común

MODULOMEMORI

A

UNIDAD DE E/S

MODULOMEMORI

A

PROCESADOR

PROCESADOR

UNIDAD DE E/S

BUS COMUN

Page 128: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

Red de interconexión «crossbar switch»

PROCESADOR 1

PROCESADOR N

MODULOMEMORI

A

MODULOMEMORI

A

UNIDAD DE E/S

UNIDAD DE E/S

Page 129: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

Red de interconexión «multipuerta»

PROCESADOR 1

PROCESADOR 2

MODULOMEMORI

A 1

MODULOMEMORI

A 1

MODULOMEMORI

A 1

MODULOMEMORI

A 1

UNIDAD DE E/S

UNIDAD DE E/S

Page 130: ARQUITECTURA DE COMPUTADORAS

Multiprocesadores o Computadores MIMD

Multiprocesador «S-1»Procesador de propósito general de alta velocidad.

Construido con uniprocesadores S-1 Mark IIA

Incluye 16 uniprocesadores Mark IIA independientes

Comparten 16 bancos de memoria

Cada banco puede contener hasta 230 bytes (16 GB)

Entre procesador y memoria la transferencia de palabra es de 50 ns frecuencia de 320 Mpalabras/s.

Cada procesador tiene una memoria cache privada.

Consta de 5 unidades:

Unidad de captura de instrucciones guardadas en la memoria cache.

Unidad de decodificación de la instrucción capturada, por medio de la RAM de decodificación.

Unidad de preparación de los datos a ejecutarse y provenientes de otra memoria cache.

Unidad aritmética de tipo pipe-line.

Unidad de interfaz con la memoria de S-1.

Page 131: ARQUITECTURA DE COMPUTADORAS

MEMORIA

CONTROLADOR 0

PROCESADOR DE

DIAGNÓSTICO

MEMORIA

CONTROLADOR15

CACHE DE DATOS

CACHE DE INSTRUCCIONES

APUERTA 0

E/SPUERTA

7E/S

PROCESADOR DE DIAGNÓSTICO

PROCESADOR 0

E/SEQUIPO

PERIFERICO

E/S EN

TIEMPO REAL

UNIDADES DE ALMACENAMIENT

O MASIVO

PROCESADOR 7 E/S

PF

Z

M

PROCESADOR DE

DIAGNÓSTICO

UNIPROCESADOR 0

CACHE DE DATOS

CACHE DE INSTRUCCIONES

APUERTA 0

E/SPUERTA

7E/S

PROCESADOR DE DIAGNÓSTICO

PROCESADOR 0

E/SEQUIPO

PERIFERICO

E/S EN

TIEMPO REAL

UNIDADES DE ALMACENAMIENT

O MASIVO

PROCESADOR 7

E/S

PF

Z

M

UNIPROCESADOR 15

CONMUTADORENTRECRUZADO

PROCESADOR DE

DIAGNÓSTICO

Page 132: ARQUITECTURA DE COMPUTADORAS

UNIPROCESADOR MARK IIA

PROCESADOR DE DIAGNÓSTICO

CACHE DE INSTRUCCIONES

UNIDAD DE CAPTURA

(INSTRUCCIONESSECUENCIADOR F)

MEMORIA DE CONTROL

RAM DE DECODIFICACIÓN

UNIDAD DE DECODIFICACIÓNDE INSTRUCCIÓN

(SECUENCIADOR P)

MEMORIA DE CONTROL

REGISTROSDE USUARIOS

CACHE DE DATOS

UNIDAD DE PREPARACIÓN DE

DATOS(SECUENCIADOR I)

MEMORIA DE CONTROL

MEMORIA 0 E/S DATOS

MEMORIA 7 E/S DATOS

UNIDAD ARITMÉTICAPIPELINE

(MÓDULO A)

MEMORIA DE CONTROL

PROCESADOR 0E/S

PROCESADOR 7E/S

a/deLÓGICA DE

DIAGNÓSTICOINTERNA

a/deMEMORIA DE COMPUTADOR

ENTRECRUZADO

UNIDAD DE INTERFAZ CON

MEMORIA(SECUENCIADOR M)

MEMORIA DE CONTROL

Page 133: ARQUITECTURA DE COMPUTADORAS

Fue desarrollado por Kung en la Universidad de Carnegie-Mellon (Pensilvania EE.UU.).

Consiste en un conjunto de celdas interconectadas, cada una de las cuales es capaz de ejecutar una instrucción simple.

Procesadores Sistólicos

MEMORIA

A. PROCESADOR CONVENCIONAL

PE

MEMORIA PE PE PE PE PE PE

B. MATRIZ DE PROCESADOR SISTÓLICO

Las celdas se interconectan en forma de matriz o de árbol.La información fluye entre celdas en una estructura segmentada y la comunicación con el exterior solo es posible en las celdas fronterizas.

Page 134: ARQUITECTURA DE COMPUTADORAS

La memoria impulsa los datos al elemento de proceso (PE), de forma semejante al corazón, los datos se procesan rítmicamente.

Procesadores Sistólicos

a) Matriz Lineal de una dimensión

b) Matriz cuadrada de dos dimensiones

c) Matriz hexagonal de dos dimensionese) Matriz triangulard) Árbol binario

Las matrices sistólicas VLSI pueden asumir muchas estructuras diferentes, según los algoritmos de computo.

Page 135: ARQUITECTURA DE COMPUTADORAS

TEMA 2.8:

Computadores inteligentes de la Quinta Generación

Page 136: ARQUITECTURA DE COMPUTADORAS

Computadores inteligentes de la Quinta Generación

Entre los computadores de la quinta generación se encuentran lo llamados inteligentes, diseñados para procesar conocimientos en vez de datos.

Con esta orientación se han construido los procesadores PSI., las cuales trabajan a una velocidad de 30KLIPS.

1981: Japón anuncia la puesta en marcha de un proyecto destinado a desarrollar los computadores de la quinta generación. El proyecto se dividía en tres etapas. En la primera etapa se ha desarrollado el equipo físico básico y el sistema lógico fundamental, además se han construido modelo pilotos para soportar el desarrollo del sistema lógico

Page 137: ARQUITECTURA DE COMPUTADORAS

Computadores inteligentes de la Quinta Generación

Los computadores que se fabrican hasta el momento están basados en la arquitectura de Von Neumann, favoreciendo la filosofía de funcionamiento de los lenguajes máquina que disponen. Del mismo modo las estructura de los lenguajes de alto nivel están influenciados por el lenguaje máquina.

Los computadores inteligentes pretenden desviarse del procesamiento secuencial cambiándolo por un modo de trabajo en paralelo. Deberán también soportar una búsqueda asociativa porque la operación básica de ellos es la inferencia lógica.

Page 138: ARQUITECTURA DE COMPUTADORAS

Computadores inteligentes de la Quinta Generación

El lenguaje máquina de los computadores es el lenguaje kernel, basado en la lógica de predicados. Aunque este lenguaje es del tipo máquina, es un lenguaje de muy alto nivel y facilita el desarrollo de funciones de ayuda para el usuario, intentando un acercamiento a los lenguajes naturales.

Page 139: ARQUITECTURA DE COMPUTADORAS

Computadores inteligentes de la Quinta Generación

Como estas máquinas están enfocadas en procesar conocimientos, se llaman: Sistemas de Proceso de la Información del Conocimiento. Son capaces de realizar inferencias lógicas a partir de hechos contenidos en una base de conocimientos y están facultados a soportar las siguientes funciones:

Requerimientos

Resolución de problemas mediante inferencias

Gestión de la base de Conocimientos

Interfaz hombre máquina que utilice el lenguaje natural, gráficos, etc.

Mayor inteligencia de la máquina para obtener programas eficientes son lenguajes próximos al usuario.

Page 140: ARQUITECTURA DE COMPUTADORAS

Computadores inteligentes de la Quinta Generación

Estructura de los computadores de Quinta Generación

SECCIONES MODULOS

• Interfaz externo• Sistema del

software• Sección del

hardware

• Módulo del sistema lógico para inferencias

• Módulo del sistema lógico para la gestión de la base de conocimientos.

• Módulo del sistema lógico de interfaz inteligente.

• Módulo del sistema lógico para programación inteligente:

MÁQUINA DE INFERENCIA MÁQUINA DE LA BASE DE

CONOCIMIENTOS

Page 141: ARQUITECTURA DE COMPUTADORAS

Computadores inteligentes de la Quinta Generación

Estructura de los computadores de Quinta Generación

LENGUAJE DE PROGRAMACIÓN

DEL CONOCIMIENTO

LENGUAJENATURAL

SISTEMA DE PROGRAMACIÓN

INTELIGENTE

MODULO DE GESTION

DE LA B.D

MODULO DE INFERENCIAS

MODULO DE INTERFAZ INTELIGENTE

MAQUINA DE INFERENCIA

MAQUINA DE LA BASE DECONOCIMIENTOS

MECANISMO DE LA BASE DE DATOS RELACIONAL

MEC

AN

ISM

O D

E

INFE

REN

CIA

EN

PA

RA

LELO

MEC

AN

ISM

O

DE

FLU

JO D

E

DATO

S

MEC

AN

ISM

O D

E T

IPO

S

AB

STR

AC

TO

S D

E D

ATO

SMAQUINA

DEL INTERFAZINTELIGENTE

SISTEMA DE INTERFAZ

EXTERNO

SISTEMA DE

SOFTWARE

SISTEMA DE HARDWARE

REDDE ORDENADORESTECNOLOGÍA VLSI

Page 142: ARQUITECTURA DE COMPUTADORAS

Computadores inteligentes de la Quinta Generación

MAQUINAS DE FLUJOS DE DATOS

Se basan en un nuevo concepto de ejecución de instrucciones radicalmente diferente al de Von Neumann. Las instrucciones son activadas por la disponibilidad de los datos que lo requieran, no habiendo un flujo de controlador ni contador de programa. La red de conexión distribuye la carga de trabajo entre cada uno de los procesadores.

Tienen una organización de conducción de datos que se caracteriza por un estado de muestreo pasivo. Las instrucciones son verificadas para ver si los operandos están disponibles. Si es así , se ejecutan cuando la unidad este libre. De esta manera se alcanza el grado de paralelismo(varias instrucciones pueden ser ejecutadas simultánea y síncronamente).

Page 143: ARQUITECTURA DE COMPUTADORAS

Computadores inteligentes de la Quinta Generación

MAQUINAS DE FLUJOS DE DATOS

Programa de flujo de datos que resuelve la ecuación:

a

b

c

x1

x2

x---

x 2x - √ / /

4x

1

2

1

2

1

2

Page 144: ARQUITECTURA DE COMPUTADORAS

Computadores inteligentes de la Quinta Generación

MAQUINAS DE FLUJOS DE DATOSMáquinas de Flujos de Datos estáticas

Los datos se desplazan a lo largo de los arcos del grafo hacia los operadores.

MEMORIA DE INSTRUCCIONES

UNIDAD DE ACTUALIZACIÓN

UNIDAD DE BÚSQUEDADIRECCIONAMIENTO (INSTRUCCIONES)

PROCESAMIENTO(n UNIDADES)

COLA INSTRUCCIONES

HABILITADAS

Solo esta permitida la existencia de un dato en cualquier arco en cada instante. Existe un controlador que transfiere los datos de un nodo a otro. Un nodo se activa cuando están listos los datos de entrada y no hay alguno en la salida. La información circula en forma de paquetes.

Page 145: ARQUITECTURA DE COMPUTADORAS

Computadores inteligentes de la Quinta Generación

MAQUINAS DE FLUJOS DE DATOSMáquinas de Flujos de Datos Dinámicas

Se marcan los datos, los cuales pueden aparecer simultáneamente en cualquier punto del grafo. Se precisa de circuitería adicional para marcar los datos, pero se prescinde de las unidades de control de flujo.

UNIDAD DE MARCADO

PROCESAMIENTO(n UNIDADES)

COLA DE

INSTRUCCIONESHABILITADAS

UNIDAD DE ACTUALIZACIÓN

Y BÚSQUEDAMEMORIA

Page 146: ARQUITECTURA DE COMPUTADORAS

Esta súper computadora ubicada en Barcelona quizás no sea la más rápida del mundo pero si es una de las más bellas. Su nombre es MareNostrum y ocupa el respetable lugar 40 dentro de la lista de las 500 súper computadoras más poderosas del mundo (por ejemplo México ocupa el lugar 225 representado por la súper computadora de la Universidad Autónoma Metropolitana).

Computadoras Actuales

Page 147: ARQUITECTURA DE COMPUTADORAS

Una de las cosas que la hace tan especial es su locación, esta alojada en el centro de una antigua capilla de la ciudad de Barcelona, en España. Imagine la escena surrealista de entrar a una decorada capilla y toparse con un gigantesco cubo de cristal que en su interior alberga grandes pilares negros. La razón de la estructura de cristal es la de controlar la temperatura y la humedad dentro del cuarto y permitir así el adecuado funcionamiento de los más de 10,000 procesadores IBM (PPC dual core de 2.3 GHz).

Computadoras Actuales

Page 148: ARQUITECTURA DE COMPUTADORAS

Tras invertir US$133 millones, IBM ha creado un monstruo: El RoadRunner. Basado en su arquitectura Blue Gene/L, el correcaminos tiene 12.960 procesadores IBM Cell y unos 7.000 AMD Opteron logrando una velocidad teórica de 1,02 Petaflops.

Para dar una idea de la velocidad de esta supercomputadora, expertos de IBM señalaron que si cada uno de los 6.000 millones de habitantes del planeta usaran una computadora personal y trabajaran 24 horas por día, se tardarían 46 años en lograr lo que la Roadrunner hace en un solo día.

IBM Roadrunner: La supercomputadora más rápida del mundo

Page 149: ARQUITECTURA DE COMPUTADORAS

En primera instancia, la supercomputadora se usará para estudios militares, pero no se descarta su aplicación en tareas civiles, como ingeniería, medicina y ciencia, incluyendo el desarrollo de biocombustibles y el diseño de vehículos ecológicos.El sistema de interconexión ocupa 557 metros cuadrados de espacio y cuenta con 91,7 kilómetros de fibra óptica pesando 226.800 kilos. Se encuentra en el laboratorio de investigaciones de IBM en Poughkeepsie, Nueva York, y será trasladada en Julio al Laboratorio Nacional Los Alamos (LANL), en Nuevo México.

IBM Roadrunner: La supercomputadora más rápida del mundo

Page 150: ARQUITECTURA DE COMPUTADORAS

Cray, la clásica empresa sinónimo de supercomputadora acaba de recuperar su reinado al crear la supercomputadora mas potente del mundo, la Cray XT Jaguar, una bestia que procesa información al ritmo de hasta 1.64 PetaFLOPS, gracias a sus 45,000 procesadores AMD Opteron de 4 núcleos cada uno, 362TB de memoria, y 10 PetaBytes (10 PB, o 10,240 TeraBytes) de almacenamiento en disco. Noten que 1.64 PetaFLOPS significa 1,640,000,000,000,000 de operaciones flotantes por segundo. Noten además que aunque 1.64 PetaFLOPS es el rendimiento pico, que la XT Jaguar puede ejecutar cálculos de manera sostenida a 1.3 PetaFLOPS.

La Cray XT Jaguar, la supercomputadora más rápida del mundo

Esto hace a la XT Jaguar hata un poco mas de 50% mas rápido que la anterior sostenedora del récord, la IBM Roadrunner con 1,026 PetaFLOPS.

La Cray XT Jaguar fue diseñada para el Departamento de Energía de los EEUU

Page 151: ARQUITECTURA DE COMPUTADORAS

Similar a la analogía que hice la vez que la Roadrunner se develó al mundo, y para que tengan una idea del poder de esta máquina, si tomáramos a todos y cada uno de los mas de 6,000 millones de humanos en el planeta a calcular con una calculadora de bolsillo, las 24 horas al día, todos los días del año, les tomaría a todas estas personas 69 años hacer lo que la Cray XT Jaguar hace en un solo día.

Algo interesante para los que les guste la historia de la informática es que esta empresa (Cray) durante mucho tiempo (en particular los 1980s) fue el líder indiscutible en el mundo de las supercomputadoras.

IBM Roadrunner: La supercomputadora más rápida del mundo

Page 152: ARQUITECTURA DE COMPUTADORAS

TEMA 3:

Lenguaje Assembler

Page 153: ARQUITECTURA DE COMPUTADORAS

IntroducciónLenguaje de Programación:

Bajo nivel. Nivel

intermedio. Alto nivel.

Traductor o interprete de las ordenes e instrucciones que se asignan a una computadora. Le permite al usuario crear programas que serán entendidos por la PC(directa o indirectamente) con el objetivo de que realice una tarea.

Clasificación

Page 154: ARQUITECTURA DE COMPUTADORAS

Se llama de bajo nivel porque están muy cercanos al hardware de la PC. Es necesario conocer a fondo la arquitectura de máquina para la que se va a programar.

Lenguaje de Bajo Nivel:

Son dependientes de la maquina, es decir, no se pueden migrar o utilizar en otras maquinas.

Al estar totalmente diseñados a medida del hardware, aprovechan al máximo las características del mismo.

Lenguaje Máquina, Ensamblador.

Page 155: ARQUITECTURA DE COMPUTADORAS

Suelen ser clasificados muchas veces de alto nivel, pero permiten ciertos manejos de bajo nivel.

Son precisos para ciertas aplicaciones como la creación de sistemas operativos.

Dentro de estos lenguajes podríamos incluir a C ya que puede acceder a los registros del sistema, trabajar con direcciones de memoria.

Lenguaje de Nivel Intermedio:

Page 156: ARQUITECTURA DE COMPUTADORAS

Son mas fáciles de leer, escribir y mantener.

Los programas escritos deben ser traducidos en un lenguaje maquina especifico empleando un compilador o un intérprete. De esta manera pueden ser ejecutados por una maquina especifica.

Basic, Cobol, Fortran, Prolog, etc.

Lenguaje de Alto Nivel:

Page 157: ARQUITECTURA DE COMPUTADORAS

Programa que convierte un programa de usuario escrito en algún lenguaje (fuente), a otro lenguaje (binario ejecutable).

LENGUAJE FUENTE TRADUCTOR LENGUAJE OBJETO

Lenguaje ensamblador

Ensamblador Lenguaje máquina

Lenguaje alto nivel

Compilador Lenguaje máquina

TRADUCCION:Ensamblador,

Intérprete Compilador

CODIGO FUENTE

CODIGO MAQUINA

TRADUCTOR

Page 158: ARQUITECTURA DE COMPUTADORAS

El primer lenguaje de programación y utilizado fue el lenguaje máquina.

El lenguaje máquina utiliza el alfabeto binario.

0000 001 0101 01A1

1000 1001 1010 899A

LENGUAJE MAQUINA

Page 159: ARQUITECTURA DE COMPUTADORAS

Inicio: ADD B,1 MOV A,E CMP A,B JE FIN

JMP INICIOFin END

Es una forma de expresar el lenguaje máquina con términos similares a los del idioma inglés, denominados mnemónicos o códigos de operación (ADD,SUB, MUL, DIV).

Un lenguaje ensamblador puro es un lenguaje en el que cada enunciado produce exactamente una instrucción máquina.

LENGUAJE ENSAMBLADOR

Page 160: ARQUITECTURA DE COMPUTADORAS

El programador en ensamblador tiene acceso a todas las características e instrucciones disponibles en la máquina objetivo.

LENGUAJE ENSAMBLADOR

Page 161: ARQUITECTURA DE COMPUTADORAS

LENGUAJE ENSAMBLADOR

Un programa en lenguaje ensamblador sólo puede ejecutarse en una familia de máquinas.

Page 162: ARQUITECTURA DE COMPUTADORAS

Los lenguajes de computadoras toman diferentes formas; los de las primeras computadoras, como la ENIAC y la EDSAC, se componían en el lenguaje real de las máquinas mismas.

Los primeros lenguajes de programación se conocieron como Lenguajes Ensambladores, un ejemplo es: TRANSCODE, desarrollado para la computadora FERUT.

Historia

Page 163: ARQUITECTURA DE COMPUTADORAS

Porque el estudio del lenguaje ensamblador pone al descubierto la maquina real. Es decir, escribir algo de código de ensamblador es la única forma de ver realmente cómo son las maquinas en el nivel de arquitectura.

Para entender cómo funcionan los compiladores, el compilador debe producir salidas que un ensamblador pueda usar, o bien realizar el proceso de ensamblado él mismo .

¿Por qué utilizar Lenguaje Ensamblador?

Page 164: ARQUITECTURA DE COMPUTADORAS

Porque es la única alternativa debido a la escasez de memoria.

POR EJEMPLO:

Las tarjetas inteligentes tienen que efectuar complejos cálculos criptográficos con recursos limitados de memoria, procesadores incorporados en aparatos domésticos, PDAs y otros dispositivos electrónicos inalámbricos de baterías suelen tener memorias pequeñas a fin de ahorrar energía.

¿Por qué utilizar Lenguaje Ensamblador?

Page 165: ARQUITECTURA DE COMPUTADORAS

Porque es de utilidad para la construcción de subrutinas (pequeños programas contenidos dentro de otro programa mayor) que puedan ser invocadas desde un lenguaje escrito en un lenguaje de alto nivel.

¿Por qué utilizar Lenguaje Ensamblador?

Page 166: ARQUITECTURA DE COMPUTADORAS

Porque resulta útil para el control de máquinas, como por ejemplo en los procesos industriales. Otra área donde se emplea el lenguaje ensamblador es en la programación de juegos.

¿Por qué utilizar Lenguaje Ensamblador?

Page 167: ARQUITECTURA DE COMPUTADORAS

Máximo rendimiento: máxima velocidad y mínimo tamaño

Puede explotar al máximo el CPU Acceso a cualquier recurso de la computadora Ayuda a conocer a detalle cómo trabaja la

computadora

Ventajas del lenguaje Ensamblador

Page 168: ARQUITECTURA DE COMPUTADORAS

Presentan cuatro partes:

Formato de un enunciado

en Lenguaje Ensamblador

Campo EtiquetaCampo Operación (código de

operación)Campo OperandoCampo de comentarios

Page 169: ARQUITECTURA DE COMPUTADORAS

Calculo de N=I+J. Pentium II, Motorola 680x0

Formato de un enunciado

en Lenguaje Ensamblador

Page 170: ARQUITECTURA DE COMPUTADORAS

CAMPO ETIQUETA

Sirven para asignar nombres simbólicos a direcciones de memoria, se necesitan en enunciados ejecutables para poder saltar a esos enunciados. También se necesitan en las palabras de datos para poder accesar con un nombre simbólico a los datos ahí almacenados. Si un enunciado esta etiquetado, la etiqueta (generalmente) inicia en la columna 1.

Page 171: ARQUITECTURA DE COMPUTADORAS

CAMPO OPERACION

Contiene una abreviatura simbólica del código de operación o un comando para el ensamblador.

La selección de un nombre es cuestión de cada diseñador.

Carga un registro con el contenido de la memoria como para almacenar el contenido de un registro en la memoria.

Diseñador Intel: MOV

Diseñador Motorola: MOVE

Page 172: ARQUITECTURA DE COMPUTADORAS

CAMPO COMENTARIOS

• Ofrece a los programadores un lugar para incluir explicaciones de cómo funciona el programa, para beneficio de otros programadores que podrían usar o modificar posteriormente el programa.

Page 173: ARQUITECTURA DE COMPUTADORAS

CAMPO OPERACIONES

Los códigos de las instrucciones de máquina tienen una variedad de tipos y operandos; sin embargo, en general cada instrucción en si misma tiene un número fijo de operandos (0 a 3). Los operandos pueden tener los siguientes tipos:

Registro: se refieren directamente al contenido de los registros de la CPU.

Memoria: se refieren a los datos en la memoria. Inmediato: Estos son valores fijos que están listados

en la instrucción en sí misma. Implicado: Estos operandos no son mostrados

explícitamente. Por ejemplo, la instrucción de incremento añade uno a un registro o a memoria. El uno está implícito.

Page 174: ARQUITECTURA DE COMPUTADORAS

Formato de un enunciado en lenguaje ensamblador

Mov ax, 0 ;Sustituye el contenido del registro ax por cero.;En el registro ax se almacenará el total de la suma.

Mov bx,50H ; Coloca la dirección hexadecimal de memoria 50 en el ;registro bx

next: cmp word ptr [bx], 0

;Compara con cero el número almacenado en la posición ;de memoria a la que apunta el registro ax.

Jz done ;Si el numero de memoria de la posición es cero, ;saltar “done”

Add ax, [bx] ;Sumar el número de la posición de memoria a la que ;apunta bx con el número que se encuentra en el ;registro ax y almacenar la ;suma en el registro ax.

Add bx,02 ;Sumar 2 a la dirección contenida en el registro bx;Se necesitan dos direcciones para almacenar cada ;numero puesto que tienen dos bytes de longitud

Jmp next ;Saltar a “next” y repetir el proceso

Done: mov [bx], ax ;Sustituir el cero almacenado en la ultima posición de ;memoria a la que apunta el registro bx con el total ;almacenado en el registro ax.

nop ;No operación: indica el final del ;programa.

Page 175: ARQUITECTURA DE COMPUTADORAS

OPERACIONES BASICAS

La instrucción esencial es MOV . Ella traslada datos de un lugar a otro (como el operador de asignación en un lenguaje de alto nivel). Toma dos operandos:

mov dest, src

mov eax, 3 ; almacena 3 en el registro EAX

El dato especificado por src es copiado a dest. Una restricción es que los dos operandos no pueden ser operandos de memoria.

Page 176: ARQUITECTURA DE COMPUTADORAS

OPERACIONES BASICAS

Las instrucciones INC y DEC incrementan o disminuyen valores en uno. Ya que el uno es un operando implícito, el código de máquina para INC y el DEC es más pequeño que los de las instrucciones ADD y SUB.

inc ecx ; ecx++

dec dl ; dl--

Page 177: ARQUITECTURA DE COMPUTADORAS

DIRECTIVAS

Una directiva es un artificio del ensamblador no de la CPU. Ellas se usan generalmente para decirle al ensamblador que haga alguna cosa o informarle al ensamblador de algo. Ellas no se traducen en código de máquina. Los usos comunes de las directivas son:

Definir constantesDefinir memoria para almacenar datos en ella

Definir la memoria para almacenar datos en ella

Agrupar la memoria en segmentosIncluir código fuente condicionalmenteIncluir otros archivos

Page 178: ARQUITECTURA DE COMPUTADORAS

• Directiva equ

sımbolo equ valor

DIRECTIVAS

Los valores de los símbolos no se pueden redefinir posteriormente.

Se puede usar para definir un símbolo. Los símbolos son constantes con nombre que se pueden emplear en el programa ensamblador. El formato es:

Page 179: ARQUITECTURA DE COMPUTADORAS

• Directiva %define

%define SIZE 100mov eax, SIZE

DIRECTIVAS

El código de arriba define un macro llamado size y muestra su uso en una instrucción MOV. Los macros son más flexibles que los símbolos de dos maneras. Los macros se pueden redefinir y pueden ser más que simples constantes numéricas.

Esta directiva es parecida a la #define de C. Se usa normalmente para definir macros tal como en C.

Page 180: ARQUITECTURA DE COMPUTADORAS

• Directiva de datos

DIRECTIVAS

Las directivas de datos son usadas en segmentos de datos para definir espacios de memoria. Hay dos formas en que la memoria puede ser reservada. La primera es solo definir el espacio para los datos; la segunda manera define el espacio y el valor inicial.

Page 181: ARQUITECTURA DE COMPUTADORAS

Ventajas del Lenguaje Ensamblador

Máximo rendimiento: máxima velocidad y mínimo tamaño

Puede explotar al máximo el CPU Acceso a cualquier recurso de la computadora Ayuda a conocer a detalle cómo trabaja la

computadora

Page 182: ARQUITECTURA DE COMPUTADORAS

Desventajas del Lenguaje Ensamblador

El programa sólo corre en un CPU Es difícil llegar a ser programador experto Es difícil escribir programas grandes y

complejos Es difícil depurar y dar mantenimiento a los

programas Un error puede provocar que falle el equipo

Page 183: ARQUITECTURA DE COMPUTADORAS

Conclusiones

Para el Lenguaje Ensamblador su funcionamiento radica en la importancia de su uso y su profundo estudio, ya que ayuda a conocer a detalle cómo trabaja un CPU, definitivamente las aplicaciones que se le dan es tanto en la Electrónica y Sistemas.

Como sabemos el lenguaje ensamblador es el que va traduciendo instrucciones de código de maquina a mnemónicos, es decir interpreta los nombres de lo mnemónicos a direcciones de memoria y otras entidades.

Las instrucciones MOVS, LODS, STOS son bastante útiles cuando se maneja una gran cantidad de datos gracias a que éstas manipulan los índices automáticamente, así como también por la versatilidad del prefijo REP.

Page 184: ARQUITECTURA DE COMPUTADORAS

Conclusiones

El incremento o disminución de los punteros DI y SI en la transferencia de cadenas dependerá de la posición en memoria donde se encuentre la información, según el programador lo haya especificado.

El modo segmentado de memoria permite a los programas poder moverse reubicarse en la misma, debido a que no se manejan posiciones completamente directa en memoria sino referentes al valor de segmento.

Page 185: ARQUITECTURA DE COMPUTADORAS

Instalación Borland Turbo Assembler

1. Descargamos Borland Turbo Assembler 5.0 del sitio web:

http://vetusware.com/download/TASM%205.0/?id=65

2. Damos clic derecho sobre el Tasm_5.rar, y luego seleccionamos la opcion “Extraer en Tasm_5”

Page 186: ARQUITECTURA DE COMPUTADORAS

Instalación Borland Turbo Assembler

3. Abrir esta carpeta y clicar sobre “Instal”, el para iniciar la instalación:

Page 187: ARQUITECTURA DE COMPUTADORAS

Instalación Borland Turbo Assembler

4. Presionar Enter para continuar. Aparecerá la siguiente ventana de configuración:

Page 188: ARQUITECTURA DE COMPUTADORAS

Instalación Borland Turbo Assembler

5. En esta ventana debemos cambiar el lugar donde se instalaran nuestros archivos, en este caso escogimos el disco C. Luego de esto presionamos “Enter” para continuar con la instalación

Page 189: ARQUITECTURA DE COMPUTADORAS

Instalación Borland Turbo Assembler

6. En esta ventana nos pide la dirección de los archivos que descomprimimos previamente, solamente damos “Enter” dejando la que aparece por default.

Page 190: ARQUITECTURA DE COMPUTADORAS

Instalación Borland Turbo Assembler

7. Luego aparecerá un recuadro dando el estado de la instalación. Esperar unos minutos para terminar la instalación.

Page 191: ARQUITECTURA DE COMPUTADORAS

Instalación Borland Turbo Assembler

8. Por último, y no por eso menos importante aparecerá el ReadMe de Assembler, se recomienda ver el contenido ya que contiene ayuda sobre el programa.

Page 192: ARQUITECTURA DE COMPUTADORAS

Compilación de un ejemplo en Borland Turbo Assembler 5.0

El código que compilaremos es un programa que utiliza a CX utilizado como Contador de 9 a 0, el código es el siguiente:

.model small

.stack

.dataTEXTO db 10,'CX utilizado como Contador',13,10,'$'contador dw 58,13,10,'$'.codeinicio:mov ax, @datamov ds,axmov dx, offset TEXTO ; Encabezadomov ah, 09hint 21hmov cx,10 ; inicializofor:mov dx, offset contador ; Desplegar en pantallamov ah, 09h ; el valorint 21hmov ah, 08h ; Entrada del tecladoint 21h ; Interrupciondec cx ; Disminuyo CXdec [contador] ; resto al asciior cx,cx ; seguir mientrasjnz for ; no sea ceromov ah, 09h ; escribo el ceroint 21hsalida:mov ax, 4c00h ;Salida del ejecutableint 21hend inicio

Page 193: ARQUITECTURA DE COMPUTADORAS

Compilación de un ejemplo en Borland Turbo Assembler 5.0

Ese código lo guardaremos en el siguiente directorio: C:\TASM\BIN con la extensión ASM Luego abrimos una consola de DOS de Windows: Inicio > Ejecutar > cmd Y escribimos lo siguiente:

Cd c:\tasm\bin Tasm Ejemplo Tlink Ejemplo Así como se muestra en la siguiente pantalla:

Para ejecutar lo que hemos compilado debe escribir:

Ejemplo.exe

Page 194: ARQUITECTURA DE COMPUTADORAS

TEMA 3:

Computadoras Actuales

Page 195: ARQUITECTURA DE COMPUTADORAS

{

COMPUTADORAS ACTUALES

Page 196: ARQUITECTURA DE COMPUTADORAS

COMPUTADORAS ACTUALES

Las computadoras vienen en muchos tamaños y con capacidades variables. Los términos que describen los diferentes tipos de computadoras se cuñaron desde hace algún tiempo, aunque las capacidades de cada tipo han cambiado con rapidez. Éstos son los términos:• Supercomputadora.• Mainframe.• Minicomputadora.• Microcomputadora.Todos estos tipos de computadoras pueden conectarse para formar redes de computadoras, pero cada computadora individual, esté en red o no, cae en una de estas cuatro categorías.

Page 197: ARQUITECTURA DE COMPUTADORAS

SUPERCOMPUTADORA Las supercomputadoras son las computadoras más

potentes que hay. Están construidas para procesar cantidades enormes de datos. Por ejemplo, los científicos elaboran modelos de procesos complejos y simulan estos procesos en una supercomputadora. Uno de estos procesos es la fisión nuclear.

Page 198: ARQUITECTURA DE COMPUTADORAS

COMPUTADORAS MAINFRAME

El tipo más grande de computadora en uso común es la mainframe. Las computadoras mainframe se usan donde muchas personas en una gran organización necesitan tener acceso frecuente a la misma información, que por lo general es organizada en una o más bases de datos enormes.

Page 199: ARQUITECTURA DE COMPUTADORAS

MINICOMPUTADORAS Por su capacidad, una

minicomputadora se encuentra entre las mainframes y las computadoras personales. Como las mainframes, las minicomputadoras pueden manejar mucho más entradas y salidas que las computadoras personales. Las minicomputadoras cuestan entre 18,00 y 500,000 dólares, y son ideales para muchas organizaciones y compañías que no pueden costear o no necesitan un sistema mainframe

Page 200: ARQUITECTURA DE COMPUTADORAS

MICROCOMPUTADORAS

Los términos microcomputadora y computadora personal son indistintos, pero PC, que significa “computadora personal” (personal computer), en ocasiones tiene un significado más específico. En 1981, IBM llamó a su primera microcomputadora IBM PC. En unos cuantos años, muchas compañías habían copiado el diseño de IBM, creando “clones” o “compatibles” que aspiraban a funcionar igual que la original

Page 201: ARQUITECTURA DE COMPUTADORAS

Modelos de escritorio

El estilo de computadora personal introducido al principio fue el modelo de escritorio. La mayor parte de las computadoras de escritorio en realidad son lo bastante pequeñas como para caber en un escritorio pero demasiado grandes para que el usuario pueda llevarlas consigo.

Page 202: ARQUITECTURA DE COMPUTADORAS

Computadoras Notebook

Las computadoras notebook (“agenda”), como su nombre indica, se aproximan a la forma de una agenda de 21.5 por 28 centímetros y pueden caber con facilidad dentro de un portafolios. También llamadas laptops, pueden operar conectadas a la corriente o con baterías especiales.

Page 203: ARQUITECTURA DE COMPUTADORAS

Asistente personal digital PDA

son las más pequeñas de las computadoras portátiles. Las PDA, también llamadas palmtops (“que caben en la palma de la mano”), son mucho menos potentes que los modelos notebook o los de escritorio. Por lo general se usan para aplicaciones especiales, como crear hojas de cálculo pequeñas, mostrar números telefónicos y direcciones importantes y dar seguimiento a fechas o agendas.

Page 204: ARQUITECTURA DE COMPUTADORAS

Computadora de bolsillo

Una computadora de bolsillo es como una PDA, pero por lo general incluye un diminuto teclado incorporado. La mayoría de los usuarios encuentra que debe usar un lápiz o una pluma para teclear en el teclado de la computadora de bolsillo

Page 205: ARQUITECTURA DE COMPUTADORAS

Smartphone Un Smartphone (teléfono

inteligente en español) es un dispositivo electrónico que funciona como un teléfono móvil con características similares a las de un ordenador personal. soportan completamente un cliente de correo electrónico con la funcionalidad completa de un organizador personal. permiten la instalación de programas para incrementar el procesamiento de datos y la conectividad. Tiene teclado QWERTY en miniatura, una pantalla táctil, o simplemente el acceso a internet y al correo electrónico de una compañía, pagando o personal, gratuito.

Page 206: ARQUITECTURA DE COMPUTADORAS

Estaciones de trabajo

En el otro extremo del espectro, en comparación con la potencia de la PC, están las máquinas llamadas estaciones de trabajo. Por lo general, usan estas potentes máquinas científicos, ingenieros, artistas gráficos, animadores y programadores, es decir, usuarios que necesitan una gran cantidad de poder para procesar números

Page 207: ARQUITECTURA DE COMPUTADORAS

Que esperar en el futuro

Page 208: ARQUITECTURA DE COMPUTADORAS

Que esperar en el futuro

Page 209: ARQUITECTURA DE COMPUTADORAS

Que esperar en el futuro

Page 210: ARQUITECTURA DE COMPUTADORAS

Que esperar en el futuro

Page 211: ARQUITECTURA DE COMPUTADORAS

ARQUITECTURA DE COMPUTADORASFINAL EXPOSITION

MARTES 20 DE JULIO DEL 2010

MDDKJ GROUP

ACUÑA TENORIO, MarioCASTILLON POMA, Darwin

LANDEO RIVERA Daniel LAURA HUAROC, Kenil

OSORES RAMOS, Jimmy

HAVE PRESENTED:

STARTING TO BELIEVE EVERYTHING IS POSSIBLE

Page 212: ARQUITECTURA DE COMPUTADORAS

GRACIAS

We come to the end.To the end of Computers Architecture

Special thanks to the persons who help to make these slides

Page 213: ARQUITECTURA DE COMPUTADORAS

About us

INTEGRANTE TEMA

MARIO ACUÑA TENORIO

COMPUTADORES DE ALTAS PRESTACIONES (11.1-11.3)

COMPUTADORES ACTUALES

DARWIN CASTILLON POMA

LA NORMA DE CONEXIÓN RS-232-C

DANIEL LANDEO RIVERA

COMPUTADORES DE ALTAS PRESTACIONES (11.4,1.5)

KENIL LAURA HUAROC

COMPUTADORES DE ALTAS PRESTACIONES (11.8-11.10)

COMPUTADORES ACTUALES

JIMMY OSORES RAMOS

COMPUTADORES DE ALTAS PRESTACIONES (11.6,11.7)*

LENGUAJE ASSEMBLER