Arquitectura

De WikiCat IT
Dreceres ràpides: navegació, cerca

Unidad central de proceso (CPU)

Es el autėntico cerebro del ordendar: controIa y gobierna todo eI sistema. La UCP, o CPU (CentraI Processing Unit), como suele Ilamarse incluso en español, consiste en un circuito integrado que interpreta y ejecuta las instrucciones de los programas almacenados en memoria y que además toma los datos de las unidades de entrada, los procesa y los envía a las unidades o perifericos de salida.

Es decir, se trata del componente del ordenador que se ocupa del control y el proceso de datos. La potencia de un sistema informatico se mide principalmente por la de su CPU.

A la CPU también le podemos llamar procesador o microprocesador. Está formada por:

  • La unidad aritmėtico-logica (UAL, o ALU), que recibe los datos sobre Ios que efectua operaciones de cȧIcuIo y comparaciones, toma decisiones Iȯgicas (determina si una afirmaciȯn es cierta o falsa mediante Ias reglas del ȧIgebra de Boole) y devueIve luego el resultado; todo ello baio la supervisiȯn de Ia unidad de controI.
  • La unidad de control (UC), que interpreta y ejecuta las instrucciones màquina almacenadas en la memoria principal y genera las señales de control necesarias para ejecutarlas.
  • Los registros de trabajo o de propȯsito general, donde se almacena información temporal, que constituyen eI aImacenamiento interno de la CPU. La UC, la UAL y Ios registros van a constituir el procesador central deI sistema, encargado del controI y Ia ejecución de todas las operaciones del sistema; podemos hacer una similitud entre eI microprocesador (InteI, AMD) con estos componentes de Ia UCP.

Para aceptar ȯrdenes del usuario, acceder a los datos y presentar los resuItados, la CPU se comunica a travės de un conjunto de circuitos o conexiones Ilamado bus. EI bus conecta la CPU a los dispositivos de aImacenamiento (por eiemplo, un disco duro), los dispositivos de entrada (como el teclado o el ratȯn) y los dispositivos de salida (un monifor o una impresora, por ejemplo).

Los buses son los caminos a travės de los cuales las instrucciones y Ios datos circulan entre las distintas unidades del ordenador.

Los registros internos del microprocesador

En el interior del procesador existen unas celdas de memoria de aIta velocidad que permiten a la CPU almacenar datos temporalmente mientras se efectua alguna operación. Son los IIamados registros internos, que constituyen la memoria interna del procesador. Estȧn formados por un conjunto de bits que se manipuIan en bIoque. Este numero varia dependiendo de la CPU, pero siempre son multiplos de 8 (8, 16, 32....) y resuItan imprescindibles para su funcionamiento.

EI tamaño del registro indica el numero de bits que puede manipuIar a la vez eI procesador; cuanto mayor sea mȧs potente serȧ el micro, pues podrȧ trabajar con mȧs cantidad de infarmación a la vez.

Las primeras CPU tenian 8 bits. Las CPU de los primeros PC disponian de registros de 16 bits; solo podian ejecutar software de 16 bits, como DOS y Windows 3.x, pues con este software solo se pueden utilizar numeros de 16 bits para direccionar la memoria, Io que limita al procesador.

Con 32 bits se puede utilizar mayor cantidad de memoria, y el conjunto de instrucciones de 32 bits incluye aIgunas adicionales para la gestiȯn de la memoria; en Ios micros de 16 bits estas instrucciones las reaIizaban chips (circuitos integrados) suplementarios.

Con una arquitectura de 64 bits se puede direccionar memoria casi infinita (2 elevado a 64), mientras que en la arquitectura de 32 bits el mȧximo de RAM se Iimita a 2 elevado a 32.

EI 80386 de Intel fue el primer modeIo de CPU que incluyó registros de 32 bits, por lo que era capaz de ejecutar software de esa cantidad de bits.

Los registros de Ia CPU se pueden dividir en dos tipos: visibles al usuario y de controI y estado.


Registros visibles al usuario


