Investigacion Unidad 2

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 19

INSTITUTO TECNOLÓGICO SUPERIOR

DE ALVARADO

INGENIERÍA EN SISTEMAS COMPUTACIONALES

Materia
Arquitectura de Computadoras

Unidad: 2

Semestre-Grupo:
5° Semestre – GRUPO U

Producto Académico:

Investigación

Presenta
Israel Echavarria Gonzalez – 226Z0117

Docente
Ingrid Biviana Vega Perez

Fecha:
25 de octubre del 2024

LERDO DE TEJADA, VER. AGOS-SEPT 2024


Contenido

Introducción ........................................................................................................................... 3

Objetivos ................................................................................................................................. 3

2.1 Organización del procesador ............................................................................................ 4

2.2 Estructura de registros ..................................................................................................... 5

2.2.1 Registros visibles para el usuario ............................................................................... 9

2.2.2 Registros de control y de estado ............................................................................. 10

2.2.3 Ejemplos de organización de registros de CPU reales ............................................. 11

2.3 El ciclo de instrucción ..................................................................................................... 13

2.3.1 Ciclo Fetch-Decode-Execute .................................................................................... 14

2.3.2 Segmentación de instrucciones ............................................................................... 15

2.3.3 Conjunto de instrucciones: Características y funciones .......................................... 16

2.3.4 Modos de direccionamiento y formatos ................................................................. 16

2.4 Casos de estudio de CPU reales...................................................................................... 17

Referencias ........................................................................................................................... 18

Conclusión ............................................................................................................................ 19
Introducción

En este documento nos centraremos en la organización y diseño de la parte


interna de los procesadores, en concreto la unidad central de procesamiento (CPU),
la cual es de gran importancia para poder ejecutar las instrucciones de los
programas. Exploraremos tanto como conceptos básicos, así como algunos
conceptos mas avanzados entre ellos los tipos de registros, ciclos de instrucción y la
estructura de CPU’s reales.

Objetivos

• Comprender como se compone el procesador en general


• Descripción de los distintos tipos de registros.
• Identificar los ejemplos reales de organización de registros y casos de estudio
de los CPU’s
• Identificar las características del conjunto de instrucciones y los modos de
direccionamiento.
2.1 Organización del procesador

La Unidad de Procesamiento (CPU) controla el funcionamiento del computador y


lleva a cabo sus funciones de procesamiento de datos. Frecuentemente se le llama
procesador. Un procesador, incluye tanto registros visibles por el usuario como
registros de control/estado. Los registros visibles por el usuario pueden ser de uso
general o tener una utilidad especial, mientras que los registros de control y estado
se usan para controlar el funcionamiento del procesador, un claro ejemplo es el
contador de programa.

Lleva a cabo una gran variedad de:

• Cálculos

• Comparaciones numéricas

• Transferencias de datos como respuesta a las peticiones de los programas que


están siendo ejecutados en memoria.

La organización del procesador define cómo están estructuradas las partes que
componen una CPU, como las unidades de control, unidades de procesamiento
aritmético-lógicas (ALU), y otros elementos que permiten el procesamiento de datos.

• Unidad de Control: Encargada de dirigir las operaciones del procesador.

• Unidad ALU: Realiza operaciones aritméticas y lógicas.

• Buses: Facilitan la comunicación entre los distintos componentes de la CPU.


2.2 Estructura de registros

Los registros son pequeñas unidades de almacenamiento dentro de la CPU que


retienen datos o instrucciones de manera temporal para su procesamiento. Existen
diferentes tipos de registros que cumplen funciones específicas.

Clasificación de los Registros

Registro de datos

Un CPU puede funcionar con datos en uno de tres modos: entre dos registros, entre
registros y una ubicación de Memoria de acceso al azar (RAM - Random-Access
Memory) y entre dos ubicaciones RAM. Como el CPU está conectado directamente
a los registros, las operaciones que implican dos registros son las más rápidas; las
que se dan entre ubicaciones RAM son las más lentas. Es decir, junta dos registros,
añade un registro a una ubicación RAM, o añade dos ubicaciones RAM.

Registro de direcciones

Para que un CPU pueda almacenar y recuperar datos en RAM, debe tener la
dirección de la memoria de la información. Esas operaciones que implican RAM
usan registros de dirección de memoria. EL CPU no realiza aritmética en estos
registros; en cambio, los usa para ubicar datos que necesita.

Registro de índice

Un CPU no puede hacer matemáticas en registros de datos, aunque puede hacerlo


indirectamente con un registro de índice. Éste trabaja con los registros de datos,
permitiendo a un programa procesar hilos de información eficazmente.

