Unidad 1 Arquitectura de Computadoras2

download Unidad 1 Arquitectura de Computadoras2

of 70

Transcript of Unidad 1 Arquitectura de Computadoras2

Concepto de Ordenador o Computadora

Concepto de Ordenador o ComputadoraSistema de calculo de propsito generalque incorpora una unidad central deproceso, memoria y dispositivos deentrada y salida. Caractersticas Habilidad para realizar operaciones aritmticas ylgicas. Memoria. Puede retener informacin por un periodo de tiempo dado. Es programable. Efecta una serie de operaciones enun orden determinado. Capacidad de recibir informacin del mundo exterior yentregar resultados de sus clculos. jerarqua de un sistema de computo ComputadoraProcesadorSubsistemas de entrada salidaCPUSubsistema de memoriaALUUnidad de control Flujo de informacin Subsistema de memoriaUnidad de controlUnidad aritmtica y lgicaControlResultadosDatosEstadoControlCdigo de operacin1.1.1 Modelos de arquitectura decomputo clsicasArquitectura Mauchly-Eckert (VonNewman)Primeras computadoras electromecnicas y de tubos de vaco.Concepto de programa almacenado.Desventajas:Cuello de botella de Von newmanArquitectura Mauchly-Eckert (Von Newman)

ProcesadorALUALMemoria principal almacena los programas y los datosEntrada y salidaUNIDAD DE CONTROLALURegistrosBUS PRINCIPALUn ordenador con esta arquitectura realiza o emula los siguientes pasos secuencialmente:1.--Enciende el ordenador y obtiene la siguiente instruccin desde la memoria en la direccin indicada por el contador de programa y la guarda en el registro de instruccin.2.--Aumenta el contador de programa en la longitud de la instruccin para apuntar a la siguiente.3.--Decodifica la instruccin mediante la unidad de control. sta se encarga de coordinar el resto de componentes del ordenador para realizar una funcin determinada.4.--Se ejecuta la instruccin. sta puede cambiar el valor del contador del programa, permitiendo as operaciones repetitivas. El contador puede cambiar tambin cuando se cumpla una cierta condicin aritmtica, haciendo que el ordenador pueda 'tomar decisiones', que pueden alcanzar cualquier grado de complejidad, mediante la aritmtica y lgica anteriores.

Arquitectura HarvardAl igual que en la arquitectura Von Newman, el programa se almacena como un cdigo numrico en la memoria, pero no en el mismo espacio de memoria ni en el mismo formato que los datos. Por ejemplo, se pueden almacenar las instrucciones en doce bits en la memoria de programa, mientras los datos de almacenan en 8 bits en una memoria aparte.

Arquitectura HarvardMemoria de programaMemoria de datosEntrada y salidaProcesadorALURegistrosUnidad de controlTener un bus separado para el programa y otro para los datos permite que se lea el cdigo de operacin de una instruccin, al mismo tiempo se lee de la memoria de datos los operados de la instruccin previa. As se evita el problema del cuello de botella de Von Newman y se obtiene un mejor desempeo.1.1.2 Arquitecturas Segmentadas.Las arquitecturas segmentadas aparecieron a mediados de los aos 1960's como una manera de aumentar el rendimiento sin implicar un nivelmasivo de paralelismo

Durante los aos 1980's fueron una de las ideas centrales de los procesadores RISC, buscando alcanzar el objetivo de que se ejecutara unainstruccin cada ciclo de maquina.En Ingls se conocen como pipelined procesors o procesadores entubados1.1.2 Arquitecturas Segmentadas. Las arquitecturas segmentadas o con segmentacin del cauce buscan mejorar el desempeo realizando paralelamente varias etapas del ciclo de instruccin al mismo tiempo.1.1.2 Arquitecturas Segmentadas. El procesador se divide en variasunidades funcionales independientes y se dividen entre ellas el procesamiento de las instrucciones.1.1.2 Arquitecturas Segmentadas.Consiste en dedicar unidades especificas delprocesador a cada una de las partes del ciclo deinstruccin y ejecutarlas paralelamente.Este proceso mejora dramticamente el rendimiento debido a que en los procesadores modernos se tienen hasta 14 etapas en el ciclo de instruccin.

1.1.2 Arquitecturas Segmentadas.

B1 E1 B2 E2 B3 E3Procesador sin entubamiento1.1.2 Arquitecturas Segmentadas.

B1 B2 B3 B4Procesador sin entubamientoE1 E2 E3 B/UEUSegmentacin del cause.

La unidad de control se subdivide en dos o msunidades funcionales, cada una encargada de llevar a cabo una parte del ciclo de instruccin.Se comunican a travs de una cola de instrucciones (Pipeline)