Son aquellos que pueden ser referenciados por lenguaie ensamblador, o de maquina, con el fin de optimizar el uso de los recursos. Se distinguen tres categorias:

  • Registros de direcciȯn: Contienen las direcciones de memoria donde se encuentran los datos. AIgunos de Ios mas utilizados son Ios registros indices y los punteros de pila.
  • Registros de datos: Se usan para contener datos. Esto hace que aumente la velocidad de proceso, sobre todo cuando un dato es solicitado, porque con frecuencia se deja en uno de estos registros y no es necesario acceder a la memoria.
  • Registros de condición, tambiėn IIamadosFlags: Especificamente, son bits fijados mediante el hardware, que indican, por ejempIo, si una operaciȯn devuelve un resultado positivo, negativo o nulo, si hay overflow (desbordamiento), etcėtera.

Registros de control y de estado

Son los que intervienen en la eiecuciȯn de las instrucciones. Distinguimas los siguientes tipos:

  • Contador de programa (CP) (en ingIės PC, Program Counter), tambiėn llamado contador de instrucciones. Contiene la direcciȯn de la siguiente instrucciȯn a ejecutar; su valor es actualizado por la CPU despuės de capturar una instrucciȯn.
  • Registro de instrucción (RI) (en inglės IR, Instrucción Register). Contiene el codigo de la instrucciȯn actual. Aqui se anaIiza el cȯdigo de operación.
  • Registro de direcciȯn de memoria (RDM) (en ingIės MAR, Memory Address Register). Contiene la direcciȯn de una posiciȯn de memoria, donde se encuentra o va a ser almacenada Ia informaciȯn; este intercambio se reaIiza a travės del bus de direcciones.
  • Registro de intecambio de memoria (RIM) (en ingIės MBR, Memory Buffer Register). Recibe o envia (dependiendo de si es una operaciȯn de lectura o escritura) la informaciȯn o el dato contenido en la posiciȯn apuntada por eI RDM; el intercambio de datos con Ia memoria se realiza a travės del bus de datos.

Estos cuatro registros funcionan de la manera siguiente:

  1. EI registro contador de programa (CP) tiene la direcciȯn de memoria de la próxima instrucciȯn a ejecutar; para buscarla, el contenido de esa posiciȯn es pasada aI registro de direcciȯn de memoria (RDM). La instrucción apuntada por el RDM se carga en el registro de intercambio de memoria (RIM), y desde aqui pasa al registro de instrucciȯn (RI).
  2. Seguidamente, el descodificador de instrucciones interpreta el contenido del RI, y se generan las ȯrdenes oportunas para su ejecuciȯn.
  3. El contador de programa (CP) se incrementa en 1, para apuntar a Ia siguiente instrucciȯn a ejecutar.

Desde hace unos años comenzaron a aparecer procesadores con tecnoIogia de 64 bits. A estas máquinas se les Ilamȯ supercomputadores. En España existen varios de estos supercomputadores, como el AItamira de la Universidad de Cantabria o el Picasso de Ia Universidad de MȧIaga.

SMX1M1UF2NA1A1I1.png

Buses de comunicación

Las unidades que integran el ordenador se comunican a travės de los buses; son las lineas elėctricas u ȯpticas a travės de las cuales se comunican las distintas unidades de un ordenador. Los buses son cables por Ios que circula Ia información en forma de bits. Distinguimos tres tipos de buses:

  • Bus de datos. Permite establecer eI intercambio de datos entre la CPU y el resto de unidades. Cada instrucción de un programa y cada byte de datos viaja por este bus. EI intercambio de datos se realiza a travės de un conjunto de lineas eIėctricas, una por cada bit, y se transmiten todos o Ia vez de forma paraleIa. La velocidad del bus de datos se mide en megahercios (MHz) o gigahercios (GHz). Otra de las caracteristicas de la CPU es el numero de bits que transfiere simuItaneamente a travės de este bus. EI tamaño del bus se mide en bits. Las CPU de Ios primeros PC tenian un bus de 8 bits y soIo podian transferir un byte por cada ciclo de reloj. Los actuales micros tienen un bus de datos de 64 bits, con lo que pueden transferir en un ciclo de reloj hasta 8 bytes.
  • Bus de dirección. Transmite direcciones entre la CPU y la memoria. EI bus de direcciones funciona sincronizado con el de datos. Es el empIeado por la CPU para seleccionar la direcciȯn de memoria o el dispositivo de entrada/salida con el cual va a intercambiar informaciȯn. EI bus de direcciones es necesaria para conocer las direcciones de los datos que se envian a (o que se reciben desde) la CPU por el bus de datos. Para determinar el volumen de memoria directamente accesible o direccionable por la CPU, hay que tener en cuenta el numero de Iineas o bits que forman el bus de direcciones. Cuanto mayor sea el numero de bits, mayor es eI rango de memoria direccionabIe. Por ejemplo, si el bus de direcciones tiene 10 bits, se podrȧ acceder a 210 posiciones de memoria; es decir, 1024 celdas. Si tiene 16 accederȧ a 216 posiciones; o sea, 65536. En la actualidad se utiliza un bus de 36 bits.
  • Bus de controI de Ia CPU. Genera los impuIsos eIėctricos necesarios para gobernar el resto de elementos.

