martes, 28 de septiembre de 2010

UNIDAD CENTRAL DE PROCESO CPU

Concepto.- Es la unidad fundamental de la computadora, realiza todas las funciones (inteligentes) en la computadora. Se le denomina CPU por las siglas en ingles central processing unit, también se le llama simplemente procesador o microprocesador, Es el dispositivo que interpreta las instrucciones contenidas en los programas o definidas por las entradas y ejecuta el procesamiento de los datos. Es el que caracteriza a la computadora por su programación y ejecución de múltiples tareas.
En las primeras computadoras a las CPU se las diseñaba para trabajar con un ordenador mas grande.

COMPONENTES, Tiene componentes que realizan diversar tareas interiormente son: la Unidad de Control, la Unidad de Proceso, los registros y el bus de entrada y salida.


FUNCIONES DE LA CPU
Programación, ejecución de programas, Almacenamiento primario, comunicación con las unidades de entrada y salida.


EVOLUCIÓN

Empezó con máquinas manejadas con mecanismos simples, luego con reles en conmutación con su defecto de rebote de contacto, ya en la era electrónica con válvulas y diodos con velocidad de  de hasta 4 MHz, luego las transistorizadas mas confiables, las CPU con circuitos integrados de baja densidad SSI (con miles de chips) como el usado  en las naves Apollo luego los de MSI y los LSI, la era del  IBM 360 con la introducción del micro código, hasta el ingreso de los microprocesadores en 1971, 4004 y del 8080 en 1974. Se ha hecho realidad la Ley de Moore ( cada dos años se duplica el número de transistores en un Microprocesador) y como máquinas de programa almacenado o de Von Neumann. Hasta llegar a  los procesadores actuales de alta integración en nanómetros.

UTILIDAD ACTUAL
Se utilizan en las computadoras con tecnologìas superescalares, vectoriales, MIPS, CELL pero existen varios dispositivos y aparatos que también la utilizan en muchos campos de la industria, hogar, oficina y personal. la miniaturización como la masificación y la estandarización han provocado las múltiples aplicaciones a la vida moderna en automotores, televisores, refrigeradoras, hornos, aviones, telefonía móvil, juguetes entre otras.

ELEMENTOS PARA EL TRABAJO DEL CPU


Frecuencia de Reloj.- Es la que determina la mayoría de acciones que realiza un computador en forma síncrona, tiene la forma de una onda cuadrada periódica, esta diseñada acorde con las características físicas, y requeridas de la CPU. el diseño del período se basa en cubrir el tiempo de movimiento de la señal, en moverse, propagarse y el retardo efectuado.



REGISTROS
Los registros del procesador son sitios de almacenamiento rápido y temporal, se emplean para controlar instrucciones en ejecución, manejar direccionamiento de memoria y proporcionar capacidad aritmética. Los registros son espacios físicos dentro del microprocesador con capacidad de 4 bits hasta 64 bits dependiendo del microprocesador que se emplee. Los registros son direccionables por medio de una viñeta, que es una dirección de memoria. Los bits, por conveniencia, se numeran de derecha a izquierda (15,14,13…. 3,2,1,0),
La CPU incluye registros visibles para el usuario y registros de control y estado.
Registros Visibles
Instrucciones de la máquina.
que pueden ser de:
1. uso general
2. Datos
3. Direcciones
4. Códigos de condición.
Registros de Propósito General
Optimo número entre 8 y 32. Si hay muchos registros entonces se necesitan demasiados accesos a memoria. Muchos registros no reducen significativamente las referencias a memoria pero hacen la CPU mas compleja.
Tamaño de los registros
Deben tener el tamaño suficiente para que puedan manejar las direcciones a memoria.
Capaces de manejar una palabra completa y a veces combinar dos registros para formar uno solo.
 los registros están divididos en seis grupos los cuales tienen un fin especifico y son:

Registros de segmento
Registros de apuntadores de instrucciones
Registros apuntadores
Registros de propósitos generales
Registro índice
Registro de bandera.

Tareas de la CPU:

 Captar (datos o instrucciones): la ejecución de una instrucción puede exigir leer datos o una instrucción de la memoria o de un módulo I/O. Operand Fetch (OF)
