La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Arquitectura de Computadores Clase 6 Ciclo y Conjunto de Instrucciones IIC 2342 Semestre 2008-2 Rubén Mitnik Pontificia Universidad Católica de Chile Escuela.

Presentaciones similares


Presentación del tema: "Arquitectura de Computadores Clase 6 Ciclo y Conjunto de Instrucciones IIC 2342 Semestre 2008-2 Rubén Mitnik Pontificia Universidad Católica de Chile Escuela."— Transcripción de la presentación:

1 Arquitectura de Computadores Clase 6 Ciclo y Conjunto de Instrucciones IIC 2342 Semestre 2008-2 Rubén Mitnik Pontificia Universidad Católica de Chile Escuela de Ingeniería Departamento de Ciencia de la Computación

2 Objetivos Capítulo 4 : Unidad de Procesamiento Central (CPU) Conjunto de instrucciones Arquitectura Tipos de funcionalidad Ejemplo de un conjunto de instrucciones Ciclo de la instrucción Objetivos R.Mitnik 2Arquitectura de Computadores

3 R.Mitnik Arquitectura de Computadores3 Índice Capítulo 4 : Unidad de Procesamiento Central (CPU) 4.1 Partes de la CPU. 4.2 Conjunto de Instrucciones y tipos de funcionalidad. 4.3 Ciclo de la Instrucción. 4.4 Diseño de una CPU básica. 4.5 Modos de direccionamiento. 4.6 Instrucciones en lenguaje de máquina. 4.7 Subrutinas y Manejo de Stack. 4.8 Interrupciones de software y hadware. 4.9 CISC/RISC.

4 R.Mitnik 4 Introducción Capítulo 4 : Unidad de Procesamiento Central (CPU) Arquitectura de Computadores ¿Qué es una instrucción?

5 R.Mitnik Arquitectura de Computadores5 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) El conjunto o set de instrucciones de una CPU determina lo que la CPU sabe hacer  determina su funcionalidad. Es la parte visible del computador. 1001xxxxxx OpcodeParámetros

6 R.Mitnik Arquitectura de Computadores6 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) La arquitectura del set de instrucciones depende de la Arquitectura Física del computador. En particular de la arquitectura de almacenamiento temporal o interna Tipos de almacenamiento temporal: Acumulador Stack Registros de uso general Load – Store (register - register) Register Memory

7 R.Mitnik Arquitectura de Computadores7 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) StackAcumulador Registros (register-memory) Registros (load - store) Ejemplo Suma C = A + B

8 R.Mitnik Arquitectura de Computadores8 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) StackAcumulador Registros (register-memory) Registros (load - store) Push A Push B Add Pop C Ejemplo Suma C = A + B

9 R.Mitnik Arquitectura de Computadores9 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) StackAcumulador Registros (register-memory) Registros (load - store) Push ALoad A Push BAdd B AddStore C Pop C Ejemplo Suma C = A + B

10 R.Mitnik Arquitectura de Computadores10 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) StackAcumulador Registros (register-memory) Registros (load - store) Push ALoad ALoad R1, A Push BAdd BAdd R1, B AddStore CStore C, R1 Pop C Ejemplo Suma C = A + B

11 R.Mitnik Arquitectura de Computadores11 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) StackAcumulador Registros (register-memory) Registros (load - store) Push ALoad ALoad R1, A Push BAdd BAdd R1, BLoad R2, B AddStore CStore C, R1Add R3, R1, R2 Pop CStore C, R3 Ejemplo Suma C = A + B

12 R.Mitnik Arquitectura de Computadores12 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Independiente del tipo de almacenamiento en todas las CPU se puede encontrar el siguiente conjunto de instrucciones: Instrucciones de transferencias de datos Instrucciones aritméticas Instrucciones lógicas Control de flujo Entrada / Salida

13 R.Mitnik Arquitectura de Computadores13 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Trasfiere datos de una posición a otra. Ejemplos: MOVEtransfiere dato entre registros de la CPU STOREregistro → memoria LOADmemoria → registro CLEARpone un registro en ceros SETpone un registro en unos PUSHintroduce en el stack POPextrae del stack Instrucciones de transferencia de datos

14 R.Mitnik Arquitectura de Computadores14 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Instrucciones aritméticas Realiza la operación en la ALU o FPU Actualiza códigos e indicadores de condición  Puede implicar transferencias de datos, antes y/o después

15 R.Mitnik Arquitectura de Computadores15 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Instrucciones aritméticas Ejemplos: ADDsuma dos operandos SUBSTRACTresta dos operandos MULTIPLYmultiplica dos operandos DIVIDEdivide dos operandos ABSOLUTEcalcula valor absoluto del operando NEGATEcambia el signo del operando INCREMENTaumenta en 1 el operando DECREMENTdisminuye en 1 el operando

16 R.Mitnik Arquitectura de Computadores16 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Instrucciones lógicas Realiza la operación en la ALU Actualiza códigos e indicadores de condición.  Puede implicar transferencias de datos, antes y/o después

17 R.Mitnik Arquitectura de Computadores17 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Instrucciones lógicas Ejemplos. ANDY lógico bit a bit ORO lógico bit a bit NOTno lógico bit a bit XORo exclusivo lógico bit a bit TESTevalúa condiciones COMPAREcomparación de dos operandos SHIFTdesplazamiento izquierda o derecha ROTATEdesplazamiento cíclico

