La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

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

Presentaciones similares


Presentación del tema: "LECCIÓN 8. DISEÑO DE SISTEMAS DIGITALES DE CONTROL"— Transcripción de la presentación:

1 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

2 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

3 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

4 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

5 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

6 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

7 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

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

9 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

10 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

11 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

12 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

13 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

14 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

15 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

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

17 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

18 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

19 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

20 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

21 DIAGRAMA DE BLOQUES DE LA UNIDAD DE PROCESAMIENTO
Departamento de Informática. Curso

22 DIAGRAMA ASM DEL MULTIPLICADOR
Departamento de Informática. Curso

23 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

24 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

25 SEÑALES DE CONTROL NECESARIAS
Departamento de Informática. Curso

26 SECUENCIAMIENTO DE LOS ESTADOS
Departamento de Informática. Curso

27 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

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

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

30 ESQUEMA DE LA UNIDAD DE CONTROL
Departamento de Informática. Curso

31 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 =  Q(t + 1) = 0 Si L =  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

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

33 DIAGRAMA DE ESTADOS DE MOORE
Departamento de Informática. Curso

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

35 ECUACIONES DE LAS ENTRADAS AL CONTADOR
Departamento de Informática. Curso

36 ESQUEMA DE LA UNIDAD DE CONTROL
Departamento de Informática. Curso

37 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

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

39 ESQUEMA DE LA UNIDAD DE CONTROL
Departamento de Informática. Curso


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

Presentaciones similares


Anuncios Google