LECCIÓN 8. DISEÑO DE SISTEMAS DIGITALES DE CONTROL

Slides:



Advertisements
Presentaciones similares
Org. y Arquitectura del Computador
Advertisements

Equipo #3 Unidad III: ALU Efraín Corral Eduardo Castillo Elías Alarcón
El modelo de Von Neumann
DISEÑO DE TRANSFERENCIA ENTRE REGISTROS
Microprocesadores Componentes básicos..
Tema 7: Análisis y diseño con registros
CIRCUITOS COMBINACIONALES
Intoduccion a la Arquitectura y Organizaciòn del Computador
FAMILIA DE LÓGICA PROGRAMABLE EMBEBIDA ALTERA FLEX 10K.
Fernando Escribano Pro 1º de Bachillerato
Computación PROGRAMACIÓN.
PERCY CHUMBE BUENDIA. KIZZY GUTIERREZ VALVERDE. RUTH NOEMY APAZA JARA.
Concepto de programa. Directorio Concepto de programa. Analisis del problema. Resolucion del problema. Desarroollo de un programa. Partes constitutivas.
UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES
SISTEMAS DE MEMORIA DEL COMPUTADOR
LA UNIDAD ARITMÉTICA Y LÓGICA
LECCIÓN 10. INTRODUCCIÓN AL CONTROL MICROPROGRAMADO
LA UNIDAD ARITMÉTICA Y LÓGICA
LA UNIDAD ARITMÉTICA Y LÓGICA
SISTEMAS DE MEMORIA DEL COMPUTADOR
ESTRUCTURA Y TECNOLOGÍA DE COMPUTADORES II
Tema II Unidad de memoria. 2 Unidad de memoria 2.1 Definiciones y conceptos básicos Localización Capacidad Unidad de transferencia
El procesador: la ruta de datos y el control (II Parte)
NIVEL DE LENGUAJES ORIENTADOS A PROBLEMAS NIVEL DE LENGUAJE ENSAMBLADOR NIVEL DE MAQUINA DEL SISTEMA OPERATIVO NIVEL DE MICROPROGRAMACIÓN NIVEL DE LÓGICA.
Unidad aritmético-lógica
El nivel de la Microprogramación
Composición Interna de un Procesador
Computadora Digital Arquitectura de John Von Neumann
Microcomputadores Prof : Tatiana Marín R.. Sistema basado en microprocesador de 8 bits.
Arquitectura del Computador
ARQUITECTURA DE LOS MICROPROCESADORES DE 8 BITS
MICRO Y MACRO ARQUITECTURA
Introducción a la Ingeniería en Sistemas
INTRODUCCIÓN AL DISEÑO SECUENCIAL: CONTADORES Y REGISTROS
Conceptos Arquitectónicos del computador
Tae Programación WEB Ventajas de los ordenadores ( compus pa los cuates ) Que es la Programación? Que es un lenguaje de programación? Algoritmo Que es.
UNIDAD VI: CIRCUITOS LÓGICOS SECUENCIALES
Juego de Preguntas y Respuestas
UNIDAD 2. ALGORITMOS Y ESTRUCTURAS DE DATOS.
Diseño de la Unidad de Control Multiciclo: Microprogramación
Unidad aritmético-lógica
Maestría en Ingeniería Electrónica
Memoria Principal Memoria de acceso aleatorio. La unidad de memoria y jerarquías de almacenamiento Unidades de Almacenamiento. La unidad de memoria es.
“Organización y Arquitectura de Computadores” William Stallings
LA UNIDAD ARITMÉTICA Y LÓGICA
Departamento de Informática. Curso LA UNIDAD DE CONTROL LECCIÓN 9. DISEÑO DE PROCESADORES USANDO CONTROL CABLEADO.
Informática Clase Arquitectura de la Computadora.
Tendencias Generales Dotación física Software lógica Más pequeño
DEV- C++ ·include <iostream> Int x x=x+2(x)
1.1 Introducción A Los Sistemas Informáticos
Elaboración de algoritmos usando lógica de programación
Principio unidad 1.
Computadora Es una máquina electrónica que recibe y procesa datos para convertirlos en información útil. Una computadora es una colección de circuitos.
Alumno: Gerardo Mario Valdés Ortega
INTEGRANTES: JOSE ESTEVEZ _HUGO ANDRADE CURSO: 5TO “B”
LA CPU Ing. Manuel Andrés Belalcázar S. Corporación Universitaria Autónoma del Cauca.
José Alvarado – Cristian Anzola
1 Unidades funcionales de un ordenador Procesadores Memorias Dispositivos de E/S
Curso: Fundamentos de Computación
UNIDAD 2. DISEÑO LÓGICO DE PROCESADORES: UNIDAD ARITMÉTICO-LÓGICA Ing. Elizabeth Guerrero V.
Republica Bolivariana de Venezuela Universidad Alonso de Ojeda Facultad de Ingeniería Escuela de Computación Ing. Prof. Leonel Sequera Entrada y Salidas.
ARQUITECTURA DEL COMPUTADOR INTEGRANTES: CASTRO MYCHAEL ALVEAR NELSON FLORES DANILO RODRIGUEZ CARLOS IZQUIERDO HARRY INTEGRANTES: CASTRO MYCHAEL ALVEAR.
Conceptos Generales PROGRAMACIÓN I DOCENTE: ING. MARLENY SORIA M. 1.
 PRESENTADO POR : ANDRES MAYORGA DANIELA PAEZ VEGA.