Registros de segmento
Un registro de segmento tiene 16 bits de longitud y facilita un área de memoria para
direccionamiento conocida como segmento actual.

Registro Cs

El dos almacena la dirección inicial del segmento de código de un programa en el


registro CS. Indica la dirección de una instrucción que es buscada para su ejecución.

Registro Ds

Genera una referencia a la localidad de un byte específico en el segmento de datos.

Registro SS

Permite la colocación en memoria de una pila, para almacenamiento temporal de


dirección y datos.

Registro ES

Se utiliza para algunas operaciones con cadenas de caracteres se utiliza para el


manejo de direccionamiento de memoria.

Registros de propósito general

Los registros de propósito general son el AX, BX, CX, y DX, de 16 bits. Cada uno de
ellos se divide en dos registros de 8 bits, llamados AH y AL, BH y BL, CH y CL, y,
DH y DL, H significando High (alto) y L significando Low (bajo), indicando la parte
alta o la parte baja del registro correspondiente de 16 bits.

Registro AX
El registro AX es el registro acumulador, es utilizado para operaciones que implican
entrada/salida, y multiplicación y división (estas dos últimas en conjunto con el
registro DX).

Registro BX

El registro BX es el registro base, y es el único registro de propósito general que


puede ser un índice para direccionamiento indexado.

Registro CX

El registro CX es conocido como el registro contador. Puede contener un valor para


controlar el número de veces que un ciclo se repite o un valor para corrimiento de
bits.

Registro DX

El registro DX es el registro de datos. En algunas operaciones se indica mediante este


registro el número de puerto de entrada/salida, y en las operaciones de
multiplicación y división de 16 bits se utiliza junto con el acumulador AX.

Registros de apuntadores

Los registros SP (apuntador de pila) y BP (apuntador base) están asociados con el


registro SS y permiten al sistema acceder a datos en el segmento de la pila.

Registro SP

El apuntador de pila de 16 bits está asociado con el segmento SS y proporciona un


valor de desplazamiento que se refiere a la palabra actual que está siendo procesada
en la pila.

Registro BP
El apuntador base de 16 bits facilita la referencia de parámetros dentro de la pila.

Registros de banderas

Es un registro de 16 bits, de los cuales nueve sirven para indicar el estado actual de
la máquina y el resultado del procesamiento. La tabla contiene 16 posiciones (de 0 a
15), que son los 16 bits del registro de banderas, numeradas de derecha a izquierda.
La posición 0 la encontraremos a la derecha y la posición 15 a la izquierda.

Registro de punteros de instrucción

El registro IP de 16 bits contiene el desplazamiento de dirección de la siguiente


instrucción que se ejecuta. El IP está asociado con el registro CS en el sentido de que
el IP indica la instrucción actual dentro del segmento de código que se está
ejecutando actualmente en la memoria.
2.2.1 Registros visibles para el usuario

Registros a los que el programador o el usuario puede acceder directamente para la


ejecución de instrucciones, como los registros de datos, de direcciones y los registros
específicos de propósito general.

Son aquellos que pueden ser referenciado por medio del lenguaje máquina que
ejecuta la CPU, los registro que normalmente disponibles son:

Registros de propósito general

Son aquellos que pueden guardar tanto datos como direcciones

Registro de datos

Que pueden ser asignados por el programador a diversas funciones. En algunos


casos son de propósito general y pueden ser empleados por cualquier instrucción de
máquina que lleve a cabo operaciones sobre los datos.

Registros de direcciones

Contienen direcciones en la memoria principal de datos y este tipo de registro puede


ser de propósito general o estar a un modo específico de direccionamiento.

Códigos de condición

También conocidos como indicadores o flags. Los códigos de condición, son bits
activados por el procesador como resultado de determinadas operaciones.
2.2.2 Registros de control y de estado

Estos registros no son accesibles directamente por el usuario, sino que se utilizan
internamente para gestionar el estado de la CPU y el control de la ejecución de
instrucciones. Ejemplos: el registro de estado (Status Register), que almacena
condiciones o flags de estado.

Se utilizan para controlar las operaciones del procesador, la mayor parte de estos
registros no son visibles al usuario y algunos pueden ser accesibles a las
instrucciones de maquina ejecutadas en un modo de control. Los registros utilizados
son los siguientes:

Registro de direcciones de memoria (MAR), el cual contiene la dirección en donde


se efectuará la próxima lectura o escritura de datos. El número de direcciones
depende del tamaño de la MAR.

Registro de datos de memoria (MBR), contiene los datos que van a ser escritos en
la memoria o los que fueron leídos en ella.

