Está en la página 1de 14

Instituto Tecnolgico Superior de Valladolid

ANLISIS DE COMPONENTES (CPU)

Docente: M.E. Genny Yesenia Cetina Marrufo.


INGENIERA EN SISTEMAS COMPUTACIONALES

Juan Jos Rodrguez Cetina 5 Semestre Grupo B

Microprocesador (CICS)

La microprogramacin es una caracterstica importante y esencial de casi todas las arquitecturas CISC. Como por ejemplo: Intel 8086, 8088, 80286, 80386, 80486. Motorola 68000, 68010, 68020, 68030, 6840. La microprogramacin significa que cada instruccin de mquina es interpretada por un microprograma localizada en una memoria en el circuito integrado del procesador.

En la dcada de los sesentas la micropramacin, por sus caractersticas, era la tcnica ms apropiada para las tecnologas de memorias existentes en esa poca y permita desarrollar tambin procesadores con compatibilidad ascendente. En consecuencia, los procesadores se dotaron de poderosos conjuntos de instrucciones. 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. Ejemplo de microprocesadores basados en la tecnologa CISC: MIPS, Millions Instruction. Per Second. PA-RISC, Hewlett Packard. SPARC, Scalable Processor Architecture, Sun Microsystems. POWER PC, Apple, Motorola e IBM.

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, llamadas generalmente microinstrucciones. La microprogramacin es una caracterstica importante y esencial de casi todas las arquitecturas CISC. La microprogramacin significa que cada instruccin de mquina es

interpretada por una microprograma localizada en una memoria en el circuito integrado del procesador. Las instrucciones compuestas son decodificadas internamente y ejecutadas con una serie de microinstrucciones almacenadas en una ROM interna. Para esto se requieren de varios ciclos de reloj, al menos uno por microinstruccin. Es as entonces como los chips CISC utilizan comandos que incorporan una gran diversidad de pequeas instrucciones para realizar una nica operacin.

Microprocesador (RICS)

Buscando aumentar la velocidad del procesamiento se descubri en base a experimentos que, con una determinada arquitectura de base, la ejecucin de programas compilados directamente con microinstrucciones y residentes en memoria externa al circuito integrado resultaban ser ms eficientes, gracias a que el tiempo de acceso de las memorias se fue decrementando conforme se mejoraba su tecnologa de encapsulado. Debido a que se tiene un conjunto de instrucciones simplificado, stas se pueden implantar por hardware directamente en la CPU, lo cual elimina el micro cdigo y la necesidad de decodificar instrucciones complejas. Las caractersticas esenciales de una arquitectura RISC pueden resumirse como sigue: Estos microprocesadores siguen tomando como base el esquema moderno de Von

Neumann. Entre las ventajas de RISC tenemos las siguientes: La CPU trabaja ms rpido al utilizar menos ciclos de reloj para ejecutar instrucciones. Utiliza un sistema de direcciones no destructivas en RAM. Eso significa que a diferencia

de CISC, RISC conserva despus de realizar sus operaciones en memoria los dos operandos y su resultado, reduciendo la ejecucin de nuevas operaciones. Cada instruccin puede ser ejecutada en un solo ciclo del CPU.

Las instrucciones, aunque con otras caractersticas, siguen divididas en tres grupos: a) Transferencia. b) Operaciones. c) Control de flujo. El hecho de que la estructura simple de un procesador RISC conduzca a una notable reduccin de la superficie del circuito integrado, se aprovecha con frecuencia para ubicar en el mismo, funciones adicionales: Unidad para el procesamiento aritmtico de punto flotante.

Unidad de administracin de memoria. Funciones de control de memoria cache. Implantacin de un conjunto de registros mltiples.

La relativa sencillez de la arquitectura de los procesadores RISC conduce a ciclos de diseo ms cortos cuando se desarrollan nuevas versiones, lo que posibilita siempre la aplicacin de las ms recientes tecnologas de semiconductores. Por ello, los procesadores RISC no solo tienden a ofrecer una capacidad de procesamiento del sistema de 2 a 4 veces mayor, sino que los saltos de capacidad que se producen de generacin en generacin son mucho mayores que en los CISC.

Por otra parte, es necesario considerar tambin que:

La disponibilidad de memorias grandes, baratas y con tiempos de acceso menores de 60