Unidad de BsquedaUnidad de ejecucinde eCola de instruccionesSegmentacin del cause(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, adems de que se puede presentar competencia por el uso de algunos recursos como la memoriaPrincipal

Bsqueda EjecucinEsperaEsperaConsecuencias de la competencia por un recurso1.1.3 Arquitecturas de multiprocesamiento.Cuando se desea incrementar el desempeo ms haya de lo que permite la tcnica de segmentacin del cauce (limite terico de una instruccin por ciclo de reloj), se requiere utilizar ms de un procesador para la ejecucin del programa de aplicacin.1.1.3 Arquitecturas de multiprocesamiento. Las CPU de multiprocesamiento se clasifican de la siguiente manera: 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, ClustersProcesadores vectorialesSon computadoras pensadas para aplicar un mismo algoritmo numrico a una serie de datos matriciales, en especial en la simulacin de sistemas fsicos complejos, tales comosimuladores para predecir el clima, explosiones atmicas, reacciones qumicas complejas, etc., donde los datos son representados como grandes nmeros de datos en forma matricial sobre los que se deben se aplicar el mismo algoritmo numrico.Sistemas SMP (Simetric Multiprocesesors), En los sistemas SMP (Simetric Multiprocesesors), varios procesadores comparten la misma memoriaprincipal y perifricos de I/O, Normalmente conectados por un bus comn. Se conocen comosimtricos, ya que ningn procesador toma el papel de maestro y los dems de esclavos, sino que todostienen derechos similares en cuanto al acceso a la memoria y perifricos y ambos son administrados por el sistema operativo.Clusters Los Clusters son conjuntos de computadoras independientes conectadas en una red de rea local o por un bis de interconexin y que trabajan cooperativamente para resolver un problema. Es clave en su funcionamiento contar con un sistema operativo y programas de aplicacin capaces de distribuir el trabajo entre las computadoras de la red.1.2 Anlisis de los componentes1.-CPU2.-Memoria3.-Manejo de entrada/salida4.-Buses5.-Interrupciones

1.2.1 CPU1.2.1.1 Arquitecturas Adems de las arquitecturas de Von Newman y la Harvard han aparecido otras arquitecturas hibridas como:RISC y CISC.

Arquitecturas RISC En arquitectura computacional, RISC (del ingls Reduced Instruction Set Computer ) Computador con Conjunto de Instrucciones Reducidas) es un tipo de diseo de CPU generalmente utilizado en microprocesadores o microcontroladores con las siguientes caractersticas fundamentales:Instrucciones de tamao fijo y presentadas en un reducido nmero de formatos.Slo las instrucciones de carga y almacenamiento acceden a la memoria de datos.Adems estos procesadores suelen disponer de muchos registros de propsito general.El objetivo de disear mquinas con esta arquitectura es posibilitar la segmentacin y el paralelismo en la ejecucin de instrucciones y reducir los accesos a memoria. Las mquinas RISC protagonizan la tendencia actual de construccin de microprocesadores. PowerPC, DEC Alpha, MIPS, ARM, SPARC son ejemplos de algunos de ellos.Arquitecturas RISCRISC es una filosofa de diseo de CPU para computadora que est a favor de conjuntos de instrucciones pequeas y simples que toman menor tiempo para ejecutarse.

La idea fue inspirada por el hecho de que muchas de las caractersticas que eran incluidas en los diseos tradicionales de CPU para aumentar la velocidad estaban siendo ignoradas por los programas que eran ejecutados en ellas. Adems, la velocidad del procesador en relacin con la memoria de la computadora que acceda era cada vez ms alta. Esto conllev la aparicin de numerosas tcnicas para reducir el procesamiento dentro del CPU, as como de reducir el nmero total de accesos a memoria.

Arquitecturas CISC En arquitectura computacional, CISC (del ingls Complex Instruction Set Computer, Computador con Conjunto de Instrucciones Complejas). En este modelo de arquitectura de computadoras los microprocesadores CISC tienen un conjunto de instrucciones que se caracteriza por ser muy amplio y permitir operaciones complejas entre operandos situados en la memoria o en los registros internos, en contraposicin a la arquitectura RISC.

Arquitecturas CISC Este tipo de arquitectura dificulta el paralelismo entre instrucciones, por lo que, en la actualidad, la mayora de los sistemas CISC de alto rendimiento implementan un sistema que convierte dichas instrucciones complejas en varias instrucciones simples del tipo RISC, llamadas generalmente microinstrucciones.Los CISC pertenecen a la primera corriente de construccin de procesadores, antes del desarrollo de los RISC. Ejemplos de ellos son: Motorola 68000, Zilog, Z80 y toda la familia Intel x86, AMD x86-64 usada en la mayora de las computadoras personales actuales.

1.2.1.2 Tipos.Los CPUs modernos pueden clasificarse de acuerdo a varias caractersticas, tales como: el tamao del ALU o del Bus de conexin al exterior (8, 16, 32, 64 bits),si tienen cauce segmentado o nosegmentado, si con tipo CISC o RISC, Von Newan o Harvard y si solo tienen instrucciones enteras oimplementan tambin instrucciones de punto flotante.1.2.1.3 Caractersticas.Las caractersticas ms importantes a considerar al escoger un CPU para usarlo en una aplicacin, son:Modelo del programador (Conjunto de registros que el programador puede utilizar), forman el modelo mental del CPU que el programador utiliza al programar en ensamblador.Conjunto de instrucciones que puede ejecutar el CPUModos de direccionamiento que pueden usarse para obtener los operandos de las instrucciones.Ciclo de instruccin (el conjunto de pasos que realiza el CPU para procesar cada instruccin)Buses de interconexin, usados para que el CPU lea y escriba a la memoria y a los dispositivos de entrada y salida.1.2.1.4 FuncionamientoSe explicara el funcionamiento de una computadora imaginaria, cuyo funcionamiento bsico es similar al de la mayora de las computadoras de propsito 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 cdigo de una instruccin, tambin de 16 bits.Componentes del CPURegistro 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 direccin 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 travs de l se lee y se escriben los datos.Componentes del CPU (2)IR Registro de instruccin (16 bits), guarda el codigo de la instruccin 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 AcarreoPC (Program Counter 16 bits) Contador de programa almacena la direccin de la siguiente instruccin a leer.Codificacin de una instruccinCdigo de InstruccinOperacin Operando 1 Operando 2 Operacin Operando nicoCdigo de OperacinCdigos de operacinCdigo de OperacinInstruccinOperacin0hLOADACC