Lenguaje ensamblador Conceptos introductorios. Formatos de Instrucción. Modos de Direccionamiento. Conjunto de instrucciones básico. Introducción al Lenguaje.
 Software  Humanware  Hardware Conformado por.
Arquitectura básica de la computadora
CAPITULO V Arquitectura de Von Neumann
TEMA 1: UNIDAD DE CONTROL
Unidad de Control Ubicación: Es uno de los tres bloques funcionales principales en los que se divide una unidad central de procesamiento (CPU). Realizar.
Transcripción de la presentación:

LECCIÓN 8. DISEÑO DE SISTEMAS DIGITALES DE CONTROL LA UNIDAD DE CONTROL LECCIÓN 8. DISEÑO DE SISTEMAS DIGITALES DE CONTROL Departamento de Informática. Curso 2005-2006

FUNCIONES DE LA UNIDAD DE CONTROL Interpretación de las instrucciones: Lectura y decodificación de la instrucción. Secuenciamiento de las instrucciones: Temporización y secuenciamiento de todas las operaciones necesarias para la correcta ejecución de la instrucción. Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 SEÑALES DE CONTROL Llamamos señales de control a un conjunto de variables binarias que gobiernan las entradas y salidas de información de los registros y el funcionamiento de las demás unidades funcionales. Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 TIPOS DE CONTROL Control cableado: En este caso la unidad de control es un circuito secuencial que está diseñado para llevar a cabo estas funciones. Sus características fundamentales son: alta velocidad y dificultad de adaptación a cambios. Control microprogramado: El secuenciamiento de las señales de control se consigue con la ejecución de un programa específico para cada instrucción que se llama microprograma. Sus características son : una cierta lentitud y una gran adaptabilidad a modificaciones. Departamento de Informática. Curso 2005-2006

NIVELES DE ESTUDIO DE UN SISTEMA DIGITAL Nivel de puertas lógicas, la unidad de trabajo es el bit y suele corresponder a sistemas digitales sencillos. Nivel de registros, la unidad de transferencia es la palabra y considera para su estudio los registros de la máquina y sus interconexiones. Nivel de procesador, la unidad de trabajo es el bloque de palabras y considera las distintas unidades funcionales como elemento de partida. Departamento de Informática. Curso 2005-2006

COMPONENTES BÁSICOS DE UN SISTEMA DIGITAL Un conjunto de registros o posiciones de memoria R[i] donde están almacenados los datos Un conjunto de dispositivos lógicos que realizan las operaciones de transformación de datos (p. ej. ALU entre otros) Una interfaz con el exterior que asegura el acceso a datos externos Un conjunto de buses que interconectan los distintos elementos Una unidad de control que permite ejecutar las operaciones en el orden establecido por el programa Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 DIAGRAMA DE GLUSHKOV Unidad de procesamiento que comprende los registros, los recursos de cálculo y los caminos de datos (ruta de datos) Unidad de control que recibe de la unidad de procesamiento señales sobre el estado de las operaciones y genera la secuencia de señales de control que gobiernan a la unidad de procesamiento. Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 DIAGRAMA DE GLUSHKOV Departamento de Informática. Curso 2005-2006

NIVEL DE TRANSFERENCIA DE REGISTROS El comportamiento de un sistema digital a nivel de transferencia de registros se puede definir mediante un conjunto de operaciones O1 ,O2 , O3 , … On realizadas sobre diferentes datos externos o internos. Cada una de estas operaciones elementales se lleva a cabo mediante transferencias entre registros cuya forma mas general puede ser: R[m]  f ( R[i], R[j], R[k], …) Departamento de Informática. Curso 2005-2006