ns en tecnologas CMOS. Mdulos SRAM (Memoria de acceso aleatorio esttica) para memorias cache con

tiempos de acceso menores a los 15 ns

Unidad Aritmtico-lgica.

Como su propio nombre indica, la unidad Aritmtico-Lgica ALU ("Arithmetic and Logic Unit"), es responsable de realizar ciertas operaciones aritmticas y lgicas. En cuanto a las primeras, ya hemos indicado ( 3) que los primeros procesadores solo eran capaces de realizar operaciones de aritmtica bsica con nmeros enteros, y que las operaciones con nmeros fraccionarios deban hacerse mediante artificios software. Esto haba motivado la aparicin de procesadores especficos para estas operaciones, los denominados coprocesadores matemticos. A partir de la introduccin del Intel 80486 el coprocesador matemtico fue incluido en el procesador. La unidad aritmtica de los procesadores actuales no solo puede realizar las operaciones aritmticas bsicas con nmeros enteros o fraccionarios, tambin ejecuta operaciones como raz cuadrada y funciones trascendentes, como clculo del seno, coseno, tangente, arcotangente, logaritmos y exponenciacin. Nota: En C++ los operadores aritmticos estn incluidos en el lenguaje ( E4.9.1), las operaciones trascendentes estn implementadas mediante funciones de la Librera Estndar ( 5), en la que existe toda una seccin dedicada a estas operaciones <math.h>.

Por su parte, la unidad lgica es la responsable de realizar operaciones lgicas como AND, OR, XOR, etc ( E4.9.8). Unidad de Control

La Unidad de Control