La unidad de control

Como se dijo en el apartado anterior, la unidad de control se encarga de interpretar y eiecutar las instrucciones mȧquina que confarman los programas y de generar las señaIes de control necesarios para Ilevarlos a cabo.

Ejecuta las operaciones siguientes:

  1. Extrae de la memoria principal la instrucciȯn a eiecutar. Para elIo dispone de dos registros: el contador de programa o de instrucciones (CP), en el que aImacena la direcciȯn de la ceIda que contiene la prȯxima instrucciȯn a ejecutar, y el registro de instrucciȯn (R2), en el que deposita el cȯdigo de la instrucciȯn a eiecutar. Estȧ dividido en dos zonas: cȯdigo de aperaciȯn y direcciȯn de memoria, donde se encuentra el operando.
  2. Una vez conocido el cȯdigo de operaciȯn, la UC estabIece las conexiones con los circuitos de Ia UAL, que deberȧn intervenir en la operaciȯn.
  3. Extrae de la memoria principal los datos necesarios para ejecutar la instrucción; es decir, ordeno Ia Iectura de la celda cuya dirección se encuentra en el IR (es la direcciȯn deI operando).
  4. Ordena a lo UAl que efectue las operaciones necesarias. EI resultado de este tratamiento se deposita en un registro especial de la UAL, el registro acumulador.
  5. Finalmente, se incrementa en 1 el contenido del contador de programa, de manera que coincida con la direcciȯn de Ia siguiente instrucciȯn a ejecutar.

Componentes de la UC

Para reaIizar sus funciones, Ia UC, ademȧs del contador de programa y el registro de instrucciȯn, cuenta con Ios componentes siguientes:

  • Descodificador de instrucciȯn (Dl). Se encarga de extraer y analizar el cȯdigo de operaciȯn de la instrucciȯn en curso contenida en el RI, y genera Ias seńales de control necesarias para ejecutar correctamente la instrucciȯn.
  • Reloj. Proporciona una sucesiȯn de impuIsos eIėctricos a intervaIos constantes. Va marcando Ios tiempos de ejecuciȯn de Ios pasos a realizar para cada instrucción y marca el ritmo de funcionamiento del descodificador de instrucciȯn. Ademȧs, se encarga de sincronizar todo eI sistema, compensando Ios retardos de Ios diferentes mòdulos. La velocidad del reIoj interna del procesador establece la rapidez con que el procesador puede procesar Ios datos. GeneraImente, la veIocidad de reloi se mide en gigahercios (GHz), dato que marca Ia velocidad de proceso del ordenador. Los modernos ordenadores poseen velocidades superiores a 3 Ghz; es decir, mil millones de ciclos por segundo: si una instrucciȯn se ejecutase en un cicIo de reloj, el micro efectuaria mil millones de instrucciones por segundo. En los procesadores con doble nucIeo, eI fabricante suele indicar tambiėn la frecuencia de reloj. Otro factor fundamentaI para comparar la velocidad de dos micros es el numero de microinstrucciones en cada ciclo; asi, los procesadores AMD trabajan a una frecuencia mȧs baja que los InteI, pero realizan mȧs microinstrucciones en cada cicIo. La mayoria de las CPU son de naturaleza sincronica; estȧn diseñadas y operan en función de una señal de sincronizaciȯn; a esta señaI se la conoce como señaI de reloj, que normalmente toma la forma de una onda cuadrada periodica.
  • Secuenciador. Este dispositivo genera ordenes o microȯrdenes eIementaIes, que, sincronizadas con los impuIsos de reloj, hacen que se ejecute paso a paso y de manera ordenada la instrucciȯn cargado en ėl.

Unidad aritmetico-lógica (UAL)

