Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

download Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

of 12

Transcript of Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    1/12

    UNIDAD 2. ESTRUCTURA

    Y FUNCIONAMIENTO DELA CPUINSTITUTO TECNOLOGICO DE TAPACHULA

    INGENIERIA EN SISTEMAS COMPUTACIONALES5 SEMESTRE

    ARQUITECTURA DE COMPUTADORASCATEDRATICO: ING. ROSEL MUOZ LOPEZ

    ENSAYO UNIDAD 2

    REALIZADO POR: RUIZ BALCAZAR JESUS HUMBERTO

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    2/12

    Conceptos Bsicos

    Estructura. La estructura es la distribucin de las partes de un cuerpo, aunquetambin puede usarse en sentido abstracto. El concepto hace mencin a ladisposicin y el orden de las partes dentro de un todo.

    Funcionamiento. En trminos generales, la palabra funcionamiento refiere a laejecucin de la funcin propia que despliega una persona o en su defecto unamquina, en orden a la concrecin de una tarea, actividad o trabajo, de manerasatisfactoria.

    CPU. Esta denominacin es una abreviacin que refiere a unaUnidad entral de!rocesamiento. Es un componente bsico de la computadora personal uordenador que procesa datos y reali"a clculos matemticos#informticos.!roporciona la capacidad de programacin, y junto con la memoria y losdispositivos de entrada$salida es de los componentes computacionales que

    encontramos presente en toda la historia de las computadoras.

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    3/12

    Organizacin del procesador

    Un procesador, incluye tanto registros visibles por el usuario como registros decontrol$estado. Los registros visibles por el usuario pueden ser de uso general otener una utilidad especial, mientras que los registros de control y estado se usan

    para controlar el funcionamiento delprocesador, un claro ejemplo es elcontador de programa. Losprocesadores utili"an la segmentacinde instrucciones para acelerar laejecucin. La segmentacin de cauce sepuede dividir en ciclo de instruccin envarias etapas separadas que operansecuencialmente, tales como lacaptacin de instruccin, decodificacinde instruccin, clculo de direcciones de

    operando, ejecucin de instruccin yestructura del operando resultado.

    La !U controla las operaciones bsicas del ordenador enviando y recibiendose%ales de control, direcciones de memoria y datos de un lugar a otro de lacomputadora a travs de un grupo de canales llamados &U'.

    La Unidad entral de !roceso est constituida internamente por(

    La Unidad de ontrol Unidad )ritmtico#Lgica

    Unidad Aritmtico-Lgica (ALU)

    *ecibe los datos sobre los que efect+a operaciones de clculo y comparaciones.oma decisiones lgicas -determina si una afirmacin es correcta o falsa mediantereglas del algebra de &oole y devuelve luego el resultado. odo ello bajosupervisin de la unidad de control.

    La Unidad de Control

    La unidad de control le indica al resto del sistema como llevar a cabo lasinstrucciones de un programa. omanda las se%ales electrnicas entre la memoriay la unidad aritmtico#lgica, y entre el !U y los dispositivos de entrada y salida.!ara ejecutar cualquier programa, cada comando del mismo se desglosa eninstrucciones.Los procesadores utili"an la segmentacin de instrucciones para acelerar laejecucin. La segmentacin de cauce se puede dividir en ciclo de instruccin envarias etapas separadas que operan secuencialmente, tales como la captacin de

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    4/12

    instruccin, decodificacin de instruccin, clculo de direcciones de operando,ejecucin de instruccin y estructura del operando resultado.

    ) continuacin, se muestra cmo se organi"a un procesador, para esto se tieneque considerar los siguientes requisitos(

    aptar instrucciones( el procesador lee una instruccin de memoria-registro, cache o memoria principal. /nterpretar instruccin( la instruccin se codifica para determinar qu accin

    es necesario. aptar datos( la ejecucin de una instruccin puede e0igir leer datos de

    memoria o de un mdulo de E$'. !rocesar datos( la ejecucin de una instruccin puede e0igir llevar a cabo

    alguna operacin aritmtica o lgica con los datos. Escribir datos( los resultados de una ejecucin pueden e0igir escribir datos

    en la memoria o en el mdulo de E$'.

    !ara hacer estas cosas, el procesador necesita almacenar instrucciones y datostemporalmente mientras una instruccin est ejecutndose, en otras palabras, elprocesador necesita una peque%a memoria interna, tambin llamados registros.

    Estructura de registros

    El *egistro est organi"ado en una estructura jerrquica compuesta porsubrboles con sus respectivas claves, subclaves y entradas.El contenido del *egistro puede variar considerablemente de un equipo a otro, enfuncin de los dispositivos, servicios y programas instalados en cada equipo.

    Las claves pueden contener subclaves que, a su ve", pueden contener otrassubclaves. )unque la mayor parte de la informacin del *egistro se almacena endisco y se considera permanente, algunos datos almacenados en claves voltilesse sobrescriben cada ve" que se inicia el sistema operativo.

    Registros visibles para el usuario

    1inimi"an el acceso entre el microprocesador y !U, debido a que se encuentrandentro del !U, son manipulables por lenguaje de mquina. )qu2 tenemos los 3principales(

    4 *egistros de 5atos. -1anipulables a bajo nivel.

    3 *egistro de 5irecciones -1anipulables a bajo nivel.

    6 *egistro de 2ndice.'irve para direccionamiento, es similar al 7!8, pero tiene un valor base deautoincremento( Ejemplo( &ase 9 9, :, ; que se ir sumando paraobtener una direccin ms efectiva.

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    5/12

    Registros de control y de estados

    ?ay diversos registros del procesador que se emplean para controlar sufuncionamiento. La mayor2a de ellos, en la mayor parte de las mquinas, no sonvisibles por el usuario. )lgunos de ellos pueden ser visibles por ciertas

    instrucciones mquina ejecutadas en un modo de controlo de sistema operativo.@aturalmente, mquinas diferentes tendrn distintas organi"aciones de registros yusarn distinta terminolog2a. ) continuacin, se presenta una lista ra"onablementecompleta de tipos de registros, con una breve descripcin.

    'on esenciales cuatro registros para la ejecucin de una instruccin( ontador de programa -!rogram ounter, !( contiene la direccin de la

    instruccin a captar. *egistro de instruccin -lnstruction *egister, /*( contiene la instruccin

    captada ms recientemente. *egistro de direccin de memoria -1emory )ddress *egister, 1)*(

    contiene la direccin de una posicin de memoria. *egistro intermedio de memoria -1emory &uffer *egister, 1&*( contiene

    la palabra de datos a escribir en memoria o la palabra le2da msrecientemente.

    @o todos los procesadores tienen registros internos designados como 1)* y1&*, pero es necesario alg+n mecanismo de almacenamiento intermedioequivalente mediante el cual se d salida a los bits que van a ser transferidos albus del sistema y se almacenen temporalmente los bits le2dos del bus de datos.2picamente, el procesador actuali"a ! despus de cada captacin deinstruccin de manera que siempre apunta a la siguiente instruccin a ejecutar.Una instruccin de bifurcacin o salto tambin modificar el contenido de !. Lainstruccin captada se carga en /*, donde son anali"ados el cdigo de operacin ylos campos de operando. 'e intercambian datos con la memoria por medio de1)* y de 1&*. En un sistema con organi"acin de bus, 1)* se conectadirectamente al bus de direcciones, y 1&* directamente al bus de datos. Losregistros visibles por el usuario repetidamente intercambian datos con 1&*.Los cuatro registros que se acaban de mencionar se usan para la transferencia dedatos entre el procesador y la memoria. 5entro del procesador, los datos tienenque ofrecerse a la )LU para su procesamiento.La )LU puede tener acceso directo a 1&* y a los registros visibles por el usuario.omo alternativa, puede haber registros intermedios adicionales en tomo a la )LU>

    estos registros sirven como registros de entrada y salida de la )LU e intercambiandatos con 1&* y los registros visibles por el usuario.

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    6/12

    Ejemplos de organizacin de registros de CPU reales

    En alg+n dise%o concreto de procesador es posible encontrar otros registrosrelativos a estado y control. !uede e0istir un puntero a un bloque de memoria quecontenga informacin de estado adicional -por ejemplo, bloques de control deprocesos. En las mquinas que usan interrupciones puede e0istir un registro devector de interrupcin. 'i se utili"a una pila para llevar a cabo ciertas funciones-por ejemplo, llamada a subrutina, se necesita un puntero de pila del sistema. Enun sistema de memoria virtual se usa un puntero a la tabla de pginas.!or +ltimo, pueden emplearse registros para el control de operaciones de E$'. Enel dise%o de la organi"acin de los registros de control y estado entran en juegovarios factores. Una cuestin primordial es el soporte del sistema operativo.

    )lgunos tipos de informacin de control son de utilidad espec2fica para el sistemaoperativo. 'i el dise%ador del procesador posee una comprensin funcional delsistema operativo que se va a utili"ar, la organi"acin de los registros puedeadaptarse hasta cierto punto a ese sistema operativo. Atra decisin importante enel dise%o es la distribucin de informacin de control entre registros y memoria. Esfrecuente dedicar los primeros -ms bajos pocos cientos o miles de palabras dememoria para fines de control. El dise%ador debe decidir cunta informacin decontrol debiera estar en registros y cunta en memoria. 'e presenta elcompromiso habitual entre coste y velocidad.

    El ciclo de instruccin

    Un ciclo de instruccin -tambin llamado ciclo de fetch#and#e0ecute o ciclo defetch#decode#e0ecute en ingls es el periodo de tiempo que tarda la unidadcentral de proceso -!U en ejecutar una instruccin de lenguaje mquina.omprende una secuencia de acciones determinada que debe llevar a cabo la!U para ejecutar cada instruccin en un programa. ada instruccin del juego deinstrucciones de una !U puede requerir diferente n+mero de ciclos de instruccinpara su ejecucin. Un ciclo de instruccin est formado por uno o ms ciclosmquina.!ara que cualquier sistema de proceso de datos basado en microprocesador -porejemplo, una computadora o microcontrolador -por ejemplo, un reproductor de1!9 realice una tarea-programa primero debe buscar cada instruccin en la

    memoria principal y luego ejecutarla.5efinicin. onjunto de acciones que se llevan a cabo en la reali"acin de unainstruccin. 'e compone de las dos siguientes fases(

    Base de b+squeda. En esta fase se transfiere la instruccin quecorresponde ejecutar desde la memoria central a la unidad de control.

    Base de ejecucin. onsiste en la reali"acin de todas las acciones queconlleva la propia instruccin.

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    7/12

    /!A' 5E /@'*U/A@E'

    Las instrucciones de acuerdo a su funcin se clasifican en( /nstrucciones de clculo -aritmtico y lgico. /nstrucciones de transferencia de datos. /nstrucciones de ruptura de secuencial.

    5e acuerdo a su formato y n+mero de operandos se clasifican en( /nstrucciones de tres operandos. /nstrucciones de dos operandos. /nstrucciones de un operando. /nstrucciones sin operandos.

    /@'*U/A@E' 5E *E' A!E*)@5A'.

    ambin denominadas instrucciones de tres direcciones. onstan en primer lugardel cdigode operacin al que siguen tres operandos, de los cuales, los dosprimeros son las direcciones delos argumentos que hay que operar y el tercero esla direccin donde se depositar el resultado.

    /@'*U/A@E' 5E 5A' A!E*)@5A'.ontiene el cdigo de operacin y dos operandos, de los cuales uno de ellosact+a, adems, como receptor del resultado de la operacin

    /@'*U/A@E' 5E U@ A!E*)@5A.

    'e utili"a en computadoras cuya arquitectura funciona con filosof2a de acumulador.El acumulador contiene previamente el primer argumento de la operacin, elsegundo es el contenido en la propia instruccin, y despus de ser operadoambos, el resultado queda depositado de nuevo en el acumulador.

    1CA5A' 5E 5/*E/A@)1/E@A.

    El mtodo de direccionamiento de una instruccin es el modo que se utili"a en la

    misma para indicar la posicin de memoria en que est situado el dato o datos queconstituyen los operandos que intervienen en la instruccin.Los principales mtodos son(

    5ireccionamiento inmediato. 5ireccionamiento directo. 5ireccionamiento indirecto.

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    8/12

    5ireccionamiento relativo. 5ireccionamiento inmediato.

    En este mtodo el dato que hay que utili"ar forma parte de la propia instruccin,no siendo necesario ning+n acceso a memoria para la reali"acin de la misma.

    5ireccionamiento directo.En este caso la instruccin contiene la direccin de la memoria donde seencuentra almacenado el dato. Esto hace necesario un acceso a la memoria paratrasladar el dato hasta la unidad aritmtico#lgica.

    5ireccionamiento indirecto.)qu2 la direccin contenida en la instruccin no es la del dato implicado sino la deuna posicin de memoria que contiene la direccin de ese dato. Esta posicin sedenomina direccin intermedia e implica en las instrucciones que utili"an estemtodo de direccionamiento la necesidad de un ciclo de memoria ms para

    acceder al dato.

    5ireccionamiento relativo.En l, la direccin de memoria donde se encuentra el dato, se consigue sumandola direccin contenida en la propia instruccin con una magnitud fija contenidaenun registro especial. 5e esta manera se posibilita el acceso a un conjunto deposiciones

    Segmentacin de instrucciones

    La segmentacin de instrucciones es similar al uso de una cadena de montaje enuna fbrica de manufacturacin. En las cadenas de montaje, el producto pasa atravs de varias etapas de produccin antes de tener el producto terminado. adaetapa o segmento de la cadena est especiali"ada en un rea espec2fica de lal2nea de produccin y lleva a cabo siempre la misma actividad. Esta tecnolog2a esaplicada en el dise%o de procesadores eficientes. ) estos procesadores se lesconoce como pipeline processors.Un pipeline processor est compuesto por una lista de segmentos lineales ysecuenciales en donde cada segmento lleva a cabo una tarea o un grupo detareas computacionales. !uede ser representado grficamente en dosdimensiones, en donde en el eje vertical encontramos los segmentos quecomponen el pipeline y en el segmento hori"ontal representamos el tiempo.

    onjunto de instrucciones( aracter2sticas y funciones

    La segmentacin de instrucciones es similar al uso de una cadena de montaje enuna fbrica de manufacturacin. En las cadenas de montaje, el producto pasa atravs de varias etapas de produccin antes de tener el producto terminado. adaetapa o segmento de la cadena est especiali"ada en un rea espec2fica de lal2nea de produccin y lleva a cabo siempre la misma actividad. Esta tecnolog2a esaplicada en el dise%o de procesadores eficientes.

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    9/12

    ) estos procesadores se les conoce como pipeline processors. Estos estncompuestos por una lista de segmentos lineales y secuenciales en donde cadasegmento lleva a cabo una tarea o un grupo de tareas computacionales. Los datosque provienen del e0terior se introducen en el sistema para ser procesados. Lacomputadora reali"a operaciones con los datos que tiene almacenados en

    memoria, produce nuevos datos o informacin para uso e0terno. Las arquitecturasy los conjuntos de instrucciones se pueden clasificar considerando los siguientesaspectos(

    # )lmacenamiento de operandos en la !U( dnde se ubican los operandosaparte de la memoria.

    # @+mero de operandos e0pl2citos por instruccin( cuntos operandos see0presan en forma e0pl2cita en una instruccin t2pica. @ormalmente son D,4, 3 y 9.

    # !osicin del operando( !uede cualquier operando estar en memoriaF, odeben estar algunos o todos en los registros internos de la !U. mo seespecifica la direccin de memoria -modos de direccionamientodisponibles.

    Aperaciones( Gu operaciones estn disponibles en el conjunto de instrucciones ytipo y tama%o de operandos y cmo se especifican.

    Conjunto de instrucciones. Caractersticas y Funciones

    Caractersticas

    Los conjuntos de instrucciones de las mquinas deben tender a poseer una seriede propiedades, bastante ideales e imprecisas, que pueden resumirse en lassiguientes(

    El conjunto de instrucciones de un computador debe ser completo en elsentido de que se pueda construir un programa para evaluar una funcincomputable usando una cantidad de memoria ra"onable y empleando untiempo moderado, es decir, el n+mero de instrucciones de ese programa nodebe ser demasiado elevado.

    Los juegos de instrucciones tambin tienen que ser eficientes, esto significaque las funciones ms necesarias deben poder reali"arse usando pocas

    instrucciones. El conjunto de instrucciones de una mquina debe ser regular, es decirdebe ser simtrico -por ejemplo, si e0iste una instruccin dedespla"amiento a la i"quierda, debe haber otra de despla"amiento a laderecha, etc. y ortogonal, es decir, deben poder combinarse, en la medidade lo posible, todas las operaciones con todos los tipos de datos y modosde direccionamiento.

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    10/12

    En muchas ocasiones, tambin se le debe e0igir a un computador que sujuego de instrucciones sea compatible con modelos anteriores.

    Tipo de Instrucciones

    Una mquina puede llegar a funcionar con un juego de instrucciones muy limitado-recurdese, por ejemplo, la mquina de uring que slo tiene H instrucciones,incluso se han dise%ado mquinas tericas con menos instrucciones, estosimplificar2a mucho los circuitos de la mquina. 'in embargo, un conjunto deinstrucciones demasiado simplificado origina, como consecuencia, unosprogramas demasiado complejos e ineficientes. Es necesario encontrar uncompromiso entre la simplicidad del hardIare y del softIare. Un m2nimo parallegar a ese compromiso se consigue con los tipos de instrucciones siguientes(

    /nstrucciones de transferencia de datos.

    /nstrucciones aritmticas. /nstrucciones lgicas. /nstrucciones de control del flujo del programa -bifurcaciones, bucles,

    procedimientos, etc. /nstrucciones de entrada y salida.

    En los apartados siguientes iremos viendo con detalle algunos de estos tipos deinstrucciones.'i bien es cierto que el conjunto de instrucciones debe de cumplir unos m2nimospara conseguir una m2nima eficiencia en los programas, tambin se ver que stano se aumenta indefinidamente al incrementar el n+mero de instrucciones de la

    mquina.

    !odos de direccionamiento y "ormatos

    El campo de operacin de una instruccin especifica la operacin que se debereali"ar. Esta debe ser ejecutada sobre algunos datos almacenados en registrosdel computador o en palabras de memoria, es decir, sobre los operandos. El modode direccionamiento especifica la forma de interpretar la informacin contenida encada campo de operando para locali"ar, en base a esta informacin, el operando .

    # 5ireccionamiento /nmediato.

    El operando es un n+mero que forma parte de la instruccin. @o se necesitacalcular la direccin absoluta. La instruccin contiene al propio objeto. 'e empleacuando la instruccin contiene un valor constante. El tama%o del operando vienedeterminado por el espacio reservado para l en el formato de instruccin.

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    11/12

    # 5ireccionamiento 5irecto -pgina cero.

    Una forma de acelerar el direccionamiento e0tendido, ser2a usar eldireccionamiento paginado, donde la E) se forma de la siguiente manera( el bytems significativo de la direccin se obtiene de un registro, llamado de pgina y el

    byte menos significativo de la direccin se especifica por un byte que se da comooperando de la instruccin. !ara esto se hace necesario un registro e0tra( elregistro de pgina, que indica el n+mero de pgina a emplear. ada pgina tiene3J: bytes. La direccin del operando viene incluida en la instruccin, aqu2 elprocesador calcula la direccin real.

    # 5ireccionamiento 5e *egistro.

    Los operandos o datos se encuentran en registros. @o se necesita calcular el 5ir.)bsoluta.ransfiere un byte o palabra desde el registro fuente o localidad enmemoria, hasta el registro o localidad destino en la memoria

    # 5ireccionamiento relativo.

    En este modo el operando se encuentra en una direccin relativa a la instruccinejecutada, es decir, la direccin efectiva se forma sumando al contenido del !actual, un n+mero -dato denominado despla"amiento -u KoffsetK.

    # 5ireccionamiento inherente o impl2cito.

    Un caso particular muy importante de este direccionamiento lo constituyen lasinstrucciones del manejo de pila -stac. En el caso de insercin -!U'? de datosen la pila, el operando de origen est en un registro y la direccin de destino en elpuntero de pila -stac !ointer. En el caso de e0traccin -!ULL A !A! es en elsentido inverso. 'on instrucciones del tipo de 4 byte de longitud.

    # 5ireccionamiento e0tendido o absoluto.Este modo de direccionamiento consiste en poder acceder a cualquier palabracontenida en la memoria principal, por medio de la direccin absoluta de memoriae0plicitada como bytes en el operando de la instruccin. Es el mtodo ms fcilpara direccionar un lugar de memoria. La instruccin contiene la direccin deloperando -direccin absoluta de memoria directamente especificada en 3 bytesde memoria -microprocesadores de M bits de datos y 4: bits de direcciones,permitiendo acceder al espacio total de direcciones memoria -:HN. Estas soninstrucciones de 9 bytes de longitud. Este tipo de direccionamiento incluyeinstrucciones del tipo L5) ), 5/*> ') ), 5/*.

    # 5ireccionamiento inde0ado.En este modo de direccionamiento, la E) se genera por la suma de un registro,llamado registro 2ndice con un valor que est contenido como uno de losoperandos en la instruccin. onceptualmente, el valor dato en la instruccin es la

  • 7/23/2019 Funcionamiento y Estructura Del CPU. Jesus Humberto Ruiz Balcazar

    12/12

    direccin base de una tabla o arreglo, y el registro 2ndice es el despla"amiento dela base.El procesador calcula la direccin efectiva -real o absoluta sumando a 5' o a E''/ o 5/ respectivamente ms un despla"amiento. 'imilar al direccionamientorelativo a registro base. El operando se encuentra en memoria. *egistro 2ndice(

    se modifica a menudo en la ejecucin del programa.

    # 5ireccionamiento indirecto.En este modo de direccionamiento, se da una referencia intermedia donde se hallala direccin efectiva del operando. Esta referencia puede ser( El operando seencuentra en memoria y la instruccin contiene una direccin que se emplea paraleer en memoria una direccin intermedia que ser la verdadera direccin delobjeto buscado.

    4 ) travs de una direccin de memoria. Este es ms fle0ible pero mslento.

    3 !or medio de un registro de la !U.

    # 5ireccionamiento indirecto O inde0ado.Este modo de direccionamiento consiste en reali"ar, primero, una indireccin, yluego, inde0ar la direccin para hallar la direccin efectiva. Peneralmente, se usanen pgina D. La direccin del operando es una direccin, cuyo contenido junto alsiguiente lugar de memoria da una direccin que ser inde0ada por el registro Q,sta direccin contiene el dato a operar.

    # 5ireccionamiento inde0ado#indirecto.Este mtodo consiste en reali"ar, primero, una inde0acin de la direccin deloperando -en pg.D, y luego, una indireccin.

    # 5ireccionamiento 1emoria !rincipal.'e refieren a los distintos modos de acceder a lugares de la memoria principal.Un mismo tipo de instruccin puede usar distintos modos de direccionamientopara acceder a un determinado elemento. @o todos los microprocesadoresproveen todos los modos de direccionamiento.El espacio de direccionamiento de un procesador se puede dividir en 9 clases(4# *egistros del procesador.3# 1emoria principal.9# 5ispositivos e0ternos.