Arquitectura de la computadora

39
Instituto Tecnológico de Morelia Arquitectura de Computadoras Unidad 1

description

Arquitectura computacional unidad 1 para tecnologicos

Transcript of Arquitectura de la computadora

Page 1: Arquitectura de la computadora

Instituto Tecnológico de Morelia

Arquitectura de Computadoras

Unidad 1

Page 2: Arquitectura de la computadora

Programa

1 Modelo de arquitecturas de cómputo.

1.1 Modelos de arquitecturas de cómputo.1.1.1 Clásicas.

1.1.2 Segmentadas.

1.1.3 De multiprocesamiento.

1.2 Análisis de los componentes.1.2.1 CPU.

1.2.1.1 Arquitecturas.

1.2.1.2 Tipos.

1.2.1.3 Características.

1.2.1.4 Funcionamiento.

Page 3: Arquitectura de la computadora

1.2.2 Memoria.1.2.2.1 Arquitecturas.

1.2.2.2 Tipos.

1.2.2.3 Características.

1.2.2.4 Funcionamiento.

1.2.3 Dispositivos de I/O.

1.2.3.1 Arquitecturas.

1.2.3.2 Tipos.

1.2.3.3 Características.

1.2.3.4 Funcionamiento.

Page 4: Arquitectura de la computadora

Ordenador o Computadora

Sistema de calculo de propósito general que incorpora una unidad central de proceso, memoria y dispositivos de

entrada y salida.

Del Diccionario de Electrónica e informática Orbis-Marcombo 1986.

Page 5: Arquitectura de la computadora

– Habilidad para realizar operaciones aritméticas y lógicas.

– Memoria. Puede retener información por un periodo de tiempo dado.

– Es programable. Efectúa una serie de operaciones en un orden determinado.

– Capacidad de recibir información del mundo exterior y entregar resultados de sus cálculos.

Características

Page 6: Arquitectura de la computadora

Jerarquía de un Sistema de Computo

Computadora

Procesador Subsistema deentrada y salida

CPU Subsistema deMemoria

ALUUnidad de

Control

Page 7: Arquitectura de la computadora

Flujo de información en el CPU

Subsistema de Memoria

Unidad deControl

Unidad LógicaAritmética

DatosCódigos de Operación

Control Resultados

Estado

Control

Page 8: Arquitectura de la computadora

1.1.1 Modelos de arquitectura de computo clásicas

Arquitectura Mauchly-Eckert (VonNewman)

Concepto de programa almacenado

Procesador Memoria PrincipalAlmacena

el programa y los datos

Entrada y salida

Bus principal

Registros

ALU

Unidad deControl

Page 9: Arquitectura de la computadora

Arquitectura Harvard

Espacios de memoria de datos y programa separados

ProcesadorMemoria de datos

Entrada y salida

Bus dedatos

Memoria deprograma

Bus deprograma

Registros

ALU

Unidad deControl

Page 10: Arquitectura de la computadora

1.1.2 Arquitecturas segmentadas

Las arquitecturas segmentadas aparecieron a mediados de los años 1960's como una manera de aumentar el rendimiento sin implicar un nivel masivo de paralelismo

Durante los años 1980's fueron una de las ideas centrales de los procesadores RISC, buscando alcanzar el objetivo de que se ejecutara una instrucción cada ciclo de maquina.

En Inglés se conocen como “pipelined procesors” o procesadores entubados

Page 11: Arquitectura de la computadora

Segmentación o entubamiento

consiste en dedicar unidades especificas del procesador a cada una de las partes del ciclo de instrucción y ejecutarlas paralelamente

Mejora dramáticamente el rendimiento debido a que en los procesadores modernos se tienen hasta 14 etapas en el ciclo de instrucción

Page 12: Arquitectura de la computadora

Segmentación del cause

La unidad de control se subdivide en dos o más unidades funcionales, cada una encargada de llevar a cabo una parte del ciclo de instrucción.