Registro de direcciones de entrada y salida (I/O AR), especifica al dispositivo ya


sea de entrada o salida

Registro de datos de entrada y salida (I/O BR), es un área temporal en donde se


lleva a cabo el intercambio de datos entre el procesador y el dispositivo de entrada
y salida que esta especificado en IOAR.

Registro de instrucciones (IR), contiene la dirección de la siguiente instrucción que


se va a ejecutar.
Palabras de estado del programa (PSW), contiene códigos de condición junto con
otras informaciones de estado como el signo, acarro, desbordamiento, entre otras.

2.2.3 Ejemplos de organización de registros de CPU reales

Ejemplos de registros reales incluyen aquellos en CPUs de arquitecturas como la


Intel x86 y la ARM, describiendo cómo están organizados y las funciones que
cumplen.

El microprocesador de 16 bits motorola MC68000 distribuye sus registros de 32 bits


en 8 de datos y 9 de direcciones. Los 8 registros de datos se usan principalmente para
la manipulación de datos y también se usan en direccionamiento como registros
índices. El ancho de los registros permite operaciones con datos de 16 y de 32 bits,
según determinen el código de operación. Los registros de direcciones contienen
direcciones de 32 bits (no segmentación); dos de estos registros se usan también
como registros de pila, uno para los usuarios y el otro para el sistema operativo,
dependiendo del modo de ejecución en curso. Los 8 registros se refieren como 'D',
dado que solo uno de ellos puede usarse en un instante dado. Por otra parte, también
incluye un contador de programa.
El microprocesador Intel 8088 usa un enfoque diferente para la organización de los
registros. Cada uno de los registros tiene un uso especial, aunque algunos de los
registros se pueden emplear para un uso general. Tiene registros de 16 bits que son
direccionables como registros de bytes o como registros de 16 bits, cuatro registros
punteros e índices de 16 bits. Estos pueden utilizarse como uso general en algunas
instrucciones. En otras, los registros se usan implícitamente. Por ejemplo, un
instructor de multiplicación siempre usa el acumulador, los demás registros
punteros se usan implícitamente en algunas operaciones: cada una contiene un
desplazamiento dentro de un segmento.
2.3 El ciclo de instrucción
2.3.1 Ciclo Fetch-Decode-Execute
2.3.2 Segmentación de instrucciones

Es una técnica que permite implementar el paralelismo a nivel de instrucción en un


único procesador. La segmentación intenta tener ocupadas con instrucciones todas
las partes del procesador dividiendo las instrucciones en una serie de pasos
secuenciales que efectuarán distintas unidades de la CPU, tratando en paralelo
diferentes partes de las instrucciones. Permite una mayor tasa de transferencia
efectiva por parte de la CPU que la que sería posible a una determinada frecuencia
de reloj, pero puede aumentar la latencia debido al trabajo adicional que supone el
propio proceso de la segmentación.

En pocas palabras, la segmentación permite dividir el ciclo de instrucción en varias


etapas paralelas, optimizando el rendimiento mediante la ejecución simultánea de
varias instrucciones.

Conforme la segmentación se hace más "profunda" (aumentando el número de


pasos dependientes), un paso determinado puede implementarse con circuitería
más simple, lo cual puede permitir que el reloj del procesador vaya más rápido. En
inglés, las segmentaciones de este tipo pueden llamarse superpipelines.

Se dice que un procesador está totalmente segmentado si puede leer una instrucción
en cada ciclo. Por tanto, si ciertas instrucciones o condiciones requieren un retardo
que impide la lectura de nuevas instrucciones, el procesador no está totalmente
segmentado.
2.3.3 Conjunto de instrucciones: Características y funciones

Las instrucciones son las órdenes que el procesador ejecuta y varían en función y
complejidad según la arquitectura de la CPU. Cada conjunto tiene características
específicas según el tipo de operaciones, el tamaño de las instrucciones y las
direcciones.

Cada instrucción debe contener la información que necesita el procesador para su


ejecución, y sus elementos son:

Código de operación: Especifica la operación a realizar. La operación se indica


mediante un código binario denominado código de operación.

Referencia a operando fuente y origen: La operación puede implicar a uno o más


operandos que son entradas para la instrucción.

Referencia al operando de destino: La operación puede producir un resultado.

Referencia a la siguiente instrucción: Dice al procesador de donde captar la


siguiente instrucción tras completarse la ejecución de la instrucción actual.

2.3.4 Modos de direccionamiento y formatos

Los modos de direccionamiento son formas de acceder a los datos que se requieren
para una instrucción. Incluye modos directos, indirectos, relativos y de registro,
entre otros.

