Arquitectura de Computadoras

27
ARQUITECTURA DE COMPUTADORAS

description

ING. DE SISTEMA 5TO CICLO UCSSTORRES MORALES, JHOSET

Transcript of Arquitectura de Computadoras

Presentacin de PowerPoint

ARQUITECTURA DE COMPUTADORAS

2

3

4

5

6

7

8

10

11

12

13

14

15FORMATOS DE INSTRUCCIN DEL MIPS

FORMATO TIPO RFORMATO TIPO IFORMATO TIPO JOperaciones Aritmtico lgicasadd, sub, and, or, nor, sll, srl, sltInstrucciones inmediatas, de acceso a memoria, saltos condicionalesaddi, andi, ori, nori, lw, sw, beq, bneInstrucciones de salto incondicionalj, jal16SOPORTE DE BAJO NIVEL PARA PROCEDIMIENTOSEl stack pointer (registro $sp) apunta al tope de la pilaEl stack crece de las direcciones superiores a las inferiores.Operaciones sobre el stack:Llevar un dato al stack: PUSH$sp = $sp 4El dato se lleva al stack en el nuevo $spRecuperar un dato del stack: POPDato tomado del stack en $sp$sp = $sp + 4PILAStack Pointer $SPMemoriaUltima posicin de MemoriaPUSHDecrementar $SPMover valorStack Pointer $SPvalorPOPLeer valorIncrementar $SPEcuacin de rendimiento

Nmero de instrucciones (IC): Determinado por la arquitectura (ISA) y el compiladorCPI y tiempo de ciclo: Determinado por el hardware de la CPUIMPLEMENTACION BASICA MIPSSubconjunto de la arquitectura MIPS (suficiente para ilustrar los principios que orientan el diseo de un datapath y una unidad de control para cualquiera otra ISA).Instrucciones de acceso a memoriaLoad word, lwStore word, swInstrucciones aritmtico-lgicasSuma, addResta, subAND lgica, andOR lgica, orSet on less than, sltInstrucciones de saltoBranch if equal, beqJump, j

PASOS PARA LA EJECUCION DE UNA INSTRUCCIONBsqueda (fetch) de la instruccinTrae una instruccin desde la memoria de instrucciones de acuerdo con el valor del PC (Program Counter)Lectura de operandosAcceso al banco de registros empleando los campos de la instruccin para leer uno (load) o dos registros (ALU, store)De acuerdo con el tipo de instruccin:Emplear la ALU para calcular:Un resultado aritmtico o lgico (instrucciones aritmtico-lgicas)Una direccin de memoria para las instrucciones load/storeUna condicin de igualdad (branch)Acceder a la memoria de datos en las instrucciones load/storeAcceder al banco de registros para escribir el resultado de la ALU o un valor proveniente de memoria (instrucciones aritmtico-lgicas, load)Actualizar el valor del PC de acuerdo con el resultado de la comparacin con:PC + 4Direccin de destino de salto

PRINCIPIOS DE DISEO LOGICOInformacin codificada en binarioVoltaje bajo = 0Voltaje alto = 1Un cable por bitDatos de mltiples bits se codifican en buses formados por mltiples cables.Elementos combinacionalesOperan sobre datosLa salida es funcin de las entradas actualesUn elemento combinacional siempre producir la misma salida ante la misma entradaEj: ALUElementos secuencialesAlmacenan informacin (estado)Ej: registros, memorias de datos e instrucciones

DClkQPRINCIPIOS DE DISEO LOGICO ELEMENTOS COMBINACIONALESCompuerta AND (Y = A & B)Sumador ( Adder)(Y = A + B)Multiplexor(Y = S ? I1 : I0)Unidad aritmetico-logicaY = F(A ,B)ABYABY+I0I1YMuxSABYALUFMETODOLOGIA DE TEMPORIZACIONEsquema empleado para determinar cundo un dato es vlido y estable respecto al relojAccionada por flanco (edge-triggered): todos los cambios de estado (de los elementos secuenciales) ocurren en un flanco de relojLa lgica combinacional transforma los datos entre flancos de relojEjecucin tpica: lectura del elemento de estado propagacin del dato a travs de la lgica combinacional escritura del resultado en otro elemento de estadoEl retardo ms largo determina el periodo de la seal de relojCPU monociclo (Single-cycle CPU)Todas las instrucciones se ejecutan por completo en un ciclo de reloj.La ejecucin comienza en un flanco y termina en el siguiente (del mismo tipo).

CONSTRUYENDO EL DATAPATHDatapathColeccin de componentes del procesador que tienen la capacidad de operar sobre datos y almacenarlos. (Memorias de datos e instrucciones, banco de registros, ALU, sumadores).Construiremos gradualmente un datapath para el MIPS, refinando la vista de alto nivel expuesta anteriormentePartiremos por definir los elementos requeridos para ejecutar cada tipo de instruccin para luego combinarlos todos

BUSQUEDA DE INSTRUCCIONESLa bsqueda de instrucciones implica:leer una instruccin de la memoria de instrucciones usando la direccin indicada por el PC.Actualizar el valor del PC a la direccin de la prxima (secuencial) instruccin.El PC es actualizado cada ciclo de reloj de manera que no necesita una seal explicita de control.La ejecucin secuencial de programas implica actualizar el PC para que apunte a la instruccin inmediatamente consecutiva en la memoria de instrucciones.El nuevo valor de PC debe ser PC+4.Memoria direccionable por bytes.Tamao de palabra de 32 bits.

BUSQUEDA DE INSTRUCCIONES

!MUCHAS GRACIAS!