RTL

53
MICROELECTRÓNICA MICROELECTRÓNICA IE. MSc. José Armando Becerra Vargas IE. MSc. José Armando Becerra Vargas DISEÑO DISEÑO RTL DE RTL DE PROCESADORES PROCESADORES ARITMÉTICOS ARITMÉTICOS

Transcript of RTL

Page 1: RTL

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

Page 2: RTL

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.

Page 3: RTL

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.

Page 4: RTL

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.

Page 5: RTL

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.

Page 6: RTL

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

Page 7: RTL

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

 

Page 8: RTL

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

 

Page 9: RTL

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

 

Page 10: RTL

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 

 

Page 11: RTL

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 

 

Page 12: RTL

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 

 

Page 13: RTL

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 

 

Page 14: RTL

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 

 

Page 15: RTL

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 

 

Page 16: RTL

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 

 

Page 17: RTL

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

 

Page 18: RTL

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

 

Page 19: RTL

5/8/2018 RTL - slidepdf.com

http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 19/53

Multiplexores dedicados Un solo Bus

TRANSFERENCIA UTILIZANDO MULTIPLEXORESTRANSFERENCIA UTILIZANDO MULTIPLEXORES

 

Page 20: RTL

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

 

Page 21: RTL

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

 

Page 22: RTL

5/8/2018 RTL - slidepdf.com

http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 22/53

Funcionamiento de un Registro Bidireccional:

TIPOS DE BUSESTIPOS DE BUSES

 

Page 23: RTL

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 

 

Page 24: RTL

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

 

Page 25: RTL

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)

 

Page 26: RTL

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

 

Page 27: RTL

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

 

Page 28: RTL

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 

 

Page 29: RTL

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.

 

Page 30: RTL

5/8/2018 RTL - slidepdf.com

http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 30/53

UNA ETAPA DE LA ALUUNA ETAPA DE LA ALU

 

Page 31: RTL

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

 

Page 32: RTL

5/8/2018 RTL - slidepdf.com

http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 32/53

DESPLAZADORES (SHIFTERS)DESPLAZADORES (SHIFTERS)

 

Page 33: RTL

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

 

Page 34: RTL

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

 

Page 35: RTL

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

 

Page 36: RTL

5/8/2018 RTL - slidepdf.com

http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 36/53

DETALLE DE LA UNIDAD FUNCIONALDETALLE DE LA UNIDAD FUNCIONAL

 

Page 37: RTL

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

 

Page 38: RTL

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

 

Page 39: RTL

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

 

Page 40: RTL

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

 

Page 41: RTL

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

 

Page 42: RTL

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

 

Page 43: RTL

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

 

Page 44: RTL

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

 

Page 45: RTL

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

 

Page 46: RTL

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

 

Page 47: RTL

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

 

Page 48: RTL

5/8/2018 RTL - slidepdf.com

http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 48/53

EJEMPLOS DE ORGANIZACIONES DEEJEMPLOS DE ORGANIZACIONES DEMICROPROCESADORESMICROPROCESADORES

 

Page 49: RTL

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

 

Page 50: RTL

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.

 

Page 51: RTL

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.

 

Page 52: RTL

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)

Page 53: RTL

5/8/2018 RTL - slidepdf.com

http://slidepdf.com/reader/full/rtl5571fbdd497959916995fccf 53/53