Interpretar instrucción: la instrucción se decodifica para determinar qué acción realizará.  (define lo que realizará y se divide en partes para ejecutarse) Instrucción decode (ID)
Procesar datos: en la ejecución se puede exigir llevar a cabo operación(es) aritmética o lógica con los datos. Operation execution (OE)
Escribir datos: los resultados de la ejecución pueden exigir escribir datos en la memoria o en un módulo I/O. Operand Store(OS)

El contador del programa es incrementado acorde con la longitud de la palabra en términos de unidades de memoria.
Unidad de proceso

La unidad de proceso o unidad de procesamiento (UP) es uno de los tres bloques funcionales principales en los que se divide una Unidad Central de Procesamiento (CPU) en algunos casos dependiente de la unidad de control. Los otros dos bloques son la Unidad de control y el bus de entrada/salida.

La función de la unidad de proceso es ejecutar las tareas que le encomienda la unidad de control. Para esto, la unidad de proceso emplea a las unidades:
Unidad aritmético-lógica (UAL o ALU, por las siglas en inglés de Arithmetic Logic Unit): para llevar a cabo operaciones aritméticas básicas (suma, resta, etc.) y funciones lógicas (NOT, AND, OR, EXOR, etc.).
Unidad de coma flotante: para realizar operaciones matemáticas complejas que no pueden ser realizadas mediante la ALU.
El registro acumulador: que guarda los operandos y los resultados de las operaciones.
El registro de estado: que guarda determinados indicadores acerca del resultado de las operaciones realizadas.
Fuentes: Wikipedia, Fraba,galeon.com, Virtual.unal.edu.co

Bus

UNIDAD DE CONTROL DE LA CPU

OBJETIVO.- Interiorizar los conceptos, elementos y funcionamiento de la unidad de control como elemento principal de la UCP.

CONCEPTO, Es el bloque principal en el que se divide la unidad Central de procesamiento. realiza la toma las decisiones, es el cerebro que controla y coordina el funcionamiento de la computadora; luego de la interpretación de las instrucciones que integran el programa, la unidad genera el conjunto de instrucciones básicas que se deben realizar en forma secuencial para cumplir las operaciones requeridas.
UBICACIÓN.- la unidad de control se ubica dentro de la CPU y se conecta con la unidad de Proceso, con los registros, los buses que la comunican con elementos externos a la CPU.
COMPONENTES.- Sus componentes son el secuenciador, el control de memoria y la unidad de registros y decodificadores; Y el contador del programa

REGISTROS DE LA UNIDAD DE CONTROL
Se usan para controlar el funcionamiento de la CPU:
IR  instruction register REGISTRO DE INSTRUCCIÓN,  contiene la instrucción a realizarse por la unidad de control, mediante este registro controla la secuencia de pasos para decodificar y ejecutar las instrucciones sean en software o hardware.
PC  program counter REGISTRO CONTADOR DE PROGRAMAS.- que es el que contiene la dirección de una posición de memoria de la siguiente instrucción a ejecutar.
MAR REGISTRO DE DIRECCIÓN DE MEMORIA.- indica la dirección en memoria de la palabra que va a ser escrita.
IBR REGISTRO DE BUFFER DE INSTRUCCIÓN .- registro de almacenamiento temporal de la instrucción contenida en la parte derecha de una palabra de memoria.

FUNCIONES DE LA U. DE CONTROL
SINCRONIZACIÓN.- es el elemento que sincronica las acciones que realizan cada una de las unidades funcionales del computador entre estas están:
INTERPRETACIÓN DE INSTRUCCIONES.- Decodificar  los códigos de operación y los modos de direccionamiento de las instrucciones y actuar de forma diferente para cada uno de ellos.
SECUENCIAMIENTO DE OPERACIONES.- se encarga de la temporización de las distintas operaciones necesarias de la ejecución de una instrucción.
Control de secuenciamiento, de las instrucciones de acuerdo al ciclo del registro contador del programa.
EJECUTAR CÓDIGO.- ejecutará un único código que existe para cada instrucción.
ACEPTAR Y GENERAR SEÑALES.- Acepta las instrucciones y genera las señales de control necesarias para que la instrucción se ejecute. (acepta el codop y ejecuta una sola señal)
EJECUCIÓN DE MICROINSTRUCCIONES.- en un procesador X86 de núcleo RISC, debe ejecutar e ejecutar las microinstrucciones con las unidades debidas, en completa coordinación.


