Introducción a la unidad de control
La unidad de control el elemento que se encarga de sincronizar las acciones que realiza cada una de las unidades funcionales de un computador. Las funciones de la unidad de control son básicamente dos.
Interpretación de las instrucciones: La unidad de control debe ser capaz de 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 las operaciones: La unidad de control se encarga de la temporización de las distintas operaciones necesarias para la ejecución de cada instrucción. También debe controlar el secuenciamiento de las instrucciones en función de la evolución del registro contador de programa.
Se llaman señales de control a las variables binarias que controlan las entradas y salidas de información de los registros y el funcionamiento de las unidades funcionales.
La ejecución de una instrucción se divide en varias etapas que deben realizarse según una secuencia muy precisa de señales de control que establece la señal de control. Hay dos formas básicas para implementar la unidad de control:
- Unidad de control cableada: Realiza sus funciones mediante elementos hardware. No la analizaremos en profundidad aquí.
-Unidad de control microprogramada: Es mas lenta que la anterior, pero permite implementar instrucciones mas potentes y flexibles. Será analizada en profundidad en los siguientes apartados.
EJECUCIÓN DE UNA INSTRUCCIÓN
Ahora se intentará conjuntar la secuencia de operaciones elementales necesarias para ejecutar una instrucción. Considérese la instrucción “Sumar el contenido de la localización NUM de la memoria al registro R1″. Para simplificar las cosas, la dirección NUM se da en forma explícita en el campo de dirección de la instrucción. Entonces, la localización NUM se especifica en el modo directo de memoria. La ejecución de esta instrucción requiere de las siguientes acciones.
1.Traer la instrucción
2.Traer el primer operando (el contenido de la localización de la memoria a la que señala el campo de dirección de la instrucción).
3.Realizar la adición
4.Cargar el resultado en RI.
PASO
1 .- PC salida, MAR entrada, Leer, Borrar Y, Fijar el acarreo de la ALU, Suma, Zentrada
2.- Z salida, PC entrada, Espera a MFC
3.- MDR salida, IR salida
4.- Campo de dirección de IR salida, MAR entrada, Leer
5.- R1salida, Yentrada, Espera a MFC
6.- MDR salida, Suma, Z entrada
7.- Z salida, R1 entrada
8.- Fin
En la figura 8 se da la secuencia de pasos de control necesarios para implantar las operaciones anteriores en la estructura de bus único. Entonces, la ejecución de instrucción sucede de la siguiente forma. En el paso 1 la operación de traída de la instrucción se inicia cargando el contenido del PC en el MAR y enviando una solicitud de Leer a la memoria. A1 mismo tiempo se incrementa el PC en 1 a través del uso de la ALU. Esto se logra poniendo una de las entradas a la ALU (registro Y) en 0 y la otra entrada (bus de la CPU) en el valor presente que contenga el PC. Al mismo tiempo el acarreo a la ALU se iguala a 1 y se especifica una operación de Sumar.
El valor actualizado se regresa del registro Z al PC durante el paso dos. Obsérvese que el paso dos se inicia inmediatamente después de emitir la solicitud de Leer de a memoria, sin necesidad de esperar la conclusión de la función de la memoria. Sin embargo, el paso 3 tiene que retardarse hasta que se reciba el MFC. En el paso 3, a palabra traída de la memoria se carga en el IR (registro de instrucción: instruction register). Los pasos del 1 al 3 constituyen la fase de traída de instrucción de la secuencia de control. Desde luego, esta parte es la misma para todas las instrucciones.
En cuanto el IR está cargado, el circuito de decodificación de instrucción interpreta su contenido. Esto permite a la circuitería de control elegir las señales adecuadas para la parte restante de la secuencia de control, pasos 4 a 8, a los que se considera como la fase de ejecución. En el paso 4, el campo de dirección del IR que contiene la dirección NUM, es manejado por compuerta y se lleva al MAR y se inicia una operación de Leer de la memoria. Después el contenido de la memoria R1 se transfiere al registro Y. Cuando se completa la operación de Leer, el operando de la memoria está disponible en el registro MDR. La operación de adición se realiza en el paso 6 y el resultado se transfiere a R1 en el paso 7. La señal de Fin, paso 8, indica la conclusión de la ejecución de la presente instrucción y provoca que se inicie un nuevo ciclo de traída regresando de nuevo al paso 1.
Ramificación
Las ramificaciones se logran reemplazando el contenido actual del PC por la dirección de ramificación, esto es, la dirección de la instrucción a la cual se refiere una ramificación. Por lo común, la dirección de ramificación se obtiene sumando al valor actual del PC, un valor X de compensación, el cual está dado en el campo de dirección de la instrucción de ramificación. En la figura 9 se proporciona una secuencia de control que permite la ramificación de control incondicional utilizando la organización de bus único de la figura 1. Como de costumbre, la ejecución se empieza con la fase de traída y termina cuando la instrucción se carga en el IR en el paso 3. Para ejecutar la instrucción de ramificación, el contenido del PC se transfiere al registro Y en el paso 4. Después el valor de compensación X se envía por compuerta al bus y se realiza la operación de adición. El resultado, que representa la dirección de ramificación, se carga en el PC en el paso 6.
PASO
1.- PC salida, MAR entrada, Leer, Borrar Y, Fijar el acarreo de la ALU, Suma, Z entrada
2.- Z salida, PC entrada, Espera a MFC
3.- MDR salida, IR salida
4.- PC salida, Yentrada
5.- Campo de dirección de IR salida, Suma, Z entrada
6.- Z salida, PC entrada
7.- Fin
Figura 9.
Es importante observar que en este ejemplo el PC se incrementa durante la fase de traída, sin importar el tipo de instrucción que se esté ejecutando. Así, en el momento en que el valor de compensación X se suma al contenido del PC, pasos 4 y 5 de la figura 9, este contenido ya se ha actualizado para que apunte a la instrucción que sigue en el programa a la instrucción de Ramificación. Por lo tanto, el valor de compensación X debería ser la diferencia entre la dirección de ramificación y la dirección que sigue de inmediato a la instrucción de Ramificación. Por ejemplo, si la instrucción de Ramificación está en la localización 1000 y se requiere ramificar a la localización 1050, el valor de X debería ser de 49.
Considérese ahora 1 caso de una ramificación condicional, en vez de una ramificación incondicional. La única diferencia entre este caso y el de la figura 9 es el de la necesidad de verificar el estado de los códigos de condición entre los pasos 3 y 4.Por ejemplo, si la circuitería de decodificación de instrucción interpreta el contenido del IR como una instrucción de Ramificación en caso negativo (BRN: Branch on Negative), la unidad de control opera de la siguiente forma: primero, se verifica el registro de código de condición. Si el bit N (negativo) es igual a 1, la unidad de control procede a los pasos del 4 al 7 como en la figura 9. Por otra parte, si N es igual a 0 se emite una señal de Fin. En realidad, esto concluye la ejecución de la instrucción de Ramificación y provoca que la instrucción inmediata del programa se traiga, cuando se realice una nueva operación de traer. Por lo tanto, la secuencia de control para la secuencia de Ramificación condicional BRN puede obtenerse a partir de la figura 9 reemplazando el paso 4 por:
If then End
If N then PC salida, Y entrada.
Leer y usar cuidadosamente todas estas instrucciones y videos para construir un valioso trabajo en formato DIGITAL, suerte.
Competencias Digitales (Tic’s Basicas) a practicar con este TEMA:
- Usar www.Google.com para buscar y localizar UN material academico apropiado y que se pueda recomendar para el tema, ver VIDEO BUSQUEDAS abajo en esta pagina.
- En el post ( o tema ) apropiado en el Libro de Blogger, pegar el material localizado y que se recomienda para este tema, ver VIDEO BLOGGER abajo en esta pagina.
pd: Recordar incluir la fuente del tema usando el formato de citacion apropiado, ver VIDEO WIKIPEDIA abajo en esta pagina.
- En el editor de Blogger usar colores para destacar los parrafos mas importantes y usar subrayados para las citas mas relevantes.
- En el post ( o tema ) apropiado en el libro en Blogger, para incluir ecuaciones o notacion matematica se debera usar el icono del editor de Blogger IMAGE y construir esta notacion matematica con imagenes Latex, ver VIDEO LATEX ABAJO.
- Construir al final y despues de la fuente del material, un breve resumen ( no mas de 2–3 parrafos) explicando palabras propias el contenido del tema.
pd: Se pueden usar alguna de las citas que encontradas dentro del tema, solo recordar encerrarla entre comillas.
pd: Se pueden usar tambien cambios en fonts para darle mas visibilidad, consistencia y relevancia al resumen del tema.
- PUNTOS EXTRAS Si se usa una segunda fuente valiosa de informacion y recordar encadenar los dos materiales mediante uno o dos parrafos apropiados.
- Enviar a el maestro o compañeros un correo electronico que incluya la liga a el tema en blogger para revision, recomendacion, sugerencias y evaluacion, ver VIDEO LIGAS GMAIL abajo.
- Sacar una cuenta (click en)http://docs.google.com, usando el correo de Gmail y tratar de conseguir el mismo usuario que se construyo en Gmail y Blogger ver VIDEO GOOGLE DOCS abajo en esta pagina.
pd: Si ya se tiene una cuenta ignorar esta competencia digital.
pd: Google Docs es el equivalente a OFFICE pero con la caracteristica que todos sus componentes ( procesador de palabras, presentacion electronica y hoja de calculo) estan completamente en internet, es decir todos los archivos o material estaran en linea, seguros y siempre disponibles, ademas de que se pueden trabajarlos desde cualquier pc, ya sea la personal, la del laboratorio de la escuela o la de un lugar publico como la biblioteca o un cafe internet.
- Construir una Presentacion Electronica ( usando muy pocos slides) del tema en GOOGLE DOCS e incrustrarla en el tema de bloger ver VIDEO GOOGLE DOCS en esta pagina abajo.
pd: Recordar que una presentacion electronica, es solamente un resumen muy condensado del tema ( o mapa o guia mental ), que ayuda a recordar los elementos y conceptos mas basicos del tema, cuando se estan exponiendo frente a un grupo.
pd: No olvidar incluir un primer slide con el titulo de la presentacion electronica, un segundo slide con un indice de la presentacion electronica y un ultimo slide con dos o tres parrafos de conclusiones y bibliografia.
- Buscar en Google Imagenes o www.Flickr.com o www.PhotoBucket.com una galeria de fotos o de imagenes apropiadas al tema actual,
- Para los casos de Photobucket y Flicker, ambos sitios proporcionan ligas a sus imagenes y tambien objetos (los recuerdan??), que se pueden incluir en el tema del libro apropiado en Blogger.
pd: para estos sitios deberan obtener una cuenta usando el correo de gmail y de preferencia obtener el mismo usario que se ha venido manejando a lo largo del curso.
pd: Tratar de usar resoluciones y tamaños de imagenes chicos o medianos, recordar que todo este material termina en el post del tema en Blogger y esa pagina no tiene mucho espacio para desplegar fotos o imagenes.
pd: El formato apropiado para fotos o imagenes es JPG, tratar de no usar otros formatos.
pd: Se puede construir y conseguir esta coleccion o galeria de imagenes con:
1) Usando Google Imagenes, recordar conseguir solo imagenes que tengan permiso de publicacion abierto, no usar imagenes o fotos que tengan derechos reservados.
pd: Estas fotos almacenarlas en un folder en el desktop o escritorio de su computadora y subirlas a el post en blogger usando el icono IMAGE del editor de Blogger.
2) Flickr y Photo Bucket tambien tienen una gran cantidad de imagenes que se pueden usar o mejor dicho enlazar a el tema o post en Blogger.
3) Tambien se puede usar la camaras digitales o las camaras de sus telefonos celulares.
4) Tambien se puede usar el programa o aplicacion llamado Srip32.exe( solo buscar srip32 en google) bajarlo e instalarlo, este programa permite capturar una pantalla de la pc, es decir si se encuentra un sitio con imagenes o incluso texto apropiado o relevante al tema, capturar la pantalla con srip32 y ya se tendra la imagen, ver VIDEO Srip32 abajo.
- Incluir al menos una imagen de cada uno de los dos sitios (flickr y Photobucket) en el tema o post que se esta construyendo en Blogger.
- PUNTOS EXTRAS Si se incluyen una galeria completa de imagenes apropiadas desde cualquiera de estos sitios de FLICKR o Photobucket.
- Sacar una cuenta (click en)www.DivShare.com, usando el correo de Gmail y tratar de conseguir el mismo usuario que se consiguio en Gmail y Blogger y Flickr ver VIDEO DIVSHARE abajo en esta pagina.
pd: Si ya se tiene una cuenta ignorar esta competencia digital.
pd: Usar Divshare para almacenar material en audio (MP3) apropiado a el tema ( no usarlo para almacenar material comercial o les suspenden la cuenta)
pd: El material en Audio, con formato MP3 se debera producir usando un microfono en la pc y programas de aplicacion apropiados, llamados editores de audio, un ejemplo de ellos es el SOUND RECORDER que ya viene en Windows, pero se recomienda usar mejor AUDACITY ( solo buscar en google AUDACITY) bajarlo e instalarlo, ver VIDEO AUDACITY abajo.
- Crear al menos dos archivos de audio mp3:
1) El primero de ellos sera la lectura completa de este tema en voz apropiada. ( o aprender a editar con audacity la voz)
2) El segundo de ellos sera un resumen del tema. ( buena voz o editarla con audacity)
3) Ambos archivos subirlos a Div Share (recordor que tienen que ser MP3) y el reproductor que proporciona gratis Div Share, ver VIDEO DIVSHARE abajo e insertarlo en el lugar apropiado del tema que se esta construyendo en Blogger.
4) Ejemplo del reproductor incrustado en una pagina:
- Sacar una cuenta (click en)www.YouTube.com, usando el correo de Gmail y tratar de conseguir el mismo usuario que se consiguio en Gmail y Blogger y Flickr.
pd: Si ya se tiene una cuenta ignorar esta competencia digital.
- Para producir video se pueden usar tres fuentes:
1) Localizar Videos apropiados en Youtube.
2) Usar nuestras camaras digitales o nuestros telefonos celulares para producir video.
3) Producir un video de la propia pantalla de la computadora ( muy similar a lo que se hizo con Srip32) pero usando un programa especializado en video, tal como CAMSTUDIO (click en www.CamStudio.org) bajar e instalar ( no olvidar bajar e instalar el CODEC que esta abajo en el mismo sitio.
3.1) para Usar Camstudio solo recordar que es muy similar a Srip32 Solo que el resultado final es un archivo de video AVI.
- Producir un video de resumen del tema (usar camstudio con el fondo de la pagina con el tema e irlo comentando en voz apropiada)
- Producir un video en vivo con la exposicion del tema ( pueden usar la presentacion electronica de fondo o cualquier otro material, pizarron, filminas, rotafolios, etc.)
- Subir los videos a su cuenta en Youtube e incluirlos o ligarlos en la pagina en Blogger, tambien los pueden subir directamente a BLOGGER ver VIDEO BLOGGER VIDEO abajo.
Saludos y suerte prof Lauro Soto, Ensenada, BC, Mexico.