Se comunican a través de una cola de instrucciones (Pipeline)

Unidad de Búsqueda

Unidad deejecuciónCola de Instrucciones

Page 13: Arquitectura de la computadora

Segmentación del cauce(2)

La mejora en el rendimiento no es proporcional al numero de segmentos en el cauce debido a que cada etapa no toma el mismo tiempo en realizarse, además de que se puede presentar competencia por el uso de algunos recursos como la memoria principal

Búsqueda Ejecución

Espera Espera

Page 14: Arquitectura de la computadora

CPU de multiprocesamiento

SISO – (Single Instruction, Single Operand ) computadoras independientes

SIMO – (Single Instruction, Multiple Operand ) procesadores vectoriales

MISO – (Multiple Instruction, Single Operand ) No implementado

MIMO – (Multiple Instruction, Multiple Operand ) sistemas SMP, Clusters

Page 15: Arquitectura de la computadora

multiprocesamiento

Procesadores vectoriales – Son computadoras pensadas para aplicar un mismo algoritmo numérico a una serie de datos matriciales, en especial en la simulación de sistemas físicos complejos

Sistemas SMP (Simetric Multi Procesesors) – Varios procesadores comparten la misma memoria principal y periféricos de I/O, Normalmente conectados por un bus común

Page 16: Arquitectura de la computadora

Clusters

Conjuntos de computadoras independientes conectadas en una red de área local o por un bis de interconexión y que trabajan cooperativamente para resolver un problema

Page 17: Arquitectura de la computadora

1.2-Análisis de los componentes

1.2.1 – CPU 1.2.1.1- arquitecturas

CISC (Complex Instruction Set Computers) Tienen un número amplio de instrucciones y modos de direccionamiento. Se implementan instrucciones especiales que realizan funciones complejas. El número de registros del CPU es limitado

RISC (Reduced Instruction Set Computers) Solo se cuenta con unas pocas instrucciones y modos de direccionamiento, pero se busca implementarlos de forma muy eficiente y que todas las instrucciones trabajen con todos los modos de direccionamiento. Amplio número de registros en el CPU

Page 18: Arquitectura de la computadora

1.2.1.2 Tipos de CPU

Por tamaño del ALU o del Bus de conexión al exterior (8, 16, 32, 64 bits)

De cauce segmentado o no segmentado

CISC o RISC

Von Newan o Harvard

Instrucciones enteras y/o de punto flotante

Page 19: Arquitectura de la computadora

1.2.1.3 Características de los CPU

Modelo del programador (Conjunto de registros que el programador puede utilizar)

Conjunto de instrucciones

Modos de direccionamiento

Ciclo de instrucción

Buses de interconexión

Page 20: Arquitectura de la computadora

1.2.1.4 Funcionamiento del CPU

Se explicara el funcionamiento de una computadora imaginaria, cuyo funcionamiento básico es similar al de la mayoría de las computadoras de propósito general

Contara con una memoria de 4096 palabras de 16 bits cada una (12 bits de direcciones, 16 bits de datos)

En cada localidad de memoria se podrá almacenar un entero de 16 bits o el código de una instrucción, también de 16 bits.

Page 21: Arquitectura de la computadora

Componentes del CPU

Registro ACC (16 bits)– Acumulador, se usará para almacenar uno de los operandos y el resultado de varias de las instrucciones

MAR – (Memory Address Register 12 bits) Registro de dirección de memoria, selecciona a que localidad de memoria se va a leer o a escribir.

MBR – (Memory Bus Register 16 bits) Registro de bus de memoria. A través de él se lee y se escriben los datos.

Page 22: Arquitectura de la computadora

Componentes del CPU (2)

IR Registro de instrucción (16 bits), guarda el codigo de la instrucción que se esta ejecutando.

Flags – Registro de Banderas, agrupa a todas las banderas de la ALU en un registro

Z – Bandera de Cero

O – Sobreflujo

C – Acarreo