18 R.Mitnik Arquitectura de Computadores18 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Control de flujo Modifica el contador de programa. En el caso de llamadas y retornos de subrutinas, gestiona la transferencia y enlace de parámetros. Gestiona el almacenamiento de direcciones de retorno

19 R.Mitnik Arquitectura de Computadores19 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Control de flujo Ejemplos. JUMPsalto incondicional JUMP CONsalto condicional JUMP SUBsalto a subrutina RETURNretorno de subrutina SKIPincrementa PC en 1 SKIP CONincremento condicional de PC en 1 HALTdetiene la ejecución del programa WAITdetiene la ejecución hasta una condición NOPno ejecuta operación alguna

20 R.Mitnik Arquitectura de Computadores20 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Entrada / Salida Cursa una orden de control a un módulo de E/S Lee o escribe a un dispositivo de E/S.

21 R.Mitnik Arquitectura de Computadores21 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Entrada / Salida Ejemplos. INPUTtransferir I/O → memoria o registro OUTPUTtransferir memoria o registro → I/O START I/Oinicializa dispositivo I/O TEST I/Otransfiere información de estado de I/O

22 R.Mitnik Arquitectura de Computadores22 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Ej. Set de instrucciones del PIC 16F877a

23 R.Mitnik Arquitectura de Computadores23 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU)

24 R.Mitnik Arquitectura de Computadores24 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Control de flujo en el PIC Ejemplos. JUMPsalto incondicional JUMP CONsalto condicional JUMP SUBsalto a subrutina RETURNretorno de subrutina SKIPincrementa PC en 1 SKIP CONincremento condicional de PC en 1 HALTdetiene la ejecución del programa WAITdetiene la ejecución hasta una condición NOPno ejecuta operación alguna

25 R.Mitnik Arquitectura de Computadores25 Call Ejemplos. JUMPsalto incondicional JUMP CONsalto condicional JUMP SUBsalto a subrutina RETURNretorno de subrutina SKIPincrementa PC en 1 SKIP CONincremento condicional de PC en 1 HALTdetiene la ejecución del programa WAITdetiene la ejecución hasta una condición NOPno ejecuta operación alguna Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU) Control de flujo en el PIC Pic16F877a Goto Decfsz Incfsz Btfsc Btfss Sleep

26 R.Mitnik Arquitectura de Computadores26 Conjunto de Instrucciones Capítulo 4 : Unidad de Procesamiento Central (CPU)

27 R.Mitnik Arquitectura de Computadores27 Índice Capítulo 4 : Unidad de Procesamiento Central (CPU) 4.1 Partes de la CPU. 4.2 Conjunto de Instrucciones y tipos de funcionalidad. 4.3 Ciclo de la Instrucción. 4.4 Diseño de una CPU básica. 4.5 Modos de direccionamiento. 4.6 Instrucciones en lenguaje de máquina. 4.7 Subrutinas y Manejo de Stack. 4.8 Interrupciones de software y hadware. 4.9 CISC/RISC.

28 R.Mitnik Arquitectura de Computadores28 Ciclo de una Instrucción Capítulo 4 : Unidad de Procesamiento Central (CPU) ¿Cuáles son las distintas partes del ciclo de una instrucción?

29 R.Mitnik Arquitectura de Computadores29 Ciclo de una Instrucción Capítulo 4 : Unidad de Procesamiento Central (CPU) Fetch Lee la instrucción de memoria Carga la instrucción en IR (Instruction Register) Incrementa el PC (Program Counter)

30 R.Mitnik Arquitectura de Computadores30 Ciclo de una Instrucción Capítulo 4 : Unidad de Procesamiento Central (CPU) Fetch Decode Interpreta el código de operación Determina si se requieren operandos (operand fetch) Decode

31 R.Mitnik Arquitectura de Computadores31 Ciclo de una Instrucción Capítulo 4 : Unidad de Procesamiento Central (CPU) Fetch Operand Fetch Resuelve la dirección o lugar donde se encuentran los operandos Almacena los operandos en un registro interno Decode Operand Fetch

32 R.Mitnik Arquitectura de Computadores32 Ciclo de una Instrucción Capítulo 4 : Unidad de Procesamiento Central (CPU) Fetch Execute Ejecuta toda la instrucción Decode Operand Fetch Execute

33 R.Mitnik Arquitectura de Computadores33 Ciclo de una Instrucción Capítulo 4 : Unidad de Procesamiento Central (CPU) Fetch Writeback Almacena Resultado Decode Operand Fetch Execute Writeback

34 R.Mitnik Arquitectura de Computadores34 Ciclo de una Instrucción Capítulo 4 : Unidad de Procesamiento Central (CPU) Resumen Fetch Decode Operand fetch Execute Writeback

35 Resumen Capítulo 4 : Unidad de Procesamiento Central (CPU) Conjunto de instrucciones Instrucciones de transferencias de datos Instrucciones aritméticas Instrucciones lógicas Control de flujo Entrada / Salida Ciclo de la instrucción Fetch Decode Operand Fetch Execute Writeback R.Mitnik 35Arquitectura de Computadores Resumen


Descargar ppt "Arquitectura de Computadores Clase 6 Ciclo y Conjunto de Instrucciones IIC 2342 Semestre 2008-2 Rubén Mitnik Pontificia Universidad Católica de Chile Escuela."

Presentaciones similares


Anuncios Google