CU ("Control Unit") funciona como rbitro del funcionamiento del procesador. Se encarga de coordinar que todos los elementos funcionen de forma armnica. Para la ejecucin de una instruccin de lenguaje mquina se requieren una serie de operaciones elementales y de sucesos fsicos en los diversos componentes del procesador. Podramos poner un ejemplo: El procesador es un submarino en inmersin y el comandante da la orden de emerger. Esto requiere una serie de operaciones; los tripulantes deben abrir unas vlvulas, cerrar otras; orientar el timn de profundidad; ajustar la velocidad, etc. etc. En el procesador, la operacin MOV AX, BX (mover el contenido del registro BX a AX), requiere tambin la operacin de una serie de vlvulas (aqu se llaman puertas lgicas) en un orden determinado. El conjunto de operaciones necesarias para que se complete cada instruccin de lenguaje-mquina se conoce como microcdigo. Es un programa de actuacin cableado en silicio (firmware) o en una memoria interna especial del procesador CROM ("Control Read Only Memory), y suele comenzar con las maniobras necesarias para traer ("Fetch") la prxima instruccin (sealada por el contador de programa IP), a un mdulo de la CU denominado decodificador de instrucciones. La Unidad de Control, responsable de que todas estas

operaciones se ejecuten correctamente, es en realidad el poder ejecutivo de la UCP (siguiendo con nuestro smil, en las mquinas de von Neumann [4], el "Poder legislativo" sera el programa grabado en memoria). Nota: Algunos microprocesadores modernos (por ejemplo los Pentium de Intel), permiten modificar el contenido de la CROM, alterando as el microcdigo. Esto no solo permite actualizarlo, tambin corregir ocasionalmente algunos errores ("Bugs"); estas actualizaciones se realizan a travs de la secuencia POST del BIOS ( 4.2). En la terminologa utilizada por los fabricantes de procesadores, las versiones del microcdigo se denominan escalamientos. Al referirse al microcdigo, el nmero de escalamiento es equivalente al nmero de versin en el caso del software. Como todo lo dems que ocurre en el ordenador estas operaciones se ejecutan segn el comps de las seales de reloj que llegan desde la placa-base. En ocasiones se trata de un microcdigo complicado, para el que se necesitan varios ciclos de reloj. Por ejemplo, en el 8080 (un antepasado del 8088 montado en los primeros PC's), el microcdigo de las instrucciones ms complejas necesitaba nada menos que 18 ciclos de reloj (CLK) para su ejecucin, frente a los 4 ciclos de las instrucciones ms rpidas.

Aunque el microcdigo se mejora constantemente, su simplificacin tiene un lmite, que marca el rendimiento del procesador. Las nicas formas de acelerarlo es aumentar la frecuencia del reloj y el procesamiento paralelo y simultaneo de varias instrucciones. Esta ltima capacidad requiere una arquitectura especial (sper escalar) de los procesadores, a la que ya nos hemos referido (3).

El bus interno. Los diversos elementos de un microprocesador estn interconectadas de forma muy compleja (el propio micro lo s), de forma que la imagen de la figura 1 es solo una simplificacin conceptual. En realidad existen varios buses principales, cuya anchura que es dos a cuatro veces la del bus externo ( H2) de los PC's, y muchos ms secundarios. En la figura adjunta se muestra un esquema de la arquitectura interna de un procesador de la familia Pentium de Intel (Arq. Pentium) en la que puede apreciarse su complejidad.

Los registros. El procesador necesita para su funcionamiento de ciertas reas de almacenamiento, que aqu se llaman registros, y que son de dimensiones mnimas [3]; sin embargo, tienen la ventaja de su rapidez. Comparados con los accesos a RAM, los de registro son como mnimo 10 veces ms veloces. El 8088 dispone de catorce registros de 16 bits que se agrupan en cuatro grupos y que reciben nombres especiales (precisamente los que se utilizan para designarlos en lenguaje ensamblador).

Registros de uso general

Existen 4 registros denominados AX, BX, CX y DX que en realidad tienen asignados usos caractersticos, aunque pueden ser utilizados a discrecin para cualquier cosa que necesitemos.

AX es denominado acumulador; suele contener uno de los operandos que intervienen en las operaciones aritmticas y lgicas, y despus de esta, el resultado de la operacin. En general las instrucciones que trabajan con este registro (o su mitad inferior) tienen un microcdigo ms simple que la misma instruccin ejecutada con otro registro. BX es el registro base, suele contener la direccin de inicio de una tabla de valores. CX es denominado contador. Las instrucciones de bucle (LOOP) utilizan este registro como contador. DX es un registro de datos, multiuso. Se utiliza en operaciones de multiplicacin y divisin junto con AX. En operaciones de entrada/salida de puertos IN/OUT, su mitad inferior DL, contiene el nmero de puerto (2.5). Aunque estos cuatro registros son de 16 bits (como los 10 restantes) [6], en caso necesario pueden ser utilizados en dos mitades (nibbles), "High" y "Low", de 8 bits, con lo que puede considerarse que existen 12 registros de uso general (no simultneos), los anteriores y sus mitades: AH; AL; BH; BL; CH; CL; DH y DL.

Registros de segmento

Se dispone de cuatro registros que sirven para contener las direcciones de otros tantos segmentos (zonas de 64 KB de memoria). Utilizndolos en conjuncin con otros registros que sealan las direcciones concretas dentro de estos segmentos (los desplazamientos), permiten manejar la totalidad de la memoria direccionable (el bus de direcciones es de 20 bits). Ver al respecto el epgrafe "Direccionamiento segmentado" ( 5.1). Segmento de cdigo CS ("Code segment"). Seala la direccin del segmento de cdigo del programa que se est ejecutando ( E1.3.2). Segmento de datos DS ("Data segment"). Seala la direccin del segmento de datos del programa en ejecucin ( E1.3.2). Segmento de pila SS ("Stack segment"). Seala la direccin del segmento donde est la pila del programa ( E1.3.2). Segmento extra ES ("Extra segment"). Es un segmento auxiliar a los anteriores, se utiliza para sealar espacio extra en alguno de los segmentos o para almacenar momentneamente direcciones intermedias.

Nota: Puede ocurrir que programas pequeos utilicen el mismo segmento para el cdigo, los datos y la pila.

Registros de puntero

Son 5 registros destinados a contener direcciones; estas direcciones son desplazamientos dentro de los segmentos indicados por los registros de segmento (ver figura 5.1 Fig.2) El primero, denominado indistintamente puntero de instruccin IP ("Instruccin pointer") y contador de programa PC ("Program counter"), indica el desplazamiento (dentro del segmento de cdigo CS) de la prxima instruccin a ejecutar. El puntero de pila SP ("Stack Pointer"), seala el desplazamiento del final de la pila dentro del segmento de pila SS. En caso necesario la pila puede crecer a partir de este punto, de forma que por ejemplo, una nueva invocacin de funcin crear un nuevo registro de activacin que comenzar en este punto. El puntero base BP ("Base pointer") seala el desplazamiento (dentro del segmento de pila SS) donde se encuentra el origen de la zona ocupada por las variables dinmicas. Existen dos registros denominados "de ndice", en razn de su utilizacin muy particular; el ndice fuente SI ("Source index") y el ndice destino DI ("Destination index"). Generalmente estos dos registros se utilizan con alguno de los registros de uso general y con ciertas instrucciones especficamente pensadas para transferir datos (dentro de un rango de posiciones de memoria), desde un punto inicial de un segmento de datos, a otro. Registro de estado

Existe un registro especial, el registro de estado (FLAGS), en el que 9 de los 18 bits actan como semforos (indicadores del estado del procesador y del resultado de determinadas operaciones). Por ejemplo, si despus de una suma aritmtica hay o no desbordamiento del bit ms significativo.

Cada bits individual puede estar "activo" (1) o "inactivo" (0), y tiene un identificador que termina en F ("Flag"). Son los siguientes: Registro de estado Existe un registro especial, el registro de estado (FLAGS), en el que 9 de los 18 bits actan como semforos (indicadores del estado del procesador y del resultado de determinadas operaciones). Por ejemplo, si despus de una suma aritmtica hay o no desbordamiento del bit ms significativo. Los nombres y situacin de cada uno, dentro de la palabra de 16 bits, se muestran en la figura 2. Cada bits individual puede estar "activo" (1) o "inactivo" (0), y tiene un identificador que termina en F ("Flag"). Son los siguientes: Bit CF PF Indicador de: Acarreo Flag") Paridad Flag") Uso

("Carry Indicador de arrastre del bit de mayor orden, que puede ocurrir en las operaciones aritmticas suma y resta. ("Parity Si est activo Indica un nmero par de bits activos (bits cuyo contenido es 1). Esta informacin es til cuando el procesador controla transmisiones de datos. Indicador de ajuste en operaciones aritmticas con cantidades BCD ( E0.1w1).

AF ZF SF TF

Acarreo auxiliar

Cero ("Zero Flag") Est activo si el resultado de operacin es cero o resultado de comparacin igual. Signo ("Sign Flag") Si est activo indica que el resultado de operacin o de comparacin son negativos [5]. Detencin Flag") ("Trap Si est activo, el procesador genera automticamente una interrupcin despus de la ejecucin de cada instruccin, lo que permite controlar paso a paso la ejecucin del programa. Este bit debe estar normalmente inactivo (a 0). Este bit controla el estado del sistema de interrupciones enmascarables ( 2.4). Cuando est activo (1) permite las interrupciones; el estado inactivo (0) las deshabilita. Indica la direccin de las operaciones. Seala desbordamiento aritmtico

IF

Interrupcin ("Interrupt Flag") Direccin ("Direction Flag") Desbordamiento (Overflow Flag")

DF OF

CONCLUSIN

Hoy en da, los programas cada vez ms grandes y complejos demandan mayor velocidad en el procesamiento de informacin, lo que implica la bsqueda de microprocesadores ms rpidos y eficientes. Cada arquitectura tiene sus ventajas y desventaja, es tanto as que hoy en da existen los llamados microprocesadores hbridos los cuales emplean lo mejor de cada uno de estos tipos de arquitectura, por consiguiente no sera vlido pensar que una es mejor o peor con respecto a la otra. La diferencias bsica radica en que una permite un gran nmero de instrucciones permitiendo operaciones muy complejas pero por consiguiente resulta ms lenta, mientras la otra realiza o ejecuta instrucciones ms cortas pero en un periodo de tiempo menor. Y adems usamos cualquiera que es en base a nuestras necesidades. Por ello se han ido desarrollando las CPU con el tiempo. Ya que la pc tienen varios componentes y que cada uno tiene una funcin primordial, el CPU es el que se encarga de realizar los procesos a travs del operador que manda a hacer un proceso, esto tiene que pasar por el procesador ir despus al disco duro, despus a la memoria RAM y por ultimo volver a pasar por procesador.

Referencias.

http://zator.com/Hardware/H3_2.htm http://www-uatx-hugo-arquitecturas.blogspot.mx/2011/02/arquitecturas-risc-y-cisc.html http://rcmcomputointegrado.blogspot.mx/2012/03/arquitectura-risc-y-cisc.html