LENGUAJE DE TRANSFERENCIA DE REGISTROS Sean A y B dos registros, la operación mas habitual es transferir el contenido de un registro a otro, se expresa así: B  A En caso de necesitar saber el número o posición de los bits transferidos se indica de la siguiente manera: B[7-0]  A[15-8] Normalmente la transferencia está controlada mediante una señal de habilitación E (enable), se suele expresar de la siguiente forma: E : B  A La señal de habilitación puede ser mas compleja, por ejemplo: Si x = 0 y t = 1  B A En otro caso  B  C Departamento de Informática. Curso 2005-2006

LENGUAJE DE TRANSFERENCIA DE REGISTROS Los registros pueden ser objeto de las operaciones aritméticas y lógicas habituales, así tendremos: D  A B LSR (A) ASR (A) A  A + 1 Otro operador disponible es & (concatenación) p.ej LSR (A&B) Departamento de Informática. Curso 2005-2006

LENGUAJE DE TRANSFERENCIA DE REGISTROS Las transferencias de datos entre registros y memoria se pueden tratar como casos particulares del caso anterior donde tendremos dos operaciones gobernadas por las señales de control R (lectura) y W (escritura) y usando los registros MAR y MBR con la notación habitual tendremos: R: MBR  M((MAR)) W: M((MAR))  MBR Departamento de Informática. Curso 2005-2006

LENGUAJE DE TRANSFERENCIA DE REGISTROS Por último las transferencias entre buses y registros se escriben de forma similar: A  Inbus [8] Outbus [8]  A Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 DIAGRAMAS ASM Para describir el comportamiento de la unidad de control de forma gráfica se utilizan diagramas ASM (Algorithmic State Machines) que describe la secuencia de sucesos, así como la relación temporal entre los estados de la unidad de control y las acciones que ocurren en los estados como respuesta a los pulsos de reloj. Departamento de Informática. Curso 2005-2006

COMPONENTES BASICOS DE UN DIAGRAMA ASM Bloque de estado : rectángulo que contiene las operaciones de transferencia de registros y señales de salida que se activan mientras la unidad de control esté en ese estado. Bloque de decisión: Describe la condición bajo la que se llevarán a cabo distintas transformaciones en la ruta de datos y se seleccionará el próximo estado Bloque de condición: Describe las asignaciones de variables y salidas que se llevarán a cabo Bloque ASM : Es una estructura compuesta de un bloque de estado y un conjunto de bloques de decisión y de condición interconectados en serie o en paralelo, tiene una sola entrada y puede tener varias salidas. Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 DIAGRAMAS ASM Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 DIAGRAMAS ASM Podemos definir un diagrama ASM como un conjunto de bloques ASM interconectados de forma que: Todo camino definido por el conjunto de bloques de condición debe llevar necesariamente a otro estado Cada diagrama de estado y su conjunto de condiciones debe llevar a un único estado siguiente. Departamento de Informática. Curso 2005-2006

IMPLEMENTACIÓN DE UN MULTIPLICADOR HARDWARE La metodología que se utiliza tiene una serie de pasos comunes y un abanico de soluciones posibles para la implementación de la unidad de control. Definir la tarea a realizar mediante un algoritmo en lenguaje de transferencia de registros En nuestro caso vamos a implementar un multiplicador con el algoritmo de multiplicación por suma y desplazamiento Departamento de Informática. Curso 2005-2006

ALGORITMO DE MULTIPLICACION 1: B  Entrada (multiplicando) ; 2: MQ  Entrada (multiplicador) ; 3: A  0 ; 4: C  0 ; 5: P  n-1 ; for P:= n-1 downto 0 do 6: if MQ[0] = 1 then A  A + B , C  CF ; 7: LSR (C&A&MQ); 8: P  P – 1 ; end for Departamento de Informática. Curso 2005-2006

UNIDAD DE PROCESAMIENTO Un registro B de n bits para almacenar el multiplicando, con capacidad de carga en paralelo. Un registro MQ de n bits para almacenar el multiplicador y después almacenar los n bits mas bajos del resultado. Necesita capacidad de carga y desplazamiento a la derecha Un registro A de n bits, inicialmente a cero que después almacenará los n bits de mayor peso del resultado, precisa capacidad de carga (resultado de la suma) y desplazamiento en paralelo Un sumador paralelo de n bits Un contador P con capacidad de carga en paralelo y de decrementarse. El tamaño debe ser log2 n bits. Y debe tener un circuito de detección de cero. Un elemento de memoria C que pueda ponerse a cero y cargarse con el arrastre CF del sumador. Departamento de Informática. Curso 2005-2006