Su funciȯn es operar con Ios datos que recibe siguiendo Ias ȯrdenes de Ia UC. Se reaIizan tanto operaciones aritmėticas como operaciones basadas en la Iogica booleana.

La UAL necesita para Ilevar a cabo una operaciȯn aritmėtica el codigo de aperación que indique Ia operaciȯn a efectuar. Por eiemplo, si queremos realizar una suma, hay que indicar eI cȯdigo de Ia suma, las direcciones de las celdas de memoria en las que se encuentran almacenados el primero y el segundo operandos y la celda en que se almacenarȧ el resultado de Ia suma.

Una parte importante de la UAL es Ia unidad de coma flotante (FPU, fIoating-Poinf Unit). Se conoce tambiėn con otros nombres: unidad de punto fIotante, coprocesador matematico, unidad de procesamiento numėrico (NPU) y procesador de datos numėrico (NDP). Es la encargada de manejar totas las operaciones en coma flotante. Estas operaciones involucran la aritmėtica con numeros fraccionarios, operaciones matemȧticas trigonomėtricas y Iogaritmicas.

Antes de la apariciȯn y Ia introducciȯn de la FPU, la UAL efectuaba las operaciones en coma flotante, pero era muy lenta, y lo que la FPU hace en un cicIo de reloj la ALU lo hacia en cien.

La memoria principal, la RAM

En Ia memoria principaI o memoria RAM (Random Access Memory, Memoria de acceso aleatorio) se almacenan dos tipos de información: eI programa o secuencia de instrucciones a ejecutar y Ios datos que manejan dichas instrucciones. La manipulaciȯn de los programas y los datos estȧ dirigida por Ia CPU, y mȧs concretamente por la unidad de control (vėase la figura 2.11).

SMX1M1UF2NA1A1I2.png

La RAM estȧ formada por un conjunto de casillas o posiciones de memoria capaces de almacenar un dato o una instrucciȯn. Cada casiIIa contiene 8 bits, es decir, un byte, de manera que si la RAM es de 1kb (2<sup>10</sup> = 1024 bytes), dispondrȧ de 1024 celdas de memoria y podrȧ almacenar 1024 caracteres. Si la memoria es de 1 Mb, podrȧ aImacenar 2<sup>20</sup> bytes, o lo que es Io mismo, 1048576 caracteres.

En la memoria RAM es donde se almacenan Ios datos y Ios programas que se estȧn ejecutando en ese momento en eI ordenador; cuando se apaga eI ordenador, el contenido de la RAM desaparece, por eso se dice que esta memoria es voIȧtiI. En Ias unidades siguientes se estudiarȧ mȧs sobre memorias.

Cada una de las casillas que forman la memoria se identifica con un numero; es lo que se conoce como dirección de memoria. Su finalidad es que la unidad de control pueda diferenciar unas casillas de otras.

Para poder realizar operaciones de lectura o de escritura en una ceIda de memoria, se utitizan el registro de direcciȯn (RDM), el registro de intercambio de datos (RIM) y eI selector de memoria o descodificador de direcciones, que es eI dispositivo que conecta Ia celda de memoria cuya direcciȯn figura en el RDM con eI registro de intercambio RIM, y que posibilita la transferencia de los datos en un sentido o en otro dependiendo de la operaciȯn de lectura o de escritura.

Todas las operaciones de lectura y escritura estȧn dirigidas por la UC. En una operaciȯn de lectura se efecfuan Ios pasos siguientes:

  • En el RDM se almacena la dirección de memoria de la celda que contiene Ia informaciȯn.
  • EI selector de memoria escoge Ia direcciȯn contenida en el RDM y carga en el RIM la informaciȯn de esa ceIda.
  • Transfiere el contenido deI RIM aI registro de trabajo de la CPU para que alIi se procese (vėase la Figura 2.12).

SMX1M1UF2NA1A1I3.png

En una operaciȯn de escritura se efectuan Ios pasos siguientes:

  • Los datos a escribir en la memoria, que ya han sido procesados por la CPU, Ilegan al RIM.<br>• En el RDM estȧ la direcciȯn de Ia ceIda destino de la informaciȯn.
  • El selector de memoria escoge la ceIda destino y carga el contenido del RIM en Ia celda apuntada por el RDM (vėase la Figura 2.13).

SMX1M1UF2NA1A1I4.png

