lunes, 30 de marzo de 2015

El ciclo de instrucción

 
El ciclo de instrucción 

“El Ciclo Instrucción” cuenta con dos fases, la primera es la obtención y la segunda es la fase de ejecución:

2.3.1 Ciclo Fetch-Decode-Execute
Fase de Obtención donde:
·       El registro Contador del Programa (PC) tiene la dirección de la siguiente instrucción que va obtener.
·       El procesador obtiene la siguiente instrucción de la localidad de memoria apuntada por el PC.
·       El PC se incrementa:
Ø  A menos que se le indique otra cosa
Ø  El PC queda apuntando a la siguiente instrucción
·       La instrucción se carga en el Registro Instrucción (IR).
·       El procesador interpreta la instrucción y realiza las acciones  indicadas por ella.

Fase de Ejecución donde:
·       Procesador-memoria
Ø  Transferencia de datos entre CPU y memoria principal
·       Procesador – E/S
Ø  Transferencia de datos entre CPU y un módulo de E/S
·       Procesamiento de datos
Ø  Alguna operación aritmética o lógica sobre los datos
·       Control
Ø  Alteración de la secuencia de operaciones
Ø  e.g. Salto (jump)
·       Una combinación de las anteriores
Ø  Una combinación de las anteriores 
Ciclo instrucción más detallado:


Obtener la instrucción de la memoria de programa

Determinar el tamaño de la instrucción y las acciones ejecutar
Localizar y obtener los operandos (datos)

Procesar los datos y calcular el valor del resultado y el estado de la máquina
Escribir los resultados en memoria para un uso posterior

Determinar la instrucción que sigue

Diagrama de estados del ciclo de instrucción
 

 Qué es un programa
·       Una secuencia de instrucciones
·       Por cada instrucción se realiza una operación (aritmética o lógica) o una transferencia (de datos o control)
·       Cada operación es ejecutada siguiendo los pasos dados en el ciclo instrucción
Ciclo indirecto
·       Puede requerir acceso a memoria para extraer operandos
·       El direccionamiento indirecto requiere más accesos a memoria
Flujo de datos (Obtención de la instrucción)
·       Depende del diseño del CPU
·       En general:
Ø  PC contiene la dirección de la siguiente instrucción
Ø  La dirección se mueve a MAR
Ø  Se pone la dirección en el bus de direcciones
Ø  La unidad de control solicita lectura a memoria
Ø  El resultado se pone en el bus de datos, copiado a MDR, y después a IR
Ø  Mientras tanto el PC se incrementa a 1
Flujo de datos (Obtención de los datos)
·       Si es direccionamiento indirecto, se ejecuta el ciclo indirecto
Ø  Los N bits más de la derecha de MDR se transfieren a MAR
Ø  La unidad de control solicita lectura de memoria
Ø  El resultado (dirección del operando) se mueve a MDR

Flujo de datos a: fase de obtención

Flujo de datos b: ciclo indirecto

Flujo de datos (Ejecución)
·       Puede tomar varias formas
·       Depende de la instrucción que se está ejecutando
·       Puede incluir:
Ø  Lectura/Escritura de la memoria
Ø  Entrada/Salida
Ø  Transferencias de registros
Ø  Operaciones en la ALU
 
Read more

lunes, 9 de marzo de 2015

Componentes



Unidad de procesamiento central también conocida como la CPU, este componente en el encargado de procesar los datos y controlar el funcionamiento de los distintos componentes del ordenador. Su función es interpretar las instrucciones contenidas en los programas y procesar los datos, dentro de ellas se encuentran varios componentes como es:


 La unidad de control, que tiene como función emitir señales de control como ordenes externas a la CPU para producir el intercambio de datos con la memoria y los módulos de entrada y salida.


Otro  componente es la unidad aritmética lógica también conocida como ALU que es un circuito muy complejo capaz de realizar un conjunto de operaciones aritméticas, como la suma resta, multiplicación y división y un conjunto de operaciones lógicas como la de comparación atreves de líneas de selección.


Pero saben donde se guarda todo esto muy fácil; al igual que un ser humano la computadora también tiene una memoria un componente clave que permite retener información y almacenar los datos durante un periodo de tiempo, pero existen diferentes tipos de ellas como la memoria RAM encargada de guardar instrucciones de programas e información para que la CPU pueda acceder directamente. Como podemos darnos cuenta es mucha la información que guarda una memoria, pero no toda información es importante almacenarla para siempre, pero eso existen los registros área de almacenamiento temporal de datos e instrucciones, su finalidad es poder acceder a los datos a mayor velocidad. Todos estos componentes tienen que tener interacción; ¿Y cómo se logra todo esto? Mediante buses el cual se puede conectar lógicamente varios periféricos sobre el mismo conjunto de cables, es decir son los medios para la transferencia de datos entre los componentes de un computador divida en bus de control de datos  y direcciones. Pero ¿cómo se imaginan que el usuario interactúa con todo esto?; muy sencillo, mediante los puertos de E/S que no son ni más ni menos que la interfaz que se encarga de comunicarse con el usuario, un ejemplo de ellos son el teclado y el monitor.

 
Read more