DIAGRAMA DE BLOQUES DE LA UNIDAD DE PROCESAMIENTO Departamento de Informática. Curso 2005-2006

DIAGRAMA ASM DEL MULTIPLICADOR Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 DIAGRAMA ASM IDLE: Es un estado inicial de espera, del que sale cuando la señal G vale 1 y se inicia la operación de multiplicación. Se supone que los operandos ya están cargados en los registros. Al pasar al siguiente estado se asignan los valores que se indican en el bloque de condición. MUL0: En este estado tenemos un bloque de decisión en el que se consulta el bit de menor peso del registro MQ ( Q0 ) y según el valor que toma se realizan ciertas operaciones y se pasa al siguiente estado MUL1: En este estado se realizan las operaciones de desplazamiento de los registros C-A-MQ y se decrementa el contador P. Tiene un bloque de decisión en el que se comprueba el valor de Z, si es cero pasa al estado MUL0 y si es 1 pasa al estado IDLE. Departamento de Informática. Curso 2005-2006

DISEÑO DE LA UNIDAD DE CONTROL Generar las señales de control necesarias Establecer el mecanismo de secuenciamiento de estas señales Departamento de Informática. Curso 2005-2006

SEÑALES DE CONTROL NECESARIAS Departamento de Informática. Curso 2005-2006

SECUENCIAMIENTO DE LOS ESTADOS Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 DISEÑO DE LA UNIDAD DE CONTROL USANDO UN DECODIFICADOR Y UN REGISTRO DE SECUENCIA Un registro de secuencia está formado por n biestables de tipo D y puede tener hasta 2**n estados, así mismo un decodificador de n entradas tiene 2**n salidas, una para cada estado. Como tenemos tres estados necesitamos dos elementos de memoria (llamados M1 M0 ) y codificamos cada estado con un número ( IDLE = 00 ; MUL0 = 01 ; MUL1 = 10 ) Por otra parte tenemos dos entradas de estado provenientes de la unidad de procesamiento, G y Z . Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 TABLA DE ESTADOS Departamento de Informática. Curso 2005-2006

ECUACIONES DE LAS ENTRADAS A LOS ELEMENTOS DE MEMORIA D0 = IDLE. G + MUL1. Z’ D1 = MUL0 Departamento de Informática. Curso 2005-2006

ESQUEMA DE LA UNIDAD DE CONTROL Departamento de Informática. Curso 2005-2006

DISEÑO DE LA UNIDAD DE CONTROL USANDO UN CONTADOR Y UN DECODIFICADOR El contador : Es un dispositivo síncrono que proporciona una salida Q(t+1) en función de los valores de las líneas de selección CL, H, L y de la entrada E(t) Si CL = 1  Q(t + 1) = 0 Si L = 1  Q(t + 1) = E (t) Si H = 1 y L = 0  Q(t + 1) = (Q(t) + 1) mod 2**n En cualquier otro caso  Q(t + 1) = Q (t) La señal H es de habilitación, la señal L es de carga y CL es de puesta a cero. Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 ESQUEMA DEL CONTADOR Departamento de Informática. Curso 2005-2006

DIAGRAMA DE ESTADOS DE MOORE Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 TABLA DE ESTADOS Departamento de Informática. Curso 2005-2006

ECUACIONES DE LAS ENTRADAS AL CONTADOR Departamento de Informática. Curso 2005-2006

ESQUEMA DE LA UNIDAD DE CONTROL Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 DISEÑO DE LA UNIDAD DE CONTROL USANDO UN REGISTRO DE ESTADO Y UNA MEMORIA ROM Usando una memoria ROM podemos almacenar una tabla en la que tengamos, para todas las combinaciones de los estados y las señales de condición, los valores del siguiente estado y las señales de control. En nuestro caso como tenemos tres estados y tres señales de condición, la ROM tendrá 32 filas. Como generamos 4 señales de control, cada fila tendrá 6 bits. Departamento de Informática. Curso 2005-2006

Departamento de Informática. Curso 2005-2006 CONTENIDO DE LA ROM Departamento de Informática. Curso 2005-2006

ESQUEMA DE LA UNIDAD DE CONTROL Departamento de Informática. Curso 2005-2006