PC (Program Counter 16 bits) Contador de programa – almacena la dirección de la siguiente instrucción a leer

Page 23: Arquitectura de la computadora

Codificación de una instrucción

Operación

Código de Instrucción

Codigo de Operación

Operando único

Operando 1 Operando 2

Page 24: Arquitectura de la computadora

Códigos de operación

Código de Operación

Instrucción Operación

0h LOAD (Carga) ACC<-[M]

1h STORE (Almacena) [M]<-ACC

2h ADD (Suma) ACC<-ACC+[M]

3h ADC (Suma con Acarreo) ACC<-ACC+[M]+C

4h SUB (Resta) ACC<-ACC-[M]

5h OR (Or Bit a Bit) ACC<-ACC or [M]

6h AND (And bit a Bit) ACC<-ACC and [M]

7h XOR (Xor Bit a Bit) ACC<-ACC xor [M]

8h SHL (Corrimiento a la Izquierda) ACC<-ACC << 1

9h SHR (Corrimiento a la derecha) ACC<-ACC >> 1

Page 25: Arquitectura de la computadora

Códigos de operación (2)

Código de Operación

Instrucción Operación

Ah BRA Bifurcación o salto PC<-M

Bh BRZ (Bifurca si es Cero) Si Z==1 => PC<-M

Ch BRC (Bifurca si hay Acarreo) Si C==1 => PC<-M

Dh BRO (Bifurca si hay Sobreflujo) Si O==1 => PC<-M

Eh LDI (Carga Constante Inmediata) ACC <-[PC]PC<-PC+1

Fh STOP Detener la simulación

Notas: M es el operandoLDI se codifica en dos palabras, una una para el código de operación y otra para la constante inmediata

Page 26: Arquitectura de la computadora

Ejemplos de Codificación

Instrucción Opcode Operando Código

LD 123h 0h 123h 0123h

ADD 123h 2h 123h 2123h

BRA 123h Ah 123h A123h

LDI 1234h E000h 1234h E000h, 1234h

STOP Fh No Aplica F000h

Page 27: Arquitectura de la computadora

Ciclo de instrucción

Búsqueda de la Instrucción

Decodificación de la Instrucción

Ejecución de la Instrucción

Page 28: Arquitectura de la computadora

Ciclo de instrucción (2)

Búsqueda de instrucción: En esta etapa se lee el código de la siguiente instrucción a ejecutar

PC Contiene la dirección de la instrucción

IR<-[PC] (se lee de memoria el código)