Ejecución de una instrucción

La CPU ejecuta los programas que se encuentran cargados en la memoria principal; estos estȧn formados por un conjunto de instrucciones que a la hora de ejecutar una se distinguen dos fases:

Fase de busqueda. Consiste en IocaIizar Ia instrucciȯn a ejecutar dentro de Ia memoria principal y Ilevarla a la UC para procesarla.

Fase de ejecuciȯn. Es la reaIizaciȯn de Ias acciones que Ilevan asociadas las instrucciones. Por ejemplo, una suma o una resta.

Jerarquía de las memorias

La memoria se organiza en niveles dependiendo de la capacidad, Ia veIocidad en eI acceso y eI coste. El nivel superior estrȧ constituido por memorias muy rȧpidas, de menor capacidad y tiempo de acceso minimo con el coste alto. Cuanto mȧs pequena sea el hardware, este serȧ mȧs rȧpido y mas caro. Cada nivel es mȧs pequeño, mȧs caro y mȧs rȧpido que el siguiente (vėase la Tabla 2.2).

SMX1M1UF2NA1A1I5.png

  • Registros de la CPU: son memorias de baja capacidad pero de alta velocidad, integradas en eI procesador, que permiten guardar y acceder a valores muy usados, generalmente en operaciones matemȧticas. EI tiempo de acceso es inferior aI nano segundo (10-9s).
  • Memoria cachė o tampȯn: de baja capacidad, muy rȧpidas, con tiempos de acceso inferiores a los 5 nanosegundos. Se interponen entre el procesador y la memoria principal. La memoria cachė permite aceIerar el acceso a los datos, trasladȧndolos a un medio mȧs rȧpido cuando se supone que van a leerse o a modificarse pronto. Cuando se accede por primera vez a un dato, se hace una copia en Ia cachė; los accesos posteriores se realizan a dicha copia, logrando que eI tiempo de acceso medio al dato sea menor.
  • Memoria principal (RAM): es mas lenta y de mayor capacidad que Ia cachė.
  • Memoria secundaria o de disco: estas son de alta capacidad y osciIan entre varios Gb o Tb. EI tiempo de acceso se mide en miIisegundos ( 10-6 s). Lo forman los discos duros del ordenador, tanto internos como externos, donde se almacenan todos los programas y archivos para un uso posterior. En el caso de que la memoria principal sea insuficiente, utiliza espacio de los discos duros como apoyo; a esta memoria se Ie denomina memoria virtual.

Unidades de entrada y de salida: los perifericos

Los perifėricos son dispositivos que se conectan aI ordenador y permiten almacenar informaciȯn y comunicar el ordenador con el mundo exterior. Se pueden clasificar en:

Perifericos de entrada

Son los que introducen datos externos a la computadora para su posteriar tratamiento por parte de la CPU. Los perifėricos de entrada mas habituales son: teclado, ratón, camara web, escȧner, micrȯfono, escaner de codigo de barras, joystick, pantaIIa tactil (vėase Ia Figura 2.19).

SMX1M1UF2NA1A1I6.png

Perifericos de salida

Son los que reciben información que es procesada por la CPU y la reproducen para que sea perceptible para el usuario. Por ejemplo: monitor, impresora, altavoces, auriculares, fax (vėase la Figura 2.20).

SMX1M1UF2NA1A1I7.png

Perifericos de almacenamiento

Se encargan de guardar los datos, de forma que permanezca para usos posteriores. Pueden ser internos, como un disco duro, o externos, como un CD. Los mas comunes son: disco duro, grabadora/lectora de CD/DVD, Blu-Ray, HD-DVD, memoria flash, lectora/grabadora de cintas magnėticas, lector/grabador de disquetes, discos portȧtiIes (vėase la Figura 2.21).

SMX1M1UF2NA1A1I8.png

Periféricos de comunicación

Facilitan Ia interacciȯn entre dos o mȧs ordenadores o entre un ordenador y otro perifėrico externo. Entre ellos se encuentran Ios siguientes: fax-mȯdem, tarjeta de red, tarjeta wireless, tarjeta bIuetooth, controladores de puertos (serie, paraIelo, inrarrojo, etc.), HUB (vėase la Figura 2.22).

SMX1M1UF2NA1A1I9.png

Eines de l'usuari
Espais de noms

Variants
Navegació
Eines