CLASIFICACIÓN
1.- Las cableadas, usadas en computadoras por lógica secuencial y arquitectura fija, los componentes principales son por tanto, un circuito secuencial, el de control de estado, el de lógica combinacional y el de emisión de reconocimiento de las señales de control.
2.- las microprogramadas.- usadas en maquinas informáticas por la sencillez de su estructura, se orienta a arquitecturas RISC; la micro programación de la unidad de control se almacena en la micromemoria, a la cual se accede de manera secuencial (1, ,2, ,3, 4, .. n-2, n-1 - n) que serán ejecutadas acorde con las microinstrucciones.
ACCIONES DE LA UNIDAD DE CONTROL MICROPROGRAMADA
Es un nivel intermedio para controlar la ejecución de instrucciones de programas de computadora, tiene un algoritmo en esta unidad que se lo especifica por un diagrama de flujo, la ventaja es la simpleza de su estructura, las salidas de la unidad de control están organizadas en microinstrucciones y que pueden ser reemplazadas fácilmente.

OPERACIÓN DE LA UNIDAD DE CONTROL
La acción básica de esta unidad está en controlar la actividad del resto del equipo informático, se la llama por tanto MÁQUINA DE ESTADO FINITO, lo conforman los circuitos que controlan la circulación de datos a través del procesador, es decir coordina las acciones tanto del procesador como de toda la pc. Existen diseños de unidades de control de diversa complejidad y aplicación.


TAREAS DE LA UNIDAD DE CONTROL
Parte de buscar las instrucciones en la memoria principal, a continuación realiza el proceso asignado a altas velocidades y muchísimas veces en un segundo, son de dos tipos:
BÁSICA
LEER fetch
INTERPRETAR.-  decodificar las instrucciones
EJECUTAR.- proceso de esta instrucción
ALMACENAR.- dispone la ubicación de los resultados obtenidos. Y leer la siguiente casilla de memora con la siguiente instrucción.
EXPANDIDA

  1. Captar instrucción: la CPU lee una instrucción de la memoria.
  1. Interpretar instrucción: la instrucción se decodifica para determinar qué acción es necesaria.
  1. Captar datos: la ejecución de una instrucción puede exigir leer datos de la memoria o de un módulo I/O.
  1. Procesar datos: en la ejecución se puede exigir llevar a cabo alguna operación aritmética o lógica con los datos.
  1. Escribir datos: los resultados de la ejecución pueden exigir escribir datos en la memoria o en un módulo I/O.
6.- INCREMENTO, Se realiza el incremento automático del contador de instrucciones para ejecutar.

CONSIDERACIONES DE TRABAJO, la Unidad de control trabaja sobre las instrucciones que se encuentran almacenadas en la memoria Ram de la computadora, esta hace que se lean los datos desde los dispositivos de entrada y se almacenen en la memoria, sean llevados a la unidad ALU, cuando son necesarios para operaciones y cálculo, se almacene, recupere datos y valores intermedios en la memoria Ram y al final se presenten los datos en los dispositivos de salida.




BIBLIOGRAFIA
http://www.carlospes.com/minidiccionario/unidad_de_control.php
Wikipedia
http://girlsiva.metroblog.com/unidad_de_control_cableada_y_microprogramada


UNIDAD ARITMETICA LÓGICA

OBJETIVO DE CLASE.- Identificar los elementos, características y función de la unidad aritmética lógica.

La unidad Aritmético Lógica, es parte de la CPU, se la conoce como ALU por sus siglas en inglés de (arithmetic logic unit) en su interior tiene los circuitos digitales que realizan las operaciones aritméticas y lógicas, entre dos operandos, sobre esta muchas operaciones; realiza la resta, la multiplicación a través de sumas múltiples o con complementos, esto se realiza cargando los operando en el ACUMULADOR AC que recibe mediante el bus de datos.
 Es necesario que se deba determinar en su interior las condiciones en las que son procesados los operandos, como si es negativo o positivo, si se ha desbordado la capacidad, con esta información se determinará cual será la decisión a tomar.