PC<-PC+1(PC apunta a la siguiente instrucción

Decodificación de la instrucción

Se separa el contenido de IR en Opcode y Operando

Se busca a que instrucción corresponde el Opcode

Page 29: Arquitectura de la computadora

Búsqueda Instrucción LOAD 023h

CPU

Banderas

PC

IR

Acumulador

MA

RM

BR

XXXXh

XXXXh

0023h

2024h

000h

001h

002h

003h

Contenido Dir.

XXXXh

1234h

4567h

FFFh

023h

024h

XXXXh 022h

...

...BUS

Memoria

002h

0023h

002h

0023

h003h

Page 30: Arquitectura de la computadora

Ejecución Instrucción LOAD 023h

CPU

Banderas

PC

IR

Acumulador

MA

RM

BR

XXXXh

XXXXh

0023h

2024h

000h

001h

002h

003h

Contenido Dir.

XXXXh

1234h

4567h

FFFh

023h

024h

XXXXh 022h

...

...BUS

Memoria

003h

0023h

023h

1234

h

1234h

Page 31: Arquitectura de la computadora

Búsqueda de la Instrucción ADD 024h

CPU

Banderas

PC

IR

Acumulador

MA

RM

BR

XXXXh

XXXXh

0023h

2024h

000h

001h

002h

003h

Contenido Dir.

XXXXh

1234h

4567h

FFFh

023h

024h

XXXXh 022h

...

...BUS

Memoria

002h

2024h

003h

2024

h003h004h

Page 32: Arquitectura de la computadora

Ejecución Instrucción ADD 024h

CPU

BanderasZ=0, C=0, V=0

PC

IR

Acumulador

MA

RM

BR

XXXXh

XXXXh

0023h

2024h

000h

001h

002h

003h

Contenido Dir.

XXXXh

1234h

4567h

FFFh

023h

024h

XXXXh 022h

...

...BUS

Memoria

004h

2024h

024h

4567

h

579Bh

Page 33: Arquitectura de la computadora

1.2.2 Memorias

Conjunto de celdas de almacenamiento y sus circuitos asociados

Una palabra es el conjunto de bits que puede leerse o escribirse en una sola operación

Un grupo de 8 bits es un byte. Un grupo de 4 bits un Nible

Los tamaños de palabra en las memorias suelen ser múltiplos de 8 bis

El tamaño de la palabra coincide con el numero de terminales de datos que poseen.

Page 34: Arquitectura de la computadora

Memorias (2)

Las lineas de direcciones sirven para escoger en cual de todas las palabras de la memoria se va a guardar o a leer un dato

El número de lineas de direcciones se determina por el tamaño de la memoria

T=2N

T - Número de palabras o localidades

N - Número de lineas de direcciones

Es común que el tamaño de las memorias se exprese como un múltiplo de las siguientes unidades: 1K = 2^10=1024; 1M = 2^20 = 1024*1024, 1G=2^30 = 1024*1024 *1024

Page 35: Arquitectura de la computadora

Clasificación de Memorias

Volátiles: pierden la información cuando son desenergizadas (RAM)

RAM estatica: Se forma con flip-flops. Rápida pero cara.

RAM Dinámica: Se almacenan los datos en la capacitancia parásita de un transistor. Como el capacitor se descarga necesita reescribirse el dato con frecuencia. Alta densidad, baratas pero lentas.

No volátiles: conservan la información aún sin suministro de energía

ROM: Se construyen con diodos, datos grabados por el fabricante

PROM: Los datos se graban quemando fusibles.

EPROM: Similares a la DRAM, guardan los datos en la carga almacenada en la compuerta flotante de un MOSFET especial. Se borran con Luz UV

EEPROM y FLASH: Se borran eléctricamente

Page 36: Arquitectura de la computadora

1.3 Dispositivos de I/O

1.1 Arquitecturas (Técnicas de interfaz)

Escrutinio (Polling) – se revisa si el dispositivo requiere atención periódicamente

Interrupciones – El dispositivo llama a una rutina de atención por medio de un mecanismo de hardware especial, interrumpiendo la ejecución del programa principal

Acceso directo a memoria (DMA Direct Memory Access) El dispositivo de entrada/salida toma el control del Bus del procesador y transfiere los datos la memoria directamente.

Page 37: Arquitectura de la computadora

1.3.1 Tipos

Dispositivos orientados a caracteres – Transfieren cantidades pequeñas de información a la vez, comúnmente por medio de escrutinio o interrupciones, el software los mantiene en un buffer hasta que son procesados por el Software

Dispositivos orientados a bloques – Transfieren la información por bloques a la memoria, usando DMA. Es común que contengan algún tipo de memoria interna para usar como buffer.

Page 38: Arquitectura de la computadora

1.3.3 Características

Tipo de comunicación con la PC

Serie: se comunica un bit a la vez

Paralela: se comunica más de un bit a la vez

Velocidad de transferencia

Latencia: Tiempo que toma en ocurrir la primera transferencia de datos.

Ancho de banda. Velocidad de transferencia de datos bits/seg.

Page 39: Arquitectura de la computadora

1.3.4 Funcionamiento

Teclado

Monitor

Scaner

Disco Flexible

Disco Duro

Unidad óptica

Impresora láser

Impresora inyección

Impresora térmica

Ratón

Unidades de Cinta

Lectores de código de barras

Cámara de vídeo

Tarjeta de sonido

Módem

Módem ADSL