Академический Документы
Профессиональный Документы
Культура Документы
En esta leccin se presenta el esquema de funcionamiento de un computador, analizando las unidades centrales que lo componen y cmo se interconectan: El procesador Elementos internos Temporizacin en la ejecucin de instrucciones Concepto de microprocesador y microcontrolador Procesadores RISC y CISC Jerarqua de memoria Estructuras bsicas de computadores Computadores personales (PC) Paralelismo
23-oct-01
CONCEPTOS PREVIOS FUNCIONAMIENTO INTERNO DE UNA COMPUTADORA EL PROCESADOR EL CONCEPTO DE INTERRUPCIN JERARQUA DE MEMORIA ESTRUCTURAS BSICAS DE INTERCONEXIN COMPUTADORES PERSONALES (PC) PARALELISMO EN COMPUTADORAS CONCLUSIONES
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 3
Entradas (E)
Salidas (S)
Perifricos
23-oct-01
En esta leccin vamos a utilizar como mdulos constructivos, los siguientes elementos (Captulo 4):
Biestables Registros Contadores ALU Memoria principal Puertos de E/S Buses
23-oct-01
Biestables
Elemento de memoria (Z) que almacena 1 bit. Carga en el biestable Z de un 1: Z1
1 0 0 0 Z 1 1 1 Z 1
23-oct-01
Seal de control
c=0
entrada 0 1 0 0 1 1 1 0
entrada
Seal de control
0 1
0 0
0 1
Registro:
salida
Memoria para almacenar un dato, direccin o instruccin individual Suelen ser de 8, 16, 32, 64 128 bits Una seal de control hace que se cargue la informacin de entrada, y cambie su contenido Ejemplo de carga: R7 RM
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 7
Contadores
Ascendente de 8 bits: 0, 1, 2, 3, 4,...., 255, 0, 1,.... (en binario) Incremento: PC PC+1 Carga en paralelo: PC DR
23-oct-01
ALU
BS BA op BS La operacin a efectuar se establece con las seales de control. P.e., suma Seales de control: 001 Operacin: BS BA + BS
Dato 1
Dato 2
BA
BB
Seales de control
ALU
BS
Resultado
23-oct-01
3456
25
Para leer o escribir, es necesario proporcionar la direccin de acceso. Una memoria dispone de las siguientes E/S: Entrada de datos (DBI) Salida de datos (DBO) Entrada de direccin (AB) Seales de control: IO/M=0 operar con la memoria R/W=0 escribir; R/W=1, leer
Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 10
23-oct-01
16 hilos
16 hilos
Direccin (AB)
2m
0 1 0 direcciones 1 0 1 1 1 0 1 0 0 0 1
Escritura en memoria:
1 1
[7] mhilos
Lectura de memoria:
23-oct-01
11
Puertos de E/S: Desde el punto de vista del procesador cada perifrico es un conjunto de registros, que se denominan puertos de E/S Para leer o escribir en un puerto: hay que proporcionar su identificacin binaria (direccin), y generar las siguientes seales de control: IO/M=1 operacin de E/S R/W=0 salida; R/W=1, entrada
23-oct-01
12
23-oct-01
13
Memori a central
M
IPv
Procesador
Bus de direcciones Bus de datos Bus de control
OPv
23-oct-01
14
Unidad de tratamiento
Unidad de control
rD
RT RF FF Z S ALU C V
reloj
r1 r0
SP IR
Lgica de control
PC
AR DR
23-oct-01
15
Banco de registros de uso general (RF: r0 a rD) Almacen temporal de datos y/o direcciones Registro temporal (RT)
rD
RF
RT
r1
ALU
F FZ
r0 C V
DR
o SP
IR PC
Lgica de control
AR
Biestables indicadores o de condicin (FF): C: Acarreo S: Indicador de signo (si el ltimo resultado de la ALU es negativo: S=1) Z: Indicador de cero (si el ltimo resultado de la ALU es cero, Z=1) P: Indicador de paridad (si la paridad del ultimo resultado es par, P=1) V: Indicador de desbordamiento El conjunto de estos biestables forma la palabra de estado (o SW, "Status Word").
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 16
Unidad de control
Lgica de control
r1
ALU
r0
C V DR
o SP
IR PC
AR
Registro de direccin (AR), donde deber ubicarse la direccin del dato/instruccin a leer o escribir en memoria (o de un puerto de perifrico) Registro de datos (DR), donde se almacenar el dato a escribir en la memoria o la informacin leda de la memoria (o de un perifrico) Lgica de control, circuitos que generan las seales de control (con reloj) Registro de instruccin (IR), memoriza temporalmente la instruccin del programa que la unidad de control est interpretando o ejecutando Contador del programa (PC), registro-contador que contiene en todo momento la direccin de memoria dnde se encuentra la instruccin siguiente a ejecutar.
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 17
Unidad de tratamiento rD
RF
Perifricos
RT
r1 r0
F F Z S C V
reloj o
IPv
SP
Lgica de control
ALU
IR PC
OPv
AR
23-oct-01
18
Unidad de tratamiento rD
RF
RT
r1 r0
F F Z S C V
reloj o
SP IR BC73 100E PC
Lgica de control
ALU
AR
DR
23-oct-01
19
5.3.2 Temporizacin
La ejecucin de cualquier instruccin se realiza en dos fases: Fase de captacin de instruccin. Siempre que se inicia una instruccin el procesador capta de la memoria la instruccin siguiente a ejecutar. AR PC DR M(AR) IR DR (En IR queda almacenado el codop de la instruccin) PC PC + 1
(suponemos que cada instruccin ocupa una sola posicin de memoria) Fase de ejecucin Se realizan las operaciones especficas correspondientes al cdigo de operacin (codop) de la instruccin captada, generndose las seales de control oportunas..
La ejecucin de una instruccin lleva consigo por lo menos un acceso a memoria (para captar la instruccin), pudiendo efectuar accesos adicionales (captacin de operandos, memorizacin de resultados, etc.)
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 20
5.3.2 Temporizacin
AR PC DR M(AR) IR DR PC PC+1
...
codop1
codop2
codop3
codop4
codop5
...
codopn
23-oct-01
21
5.3.2 Temporizacin
Las operaciones: carga de un registro: MA, PC o IR MR, lectura de memoria: RM M(DM), incremento del contador de programa: PC PC+1, etc.) son las operaciones ms elementales que puede hacer el computador, y reciben el nombre de:
microoperaciones
Se puede concluir que una instruccin mquina, implica la realizacin de un conjunto determinado de microoperaciones en un orden preestablecido.
23-oct-01
22
5.3.2 Temporizacin
Ejemplo 5.1
Computador de palabras de 16 bits. En M(H0039) instruccin H0700: r7 M(rD) rD contiene H54C2 Contenidos de memoria: en la figura Qu microoperaciones se realizarn durante la ejecucin de la instruccin, y los cambios que van teniendo lugar en PC, IR, AR, DR y r7.
direcciones Contenidos 0000 7AC4 0007 0039 003A 003B 003C 54C2 FFFF 65C9 0700 607D 2D07 C000 D7A2 3FC4 instrucciones
dato
23-oct-01
23
5.3.2 Temporizacin
Contenidosderegistros PC Microperaci n ARPC DRM(AR) Captaci n de nstrucci n IRDR 003 9 003 9 003 9 003 9 IR AR DR R7 -
direcciones 0000
Contenidos 7AC4
0007
65C9
0700 607D 2D07 C000 D7A2 3FC4
Fase
Valores iniciales
003 9
003 9 003 9
070 0
0700
FFFF
070 0
070 0
070 0
PCPC+1
ARrD
003 A
003 A
003 0
0700
0700
54C 2
003 070 54C D7A A 0 2 2 Introduccin a la Informtica A.Prieto 003 070 54C D7A D7A (c) McGraw-Hill / Interamericada de Espaa A 0 2 2 2
24
5.3.2 Temporizacin
AR PC DR M(AR) IR DR PC PC+1
carga AR rD DR M(AR) r7 DR
suma
salto
RT rD r0 r7+RT
...
PC rD
23-oct-01
25
Segn lo visto el procesador ejecuta secuencialmente las instrucciones del programa. Sin embargo, con las instrucciones de control se puede alterar el orden de ejecucin de un programa, saltando el mismo a la ejecucin de una instruccin ubicada en una direccin de memoria arbitraria, ds, especificada en la instruccin de salto.
Una vez ejecutada la instruccin de salto el programa ejecuta la instruccin contenida en la posicin ds y las que se encuentren sucesivamente a partir de ella
23-oct-01
26
En las instrucciones condicionales, el salto o llamada slo se produce si se cumple alguna o algunas condiciones, establecidas por el valor de alguno de los biestables indicadores (Z, S, P, V, etc.)
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 27
23-oct-01
29
. . CALL 10A3 . . . .
1
10A3 . 6FAB 6FAC . . 6FFF . . CALL 7CD9 . . . RET
2
7CD9 . AB35 AB36 . . AC55 . . CALL 003C . . . RET
3
003C . . . . 05AC . . . . . RET
23-oct-01
30
Pila PC PC ds
PC Pila
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 32
En consecuencia, las microoperaciones a realizar durante la fase de ejecucin de las llamadas a procedimientos sern:
Llamada a procedimiento:
Pila PC PC ds
ds, es la direccin de comienza del procedimiento (contenido de rD, en el computador-ejemplo).
23-oct-01
33
Zona libre para futuros anidamientos Zona LIFO (pila) SP, cabecera de pila Direcciones de retorno apiladas
Llamadas:
Retornos:
AR SP; DR M(AR) PC DR; SP SP+1
23-oct-01
35
AR PC DR M(AR) IR DR PC PC+1
carga AR rD DR M(AR) r7 DR
suma
salto
RT rD r0 r7+RT
...
PC rD
Fase de ejecucin
23-oct-01
36
5.3.4 MICROPROCESADORES Un microprocesador es un procesador (CPU) implantado en uno o varios circuitos integrados.
Funciones (las de cualquier procesador): Almacena temporalmente las instrucciones. Interpreta los cdigos de operacin de las instrucciones, y genera las seales de control. Genera las secuencias de tiempo que sincronizan los intercambios de informacin entre el microprocesador y su exterior. Contiene registros para el almacenamiento temporal de datos y direcciones. Efecta las operaciones aritmticas y lgicas tpicas de una ALU.
Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 38
23-oct-01
5.3.4 MICROPROCESADORES
Los microprocesadores surgieron a partir de 1971, como consecuencia del alto grado de miniaturizacin de circuitos integrados logrado por la tecnologa electrnica. En la actualidad en un nico chip se integran millones de transistores. Los microprocesadores actuales, adems de los circuitos de un procesador clsico, suelen contener:
Procesador de coma flotante (FPU) Sistema o unidad de gestin de memoria (MMU) Memoria cach (se estudiar ms adelante, en esta misma leccin), Etc.
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 39
5.3.4 MICROPROCESADORES
Un microcontrolador es un circuito integrado que contiene, total o parcialmente, los cinco elementos bsicos de una computadora completa (unidad de control, unidad de tratamiento, memoria y puertos de entrada/salida), estando proyectados para aplicaciones de supervisin, monitorizacin, gestin y control en sistemas tales como:
aparatos de telefona, Electrodomsticos (lavadoras, etc.), instrumentacin mdica, control de robots, lneas de ensamblado, control de semforos, etc.
23-oct-01
40
5.3.4 MICROPROCESADORES
Ejemplos:
TMS1000 (de 4 bits de longitud de palabra), Intel 8051 (8 bits) dispone de 40 patillas de entrada/salida, una CPU de 12 MHz, memoria ROM de 4KB, y memoria RAM de 128 Bytes, y 32 lneas de E/S Intel 8096 (32 bits).
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 41
5.3.4 MICROPROCESADORES
Los procesadores y controladores son circuitos que, por ser muy verstiles, pueden construirse en grandes series a muy bajo precio. Los procesadores se utilizan para
construir computadoras (microcomputadoras) al igual que los microcontroladores, embebidos en multitud de sistemas, de hecho la mayor parte de los sistemas electrnicos digitales actuales se construyen con microprocesadores o microcontroladores, por ser una opcin muy econmica.
Un sistema embebido es un sistema controlado por un microprocesador o un microcontrolador cuyo hardware y software estn especialmente diseados y optimizados para resolver una problema concreto. Por lo general, interactan continuamente con su entorno con objeto de monitorizar o controlar algn proceso 23-oct-01 Introduccin a la Informtica A.Prieto
(c) McGraw-Hill / Interamericada de Espaa
5.3.4 MICROPROCESADORES
Hay sistemas embebidos en multitud de electrodomsticos (lavadoras de ropa, lavavajillas, hornos de microondas, etc.), equipos musicales y de vdeo (lectoras/graba-doras de casetes, CD, televisores, vdeos, mquinas de fotos, etc.), juguetes electrnicos (consola de videojuegos), sistemas de control industrial, Perifricos de computadores comunicaciones de datos (telfonos inalmbricos, telfonos mviles, mdem, etc.), equipos militares y armamento, etc. Un coche moderno puede contener del orden de 100 microprocesadores y microcontroladores que controlan: encendido, desplazamiento de la transmisin, control de potencia, antibloqueo del freno, control de traccin y seguridad (disparo de la bolsa de aire, etc.). 23-oct-01 43 Introduccin a la Informtica A.Prieto
(c) McGraw-Hill / Interamericada de Espaa
23-oct-01
44
23-oct-01
45
http://atc.ugr.es/intro_info_mcgraw.html
23-oct-01
46
Una interrupcin (o excepcin o trap) es una detencin de la ejecucin de un programa antes de que concluya. Esta se realiza para ejecutar otro programa que gestiona o atiende la interrupcin, continundose despus con la ejecucin del programa interrumpido.
23-oct-01
49
Los orgenes de las interrupciones pueden ser muy diversos; por ejemplo:
Fallo de la alimentacin. Anomalas del hardware. Peticin de E/S de un perifrico. Desbordamiento en la ALU Utilizacin de una instruccin mquina inexistente Gestin de tiempo compartido (la interrupcin la provoca el reloj de tiempo real) Violacin de la proteccin de memoria. Peticiones del programador o usuario.
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 50
Determinacin del origen de la interrupcin 3 Servicio del requerimiento realizado Programa preferente
instrucciones
Fin de la interrupcin
Regreso a PE
23-oct-01
51
Puede observarse que la atencin de una interrupcin del tipo descrito es un caso muy particular de llamada a un procedimiento. En un computador las interrupciones se producen con una gran frecuencia. (Pueden producirse, por ejemplo, con intervalos de tiempo menores de 1 ms)
23-oct-01
52
Parmetros: capacidad, velocidad y precio Problema: Diferencia de velocidad de 1 2 rdenes de magnitud entre procesador y memoria.
Solucin: Memoria cach. Circuitos de tecnologa rpida (CMOS- esttica o ECL) que se sitan entre procesador y memoria
23-oct-01
53
Dispositivo
Registrosprocesador Memoriacach(SRAM) Memoriaprincipal(DRAM) Discoduro(magntico) DiscopticoCD-ROM Discomagnetoptico (WMRA) DiscopticoWORM Cintamagntica(DAT) Disquetes
Capacidad
<1KB 32KBa4MB 1MBa1GB 100MB200GB 680MB 0,5a1GB 650MB 2.56GB 2.88MB
Tiempode acceso
3a100ns 10a40ns 30a100ns 8a18ms 0.1a0.3s 0.03s 0.1a0.3s 60s 100ms
Anchode bandaMB/s
400a1.000 200a400 100a200 1a5 0.6 0.15 0.15 0.207 0.05 54
Nivel 0
Registros de la CPU
Nivel 1
Cach ( SRAM )
Nivel 2
Nivel 3
Nivel 4
CAPACIDAD
23-oct-01
55
5.4 JERARQUA DE MEMORIA El procesador capta los datos e instrucciones de la cach, si no estn all, se produce una falta o fallo, y se buscan en la MP, y as sucesivamente, .... Se pasan bloques consecutivos de informacin a los niveles superiores de memoria, conforme se van necesitando. Principio de localidad espacial: Si se accede a una
posicin, hay mucha probabilidad de acceder a las cercanas Principio de localidad temporal: Si se accede a una posicin, tiende a ser referenciado de nuevo
23-oct-01
56
CPU
Perifrico 0
Perifrico 1
(a)
CPU
M em oria
Perifrico 0
Perifrico 1
23-oct-01
58
Problemas: Mucho trfico en el bus. Los elementos ms lentos ralentizan a los ms rpidos (Debido a la jerarqua de memoria).
Soluciones: Controladores de E/S Ms buses: buses especficos de E/S Controlador para Acceso Directo a Memoria (controlador DMA)
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 59
Cache
Memoria Principal
Controlador de E/S
Controlador de E/S
Canal 0
Canal 1
Per. 00
Per.01
....
Per.0n
Per. 10
Per.11
....
Per.1n
Cache
Memoria Principal
Bus de E/S
Adaptador bus
(b)
23-oct-01
60
Per. 00
Per.01
....
Per.0n
Per. 10
Per.11
....
Per.1n
Cache
DMA
23-oct-01
61
Memoria principal
Controlador grfico
VRAM
Controlador SCSI
Bus SCSI
Puente ISA
Bus ISA
Acelerador
Disco DVD Escner
Controlador disquete
Tarjeta de sonido
Modem
Controlador impresora
23-oct-01
62
Microoprocesador Chipset
Memoria ROM
23-oct-01
63
DIMM
23-oct-01
65
CONECTORPCI
CONECTORPCI
CONECTORPCI
CONECTORPCI
CONECTORISA
12/1998. A.Prieto
CONECTORISA
VENTILADOR 2
CHIP SET
VENTILADOR 3
IDE SECUNDARIO
IDE PRIMARIO ALIMENTACIN3.3 V
VENTILADOR 1
DISQUETERA 27 +
ALTAVOZ RESET PWR LED
1 +
HD LED
+
INFRARROJOS
+
SUSP. PWR ON
23-oct-01
66
23-oct-01
68
23-oct-01
71
Paralelismo:
A nivel de instrucciones Segmentacin de cauce Arquitecturas superescalares A nivel de procesadores
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 72
Paralelismo:
A nivel de instrucciones A nivel de procesadores: SISD (computadores von Neumann), un solo procesador. SIMD. Cada instruccin opera con mltiples datos: Procesadores vectoriales Procesadores matriciales (con unidades funcionales segmentadas que operan a la vez con 64 a 256 elementos). MIMD (mltiples procesadores): Multiprocesadores Multicomputadores (Cluster de estaciones de trabajo, ...)
23-oct-01 Introduccin a la Informtica A.Prieto (c) McGraw-Hill / Interamericada de Espaa 73
Arquitecturas de computadoras
SIMD
MIMD
Procesadore s matriciales
Procesadore s vectoriales
(multiprocesadores)
Memoria compartida
Paso de mensajes
(multicomputadoras)
UMA
23-oct-01
NUMA
MPP
Cluster s 74