Post on 06-Jul-2015
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 1/53
MICROELECTRÓNICAMICROELECTRÓNICA
IE. MSc. José Armando Becerra VargasIE. MSc. José Armando Becerra Vargas
DISEÑODISEÑO RTL DERTL DE PROCESADORESPROCESADORESARITMÉTICOSARITMÉTICOS
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 2/53
REQUISITOS DEL CURSOREQUISITOS DEL CURSO
Para abordar temas de diseño jerárquico, descripción a nivel RTL y diseño deprocesadores aritméticos en general, el estudiante debe tener conocimientos delos siguientes temas:
1. Análisis y síntesis de sistemas combinacionales; lógica cableada, Lógicamodular y descripción en VHDL de sistemas combinacionales.
2. Análisis y síntesis de sistemas secuenciales; Máquinas de estado de Mealy yMoore, Diseño de alto nivel y descripción en VHDL de sistemas secuenciales.
3. Conocimiento básico de arquitectura de computadores; Funcionamiento de
una ALU, sistemas que realizan operaciones, Registros, Contadores,Memorias RAM y ROM, descripción en VHDL de sistemas complejos.
4. Manejo adecuado de las herramientas EDA. Para el caso específico,conocimiento, destreza y manejo del software ISE FOUNDATION de XILINX.
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 3/53
CONSIDERACIONES GENERALES DECONSIDERACIONES GENERALES DE UN SISTEMA DEUN SISTEMA DETRANSFERENCIA DE REGISTROSTRANSFERENCIA DE REGISTROS
Los componentes básicos de este método son aquellos que describen un sistema digital apartir del nivel operacional. La operación de un sistema digital se describe de mejormanera especificando:
1. El conjunto de registros en el sistema y sus funciones.
2. La información en código binario almacenada en los registros.3. Las operaciones realizadas a partir de la información almacenada en los registros.4. Las funciones de control que inician la secuencia de operaciones.
Estos cuatro componentes forman la base del método de lógica de transferencia entreregistros para describir sistemas digitales.
Un registro como se define en la notación de lógica de transferencia entre registros, no
solamente implica un registro en general, sino que abarca todos los otros tipos de registros,tales como registros de desplazamiento, contadores y unidades de memoria. Un contadorse considera como un registro cuya función es incrementar en 1 la información almacenadaen él. Una unidad de memoria se considera como una colección de registros dealmacenamiento donde se va a almacenar la información. Un Flip-Flop por si solo se tomacomo un registro de 1 bit, los Flip-Flop y las compuertas asociadas de cualquier circuitosecuencia se llaman registro.
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 4/53
CONSIDERACIONES GENERALES DECONSIDERACIONES GENERALES DE UN SISTEMA DEUN SISTEMA DETRANSFERENCIA DE REGISTROSTRANSFERENCIA DE REGISTROS
La información binaria almacenada en los registros podría ser números binarios, númerosdecimales codificados en binario, caracteres alfanuméricos, control de información ócualquier información binaria codificada. Las operaciones que se realizan mediante losdatos almacenados en los registros, depende del tipo de datos que se encuentren. Losnúmeros se manipulan con operaciones aritméticas, mientras que el control de
información se manipula por lo general con operaciones lógicas tales como activar o borrarbits del registro.
Las operaciones realizadas con los datos almacenados en los registros, se llamanmicrooperaciones. Una microoperación es una operación elemental que puede serrealizada en paralelo durante un periodo de pulso de reloj. El resultado de la operaciónpuede reemplazar la información binaria previa de un registro o puede ser transferida aotro registro.
Ejemplos de microoperaciones son: Desplazar, contar, sumar, borrar y cargar.
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 5/53
CONSIDERACIONES GENERALES DECONSIDERACIONES GENERALES DE UN SISTEMA DEUN SISTEMA DETRANSFERENCIA DE REGISTROSTRANSFERENCIA DE REGISTROS
Las microoperaciones especifican las operaciones elementales que se realizan con lainformación almacenada en los registros. Los tipos de microoperaciones encontradas mása menudo en los sistemas digitales pueden clasificarse en cuatro categorías:
1. Microoperaciones de transferencia entre registros que no cambian el contenido de la
información cuando la información binaria se mueve de un registro a otro.2. Las microoperaciones aritméticas realizan aritmética con los números almacenados enlos registros.
3. Microoperaciones lógicas realizan operaciones tales como la AND y OR con el par debits individuales almacenados en los registros.
4. Las microoperaciones de desplazamiento especifican operaciones para los registros dedesplazamiento.
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 6/53
ESTRUCTURA GENERAL DE UN SISTEMA DEESTRUCTURA GENERAL DE UN SISTEMA DETRANSFERENCIA DE REGISTROSTRANSFERENCIA DE REGISTROS
Diagrama de GLUSHKOVDiagrama de GLUSHKOV
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 7/53
El comportamiento de un sistema digital a nivel de transferencia de registrosse puede definir mediante un conjunto de operaciones O1 ,O2 , O3 , Onrealizadas sobre diferentes datos externos o internos.
Cada una de estas operaciones elementales se lleva a cabo mediantetransferencias entre registros cuya forma mas general puede ser:
R[m] n f ( R[i], R[j], R[k], )
NIVEL DENIVEL DE TRANSFERENCIA TRANSFERENCIA ENTREENTRE REGISTROSREGISTROS
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 8/53
Sean A y B dos registros, la operación mas habitual es transferir elcontenido de un registro a otro, se expresa así: Bn A
En caso de necesitar saber el número o posición de los bitstransferidos se indica de la siguiente manera: B[7-0]n A[15-8]
Normalmente la transferencia está controlada mediante una señalde habilitación E (enable), se suele expresar de la siguiente forma:E : Bn A
La señal de habilitación puede ser mas compleja, por ejemplo:S i x = 0 y t = 1 BnAEn otro caso Bn C
LENGUAJE DELENGUAJE DE TRANSFERENCIA DE REGISTROSTRANSFERENCIA DE REGISTROS
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 9/53
Los registros pueden ser objeto de las operaciones aritméticas ylógicas habituales, así tendremos:
Dn A� B
LSR (A)ASR (A)An A + 1
Otro operador disponible es & (concatenación) p.ej LSR (A&B)
LENGUAJE DELENGUAJE DE TRANSFERENCIA DE REGISTROSTRANSFERENCIA DE REGISTROS
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 10/53
Las transferencias de datos entre registros y memoria se puedentratar como casos particulares del caso anterior donde tendremos dosoperaciones 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: MBRnM((MAR))W: M((MAR))nMBR
LENGUAJE DELENGUAJE DE TRANSFERENCIA DE REGISTROSTRANSFERENCIA DE REGISTROS
Por último las transferencias entre buses y registros se escriben de
forma similar:
An Inbus [8]
Outbus [8]n A
MAR: Memory Address Register MBR: Memory Buffer Register MDR: Memory Data Register
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 11/53
OPERACIONES DE TRANSFERENCIA OPERACIONES DE TRANSFERENCIA
Identificación de Registros en operaciones de transferencia:
12 R R n : El contenido de R1 se transfiere a R2
OPERACIÓN DESCRIPCIÓN OPERACIÓN DESCRIPCIÓN
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 12/53
Operación condicional:
)12( )11( R Rthen K if n!
Notación de transferencia entre registros:
12:1 R R K n
OPERACIONES DE TRANSFERENCIA OPERACIONES DE TRANSFERENCIA
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 13/53
Símbolos usados en el lenguaje de transferencia de Registros:
SÍMBOLO DESCRIPCIÓN EJEMPLO
Letras y/o Letras y Números Denota un Registro AR, R2, DR, IR
Paréntesis Denota parte de un Registro R2(1), R2(7:0), AR(L)
Flecha Denota Transferencia de Datos R2 R1
Coma Separa operaciones simultaneas R1 R2, R2 R0
Paréntesis cuadrados Especifica una dirección de memoria DR M[M AR]
OPERACIONES DE TRANSFERENCIA OPERACIONES DE TRANSFERENCIA
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 14/53
Ejemplo de Micro-operaciones Aritméticas:
DESIGNACIÓN SIMBÓLIC A DESCRIPCIÓN
R0 R1 + R2 El contenido de R1 más R2 se transfiere a R0
R2 / R2 Complemento a uno del contenido de R2 se carga en R2.
R2 / R2 + 1 Complemento a dos del contenido de R2 se carga en R2.
R0 R1 + / R2 + 1 R1 más el complemento a dos de R2 se transfiere a R0 (Substracción o Resta)
R1 R1 + 1 Incrementa el contenido de R1 (Contador ascendente)
R1 R1 - 1 Decrementa el contenido de R1 (Contador descendente)
OPERACIONES DE TRANSFERENCIA OPERACIONES DE TRANSFERENCIA
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 15/53
Implementación de las operaciones de transferencia:
211:1 ___
R R R K X n�
1211:1 ___
n� R R R K X
OPERACIONES DE TRANSFERENCIA OPERACIONES DE TRANSFERENCIA
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 16/53
Micro-operaciones Lógicas:
DESIGNACIÓN SIMBÓLIC A DESCRIPCIÓN
R0 / R1 Operación Lógica NOT bit a bit (Complemento a uno)
R0 R10R2 Operación Lógica AN D bit a bit (Clarear bits)
R0 R1V R2 Operación Lógica OR bit a bit (Poner bits)
R0 R1� R2 Operación Lógica X OR bit a bit (Complementa bits)
Ejemplo de operaciones de desplazamiento:
TIPO DESIGNACIÓNSIMBÓLIC A FUENTE R2 DESTINACIÓNDESPUÉS DEL CORRIMIENTO R1
SH IF T LEF T R1 sl R2 10011110 00111100
SH IF T RIG H T R1 sr R2 11100101 01110010
OPERACIONES DE TRANSFERENCIA OPERACIONES DE TRANSFERENCIA
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 17/53
Ejemplo: Implementación de la operación condicional múltiple.
20:21 ,10:1 ___
R R K K R R K n�n
TRANSFERENCIA UTILIZANDO MULTIPLEXORESTRANSFERENCIA UTILIZANDO MULTIPLEXORES
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 18/53
Circuito detallado de la implementación de: 20:2'1 ,10:1 R R K K R R K nn
TRANSFERENCIA UTILIZANDO MULTIPLEXORESTRANSFERENCIA UTILIZANDO MULTIPLEXORES
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 19/53
Multiplexores dedicados Un solo Bus
TRANSFERENCIA UTILIZANDO MULTIPLEXORESTRANSFERENCIA UTILIZANDO MULTIPLEXORES
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 20/53
TR ANSFERENCIA DEREGISTRO
SELECT C ARG A
S0 S1 L2 L1 L0
RO R2 1 0 0 0 1
RO R1, R2 R1 0 1 1 0 1
RO R1, R1 R0 I MP O S IBLE
Ejemplo de Transferencia de Registrosutilizando una configuración de un solo BUS.
TRANSFERENCIA UTILIZANDO MULTIPLEXORESTRANSFERENCIA UTILIZANDO MULTIPLEXORES
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 21/53
BUS Multiplexado BUS Tri estado conRegistros bidireccionales
TIPOS DE BUSESTIPOS DE BUSES
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 22/53
Funcionamiento de un Registro Bidireccional:
TIPOS DE BUSESTIPOS DE BUSES
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 23/53
Conexión de una Memoria al Bus de Datos y al Bus de Direcciones:
TIPOS DE BUSESTIPOS DE BUSES ESTRUCTURA CON MEMORIA ESTRUCTURA CON MEMORIA
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 24/53
Conjunto e Registros
(RTL)
Unidad Funcional
(Operaciones)
UNIDAD DE DATOSUNIDAD DE DATOS
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 25/53
Unidad Aritmético-Lógica (ALU)
UNIDAD FUNCIONAL (ALU)UNIDAD FUNCIONAL (ALU)
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 26/53
ESTRUCTURA COMPLETA DE UNA ALUESTRUCTURA COMPLETA DE UNA ALU
UNIDAD LÓGICAUNIDAD LÓGICA
UNIDAD ARITMÉTICAUNIDAD ARITMÉTICA
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 27/53
Select Input G = A + Y + Cin
S1 S0 Y Cin = 0 Cin = 1
0 0 Todo 0's G = A (Transferencia) G = A + 1 (Incrementa)
0 1 B G = A + B ( Adición) G = A + B + 1
1 0 /B G = A + /B G = A + /B + 1 (Substracción)
1 1 Todo 1's G = A - 1 (Decrementa) G = A (Transferencia)
Tabla de FuncionesTabla de Funciones
Tabla de VerdadTabla de Verdad Mapa deMapa de KarnaughKarnaugh
INPUTS OUTPUT
S1 S0 Bi Yi
0 0 0 0
Yi = 0
0 0 1 0
0 1 0 0
Yi = Bi
0 1 1 1
1 0 0 1
Yi = /Bi
1 0 1 0
1 1 0 1
Yi = 1
1 1 1 1
1/0 S BiS BiYi ��!
CICLO DE MICROCICLO DE MICRO--OPERACIONES DE UNA ALUOPERACIONES DE UNA ALU
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 28/53
UNIDAD ARITMÉTICA DE CUATRO BITsUNIDAD ARITMÉTICA DE CUATRO BITs
Se basa en un diseñototalmente combinacional,
los bloques FA, se refierena sumadores completos deun bit
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 29/53
S1 S0 OUTPUT OPER ACIÓN
0 0 G = A 0B AND
0 1 G = A V B OR1 0 G = A � B XOR
1 1 G = / A NOT
T ABL A FUNCIONALT ABL A FUNCIONAL CIRCUITO LÓGICOCIRCUITO LÓGICO
UNIDAD LÓGICA UNIDAD LÓGICA
El Multiplexor selecciona la funciónlógica deseada. Pueden existir másde cuatro funciones lógicas, lo querequiere un MUX de mayorcapacidad.
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 30/53
UNA ETAPA DE LA ALUUNA ETAPA DE LA ALU
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 31/53
SELECCIÓN DE OPER ACIÓN
OPER ACIÓN FUNCIÓN
S2 S1 S0 Cin
0 0 0 0 G = A Transfer A
0 0 0 1 G = A + 1 Increment A
0 0 1 0 G = A + B Addition
0 0 1 1 G = A + B + 1 Add with Carry input of 1
0 1 0 0 G = A + /B A más complemento a uno de B
0 1 0 1 G = A + /B + 1 Substraction
0 1 1 0 G = A - 1 Decrement A
0 1 1 1 G = A Transfer A
1 0 0 X G = A0 B AND
1 0 1 X G = A V B OR
1 1 0 X G = A� B XOR
1 1 1 X G = /A NOT (Complemento a uno)
TABLA FUNCIONAL DE LA ALUTABLA FUNCIONAL DE LA ALU
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 32/53
DESPLAZADORES (SHIFTERS)DESPLAZADORES (SHIFTERS)
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 33/53
Circuito LógicoCircuito Lógico
Tabla FuncionalTabla FuncionalSELECCIÓN OUTPUT OPERACIÓN
S1 S0 Y3 Y2 Y1 Y0
0 0 D3 D2 D1 D0 NO ROTAR
0 1 D2 D1 D0 D3 ROTA UNA POSICIÓN
1 0 D1 D0 D3 D2 ROTA DOS POSICIONES
1 1 D0 D3 D2 D1 ROTA TRES POSICIONES
DESPLAZADOR ROTATORIODESPLAZADOR ROTATORIO
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 34/53
DIAGRAMA GENERAL DE UNA UNIDAD DE DATOSDIAGRAMA GENERAL DE UNA UNIDAD DE DATOS
La unidad de datos presentada en lafigura, tiene una arquitectura tipoHardvard (Bus de datos e instruccionesseparados). El arreglo de registros
permite cargar, almacenar y operarfácilmente los datos que se deseanprocesar.
MBMB:: MUXMUX BUSBUS
MDMD:: MUXMUX D AT AD AT A
FSFS:: FUNCTIONFUNCTION SELECTSELECTVV:: OVERFLOWOVERFLOW
CC:: C ARRY C ARRY
NN:: NEG ATIVENEG ATIVE
ZZ:: ZEROZERO
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 35/53
SELECCIÓN M ICRO-OP ERACIÓN
FSFS MFMF GG HH
00000 0 0000 00 F = A
00001 0 0001 00 F = A + 1
00010 0 0010 00 F = A + B
00011 0 0011 00 F = A + B + 1
00100 0 0100 01 F = A + B
00101 0 0101 01 F = A + B + 1
00110 0 0110 01 F = A 1
00111 0 0111 01 F = A
01000 0 1000 00 F = A 0 B
01010 0 1010 10 F = A V B
01100 0 1100 10 F = A � B
01110 0 1110 10 F = A
10000 1 0000 00 F = B
10100 1 0100 01 F = sr B
11000 1 1000 10 F = sl B
TABLA PARA LA UNIDAD FUNCIONALTABLA PARA LA UNIDAD FUNCIONAL
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 36/53
DETALLE DE LA UNIDAD FUNCIONALDETALLE DE LA UNIDAD FUNCIONAL
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 37/53
VARIABLES DE CONTROL PARA LA VARIABLES DE CONTROL PARA LA UNIDADUNIDAD DEDEDATOSDATOS
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 38/53
CODIFICACIÓN DEL VECTOR DE CONTROL PARA LA CODIFICACIÓN DEL VECTOR DE CONTROL PARA LA UNIDADUNIDAD DE DATOSDE DATOS
D A, AA, B AD A, AA, B A MBMB FSFS MDMD RWRW
FunctionFunction CodeCode FunctionFunction CodeCode FunctionFunction CodeCode FunctionFunction CodeCode FunctionFunction CodeCode
R0 000 Register 0 F = A 00000 Function 0 No Write 0
R1 001 Constant 1 F = A+1 00001 Data In 1 Write 1
R2 010F
= A+B 00010R3 011 F = A+B+1 00011
R4 100 F = A+B 00100
R5 101 F = A+B+1 00101
R6 110 F = A-1 00110
R7 111 F = A 00111
F = A � B 01000
F = A � B 01010
F = A � B 01100
F = A 01110
F = B 10000
F = s r B 10100
F = s l B 11000
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 39/53
EJEMPLOS DE MICROOPERACIONESEJEMPLOS DE MICROOPERACIONES
Microoperación D A AA B A MB FS MD RW
R1 R2+R3+1 R1 R2 R3 Register F = A+B+1 Function Write
R4 slR6 R4 -- R6 Register F = s l B Function Write
R7 R7+1 R7 R7 -- Register F = A+1 Function Write
R1 R0+2 R1 R0 .. Constant F = A+B Function Write
Data out R3 -- -- R3 Register -- -- No Write
R4 Data in R4 -- -- -- -- Data in Write
R5 0 R5 R0 R0 Register F = A� B Function Write
Microoperación D A AA B A MB FS MD RW
R1 R 2 -R 3 001 010 011 0 00101 0 1
R4 slR6 100 000 110 0 11000 0 1
R7 R7+1 111 111 000 0 00001 0 1
R1 R0+2 001 000 000 1 00010 0 1
Data out R3 000 000 011 0 00000 0 0
R4 Data in 100 000 000 0 00000 1 1
R5
0 101 000 000 0 01100 0 1
Notación SimbólicaNotación Simbólica
Codificación BinariaCodificación Binaria
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 40/53
SIMULACIÓN DE LA SECUENCIA DESIMULACIÓN DE LA SECUENCIA DEMICROOPERACIONESMICROOPERACIONES
R2R2 R2R2 R3R3R4R4 sl sl R6R6R7 R7 R7 + 1R7 + 1
R1R1 R0 + 2R0 + 2DataData out out R3R3R4R4 Data inData inR5 R5 00
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 41/53
INTRODUCCIÓN A LA ARQUITECTURA DEINTRODUCCIÓN A LA ARQUITECTURA DEPROCESADORESPROCESADORES
CaptarCaptar InstrucciónInstrucción:: Leer instrucción de la memoria.
InterpretarInterpretar lala instruccióninstrucción:: Decodificar la instrucción ydeterminar acciones a realizar.
CaptarCaptar datosdatos:: Leer datos de memoria y/o E/S.
ProcesarProcesar datosdatos:: realizar operación aritmética y/o lógica.
EscribirEscribir datosdatos:: llevar datos a memoria o E/S.
Par a realiz ar est a s oper ac iones , l a C PU requiere
memori a interna
TAREAS DE LA CPUTAREAS DE LA CPU
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 42/53
INTRODUCCIÓN A LA ARQUITECTURA DEINTRODUCCIÓN A LA ARQUITECTURA DEPROCESADORESPROCESADORES
COMPONENTES DEL PROCESADORCOMPONENTES DEL PROCESADOR
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 43/53
INTRODUCCIÓN A LA ARQUITECTURA DEINTRODUCCIÓN A LA ARQUITECTURA DEPROCESADORESPROCESADORES
ESTRUCTURA INTERNA DE UNA CPUESTRUCTURA INTERNA DE UNA CPU
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 44/53
INTRODUCCIÓN A LA ARQUITECTURA DEINTRODUCCIÓN A LA ARQUITECTURA DEPROCESADORESPROCESADORES
ORG ANIZ ACIÓN DE LOS REGISTROSORG ANIZ ACIÓN DE LOS REGISTROS
La memoria para almacenamiento interno posee REGISTROS (nivel más alto enjerarquía de memoria), existen dos tipos de registros:
1.1. RegistrosRegistros VisiblesVisibles parapara elel usuariousuario:: El usuario puede usarlos para minimizar
los accesos a memoria.2.2. RegistrosRegistros dede controlcontrol yy dede estadoestado:: Son usados por la unidad de control y por
programas privilegiados para controlar la ejecución de un programa.
REGISTROS DE USO GENER ALREGISTROS DE USO GENER AL
Como su nombre lo dice, pueden ser utilizados para almacenar cualquier
información Puede haber excepciones: Ej. Registros para almacenar punto flotante,
punteros de pila, etc.
Algunas veces pueden almacenar direcciones, en otros, existen registrospara datos y otros para direcciones
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 45/53
INTRODUCCIÓN A LA ARQUITECTURA DEINTRODUCCIÓN A LA ARQUITECTURA DEPROCESADORESPROCESADORES
EJEMPLO DE REGISTROS DE DIRECCIONESEJEMPLO DE REGISTROS DE DIRECCIONES
PunterosPunteros dede segmentosegmento:: Usados en memorias segmentadas, almacenan ladirección base del segmento
RegistrosRegistros índicesíndices:: Usado en direccionamiento indexado, pueden ser
autoindexados. PunteroPuntero dede pilapila:: Mantiene la dirección de la cabeza de la pila.
CÓDIGOS DE CONDICIÓNCÓDIGOS DE CONDICIÓN
También llamados Flags
Son bits fijados por la CPU como resultado de una operación Los códigos de condición se reúnen en uno o más registros, generalmente
forman parte de un registro de control
Generalmente los bits pueden ser leídos por referencia implícita, pero nopueden ser modificados
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 46/53
INTRODUCCIÓN A LA ARQUITECTURA DEINTRODUCCIÓN A LA ARQUITECTURA DEPROCESADORESPROCESADORES
REGISTROS DE CONTROL Y DE ESTADOREGISTROS DE CONTROL Y DE ESTADO
Son esenciales cuatro registros para la ejecución de una instrucción:
ContadorContador deldel ProgramaPrograma (PC)(PC):: Dirección de la próxima instrucción a ejecutar.
RegistroRegistro dede InstrucciónInstrucción:: Instrucción captada mas reciente.
RegistroRegistro dede DirecciónDirección dede MemoriaMemoria:: Dirección de una posición de memoria. RegistroRegistro intermediointermedio dede memoriamemoria:: Contiene la palabra leída o a escribir en
memoria.
PC PC == ProgramProgram Counter Counter:: Contiene la dirección de la instrucción a captar.
IRIR == InstructionInstruction Register Register:: Contiene la última instrucción captada. MARMAR == Memory Memory Address Address Register Register:: Contiene la dirección de una posición de
memoria.
MBRMBR == Memory Memory Buffer Buffer Register Register:: Contiene la palabra de datos a escribir enmemoria, o la palabra leída más reciente.
NOMBRE DE LOS REGISTROS DE CONTROL Y DE ESTADONOMBRE DE LOS REGISTROS DE CONTROL Y DE ESTADO
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 47/53
INTRODUCCIÓN A LA ARQUITECTURA DEINTRODUCCIÓN A LA ARQUITECTURA DEPROCESADORESPROCESADORES
PALABRA DE ESTADO DEL PROGRAMA (PSW)PALABRA DE ESTADO DEL PROGRAMA (PSW)
Contiene la siguiente información de estado:
Signo:Signo: Signo del último resultado aritmético
Cero:Cero: Indica si el último resultado fue cero Acarreo:Acarreo: Usado en operaciones multipalabra
Igual:Igual: Resultado de una operación lógica es igual
Desbordamiento:Desbordamiento: Overflow aritmético
Interrupciones:Interrupciones: Habilitadas/ deshabilitadas
Supervisor:Supervisor: Estado de la CPU en modo supervisor o usuario
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 48/53
EJEMPLOS DE ORGANIZACIONES DEEJEMPLOS DE ORGANIZACIONES DEMICROPROCESADORESMICROPROCESADORES
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 49/53
CICLOS FETCH, DECODE Y EXECUTE DELCICLOS FETCH, DECODE Y EXECUTE DELPROCESADOR PROCESADOR
CICLO DE INSTRUCCIÓNCICLO DE INSTRUCCIÓN
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 50/53
CICLOS FETCH, DECODE Y EXECUTE DELCICLOS FETCH, DECODE Y EXECUTE DELPROCESADOR PROCESADOR
CICLOCICLO FETCHFETCH (Captación)(Captación)
Función:Función: Lleva la siguiente instrucción de la memoria a la CPU.
1. El PC PC tiene la dirección de la siguiente instrucción.
2. El procesador capta la instrucción de la memoria direccionada por el PC PC .
3. Se incrementa PC PC en 1.4. El código de la instrucción se carga en IRIR.
CICLOCICLO DECODEDECODE (Decodificación)(Decodificación)
Función:Función: Decodifica los bits presentes en IRIR
1. Interpreta el código de operación.
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 51/53
CICLOS FETCH, DECODE Y EXECUTE DELCICLOS FETCH, DECODE Y EXECUTE DELPROCESADOR PROCESADOR
CICLOCICLO EXECUTION(Ejecución)EXECUTION(Ejecución)
Función:Función: Ejecuta la instrucción
1.1. Procesador Procesador -- memoria:memoria: Transferencia CPU Memoria
2. 2. Procesador Procesador -- I/O:I/O: Transferencia CPU Módulos I/O.
3.3. Procesamiento de datos:Procesamiento de datos: Operaciones aritméticas o lógicas.4.4. Control:Control: Cambio de secuencias.
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 52/53
CICLOS FETCH, DECODE Y EXECUTE DELCICLOS FETCH, DECODE Y EXECUTE DELPROCESADOR PROCESADOR
EjemploEjemplo::
1.1. ElEl PCPC contienecontiene elel valorvalor300300.. SeSe cargacarga estaestainstruccióninstrucción enen IRIR (esto(esto
implicaimplica elel usouso dede MARMAR yyMBR)MBR)
5/8/2018 RTL - slidepdf.com
http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 53/53