INTRODUCCIÓN AL DISEÑO DE SISTEMAS DIGITALES DE CONTROL

Joao697292 8 views 39 slides Aug 29, 2025
Slide 1
Slide 1 of 39
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39

About This Presentation

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.


Slide Content

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

Departamento de Informática. Curso 2005-2006 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 2005-2006 3
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 4
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 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 2005-2006 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 2005-2006 7
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 8
DIAGRAMA DE GLUSHKOV

Departamento de Informática. Curso 2005-2006 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 2005-2006 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 2005-2006 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 2005-2006 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 2005-2006 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 2005-2006 14
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 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 2005-2006 16
DIAGRAMAS ASM

Departamento de Informática. Curso 2005-2006 17
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 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 2005-2006 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 2005-2006 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 2005-2006 21
DIAGRAMA DE BLOQUES DE LA UNIDAD DE
PROCESAMIENTO

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

Departamento de Informática. Curso 2005-2006 23
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 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 2005-2006 25
SEÑALES DE CONTROL NECESARIAS

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

Departamento de Informática. Curso 2005-2006 27
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 28
TABLA DE ESTADOS

Departamento de Informática. Curso 2005-2006 29
ECUACIONES DE LAS ENTRADAS A LOS ELEMENTOS DE
MEMORIA
D
0
= IDLE. G + MUL1. Z’
D
1 = MUL0

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

Departamento de Informática. Curso 2005-2006 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 = 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 32
ESQUEMA DEL CONTADOR

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

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

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

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

Departamento de Informática. Curso 2005-2006 37
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 38
CONTENIDO DE LA ROM

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