A, B operandos de entrada,                                    R salida             
     F.- es la entrada de la unidad de control             D es el estado de la salida
Las ALUs existen en todo circuito electrónico moderno, desde realizar incrementos de 1 al tiempo actual, en contadores de circuitos sencillos e incrementadores en calculadoras básicas, hasta las sofisticadas en los procesadores Phenom AMD II y Core i7 de Intel; en procesadores gráficos, tarjetas de sonido, lectores ópticos (CD) y televisores de alta definición en donde se ubican ALUs muy potentes. Los mainframes con muchos núcleos y estos con múltiples unidades de ejecución  y cada una de ellas con su ALU.
"Von Neumann (1945) explicó que una ALU es un requisito fundamental para una computadora, porque  tendrá que efectuar operaciones matemáticas básicas, .. ..porque lo que creyó razonable, que una computadora tenga los circuitos especializados para realizar estas operaciones".


TERMINALES DE LA ALU
las Terminales de la ALU son
Entrada, los dos operandos con los datos o con números a ser procesados y la entrada de un código desde la unidad de Control con la información de que operación debe realizar,
Salida, la respuesta a computo de la operación y el notificador de la operación realizada.
Registros de estado, entradas y salidas con información de acarreo, overflow, división por cero y otras mas.
BUSES UTILIZADOS
EL DATA BUS.-(de entrada)lleva la información a la unidad aritmética para su procesamiento.
EL STATUS BUS.-(de salida) los resultados e información procesada en la ALU son transportados a la unidad de Control.
REGISTRO DE ESTADO.- la palabra binaria con los datos de trabajo de la ALU.


OPERACIONES EN LA ALU
SIMPLES
ARITMÉTICAS operaciones que se realiza desde la más básica y que se incrementan de acuerdo al diseño y complejidad de esta unidad y pueden ser desde:
SUMA , RESTA, MULTIPLICACIÓN, DIVISIÓN
DESPLAZAMIENTO.- al mover palabras a izquierda o derecha; como las ejecutadas en operaciones con BITS por o para 2 (producto y división) y sus múltiplos. con circuitos biestables D y JK.
LÓGICAS.- mediante bits para determinar la situación de las condiciones y estás se realizan con las compuertas AND OR NOT, NAND, NOR, YES XOR XNOR y otras. estas son; INVERSIÓN, CONJUNCIÓN, DISYUNCIÓN.
COMPARACIONES.- Para que pueda tomar decisiones entre 2 o mas opciones o saltos condicionados.

COMPLEJAS
Al realizarse estas sube el costo del procesador, consume mas energía y su diseño será más sofisticado y complejo.
CLASIFICACIÓN DE LAS ALUS POR SU COMPLEJIDAD
AVANZADAS.- de arquitectura muy compleja, tiene en su interior circuitos que realizan muchas operaciones, por tanto es muy rápida y costosa.
SEMIAVANZADAS.- tiene una arquitectura con circuitos de varias operaciones pero ya utiliza microcódigo para realizar en apoyo a las operaciones tiene velocidad menores a las avanzadas.
BASICAS .- Estas tienen un equilibrio en software y hardware, contienen circuitos que realizan  operaciones en coma flotante, utilizan microcódigos y software para complementar las tareas.
ELEMENTALES.- Emulan la existencia del coprocesador, verifica la existencia o no de circuitos de cálculo o coprocesador matemático, proceso denominado emulación por software. Contiene los circuitos más simples pero es lenta en sus procesos.
SIMULADORES.- al no tener hardware y emulador, se tiene que realizar programas que con algoritmos realicen todas las operaciones desde las sumas pasando por raices hasta las mas avanzadas y se tiene para esto bibliotecas de software. Son muy lentas por toda la simulación que debe realizar.



