Unidad Control
-
Upload
carlos-sucuy -
Category
Documents
-
view
229 -
download
0
Transcript of Unidad Control
-
7/25/2019 Unidad Control
1/56
Departamento de Informtica. Curso 2006-2007 1
LA UNIDAD DE CONTROL
LECCIN 1.
DISEO DE SISTEMAS DIGITALES DECONTROL
-
7/25/2019 Unidad Control
2/56
Departamento de Informtica. Curso 2006-2007 2
FUNCIONES DE LA UNIDAD DE CONTROL
Interpretacin de las instrucciones :Lectura y decodificacin de la instruccin.
Secuenciamiento de las instrucciones :Temporizacin y secuenciamiento de todaslas operaciones necesarias para la correctaejecucin de la instruccin.
-
7/25/2019 Unidad Control
3/56
Departamento de Informtica. Curso 2006-2007 3
SEALES DE CONTROL
Llamamosseales de control a un conjuntode variables binarias que gobiernan lasentradas y salidas de informacin de losregistros y el funcionamiento de las demsunidades funcionales.
-
7/25/2019 Unidad Control
4/56
Departamento de Informtica. Curso 2006-2007 4
TIPOS DE CONTROL
Control cableado : En este caso la unidad de
control es un circuito secuencial que est diseadopara llevar a cabo estas funciones. Sus caractersticasfundamentales son: alta velocidad y dificultad deadaptacin a cambios.Control microprogramado : El secuenciamiento delas seales de control se consigue con la ejecucin deun programa especfico para cada instruccin que se
llama microprograma. Sus caractersticas son : unacierta lentitud y una gran adaptabilidad amodificaciones.
-
7/25/2019 Unidad Control
5/56
Departamento de Informtica. Curso 2006-2007 5
NIVELES DE ESTUDIO DE UN SISTEMA DIGITAL
Nivel de puertas lgicas , la unidad de trabajo es
el bit y suele corresponder a sistemas digitalessencillos.
Nivel de registros , la unidad de transferencia es lapalabra y considera para su estudio los registros dela mquina y sus interconexiones.
Nivel de procesador , la unidad de trabajo es elbloque de palabras y considera las distintas unidadesfuncionales como elemento de partida.
-
7/25/2019 Unidad Control
6/56
Departamento de Informtica. Curso 2006-2007 6
COMPONENTES BSICOS DE UN SISTEMA DIGITAL
Un conjunto de registros o posiciones de memoria
R[i] donde estn almacenados los datosUn conjunto de dispositivos lgicos que realizan lasoperaciones de transformacin de datos (p. ej. ALUentre otros)Una interfaz con el exterior que asegura el acceso adatos externosUn conjunto de buses que interconectan los distintoselementosUna unidad de control que permite ejecutar lasoperaciones en el orden establecido por el programa
-
7/25/2019 Unidad Control
7/56
Departamento de Informtica. Curso 2006-2007 7
DIAGRAMA DE GLUSHKOV
Unidad de procesamiento que comprendelos registros, los recursos de clculo y loscaminos de datos (ruta de datos )
Unidad de control que recibe de la unidadde procesamiento seales sobre el estado delas operaciones y genera la secuencia deseales de control que gobiernan a la unidadde procesamiento.
-
7/25/2019 Unidad Control
8/56
Departamento de Informtica. Curso 2006-2007 8
DIAGRAMA DE GLUSHKOV
-
7/25/2019 Unidad Control
9/56
Departamento de Informtica. Curso 2006-2007 9
NIVEL DE TRANSFERENCIA DE REGISTROS
El comportamiento de un sistema digital a nivel de
transferencia de registros se puede definir medianteun conjunto de operaciones O1 ,O2 , O3 , Onrealizadas sobre diferentes datos externos o internos.
Cada una de estas operaciones elementales se lleva acabo mediante transferencias entre registros cuyaforma mas general puede ser:
R[m] f ( R[i], R[j], R[k], )
-
7/25/2019 Unidad Control
10/56
Departamento de Informtica. Curso 2006-2007 10
LENGUAJE DE TRANSFERENCIA DE REGISTROS
Sean A y B dos registros, la operacin mas habitual es transferirel contenido de un registro a otro, se expresa as: B A
En caso de necesitar saber el nmero o posicin de los bitstransferidos se indica de la siguiente manera: B[7-0] A[15-8]
Normalmente la transferencia est controlada mediante unaseal de habilitacin E (enable), se suele expresar de lasiguiente forma: E : B A
La seal de habilitacin puede ser mas compleja, por ejemplo:Si x = 0 y t = 1 B AEn otro caso B C
-
7/25/2019 Unidad Control
11/56
Departamento de Informtica. Curso 2006-2007 11
LENGUAJE DE TRANSFERENCIA DE REGISTROS
Los registros pueden ser objeto de las operacionesaritmticas y lgicas habituales, as tendremos:
D A BLSR (A)
ASR (A) A A + 1
Otro operador disponible es & (concatenacin) p.ejLSR (A&B)
-
7/25/2019 Unidad Control
12/56
Departamento de Informtica. Curso 2006-2007 12
LENGUAJE DE TRANSFERENCIA DE REGISTROS
Las transferencias de datos entre registros y
memoria se pueden tratar como casosparticulares del caso anterior dondetendremos dos operaciones gobernadas porlas seales de control R (lectura) y W(escritura) y usando los registros MAR y MBRcon la notacin habitual tendremos:
R: MBR M((MAR))W: M((MAR)) MBR
-
7/25/2019 Unidad Control
13/56
Departamento de Informtica. Curso 2006-2007 13
LENGUAJE DE TRANSFERENCIA DE REGISTROS
Por ltimo las transferencias entre buses yregistros se escriben de forma similar:
A Inbus [8]Outbus [8] A
-
7/25/2019 Unidad Control
14/56
Departamento de Informtica. Curso 2006-2007 14
DIAGRAMAS ASM
Para describir el comportamiento de la unidadde control de forma grfica se utilizandiagramas ASM (Algorithmic State Machines)que describe la secuencia de sucesos, as
como la relacin temporal entre los estadosde la unidad de control y las acciones queocurren en los estados como respuesta a los
pulsos de reloj.
-
7/25/2019 Unidad Control
15/56
Departamento de Informtica. Curso 2006-2007 15
COMPONENTES BASICOS DE UN DIAGRAMA ASM
Bloque de estado : rectngulo que contiene las operaciones detransferencia de registros y seales de salida que se activanmientras la unidad de control est en ese estado.Bloque de decisin: Describe la condicin bajo la que sellevarn a cabo distintas transformaciones en la ruta de datos yse seleccionar el prximo estado
Bloque de condicin: Describe las asignaciones de variables ysalidas que se llevarn a cabo
Bloque ASM : Es una estructura compuesta de un bloque deestado y un conjunto de bloques de decisin y de condicininterconectados en serie o en paralelo, tiene una sola entrada ypuede tener varias salidas.
-
7/25/2019 Unidad Control
16/56
Departamento de Informtica. Curso 2006-2007 16
DIAGRAMAS ASM
-
7/25/2019 Unidad Control
17/56
Departamento de Informtica. Curso 2006-2007 17
DIAGRAMAS ASM
Podemos definir un diagrama ASM como unconjunto de bloques ASM interconectados deforma que:Todo camino definido por el conjunto debloques de condicin debe llevarnecesariamente a otro estadoCada diagrama de estado y su conjunto decondiciones debe llevar a un nico estadosiguiente.
-
7/25/2019 Unidad Control
18/56
Departamento de Informtica. Curso 2006-2007 18
IMPLEMENTACIN DE UN MULTIPLICADOR HARDWARE
La metodologa que se utiliza tiene una serie
de pasos comunes y un abanico de solucionesposibles para la implementacin de la unidadde control.
Definir la tarea a realizar mediante unalgoritmo en lenguaje de transferenciade registrosEn nuestro caso vamos a implementar unmultiplicador con el algoritmo demultiplicacin por suma y desplazamiento
-
7/25/2019 Unidad Control
19/56
Departamento de Informtica. Curso 2006-2007 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 do6: if MQ[0] = 1 then A A + B , C CF ;
7: LSR (C&A&MQ);8: P P 1 ;end for
-
7/25/2019 Unidad Control
20/56
Departamento de Informtica. Curso 2006-2007 20
UNIDAD DE PROCESAMIENTO
Un registro B de n bits para almacenar el multiplicando, concapacidad de carga en paralelo.Un registro MQ de n bits para almacenar el multiplicador ydespus almacenar los n bits mas bajos del resultado. Necesitacapacidad de carga y desplazamiento a la derechaUn registro A de n bits, inicialmente a cero que despus
almacenar los n bits de mayor peso del resultado, precisacapacidad de carga (resultado de la suma) y desplazamiento enparaleloUn sumador paralelo de n bitsUn contador P con capacidad de carga en paralelo y dedecrementarse. El tamao debe ser log2 n bits. Y debe tener uncircuito de deteccin de cero.Un elemento de memoria C que pueda ponerse a cero ycargarse con el arrastre CF del sumador.
-
7/25/2019 Unidad Control
21/56
Departamento de Informtica. Curso 2006-2007 21
DIAGRAMA DE BLOQUES DE LA UNIDAD DE PROCESAMIENTO
-
7/25/2019 Unidad Control
22/56
Departamento de Informtica. Curso 2006-2007 22
DIAGRAMA ASM DEL MULTIPLICADOR
-
7/25/2019 Unidad Control
23/56
Departamento de Informtica. Curso 2006-2007 23
DIAGRAMA ASM
IDLE: Es un estado inicial de espera, del que sale cuando laseal G vale 1 y se inicia la operacin de multiplicacin. Se
supone que los operandos ya estn cargados en los registros. Alpasar al siguiente estado se asignan los valores que se indicanen el bloque de condicin.
MUL0: En este estado tenemos un bloque de decisin en el que
se consulta el bit de menor peso del registro MQ ( Q0 ) y segnel valor que toma se realizan ciertas operaciones y se pasa alsiguiente estado
MUL1: En este estado se realizan las operaciones dedesplazamiento de los registros C-A-MQ y se decrementa elcontador P. Tiene un bloque de decisin en el que secomprueba el valor de Z, si es cero pasa al estado MUL0 y si es1 pasa al estado IDLE.
-
7/25/2019 Unidad Control
24/56
Departamento de Informtica. Curso 2006-2007 24
DISEO DE LA UNIDAD DE CONTROL
Generar las seales de control necesarias
Establecer el mecanismo de secuenciamiento
de estas seales
-
7/25/2019 Unidad Control
25/56
Departamento de Informtica. Curso 2006-2007 25
SEALES DE CONTROL NECESARIAS
-
7/25/2019 Unidad Control
26/56
Departamento de Informtica. Curso 2006-2007 26
SECUENCIAMIENTO DE LOS ESTADOS
-
7/25/2019 Unidad Control
27/56
Departamento de Informtica. Curso 2006-2007 27
DISEO DE LA UNIDAD DE CONTROL USANDO UNDECODIFICADOR Y UN REGISTRO DE SECUENCIA
Un registro de secuencia est formado por nbiestables de tipo D y puede tener hasta 2**nestados, as mismo un decodificador de n entradastiene 2**n salidas, una para cada estado.
Como tenemos tres estados necesitamos doselementos de memoria (llamados M1 M0 ) ycodificamos cada estado con un nmero ( IDLE = 00; MUL0 = 01 ; MUL1 = 10 )
Por otra parte tenemos dos entradas de estadoprovenientes de la unidad de procesamiento, G y Z .
-
7/25/2019 Unidad Control
28/56
Departamento de Informtica. Curso 2006-2007 28
TABLA DE ESTADOS
-
7/25/2019 Unidad Control
29/56
Departamento de Informtica. Curso 2006-2007 29
ECUACIONES DE LAS ENTRADAS A LOS ELEMENTOS DEMEMORIA
D0 = IDLE. G + MUL1. Z
D1 = MUL0
-
7/25/2019 Unidad Control
30/56
Departamento de Informtica. Curso 2006-2007 30
ESQUEMA DE LA UNIDAD DE CONTROL
-
7/25/2019 Unidad Control
31/56
Departamento de Informtica. Curso 2006-2007 31
DISEO DE LA UNIDAD DE CONTROL USANDO UNCONTADOR Y UN DECODIFICADOR
El contador : Es un dispositivo sncrono que
proporciona una salida Q(t+1) en funcin de losvalores de las lneas de seleccin CL, H, L y de laentrada E(t)
Si CL = 1 Q(t + 1) = 0Si L = 1 Q(t + 1) = E (t)Si H = 1 y L = 0 Q(t + 1) = (Q(t) + 1) mod 2**nEn cualquier otro caso Q(t + 1) = Q (t)
La seal H es de habilitacin, la seal L es de carga yCL es de puesta a cero.
-
7/25/2019 Unidad Control
32/56
Departamento de Informtica. Curso 2006-2007 32
ESQUEMA DEL CONTADOR
-
7/25/2019 Unidad Control
33/56
Departamento de Informtica. Curso 2006-2007 33
DIAGRAMA DE ESTADOS DE MOORE
-
7/25/2019 Unidad Control
34/56
Departamento de Informtica. Curso 2006-2007 34
TABLA DE ESTADOS
-
7/25/2019 Unidad Control
35/56
Departamento de Informtica. Curso 2006-2007 35
ECUACIONES DE LAS ENTRADAS AL CONTADOR
-
7/25/2019 Unidad Control
36/56
Departamento de Informtica. Curso 2006-2007 36
ESQUEMA DE LA UNIDAD DE CONTROL
DISEO DE LA UNIDAD DE CONTROL USANDO UN REGISTRO
-
7/25/2019 Unidad Control
37/56
Departamento de Informtica. Curso 2006-2007 37
DISEO DE LA UNIDAD DE CONTROL USANDO UN REGISTRODE ESTADO Y UNA MEMORIA ROM
Usando una memoria ROM podemos
almacenar una tabla en la que tengamos,para todas las combinaciones de los estadosy las seales de condicin, los valores del
siguiente estado y las seales de control.En nuestro caso como tenemos tres estados ytres seales de condicin, la ROM tendr 32
filas. Como generamos 4 seales de control,cada fila tendr 6 bits.
-
7/25/2019 Unidad Control
38/56
Departamento de Informtica. Curso 2006-2007 38
CONTENIDO DE LA ROM
-
7/25/2019 Unidad Control
39/56
Departamento de Informtica. Curso 2006-2007 39
ESQUEMA DE LA UNIDAD DE CONTROL
-
7/25/2019 Unidad Control
40/56
Departamento de Informtica. Curso 2006-2007 40
LA UNIDAD DE CONTROL
LECCIN 2.DISEO DE PROCESADORES USANDOCONTROL CABLEADO
RUTAS DE DATOS BSICAS BUS UNICO
-
7/25/2019 Unidad Control
41/56
Departamento de Informtica. Curso 2006-2007 41
RUTAS DE DATOS BSICAS: BUS UNICO
ORGANIZACIN EN DOBLE BUS
-
7/25/2019 Unidad Control
42/56
Departamento de Informtica. Curso 2006-2007 42
ORGANIZACIN EN DOBLE BUS
ORGANIZACIN EN TRIPLE BUS
-
7/25/2019 Unidad Control
43/56
Departamento de Informtica. Curso 2006-2007 43
ORGANIZACIN EN TRIPLE BUS
INFLUENCIA DE LA ARQUITECTURA EN LA EJECUCIN DE
-
7/25/2019 Unidad Control
44/56
Departamento de Informtica. Curso 2006-2007 44
QLAS INSTRUCCIN
Sea la operacin R 0 R 1 + R 2En bus comn:
X R 1 Y X + R 2R 0 Y
Doble bus Y R 1 + R 2R 0 Y
Triple busR 0 R 1 + R 2
FASES EN EL DISEO DE UN PROCESADOR
-
7/25/2019 Unidad Control
45/56
Departamento de Informtica. Curso 2006-2007 45
FASES EN EL DISEO DE UN PROCESADOR
Podemos distinguir las siguientes fases:
Diseo del repertorio de instruccionesDescripcin de la ruta de datosDiagrama de flujo del repertorio de
instruccionesObtencin del diagrama ASMDiseo de la unidad de control
Diseo de la ruta de datos Verificacin del prototipo
DISEO DEL CONJUNTO DE INSTRUCCIONES
-
7/25/2019 Unidad Control
46/56
Departamento de Informtica. Curso 2006-2007 46
DISEO DEL CONJUNTO DE INSTRUCCIONES
DISEO DEL FORMATO DE LAS INSTRUCCIONES
-
7/25/2019 Unidad Control
47/56
Departamento de Informtica. Curso 2006-2007 47
DISEO DEL FORMATO DE LAS INSTRUCCIONES
-
7/25/2019 Unidad Control
48/56
ESQUEMA DE LA RUTA DE DATOS
-
7/25/2019 Unidad Control
49/56
Departamento de Informtica. Curso 2006-2007 49
ESQUEMA DE LA RUTA DE DATOS
DIAGRAMA ASM
-
7/25/2019 Unidad Control
50/56
Departamento de Informtica. Curso 2006-2007 50
DIAGRAMA ASM
DISEO DE LA UNIDAD DE CONTROL
-
7/25/2019 Unidad Control
51/56
Departamento de Informtica. Curso 2006-2007 51
DISEO DE LA UNIDAD DE CONTROL
La unidad de control tiene 3 grupos deentradas:IR que contiene el cdigo de operacin y quenecesita de un decodificador para hacer llegarlas seales correspondientes a cadainstruccinReloj que precisa de un generador desubciclosSeales de condicin provenientes de la rutade datos
ESQUEMA DE LA UNIDAD DE CONTROL
-
7/25/2019 Unidad Control
52/56
Departamento de Informtica. Curso 2006-2007 52
Q
SEALES DE CONTROL
-
7/25/2019 Unidad Control
53/56
Departamento de Informtica. Curso 2006-2007 53
GENERACION DE LAS SEALES DE CONTROL
-
7/25/2019 Unidad Control
54/56
Departamento de Informtica. Curso 2006-2007 54
DISEO DE LA MATRIZ DE CONTROL
-
7/25/2019 Unidad Control
55/56
Departamento de Informtica. Curso 2006-2007 55
ECUACIONES LGICAS DE LAS SEALES DE CONTROL
-
7/25/2019 Unidad Control
56/56
Departamento de Informtica. Curso 2006-2007 56
IPC =3HPC =1CPC =4 BR + 4 BR.INHIR =4 LDA +4 STA +4 BR +4 BR.INCIR =3R = 2 + 5 LDAW =6 STA
CMAR =1 + 4 LDA +4 STAHMBR =3 + 6 LDACMBR =5 STAHA =4 MAB +5 STACA =6 LDA +4 ADD +4 SUB
CB =4 MABSUMA =4 ADDRESTA =4 SUBHALU =4 ADD +4 SUB