Son las diferentes maneras de especificar un operando dentro de una instrucción.

Un modo de direccionamiento especifica la forma de calcular la dirección de


memoria efectiva de un operando mediante el uso de la información contenida en
registros dentro de una instrucción de la máquina.
El direccionamiento absoluto es el campo de direccionamiento que no necesita
transformación alguna para dar la dirección efectiva, es decir la función que
transforma el campo de operando es la dirección efectiva es la identidad.

2.4 Casos de estudio de CPU reales

I-8086: Los registros del procesador, se usan para contener los datos con que se está
trabajando puesto que el acceso a los registros es mucho más rápido que los accesos
a memoria. Se pueden realizar operaciones aritméticas y lógicas, comparaciones,
entre otras. Los modos del 8086 son indirectos por registro, indexados o directos por
registro.

Motorola 68000: El mismo direccionamiento lleva implícito el tipo de registro sobre


el que trabaja (direcciones o datos). Está basado en dos bancos de 8 registros de 32
bits. Un banco es de datos (Dn) y el otro de punteros (An). Además, contiene un
contador de programa de 32 bits y un registro de estado de 16 bits.

80386: Para este microprocesador existe un modo nuevo que requiere un byte
adicional denominado SIB (escala, índice, base) que se añade al byte de operandos,
es útil para direccionar elementos de vectores de longitudes diferentes en bucles. Es
una alternativa a los modos autoindexados que esta máquina no soporta.
Referencias

Arquitectura de Computadoras. (23 de Noviembre de 2014). Obtenido de Blogger: https://itcv-


arquitectura-de-computadoras.blogspot.com/2014/11/21-organizacion-del-
procesador.html

Arquitectura de Computadoras. (22 de Noviembre de 2014). Blogger. Obtenido de https://itcv-


arquitectura-de-computadoras.blogspot.com/2014/11/22-estructura-de-
registros_27.html

Arquitectura de Computadoras. (20 de Noviembre de 2014). Blogger. Obtenido de https://itcv-


arquitectura-de-computadoras.blogspot.com/2014/11/24-casos-de-estudio-de-cpu-
reales.html

C. A. (2022). Studocu. Obtenido de https://www.studocu.com/es-mx/document/instituto-


tecnologico-de-saltillo/arquitectura-de-computadoras/21-22-221-23-231-2/45635417

Coggle. (s.f.). Obtenido de https://coggle.it/diagram/X86W5SM6PYPtMFim/t/2-estructura-y-


funcionamiento-de-la-cpu

Diaz, B. (2 de Febrero de 2016). Prezzi. Obtenido de https://prezi.com/vkmciooggz6m/23-el-ciclo-


de-instrucciom/

Israel. (16 de Octubre de 2018). Blogger. Obtenido de


https://arqdecompteamdinamita.blogspot.com/2018/10/23-ciclo-de-instruccion.html

Joachin Garcia, J. C., Estudillo Lopez, A., Hernandez Herrera, P. d., & Martinez Morruegarez, I. (7 de
Octubre de 2018). Blogger. Obtenido de
https://arqdecompteamdinamita.blogspot.com/2018/10/22-estructura-de-registros.html

Valdivia Gallardo, J. Á., Coreño Palacios, J. M., Hernandez Ramirez, J., Jiménez Reyes, J., &
Hernández Gutiérrez, E. J. (16 de Octubre de 2019). Studocu. Obtenido de
https://www.studocu.com/es-mx/document/instituto-tecnologico-de-
acapulco/derecho/investigacion-arquitectura-de-compu/6425307

(Arqu itectura de Computad ora s, 20 14)


(Arqu itectura de Computad ora s, 20 14)
(Valdivia Gallard o, Coreño Pa lacios, He rnandez Ra mirez, Jiménez Re yes, & Hernández Gutiérre z, 2019)
(Coggle, s.f.)
(Israel, 20 18)
(Christian, 20 22)
(Diaz, 20 16)
(Arqu itectura de Computad ora s, 20 14)
(Joachin Garcia, Estudillo Lope z, Hernandez Her rera, & Martinez M or ruega rez, 201 8)
Conclusión

Poder comprender el funcionamiento del procesador a partir de la organización con


la cual se compone es fundamental para conocimientos futuros ya que esta
investigación permite analizar los componentes y como funciona el ciclo de
instrucción que puede influir en el rendimiento de la capacidad de un sistema de
cómputo. Así como también incluso los múltiples conjuntos de registros que puede
ayudar a conocer mucho mejor los factores que afectan el rendimiento de un sistema
de cómputo.

También podría gustarte