DATOS PROCESADOS
la ALU trabaja con números binarios, y para las restas el más efectivo es el complemento a dos por su simpleza; con el formato signo magnitud, y para números muy grandes se lo realiza con coma flotante que contiene mantisa, base y exponente.
COMPONENTES.- la alu contiene en su interior los circuitos que permiten realizar las operaciones y son: Circuito operacional, registros de entradas, registro de estados y buses de conexión interna y externa.
REGISTROS DE LA ALU
AC Accumulator Se emplean para almacenar operandos y resultados de operaciones de la ALU temporalmente
MQ: Multiplier Quotient .-Se emplean para almacenar operandos y resultados de operaciones de la ALU que no soporta el AC en forma temporal. Por ejemplo, el resultado de multiplicar dos números de 40 bits es un número de 80 bits; los 40 bits más significativos se almacenan en AC y los menos significativos se almacenan en MQ.
MBR Memory Buffer Register.- Contiene una palabra que debe ser almacenada en la memoria, o es usado para recibir una palabra procedente de la memoria. Interacciona con toda la computadora.

HARDWARE
ESTRUCTURA DE LA UNIDAD ARITMÉTICO LÓGICA

 SUMADOR DE 16 BITS CONSTRUIDO CON 4 SUMADORES DE 4 BITS
MULTIPLICADOR DE DOS NÚMEROS 
MULTIPLICADOR BINARIO DE DOS NÚMEROS SIN SIGNO
 CIRCUITO DEL MULTIPLICADOR

UNIDAD EN COMA FLOTANTE FPU .- tiene varios circuitos complejos, incluyendo  ALUs internas, trabaja con coma flotante y con números complejos. Esta denominación la realizan generalmente ingenieros.

Bibliografía
http://www.slideshare.net/mariafabiolagarcia/unidad-de-control-8718241
wikipedia

miércoles, 8 de septiembre de 2010

INDICACIONES EXAMEN FINAL


Ante la realización del examen final, y para completar los trabajos de control y para el examen final  se indica las tareas a realizar

 REALIZAR RESUMEN  GRÁFICO DE LOS CONTENIDOS SOBRE

HIPERTREADING
SISTEMAS EMBEBIDOS
TIEMPO REAL
MAQUINA DE UN BIT
Von Neumman


INVESTIGAR FORMA PRÀCTICA - REALIZAR INFORME

TRABAJO DE APLICACIONES ANDROID - WINDOWS
team viewer - remote droid - vnc viewer -  air droid- android commander y otros






sábado, 4 de septiembre de 2010

Memorias circuitos

Elaborado y Compilado sobre los libros y trabajos de Arquitectura de computadoras de   Y. Meza, D. Mery, Tanenbaum Andrew, Fernandez y Amorin.

 Circuito sincronico de 2 bites con dos FF J-K que responde a las siguientes condiciones.
Ja= Bx  Ka=  Bx   Jb= x   KB =   x


Celda de memoria. configurada en un FF RS modificado tipo D y con un inversor en la entrada de lectura escritura.


Diagrama de la celda de memoria de un bit indicando los cuatro conectores esenciales entrada, salida seleccionar y habilitador de lectura escritura


Unidad de Memoria de 4 x 3 bits, la selección de memoria la realiza el decodificador 2x4 a las salidas D1,D2,D3 y D4. Ingresa palabras de 3 bits y sale a traves de las tres compuertas or de cuatro entradas, la habilitación de lectura y escritura se realiza a todas las celdas de memoria.

Tabla de Verdad de la operación del decodificador indicando las combinaciones de las entradas A0 y A1
Unidad de memoria RAM las lineas de entrada y salida son  n que representa el tipo de palabras.  Están las líneas de dirección en función de k. 
Direcciones de memoria de la unidad de memoria de 1024 x 16 bits, las direcciones de memoria van de 0 a 1023.


Celda de memoria RAM, tiene dos entradas tanto para B y B´ de igual forma para la salida.
Una unidad de memoria formada por n celdas llamada Memoria distribuida con proceso de lectura y proceso de escritura.



Buffer de tres estados; memoria intermedia de control de paso de información.
con solo  bite
con dos bites y con tabla de verdad que indica el efecto de la accion de los habilitadores
memoria RAM de 16x 1 de 16 posiciones para las entradas de un bit.

 
Diseño de una memoria RAM usando celdas de cuatro bits para cuatro palabras seleccionadas por un decodificador.

Memoria de 64 Kbites con lectura y escritura de palabras de 16 bits.