INTRODUCCIÓN AL DISEÑO DE SISTEMAS DIGITALES DE CONTROL
Joao697292
8 views
39 slides
Aug 29, 2025
Slide 1 of 39
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
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.
Size: 296.03 KB
Language: es
Added: Aug 29, 2025
Slides: 39 pages
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