Arquitectura de Computadores. Tema 8. Diseño de un CPU de multiciclo

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Arquitectura de Computadores. Tema 8. Diseño de un CPU de multiciclo"

Transcripción

1 Arquitectura de Computadores Tema 8 Diseño de un CPU de multiciclo Eduardo Daniel Cohen dcohen@arnet.com.ar Diseño RISC D. Cohen UNT Arq. de Computadoras - 24

2 op 6 Instr<3:26> RegDst Recapitulando: procesador de ciclo único. busw Clk Main Control RegWr Rd imm6 Instr<:> Rs Rw Ra Rb -bit Registers 6 op RegDst Src : busb Extender Branch busa ExtOp Jump Clk 3 Src Instruction Fetch Unit ctr Data In Diseño RISC D. Cohen UNT Arq. de Computadoras func Instr<:> 6 Clk Instruction<3:> Control <2:2> WrEn Rs <6:2> MemWr Adr Data ctr Rd <:> 3 <:> Imm6 MemtoReg

3 Recapitulando ejemplo simplificado 4 Add Instruction [3 26] Control RegDst Branch MemRead MemtoReg Op MemWrite Src RegWrite Shift left 2 Add result M u x PC Read address Instruction memory Instruction [3 ] Instruction [2 2] Instruction [2 6] Instruction [ ] M u x Read register Read Read data register 2 Registers Read Write data 2 register Write data M u x result Address Write data Data memory Read data M u x Instruction [ ] 6 Sign extend control Instruction [ ] Diseño RISC D. Cohen UNT Arq. de Computadoras

4 Recap: Implementación con PLA del Control Central op<>. op<> op<>.. op<>.. op<>.. op<>..... <> <> <> <> <> op<> R-type ori lw sw beq jump RegWrite Src RegDst MemtoReg MemWrite Branch Jump ExtOp op<2> op<> op<> Diseño RISC D. Cohen UNT Arq. de Computadoras

5 Recap: Panorama General del Control Simplificado Más simple que en nuestro ejemplo: sólo 4 instrucciones y 2 bits para AluOp Lógica combinacional simple (tablas de verdad) y realización con PLA Control local simplifica control central. 2 Bits centrales para distinguir los tipos de Inst. Inputs Op Op4 Op3 Op2 Op Op Op Op Op control block R-format Iw sw beq Outputs RegDst Src MemtoReg RegWrite MemRead MemWrite Branch Op F ( ) F3 F2 F F Operation2 Operation Operation O OpO Inst R define campo funct de I. Diseño RISC D. Cohen UNT Arq. de Computadoras - 24

6 Recap: Tiempos para el Peor Caso (LOAD por qué?) Clk PC Rs,, Rd, Op, Func ctr Old Value Clk-to-Q New Value Old Value Old Value Instruction Memoey Access Time New Value Delay through Control Logic New Value ExtOp Old Value New Value Src Old Value New Value MemtoReg Old Value New Value RegWr Old Value New Value busa busb Old Value Delay through Extender & Old Value Register Write Occurs Register File Access Time New Value New Value Delay Address Old Value New Value Data Access Time busw Old Value New Diseño RISC D. Cohen UNT Arq. de Computadoras

7 Recap: Implementación de Ciclo Unico Ej: Calcular duración ciclo despreciando todos los retardos excepto: memoria (2 ps), y sumadores ( ps), banco de reg. y Clk-to-Q ( ps) PCSrc 4 Add RegWrite Shift left 2 Add result M u x PC Read address Instruction [3 ] Instruction memory Instruction [2 2] Instruction [2 6] M u Instruction [ ] x RegDst Instruction [ ] Read register Read register 2 Write register Write data Read data Read data 2 Registers 6 Sign extend Src M u x control result MemWrite Address Write data Data memory MemRead Read data MemtoReg M u x Instruction [ ] Op Diseño RISC D. Cohen UNT Arq. de Computadoras

8 Recap: Analicemos como estamos Problemas del Ciclo Unico: No estamos compartiendo recursos (, sumadores). Derrochamos area de CPU. La duración del ciclo se realiza en función de la instrucción más lenta (Ld). Pero todas las otras instrucciones no necesitan tanto tiempo. Castigamos a todas por el problema de una. Y si tenemos una instrucción más compleja, pto flotante? PROBLEMAS DE PERFORMANCE!! Ventajas del Ciclo Unico: Apto para un desarrollo en Pipelining. Pero.. todo a su tiempo! Diseño RISC D. Cohen UNT Arq. de Computadoras

9 Propuesta de Solución: Camino de Datos Multiciclo Dividir las instrucciones en varios pasos modulares. Cualquier instrucción se forma combinando estos pasos. Cada paso se ejecuta en un ciclo T menor. permitir que las instrucciones empleen distinto número de ciclos T Cómo determino los módulos? Alternativa I que tengan similar duración. Alternativa II mediante una división funcional. Con qué alternativa me quedo? Alternativa I Tentación: una única etapa entre y Banco de Registros. Pero si tenemos que implementar una instrucción de punto flotante! Alternativa II menos eficiente (no todas las etapas iguales) pero el diseño funcional es lo que cuenta. Cuando se siguen los buenos principios de diseño siempre se gana. Uniciclo: tiene un mal principio: castiga a las buenas por las malas. Diseño RISC D. Cohen UNT Arq. de Computadoras

10 Solucion Multiciclo Reutilizaremos unidades funcionales se usará para calcular direcciones y actualizar PC Permite una única unidad de memoria para Datos e Inst. Las señales de control no dependen solo de la Instrucción. ej., qué debe hacer la para una instrucción Substract? - La respuesta sería con otra pregunta: en qué ciclo T? Emplearemos una máquina de estado finito (MEF) para el control. Separemos las instrucciones en pasos, cada paso tomaría un T hay que balancear la cantidad de trabajo en cada paso que cada paso use solo una unidad funcional importante Diseño RISC D. Cohen UNT Arq. de Computadoras - 24

11 Solución Multiciclo Al final de cada ciclo guardar valores para usarse en el ciclo siguiente introducir registros internos adicionales PC M u x Address Write data MemData Instruction [2 2] Instruction [2 6] Instruction [ ] Instruction register Instruction [ ] data register Instruction [ ] M u x M u x 6 Read register Read register 2 Registers Write register Write data Sign extend Read data Read data 2 Shift left 2 A B 4 M u x M u 2 x 3 result Out Diseño RISC D. Cohen UNT Arq. de Computadoras - 24

12 Cinco Pasos de Ejecución Instruction Fetch Instruction Decode and Register Fetch (y dirección branch) Execution, Address Computation, or Branch Completion Access or R-type instruction completion Write-back step Las Instrucciones toman entre 3 a ciclos! Diseño RISC D. Cohen UNT Arq. de Computadoras

13 Paso : Instruction Fetch Usar PC para obtener instrucción y llevarla al IR. Incrementar PC en 4 y guardar el resultado de nuevo en PC. Se puede describir suscintamente con RTL "Register-Transfer Language" IR = [PC]; PC = PC + 4; Cuáles serían las señales de control? Cuál es la ventaja de incrementar el PC ahora? Diseño RISC D. Cohen UNT Arq. de Computadoras

14 Paso 2: Instruction Decode and Register Fetch Leer los registros rs y rt en caso de que los necesitemos luego. Calcular dirección de salto por si se tratare de un BRANCH. RTL: A = Reg[IR[2-2]]; B = Reg[IR[2-6]]; Out = PC + (sign-extend(ir[-]) << 2); No establecemos señales de control basadas en la Instrucción. (Estamos ocupados decodificándolas en la unidad de control) Estamos adelantando trabajo para ganar tiempo por las dudas Aprovechando que las unidades funcionales estaban libres. Diseño RISC D. Cohen UNT Arq. de Computadoras

15 Paso 3 (dependiente de la Instrucción) realiza una de cuatro operaciones, según el tipo de instrucción Referencia a Memoria: Out = A + sign-extend(ir[-]); R-type: Out = A op B; Branch: if (A==B) PC = Out; FIN Jump PC = {PC[3:28]} concat IR[2:] concat ; FIN Diseño RISC D. Cohen UNT Arq. de Computadoras - 24

16 Paso 4 (R-type or memory-access) Loads y Stores acceden a memoria. MDR = [Out]; o [Out] = B; Finalizan las instrucción tipo R: Reg[IR[-]] = Out; La escritura realmente ocurre al terminar el ciclo, en la transición. Diseño RISC D. Cohen UNT Arq. de Computadoras

17 Paso (Write-back) Reg[IR[2-6]]= MDR; Diseño RISC D. Cohen UNT Arq. de Computadoras

18 En Síntesis: Nombre del Paso Instruction fetch Instruction decode/register fetch Acción para Instrucc Tipo R Acción para Instrucciones Acción para que acceden a Memoria BRANCH IR = [PC] PC = PC + 4 A = Reg [IR[2-2]] B = Reg [IR[2-6]] Out = PC + (sign-extend (IR[-]) << 2) Acción para JUMPS Execution, address Out = A op B Out = A + sign-extend if (A ==B) then PC = PC [3-28] II computation, branch/ (IR[-]) PC = Out (IR[2-]<<2) jump completion access or R-type Reg [IR[-]] = Load: MDR = [Out] completion Out or Store: [Out] = B read completion Load: Reg[IR[2-6]] = MDR Diseño RISC D. Cohen UNT Arq. de Computadoras

19 Escrituras en Memoria y Registros: Vs. Real Hasta aquí se había simplificado Memoria y Banco de Registros: La escritura ocurre en el flanco de reloj. Address, data, y write enable deben permanecer estables al menos el tiempo set-up antes del flanco de reloj. En la vida real: Ni el banco de registros ni la Memoria poseen entrada de clk El camino de escritura presenta señales con carreras potenciales: Clk - Write enable =, Din se estabiliza - Retardo de Escritura a Memoria - Din se escribe en Mem[address] Importante: Address debe estar estable antes que Write Enable se ponga en Ojo: Problemas en el caso Ciclo Único. WrEn Adr Ideal Din Dout WrEn Adr Real Din Dout Diseño RISC D. Cohen UNT Arq. de Computadoras

20 Implementación del Control El valor de las señales de control depende de: qué instrucción está siendo ejecutada cuál paso se está realizando Usaremos la información vista para especificar una MEF mediante especificación gráfica de una MEF. uso de microprogramación. La Implementación se deriva directamente de la especificación (CAD) Comenzaremos por establecer cuáles son las señales de control y qué valores toman Diseño RISC D. Cohen UNT Arq. de Computadoras

21 Camino de Datos Multiciclo PCWr PC IorD PCWrCond PCSrc BrWr MemWr IRWr RegDst RegWr SelA Target RAdr WrAdr Din Dout Instruction Reg Rs Rd Ra Rb busa Reg File Rw busw busb << Control Imm 6 ExtOp Extend MemtoReg SelB Op Diseño RISC D. Cohen UNT Arq. de Computadoras

22 Instruction Fetch: Al comienzo Cada ciclo comienza con el flanco negativo del clock: mem[pc] PC<3:> + 4 Clk Estamos aquí! Un ciclo lógico de reloj PCWr=? Clk PC MemWr=? RAdr WrAdr Dout Din IRWr=? Instruction Reg 4 op=? Control Diseño RISC D. Cohen UNT Arq. de Computadoras Clk

23 Instruction Fetch: al final Cada ciclo termina con el siguiente flanco negativo (se actualizan elementos de memoria): Clk IR mem[pc] PC<3:> PC<3:> + 4 Un ciclo lógico de reloj PCWr= Estamos aquí! Clk PC MemWr= IRWr= RAdr WrAdr Din Dout Instruction Reg 4 Op = Add Control Clk Diseño RISC D. Cohen UNT Arq. de Computadoras

24 PCWr= PC Instruction Fetch: Panorama Completo RAdr WrAdr Din Dout Instruction Reg Ifetch Op=Add : PCWr, IRWr x: PCWrCond RegDst, Mem2R Others: s PCWrCond=x PCSrc= BrWr=x IorD= MemWr= IRWr= SelA= Target busa busb Control SelB= Op=Add Diseño RISC D. Cohen UNT Arq. de Computadoras

25 Register Fetch / Instruction Decode busa RegFile[rs] ; busb RegFile[rt] ; no se usa: ctr = xx... Pensemos un uso para la... (branch) PCWr= PC IorD=x PCWrCond= MemWr= RAdr WrAdr Din Dout Go to the Control Op Func IRWr= Instruction Reg 6 6 RegDst=x Rs Rd Imm 6 Rb busa Reg File Diseño RISC D. Cohen UNT Arq. de Computadoras RegWr= Ra Rw busw busb SelA=x 4 PCSrc=x 2 3 SelB=xx Control Op=xx

26 Register Fetch / Instruction Decode (Continúa) busa Reg[rs] ; busb Reg[rt] ; Target PC + SignExt(Imm6)*4 PCWr= PC Beq ype Ori IorD=x PCWrCond= : MemWr= RAdr WrAdr Din Dout IRWr= Instruction Reg Op Control 6 Func 6 RegDst=x Rs Rd Imm 6 ExtOp= Rb busa Reg File Target Diseño RISC D. Cohen UNT Arq. de Computadoras Extend RegWr= Ra Rw Rfetch/Decode Op=Add : BrWr, ExtOp SelB= x: RegDst, PCSrc IorD, MemtoReg Others: s busw busb SelA= << 2 4 PCSrc=x 2 3 SelB= BrWr= Control Op=Add

27 Completar Branch if (busa == busb) PCWr= PC PC Target IorD=x PCWrCond= MemWr= RAdr WrAdr Din Dout IRWr= Instruction Reg RegDst=x Rs Rd BrComplete Op=Sub SelB= x: IorD, Mem2Reg RegDst, ExtOp : PCWrCond SelA PCSrc RegWr= Ra Rb busa Reg File Rw busw busb SelA= << 2 4 PCSrc= 2 3 BrWr= Control Target Imm Extend 6 ExtOp=x SelB= Op=Sub Diseño RISC D. Cohen UNT Arq. de Computadoras

28 Volvamos Instruction Decode: supongamos tipo-r Próximo ciclo: Ejecución de una instrucción tipo-r PCWr= PC Beq ype Ori IorD=x PCWrCond= : MemWr= RAdr WrAdr Din Dout IRWr= Instruction Reg Op Control 6 Func 6 RegDst=x Rs Rd Imm 6 ExtOp= Rb busa Reg File Target Diseño RISC D. Cohen UNT Arq. de Computadoras Extend RegWr= Ra Rw busw busb SelA= << 2 4 PCSrc=x 2 3 SelB= BrWr= Control Op=Add

29 Ejecución Tipo-R: RExec : RegDst Output busa op busb SelA SelB= Op=ype PCWr= PCWrCond= x: PCSrc, IorD MemtoReg ExtOp PCSrc=x BrWr= IorD=x MemWr= IRWr= RegDst= RegWr= SelA= Target PC Rs Ra RAdr Rb busa Reg File 4 WrAdr Rw Din Dout Rd busw busb 2 3 << 2 Control Instruction Reg Imm Extend 6 ExtOp=x MemtoReg=x Op=ype SelB= Diseño RISC D. Cohen UNT Arq. de Computadoras

30 Completamos Tipo-R Rfinish Op=ype R[rd] Output : RegDst, RegWr sela PCWr= PCWrCond= SelB= x: IorD, PCSrc PCSrc=x BrWr= ExtOp IorD=x MemWr= IRWr= RegDst= RegWr= SelA= Target PC Rs Ra RAdr Rb busa Reg File 4 WrAdr Rw Din Dout Rd busw busb 2 3 << 2 Control Instruction Reg Rw llegó en ciclo anterior No hay registro a la salida Imm 6 ExtOp=x Extend MemtoReg= Op=ype SelB= Diseño RISC D. Cohen UNT Arq. de Computadoras

31 Decodificación: supogamos un ORI Próximo ciclo: ejecución ORI PCWr= PC Beq ype Ori IorD=x PCWrCond= : MemWr= RAdr WrAdr Din Dout IRWr= Intruction Reg Op Control 6 Func 6 RegDst=x Rs Rd Imm 6 ExtOp= Extend RegWr= Ra Rb busa Reg File Rw busw busb SelA= << 2 4 PCSrc=x 2 3 SelB= BrWr= Control Target Op=Add Diseño RISC D. Cohen UNT Arq. de Computadoras

32 Ejecución ORI output busa or Ext[Imm6] Instruction Reg Op=Or : SelA OriExec SelB= PCWr= x: MemtoReg IorD, PCSrc PCSrc=x BrWr= IorD=x MemWr= IRWr= RegDst= RegWr= SelA= Target PC Rs Ra RAdr Rb busa Reg File 4 WrAdr Rw Din Dout Rd busw busb 2 3 << 2 Control Imm Extend 6 ExtOp= MemtoReg=x Op=Or SelB= Diseño RISC D. Cohen UNT Arq. de Computadoras - 24

33 Completar ORI Reg[rt] output Instruction Reg OriFinish Op=Or x: IorD, PCSrc SelB= PCWr= PCWrCond= : SelA PCSrc=x BrWr= RegWr IorD=x MemWr= IRWr= RegDst= RegWr= SelA= Target PC Rs Ra RAdr Rb busa Reg File 4 WrAdr Rw Din Dout Rd busw busb 2 3 << 2 Control Imm Extend 6 ExtOp= MemtoReg= Op=Or SelB= Diseño RISC D. Cohen UNT Arq. de Computadoras

34 Decodificación: supongamos Acceso a Memoria Next Cycle: Cálculo de la dirección de Memoria PCWr= PC Beq ype Ori IorD=x PCWrCond= : MemWr= RAdr WrAdr Din Dout IRWr= Instruction Reg Op Control 6 Func 6 RegDst=x Rs Rd Imm 6 ExtOp= Extend RegWr= Ra Rb busa Reg File Rw busw busb SelA= << 2 4 PCSrc=x 2 3 SelB= BrWr= Control Target Op=Add Diseño RISC D. Cohen UNT Arq. de Computadoras

35 Cálculo de la Dirección de Memoria output busa + SignExt[Imm6] : ExtOp SelA AdrCal SelB= PCWr= Op=Add PCWrCond= x: MemtoReg PCSrc PCSrc=x BrWr= IorD=x MemWr= IRWr= RegDst=x RegWr= SelA= Target PC Rs Ra RAdr Rb busa Reg File 4 WrAdr Rw Din Dout Rd busw busb 2 3 << 2 Control Instruction Reg Imm Extend 6 ExtOp= MemtoReg=x Op=Add SelB= Diseño RISC D. Cohen UNT Arq. de Computadoras

36 Acceso a Memoria para STORE : ExtOp SWmem mem[ output] busb MemWr SelA SelB= Op=Add PCWr= PCWrCond= x: PCSrc,RegDst PCSrc=x BrWr= MemtoReg IorD=x MemWr= IRWr= RegDst=x RegWr= SelA= Target PC Rs Ra RAdr Rb busa Reg File 4 WrAdr Rw Din Dout Rd busw busb 2 3 << 2 Control Instruction Reg Imm Extend 6 ExtOp= MemtoReg=x Op=Add SelB= Diseño RISC D. Cohen UNT Arq. de Computadoras

37 Acceso a Memoria para LOAD : ExtOp LWmem Mem Dout mem[ output] SelA, IorD SelB= Op=Add PCWr= PCWrCond= x: MemtoReg PCSrc=x BrWr= PCSrc IorD= MemWr= IRWr= RegDst= RegWr= SelA= Target PC Rs Ra RAdr Rb busa Reg File 4 WrAdr Rw Din Dout Rd busw busb 2 3 << 2 Control Instruction Reg Imm Extend 6 ExtOp= MemtoReg=x Op=Add SelB= Diseño RISC D. Cohen UNT Arq. de Computadoras

38 Escritura de Reg para LOAD LWwr : SelA Reg[rt] Mem Dout RegWr, ExtOp MemtoReg SelB= Op=Add PCWr= PCWrCond= x: PCSrc PCSrc=x BrWr= IorD: IorD= MemWr= IRWr= RegDst= RegWr= SelA= Target PC Rs Ra RAdr Rb busa Reg File 4 WrAdr Rw Din Dout Rd busw busb 2 3 << 2 Control Instruction Reg Imm Extend 6 ExtOp= MemtoReg= Op=Add SelB= Diseño RISC D. Cohen UNT Arq. de Computadoras

39 Juntando todo: Diagrama de Estados para la MEF Ifetch AdrCal : ExtOp SelA SelB= Op=Add x: MemtoReg PCSrc lw : ExtOp LWmem SelA, IorD SelB= Op=Add x: MemtoReg PCSrc LWwr Op=Add : PCWr, IRWr x: PCWrCond RegDst, Mem2R Others: s sw : SelA RegWr, ExtOp MemtoReg SelB= Op=Add x: PCSrc IorD: lw or sw SWMem : ExtOp MemWr SelA SelB= Op=Add x: PCSrc,RegDst MemtoReg Rfetch/Decode Op=Add : BrWr, ExtOp SelB= x: RegDst, PCSrc IorD, MemtoReg Others: s ype Ori RExec : RegDst SelA SelB= Op=ype x: PCSrc, IorD MemtoReg ExtOp beq Rfinish Op=ype : RegDst, RegWr sela SelB= x: IorD, PCSrc ExtOp BrComplete Op=Sub SelB= x: IorD, Mem2Reg RegDst, ExtOp : PCWrCond SelA PCSrc OriExec Op=Or : SelA SelB= x: MemtoReg IorD, PCSrc OriFinish Op=Or x: IorD, PCSrc SelB= : SelA RegWr Diseño RISC D. Cohen UNT Arq. de Computadoras

40 2 Numeremos los estados del diagrama (Moore) Ifetch AdrCal : ExtOp SelA SelB= Op=Add x: MemtoReg PCSrc lw 4 : ExtOp LWmem SelA, IorD SelB= Op=Add x: MemtoReg PCSrc LWwr 3 Op=Add : PCWr, IRWr x: PCWrCond RegDst, Mem2R Others: s sw : SelA RegWr, ExtOp MemtoReg SelB= Op=Add x: PCSrc IorD lw or sw SWMem : ExtOp MemWr SelA SelB= Op=Add x: PCSrc,RegDst MemtoReg 6 7 Rfetch/Decode 8 Op=Add : BrWr, ExtOp SelB= x: RegDst, PCSrc IorD, MemtoReg Others: s ype Ori RExec : RegDst SelA SelB= Op=ype x: PCSrc, IorD MemtoReg ExtOp beq Rfinish Op=ype : RegDst, RegWr sela SelB= x: IorD, PCSrc ExtOp BrComplete Op=Sub SelB= x: IorD, Mem2Reg RegDst, ExtOp : PCWrCond SelA PCSrc OriExec Op=Or : SelA SelB= x: MemtoReg IorD, PCSrc Op=Or x: IorD, PCSrc SelB= : SelA RegWr OriFinish Diseño RISC D. Cohen UNT Arq. de Computadoras

41 Implementación Tradicional de la MEF Control Logic Inputs O u t p u t s al Camino de Datos Opcode Estado Próximo Estado 2 estados 4 bits. Diseño RISC D. Cohen UNT Arq. de Computadoras

42 Transición de estados Próximo Estado desde el Actual Estado Estado Estado S2, S6, S8, S Estado 2 S3, S Estado 3 Estado 4 Estado 4 Estado Estado Estado Estado 6 Estado 7 Estado 7 Estado Estado 8 Estado Estado 9 Estado Estado Estado Estado Estado Alternativamente, estado anterior y condición S4, S, S7, S8, S9, S Estado Estado Estado 2 Estado 3 Estado 4 Estado2 & op = sw Estado Estado 6 Estado 6 Estado 7 Estado 8 Estado & op = jmp Estado 9 Estado Estado Estado Diseño RISC D. Cohen UNT Arq. de Computadoras

43 Implementación con PLA (Programmed Logic Arrays) Qué significa una línea horizontal abajo? y una vertical? Op Op4 Op3 Op2 Op Op S3 S2 S S = = 2 = 3 = 4 = = 6 = 7 = 8 = 9 = = = R = beq = lw = sw = ori = jmp = NS3 NS2 NS NS Diseño RISC D. Cohen UNT Arq. de Computadoras

44 Implementación con PLA Los minterms están especificados en azul, las sumas en rojo. Por ejemplo, la primera línea vertical representa que del estado siempre paso al. No está completo... Op Op4 Op3 Op2 Op Op S3 S2 S S = = 2 = 3 = 4 = = 6 = 7 = 8 = 9 = = = lw = sw = R = ori = beq = jmp = NS3 NS2 NS NS Diseño RISC D. Cohen UNT Arq. de Computadoras

45 Implementación con PLA Agregando señales de control (Ejemplo del Libro) Op Op4 Op3 Op2 Op Op S3 S2 S S PCWrite PCWriteCond IorD MemRead MemWrite IRWrite MemtoReg PCSource PCSource Op Op SrcB SrcB SrcA RegWrite RegDst NS3 NS2 NS NS Diseño RISC D. Cohen UNT Arq. de Computadoras

46 Implementación con ROM Cuántas entradas tenemos? 6 bits para el opcode, 4 bits para el estado = líneas dirección (2 = 24 palabras diferentes) Cuántas salidas tenemos? 6 salidas de control del camino de datos, 4 bits de estado = 2 ROM: 2 x 2 = 2K bits (y un tamaño algo inusual) Ineficiente: no se tienen en cuenta condiciones de indiferencia En realidad hay más de 6 salidas de control con más instrucciones (por ejemplo JUMP). Diseño RISC D. Cohen UNT Arq. de Computadoras

47 ROM vs PLA Implementación de Moore (las salidas dependen del estado actual). Separemos la tabla en dos partes y dos ROMs: 4 bits de estado dan las 6 salidas, 2 4 x 6 bits de ROM bits dan los 4 bits de próx. estado, 2 x 4 bits de ROM2 Total: 4.3K bits de ROM PLA es mucho más chica puede compartir términos de productos utiliza solo las entradas que producen una salida tiene en cuenta las condiciones de indiferencia El tamaño es (#inputs #product-terms) + (#outputs #product-terms) - En este caso = (x7)+(7x2) = 46 celdas PLA El tamaño de las celdas del PLA es similar a las de la ROM ( un poco mayor) Diseño RISC D. Cohen UNT Arq. de Computadoras

48 Mayor complejidad. Qué pasa si hay muchos más estados y condiciones de entradas para determinar el control? El manejo con tablas se hace engorroso. Se recurre a CAD. Y si luego se necesita agregar un estado? Veremos otra forma de realización del control llamado MICROPROGRAMACION. Diseño RISC D. Cohen UNT Arq. de Computadoras

49 Resumen Puntos débiles Uniciclo: Performance y duplicación recursos. Multiciclo: reusa recursos cada instrucción dura lo necesario. Requiere Control con una MEF. Camino de datos parecido a Uniciclo, con registros para permitir uso de idénticos recursos en distintos ciclos. Cada instrucción demora:? Tabla con RTL para cada instrucción. Identificación de las señales de control Construcción diagrama de Estados. Implementación PLA, ROM, comparación. CISC: por CAD o Microprogramación próximo tema. Diseño RISC D. Cohen UNT Arq. de Computadoras

Organización del Computador I Verano. Control Multiciclo. Basado en el capítulo 5 del libro de Patterson y Hennessy

Organización del Computador I Verano. Control Multiciclo. Basado en el capítulo 5 del libro de Patterson y Hennessy Organización del Computador I Verano Control Multiciclo Basado en el capítulo 5 del libro de Patterson y Hennessy Verano 2014 Profesora Borensztejn Resumen Step name Instruction fetch Instruction decode/register

Más detalles

Arquitectura de Computadores. Tema 9. Microprogramación

Arquitectura de Computadores. Tema 9. Microprogramación Arquitectura de Computadores Tema 9 Microprogramación Eduardo Daniel Cohen dcohen@arnet.com.ar http://www.herrera.unt.edu.ar/arqcom 1 Casos de Mayor complejidad. Qué pasa si hay muchos más estados y condiciones

Más detalles

16/04/2012. Introducción. Construyendo el Datapath. Esquema de implementación Simple. Unidad de Control. Arquitectura de Computadoras Primavera 2012

16/04/2012. Introducción. Construyendo el Datapath. Esquema de implementación Simple. Unidad de Control. Arquitectura de Computadoras Primavera 2012 /4/22 Introducción rquitectura de Computadoras Primavera 22 Construyendo el path Esquema de implementación Simple Unidad de Control 2 Los elementos básicos de un sistema de computo son: Nos centraremos

Más detalles

Convenciones. Introducción. Unidades principales en la implementación. El procesador: camino de datos y control. Tipos de elementos:

Convenciones. Introducción. Unidades principales en la implementación. El procesador: camino de datos y control. Tipos de elementos: Unidades principales en la implementación Data El procesador: camino de datos y control IEC UTM Moisés E. Ramírez G. 1 Register # PC Address Instruction Instruction Registers Register # ALU memory Register

Más detalles

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Universidad Rey Juan Carlos ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Camino de datos y control: implementación multiciclo Luis Rincón Córcoles Licesio J. Rodríguez-Aragón Programa. Introducción. 2. Construcción

Más detalles

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Universidad Rey Juan Carlos ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Camino de datos y control: implementación uniciclo Luis Rincón Córcoles Licesio J. Rodríguez-Aragón Programa. Introducción. 2. Construcción

Más detalles

La Unidad de Control y el Camino de Datos

La Unidad de Control y el Camino de Datos Prof. Rodrigo Araya E. raraya@inf.utfsm.cl Universidad Técnica Federico Santa María Departamento de Informática Valparaíso, 1 er Semestre 2006 1 2 3 Contenido Veremos el diseño completo de un subconjunto

Más detalles

Microarquitectura: DISEÑO DE SISTEMAS DIGITALES EL-3310 I SEMESTRE 2008 3. MICROARQUITECTURA: FLUJO DE DATOS Y CONTROL DEL MICROPROCESADOR

Microarquitectura: DISEÑO DE SISTEMAS DIGITALES EL-3310 I SEMESTRE 2008 3. MICROARQUITECTURA: FLUJO DE DATOS Y CONTROL DEL MICROPROCESADOR Microarquitectura: implementación multiciclo DISEÑO DE SISTEMAS DIGITALES EL-3310 I SEMESTRE 2008 3. MICROARQUITECTURA: FLUJO DE DATOS Y CONTROL DEL MICROPROCESADOR 3.1 Esquema básico de un microprocesador

Más detalles

MICROPROCESADOR. Multiciclo

MICROPROCESADOR. Multiciclo MICROPROCESADOR Multiciclo Ejemplo Tiempos de operación. Unidades de memoria: 10 ns. Alu y sumadores: 10 ns Archivo de registros (lectura y escritura): 5 ns. Suponiendo que los multiplexores, unidad de

Más detalles

Arquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2

Arquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2 Arquitectura t de Computadores Clase 10: Diseño del microprocesador monociclo pt.2 Departamento de Ingeniería de Sistemas Universidad id d de Antioquia i 2011 2 Unidad de control principal Mediante el

Más detalles

Arquitectura de Computadores - 2001

Arquitectura de Computadores - 2001 IV. Segmentación o Pipelining Alternativas de Implementación de Procesador 1. Procesador Uniciclo CPI = 1 Pero Período de Reloj Grande 2. Procesador Multiciclo CPI > 1 Pero Período de Reloj más Pequeño

Más detalles

Diseño Procesador Monociclo

Diseño Procesador Monociclo Diseño Procesador Monociclo Especificación de la arquitectura del repertorio de instrucciones y de las instrucciones que podrá ejecutar el procesador. Modelo Carga-Almacenamiento. Se implementará el procesador

Más detalles

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Universidad Rey Juan Carlos ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Camino de datos y control: implementación microprogramada Luis Rincón Córcoles Licesio J. Rodríguez-Aragón Programa. Introducción.

Más detalles

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES

ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Universidad Rey Juan Carlos ESTRUCTURA Y TECNOLOGÍA A DE COMPUTADORES Camino de datos y control: visión de conjunto y conclusiones Luis Rincón Córcoles Licesio J. Rodríguez-Aragón Programa 1. Excepciones

Más detalles

ELO311 Estructuras de Computadores Digitales. Procesador Monociclo

ELO311 Estructuras de Computadores Digitales. Procesador Monociclo ELO3 Estructuras de Computadores Digitales Procesador Monociclo Tomás Arredondo Vidal Este material está basado en: material de apoyo del texto de David Patterson, John Hennessy, "Computer Organization

Más detalles

Procesador Segmentado

Procesador Segmentado Organización del Computador I Verano Procesador Segmentado Basado en el capítulo 4 del libro de Patterson y Hennessy Verano 2014 Profesora Borensztejn Segmentación Descompone una determinada operación

Más detalles

UNIDAD 4: El procesador: Camino de los datos y Control.

UNIDAD 4: El procesador: Camino de los datos y Control. UNIDAD 4: El procesador: Camino de los datos y Control. 4.1 Introducción El rendimiento de una máquina depende de tres factores clave: Conteo de Instrucciones, tiempo del ciclo de reloj y ciclos de reloj

Más detalles

UNIDAD 5: Mejora del rendimiento con la segmentación.

UNIDAD 5: Mejora del rendimiento con la segmentación. UNIDAD 5: Mejora del rendimiento con la segmentación. 5.1 Un resumen de segmentación La segmentación (pipelining) es una técnica de implementación por la cual se solapa la ejecución de múltiples instrucciones.

Más detalles

Temporización monociclo. Componentes de la ruta de datos. Ensamblaje de la ruta de

Temporización monociclo. Componentes de la ruta de datos. Ensamblaje de la ruta de Arquitectura de Computadores Tema 2. Repaso de Conceptos fundamentales Diseño de la ruta de datos y la unidad de control 2. Introducción contenidos Importancia del diseño del procesador. Metodología de

Más detalles

Estructura y Tecnología de Computadores. Módulo G. Estructura del procesador. Tema 16. Diseño de la ruta de datos y la unidad de control

Estructura y Tecnología de Computadores. Módulo G. Estructura del procesador. Tema 16. Diseño de la ruta de datos y la unidad de control Estructura y Tecnología de Computadores Módulo G Estructura del procesador Tema 6 Diseño de la ruta de datos y la unidad de control José Manuel Mendías Cuadros Dpto Arquitectura de Computadores y Automática

Más detalles

Circuitos Digitales II y Laboratorio Fundamentos de Arquitectura de Computadores

Circuitos Digitales II y Laboratorio Fundamentos de Arquitectura de Computadores Departamento de Ingeniería Electrónica Facultad de Ingeniería Circuitos Digitales II y Laboratorio Fundamentos de Arquitectura de Computadores Unidad 5: IPS Pipeline Prof. Felipe Cabarcas cabarcas@udea.edu.co

Más detalles

SEGMENTACIÓN EN LA EJECUCIÓN DE INSTRUCCIONES

SEGMENTACIÓN EN LA EJECUCIÓN DE INSTRUCCIONES Capítulo 3: MIPS SEGMENTACIÓN EN LA EJECUCIÓN DE INSTRUCCIONES Parte del material fue desarrollado en la Escuela Politécnica Superior de la Universidad Autónoma de Madrid. Arqui1-UNICEN Introducción Para

Más detalles

op rs rt inmediato 6 bits 5 bits 5 bits Tipo J: Salto incondicional op

op rs rt inmediato 6 bits 5 bits 5 bits Tipo J: Salto incondicional op Arquitectura MIPS: Formato de la instrucción máquina La ruta de datos la diseñaremos para un subconjunto de instrucciones del procesador MIPS, que dispone de sólo 3 formatos de diferentes de longitud fija

Más detalles

Práctica 7 - Microarquitectura del CPU

Práctica 7 - Microarquitectura del CPU Práctica 7 - Microarquitectura del CPU Organización del Computador 1 Primer cuatrimestre de 2012 Ejercicio 1 El siguiente esquema muestra algunos de los componentes de la microarquitectura de un modelo

Más detalles

Arquitectura e Ingeniería de Computadores

Arquitectura e Ingeniería de Computadores Arquitectura e Ingeniería de Computadores Tema 2 Procesadores Segmentados Curso 2-22 Contenidos Introducción: Recordatorio MPIS-DLX Excepciones y control Segmentación Riesgos: Estructurales, de datos y

Más detalles

Práctica 4 - Microarquitectura del CPU

Práctica 4 - Microarquitectura del CPU Práctica 4 - Microarquitectura del CPU Organización del Computador 1 Verano 2011 Ejercicio 1 El siguiente esquema muestra algunos de los componentes de la microarquitectura de un modelo del procesador

Más detalles

Arquitectura de Computadoras. Clase 4 Segmentación de Instrucciones

Arquitectura de Computadoras. Clase 4 Segmentación de Instrucciones Arquitectura de Computadoras Clase 4 Segmentación de Instrucciones Segmentación de cauce: Conceptos básicos La segmentación de cauce (pipelining) es una forma particularmente efectiva de organizar el hardware

Más detalles

Plataformas de soporte computacional: arquitecturas avanzadas,

Plataformas de soporte computacional: arquitecturas avanzadas, Plataformas de soporte computacional: arquitecturas avanzadas, sesión Diego R. Llanos, Belén Palop Departamento de Informática Universidad de Valladolid {diego,b.palop}@infor.uva.es Índice. Arquitectura

Más detalles

INTRODUCCIÓN SET DE INSTRUCCIONES

INTRODUCCIÓN SET DE INSTRUCCIONES Índice INTRODCCIÓN.- Objetivos:... 4 2. La aparición de los procesadores RISC:... 4 2.. Que significa RISC... 4 2.2. La base de un sistema RISC: n set de instrucciones simple... 4 2.3. Características

Más detalles

Arquitectura de Computadores II Clase #4

Arquitectura de Computadores II Clase #4 Clase #4 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Contenido Unidad de control Control cableado Control microprogramado MIC-1 La Unidad de Control La instrucción

Más detalles

Arquitectura de Computadores II Clase #5

Arquitectura de Computadores II Clase #5 Arquitectura de Computadores II Clase #5 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Algunas ideas para mejorar el rendimiento Obvio: incrementar la frecuencia

Más detalles

Sección de procesamiento: El camino de datos

Sección de procesamiento: El camino de datos Sección de procesamiento: El camino de datos Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución

Más detalles

Tema 5. Segmentación: conceptos básicos

Tema 5. Segmentación: conceptos básicos Tema 5. Segmentación: conceptos básicos Organización de Computadores LUIS ENRIQUE MORENO LORENTE RAÚL PÉRULA MARTÍNEZ ALBERTO BRUNETE GONZALEZ DOMINGO MIGUEL GUINEA GARCIA ALEGRE CESAR AUGUSTO ARISMENDI

Más detalles

Tema 4: Diseño de un microprocesador

Tema 4: Diseño de un microprocesador Tema : Diseño de un microprocesador Febrero de Tema : Diseño de un microprocesador Febrero de / 7 Índice Introducción Visión general de la implementación El camino de datos Control del camino de datos

Más detalles

FUNDAMENTOS DE COMPUTADORES 18 de junio de Examen parcial del 2º cuatrimestre.

FUNDAMENTOS DE COMPUTADORES 18 de junio de Examen parcial del 2º cuatrimestre. FUNDAMENTOS DE COMPUTADORES 18 de junio de 2014. Examen parcial del 2º cuatrimestre. Nombre DNI Apellidos Grupo Ejercicio 1 (2.5 puntos) Para el computador MIPS estudiado en clase, responder a las siguientes

Más detalles

ARQUITECTURA DEL REPERTORIO DE INSTRUCCIONES

ARQUITECTURA DEL REPERTORIO DE INSTRUCCIONES ARQUITECTURA DEL REPERTORIO DE INSTRUCCIONES Arquitectura del Repertorio de instrucciones Arquitectura del repertorio de instrucciones Repertorio de instrucciones Organización del almacenamiento Formato

Más detalles

Arquitectura Segmentada: Conceptos básicosb

Arquitectura Segmentada: Conceptos básicosb Arquitectura Segmentada: Conceptos básicosb Diseño de Sistemas Digitales EL-3310 I SEMESTRE 2008 4 ARQUITECTURA SEGMENTADA (PIPELINING) (4 SEMANAS) 4.1 Conceptos básicos de la arquitectura segmentada Paralelismo

Más detalles

El nivel ISA (II)! Conjunto de Instrucciones

El nivel ISA (II)! Conjunto de Instrucciones El nivel ISA (II) Conjunto de Instrucciones EC-2721 Arquitectura del Computador I Que es un Conjunto de Instrucciones? Colección completa de instrucciones comprendida por un procesador Lenguaje de máquina

Más detalles

3. SEGMENTACIÓN DEL CAUCE

3. SEGMENTACIÓN DEL CAUCE 3. SEGMENTACIÓN DEL CAUCE 1 SEGMENTACIÓN DEL CAUCE 1. Conceptos básicos 2. Etapas del MIPS64 3. Riesgos 4. Operaciones muticiclo 2 SEGMENTACIÓN DEL CAUCE 1. Conceptos básicos 3 Conceptos básicos Ciclo

Más detalles

Arquitecturas RISC. Arquitectura de Computadoras y Técnicas Digitales - Mag. Marcelo Tosini Facultad de Ciencias Exactas - UNCPBA

Arquitecturas RISC. Arquitectura de Computadoras y Técnicas Digitales - Mag. Marcelo Tosini Facultad de Ciencias Exactas - UNCPBA Arquitecturas RISC Características de las arquitecturas RISC Juego de instrucciones reducido (sólo las esenciales) Acceso a memoria limitado a instrucciones de carga/almacenamiento Muchos registros de

Más detalles

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO311 Estructuras de Computadores

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO311 Estructuras de Computadores 12. Diseño de un Procesador. (Monociclo) 12.1 Especificación de instrucciones. El primer paso es la especificación de la arquitectura del repertorio de instrucciones y de las instrucciones que podrá ejecutar

Más detalles

ARQUITECTURA VON NEUMANN

ARQUITECTURA VON NEUMANN ARQUITECTURA VON NEUMANN Computador bus de datos bus de direcciones bus de control Usuario y aplicaciones Lenguajes de alto nivel Sistema operativo Unidad Central de Proceso Memoria principal Unidad de

Más detalles

Diseño del procesador MIPS R2000

Diseño del procesador MIPS R2000 Diseño del procesador MIPS R2000 Aula Virtual IS09 Sergio Barrachina Mir Área de Arquitectura y Tecnología de Computadores Dpt. de Ingeniería y Ciencia de los Computadores Universidad Jaume I Índice 1.

Más detalles

Pipeline (Segmentación)

Pipeline (Segmentación) Pipeline (Segmentación) Segmentación (Pipeline) Es una técnica de implementación por medio de la cual se puede traslapar la ejecución de instrucciones. En la actualidad la segmentación es una de las tecnologías

Más detalles

4.5 Microprogramación para simplificar el diseño del control

4.5 Microprogramación para simplificar el diseño del control 4.5 Microprogramación para simplificar el diseño del control Para el control de la implementación multiciclos del subconjunto MIPS considerado, una máquina de estados como la mostrada en la figura 4.28

Más detalles

Tutorías con Grupos Reducidos (TGR) Sesión 2: Paralelismo a Nivel de Instrucción

Tutorías con Grupos Reducidos (TGR) Sesión 2: Paralelismo a Nivel de Instrucción Tutorías con Grupos Reducidos (TGR) Sesión 2: Paralelismo a Nivel de Instrucción ESTRUCTURA DE COMPUTADORES Grupo de Arquitectura de Computadores (GAC) Dyer Rolán García (GAC) Paralelismo a nivel de instrucción

Más detalles

Tema 1: PROCESADORES SEGMENTADOS

Tema 1: PROCESADORES SEGMENTADOS Tema 1: PROCESADORES SEGMENTADOS 1.1. Procesadores RISC frente a procesadores CISC. 1.2. Clasificación de las arquitecturas paralelas. 1.3. Evaluación y mejora del rendimiento de un computador. 1.4. Características

Más detalles

Aspectos avanzados de arquitectura de computadoras Pipeline. Facultad de Ingeniería - Universidad de la República Curso 2017

Aspectos avanzados de arquitectura de computadoras Pipeline. Facultad de Ingeniería - Universidad de la República Curso 2017 Aspectos avanzados de arquitectura de computadoras Pipeline Facultad de Ingeniería - Universidad de la República Curso 2017 Objetivo Mejorar el rendimiento Incrementar frecuencia de reloj? Ancho de los

Más detalles

5. Procesador: camino de datos y control

5. Procesador: camino de datos y control Fundamentos de Computadores Ingeniería de Telecomunicación Departamento de Automática Escuela Politécnica Superior Curso académico 2009 2010 Contenidos 1 Control de operaciones elementales 2 3 4 5 Objetivos

Más detalles

Estructura de Computadores 2 [08/09] Entrada/Salida en procesadores MIPS

Estructura de Computadores 2 [08/09] Entrada/Salida en procesadores MIPS Estructura de Computadores 2 [08/09] Entrada/Salida en procesadores MIPS GAC: Grupo de Arquitectura de Computadores Dpt. Electrónica e Sistemas. Universidade da Coruña. Bibliografía Computer Organization

Más detalles

Arquitectura de Computadoras

Arquitectura de Computadoras 4-1 Arquitectura de Computadoras Tema 4: Arquitectura del Set de Instrucciones Eduardo Daniel Cohen dcohen@arnet.com.ar http://www.herrera.unt.edu.ar/arqcom 4-2 Arquitectura del Set de Instrucciones Indice

Más detalles

Arquitectura t de Computadores

Arquitectura t de Computadores Arquitectura t de Computadores Tema 3 Segmentación (Pipelining) i 1 Índice 1. Segmentación 2. Riesgos (Hazards) 3. Forwarding 4. Implementación del pipelining 5. Tratamiento de las interrupciones 6. Complicaciones

Más detalles

Tema 4 (II) El procesador

Tema 4 (II) El procesador Grupo ARCOS Universidad Carlos III de Madrid Tema 4 (II) El procesador Estructura de Computadores Grado en Ingeniería Informática Contenidos } Elementos de un computador } Organización del procesador }

Más detalles

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores Ricardo.Sanz@upm.es Curso 2004-2005 Arquitectura de Computadores Arquitectura de computadores es la disciplina que estudia la organización y funcionamiento de los computadores

Más detalles

Arquitectura de Computadoras I Ingeniería de Sistemas Curso 2017

Arquitectura de Computadoras I Ingeniería de Sistemas Curso 2017 Arquitectura de Computadoras I Ingeniería de Sistemas Curso 217 Práctica de Laboratorio: Microprocesador MIPS Segmentado El objetivo de esta práctica es implementar el microprocesador MIPS (visto en clase

Más detalles

Carga de la instrucción / Decodificación y carga de registros (Figura 37) Instrucciones de salto condicional (Figura 40)

Carga de la instrucción / Decodificación y carga de registros (Figura 37) Instrucciones de salto condicional (Figura 40) Inicio Carga de la instrucción / Decodificación y carga de registros (Figura 37) de acceso a la (Figura 38) de tipo R (Figura 39) de salto condicional (Figura 40) jump (Figura 41) Figura 5.36.- Una visión

Más detalles

Aspectos avanzados de arquitectura de computadoras Jerarquía de Memoria II. Facultad de Ingeniería - Universidad de la República Curso 2017

Aspectos avanzados de arquitectura de computadoras Jerarquía de Memoria II. Facultad de Ingeniería - Universidad de la República Curso 2017 Aspectos avanzados de arquitectura de computadoras Jerarquía de Memoria II Facultad de Ingeniería - Universidad de la República Curso 2017 Técnicas Básicas (1/5) Mayor Tamaño de Caché Mejora obvia: Aumentar

Más detalles

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO311 Estructuras de Computadores Terecer Certamen

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA ELO311 Estructuras de Computadores Terecer Certamen UNVESA TECNCA FEECO SANTA AA EPATAENTO E EECTONCA EO311 Estructuras de Computadores 1. Se tiene la siguiente secuencia de instrucciones assembler PS: a) eterminar los riesgos que se producen en la ejecución

Más detalles

Diseño de un Procesador. (Monociclo)

Diseño de un Procesador. (Monociclo) Capítulo 2. Diseño de un Procesador. (Monociclo) 2. Especificación de instrucciones. El primer paso es la especificación de la arquitectura del repertorio de instrucciones y de las instrucciones que podrá

Más detalles

Organización de Computadoras. Algunas temas tomados en 2ª evaluación integradora

Organización de Computadoras. Algunas temas tomados en 2ª evaluación integradora Organización de Computadoras Algunas temas tomados en 2ª evaluación integradora Temas de Arquitecturas 1- Describa mediante ejemplos los modos de direccionamiento que conozca. 2- Describa los distintos

Más detalles

Arquitectura de Computadoras Trabajo Práctico N 8 Pipeline de Instrucciones 1 Primer Cuatrimestre de 2016

Arquitectura de Computadoras Trabajo Práctico N 8 Pipeline de Instrucciones 1 Primer Cuatrimestre de 2016 Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Ejercicios Arquitectura de Computadoras Trabajo Práctico N 8 Pipeline de Instrucciones 1 Primer Cuatrimestre de 2016 1. La

Más detalles

Arquitectura de Computadores. Tema 4 PROCESADORES SEGMENTADOS

Arquitectura de Computadores. Tema 4 PROCESADORES SEGMENTADOS Arquitectura de Computadores Tema 4 PROCESADORES SEGMENTADOS 1. Arquitecturas RISC y CISC. 2. Unidad de Control monociclo y multiciclo. 3. Segmentación. 3.1. Ruta de datos del MIPS R2000. 3.2. Control

Más detalles

Arquitectura de Computadores. Resumen para Certamen 2 Por Franco Zuccar

Arquitectura de Computadores. Resumen para Certamen 2 Por Franco Zuccar Arquitectura de Computadores Resumen para Certamen 2 Por Franco Zuccar Componentes básicos Compuertas logicas (AND, OR, NOT, XOR, NAND y NOR) Flip-Flop s (SR, JK, D y T) Los circuitos combinacionales se

Más detalles

Arquitectura de Computadoras Trabajo Práctico N 7 Pipeline de Instrucciones Primer Cuatrimestre de 2010

Arquitectura de Computadoras Trabajo Práctico N 7 Pipeline de Instrucciones Primer Cuatrimestre de 2010 Departamento de Cs. e Ingeniería de la Computación Universidad Nacional del Sur Ejercicios Arquitectura de Computadoras Trabajo Práctico N 7 Pipeline de Instrucciones Primer Cuatrimestre de 2010 1. La

Más detalles

Arquitectura de Computadores II Clase #3

Arquitectura de Computadores II Clase #3 Arquitectura de Computadores II Clase #3 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Veremos Registros Repertorio de instrucciones Modos de direccionamiento El

Más detalles

Procesador. Memoria. Ejemplo de un Procesador: MU0. Instrucciones. Direcciones. Registros. Datos. Instrucciones y datos SETI Tr.

Procesador. Memoria. Ejemplo de un Procesador: MU0. Instrucciones. Direcciones. Registros. Datos. Instrucciones y datos SETI Tr. Ejemplo de un Procesador: MU0 Instrucciones Registros Procesador Direcciones Instrucciones y datos Datos Memoria Tr. 306 float fir_filter(float input, float *coef, int n, float *history { int i; float

Más detalles

Organización de computadoras. Clase 4. Universidad Nacional de Quilmes. Lic. Martínez Federico

Organización de computadoras. Clase 4. Universidad Nacional de Quilmes. Lic. Martínez Federico Organización de computadoras Clase 4 Universidad Nacional de Quilmes Lic. Martínez Federico Memoria: Organización Lectura Escritura Direcciones Qué pasó? Qué pasó? Memoria: Organización Lectura Escritura

Más detalles

ELO311 Estructuras de Computadores Digitales. Operaciones MIPS para Control de flujo

ELO311 Estructuras de Computadores Digitales. Operaciones MIPS para Control de flujo ELO311 Estructuras de Computadores Digitales Operaciones MIPS para Control de flujo Tomás Arredondo Vidal Este material está basado en: material de apoyo del texto de David Patterson, John Hennessy, "Computer

Más detalles

Procesador MIPS - Registros

Procesador MIPS - Registros MIPS Microprocessor without Interlocked Pipeline Stages Surgió a comienzos de los 80 en Stanford. Sintetiza las principales ideas de RISC. Arquitectura eficiente y simple. 1 Procesador MIPS - Registros

Más detalles

Pipeline o Segmentación Encausada

Pipeline o Segmentación Encausada Pipeline o Segmentación Encausada Material Elaborado por el Profesor Ricardo González A partir de Materiales de las Profesoras Angela Di Serio Patterson David, Hennessy John Organización y Diseño de Computadores

Más detalles

Organización del Computador 1. CPU (ISA) Conjunto de Instrucciones de la Arquitectura 2017

Organización del Computador 1. CPU (ISA) Conjunto de Instrucciones de la Arquitectura 2017 Organización del Computador 1 CPU (ISA) Conjunto de Instrucciones de la Arquitectura 2017 Estructura de una máquina von Neumann Ciclo de Ejecución 1. 2. 3. 4. 5. 6. UC obtiene la próxima instrucción de

Más detalles

Arquitectura de Computadores. Tema 11. Pipelining Avanzado

Arquitectura de Computadores. Tema 11. Pipelining Avanzado Arquitectura de Computadores Tema 11 Pipelining Avanzado Eduardo Daniel Cohen dcohen@arnet.com.ar http://www.herrera.unt.edu.ar/arqcom 1 En qué se pone difícil Pipelining? Excepciones: hay 5 instrucciones

Más detalles

Qué es Pipelining? Es una técnica de implementación en la que se superpone la ejecución de varias instrucciones.

Qué es Pipelining? Es una técnica de implementación en la que se superpone la ejecución de varias instrucciones. Qué es Pipelining? Es una técnica de implementación en la que se superpone la ejecución de varias instrucciones. Aprovecha el paralelismo entre instrucciones en una corriente secuencial de instrucciones.

Más detalles

Procesadores segmentados. El DLX.

Procesadores segmentados. El DLX. Procesadores segmentados. El DLX. Curso 2011-2012 Características de las Arquitecturas Tipos de Arquitectura Organización de la Memoria Direccionamiento de Memoria Operaciones en el Repertorio de Instrucciones

Más detalles

Organización del Computador I Verano. MIPS (2 de 2) Basado en el capítulo 2 del libro de Patterson y Hennessy

Organización del Computador I Verano. MIPS (2 de 2) Basado en el capítulo 2 del libro de Patterson y Hennessy Organización del Computador I Verano MIPS (2 de 2) Basado en el capítulo 2 del libro de Patterson y Hennessy Verano 2014 Profesora Borensztejn Arquitectura MIPS (R2000) Registros Formato de Instrucción

Más detalles

Primer Semestre Laboratorio de Electrónica Universidad de San Carlos de Guatemala. Electrónica 5. Aux. Marie Chantelle Cruz.

Primer Semestre Laboratorio de Electrónica Universidad de San Carlos de Guatemala. Electrónica 5. Aux. Marie Chantelle Cruz. Laboratorio de Electrónica Universidad de San Carlos de Guatemala Primer Semestre 2017 Overview 1 Cortex La más usada para dispositivos móviles Encoding por 32 bits, excepto Thumb y Thumb-2 15x32bits registros

Más detalles

Procesador Segmentado

Procesador Segmentado Procesador Segmentado 1 Se desea ejecutar varias instrucciones, al mismo tiempo. Se dividen las etapas mediante registros, cada instrucción puede estar ejecutándose en una etapa. Cinco etapas, pueden ejecutarse

Más detalles

Arquitectura del MIPS: Introducción

Arquitectura del MIPS: Introducción Arquitectura del MIPS: Introducción Montse Bóo Cepeda Este trabajo está publicado bajo licencia Creative Commons Attribution- NonCommercial-ShareAlike 2.5 Spain. Estructura del curso 1. Evolución y caracterización

Más detalles

2. Números naturales: sistema de numeración y operaciones básicas

2. Números naturales: sistema de numeración y operaciones básicas INTRODUCCIÓN A LOS COMPUTADORES 2003-2004 Objetivos Formativos Que el alumno sea capaz de: Comprender el funcionamiento y saber diseñar los circuitos digitales combinacionales y secuenciales que se utilizan

Más detalles

ARQUITECTURA DE COMPUTADORES CAPÍTULO 2. PROCESADORES SEGMENTADOS

ARQUITECTURA DE COMPUTADORES CAPÍTULO 2. PROCESADORES SEGMENTADOS ARQUITECTURA DE COMPUTADORES P2.1. Se tiene un sencillo sistema RISC con control en un único ciclo (similar al descrito en la asignatura). Las instrucciones son de 32 bits y los bits se distribuyen como

Más detalles

Arquitectura de Computadores II Clase #16

Arquitectura de Computadores II Clase #16 Arquitectura de Computadores II Clase #16 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Organización general Superescalar Varios pipelines. 2 operaciones enteras,

Más detalles

Unidad I: Performance. Arquitectura de Computadoras Esteban Peláez Andrés Airabella Facundo Aguilera

Unidad I: Performance. Arquitectura de Computadoras Esteban Peláez Andrés Airabella Facundo Aguilera Unidad I: Performance Arquitectura de Computadoras Esteban Peláez Andrés Airabella Facundo Aguilera Comprar una Computadora MAC PC Notebook 2010 Unidad I 2 Elegir mi Computadora Procesador Sistema Operativo

Más detalles

Organización procesador MIPS

Organización procesador MIPS Organización procesador MIPS Organización MIPS Memoria CPU Registros FPU Registros Alu Mul Div Hi Lo U. Aritmética Traps Manejo de Memoria Organización MIPS Unidad Aritmética y Lógica (ALU). Unidad Aritmética

Más detalles

Introducción a la arquitectura de computadores

Introducción a la arquitectura de computadores Introducción a la arquitectura de computadores Departamento de Arquitectura de Computadores Arquitectura de computadores Se refiere a los atributos visibles por el programador que trabaja en lenguaje máquina

Más detalles

Organización n del Computador 1. Lógica Digital 2 Circuitos y memorias

Organización n del Computador 1. Lógica Digital 2 Circuitos y memorias Organización n del Computador Lógica Digital 2 Circuitos y memorias Circuitos Secuenciales Circuitos combinatorios Funciones ooleanas El resultado depende sólo s de las entradas También n necesitamos circuitos

Más detalles

TEMA VI DISEÑO DEL PROCESADOR

TEMA VI DISEÑO DEL PROCESADOR TEMA VI DISEÑO DEL PROCESADOR Diseño del procesador 6.1 Repertorio de instrucciones 6.1.1 Procesadores de tres direcciones 6.1.2 Procesadores de dos direcciones 6.1.3 Procesadores de una dirección (procesadores

Más detalles

SEMINARIO DE EXTENSIÓN DE ISLD

SEMINARIO DE EXTENSIÓN DE ISLD SEMINARIO DE EXTENSIÓN DE ISLD Sergio Noriega - 2014 OBJETIVOS EL PRESENTE SEMINARIO TIENE COMO OBJETIVO, INTRODUCIR A LOS ALUMNOS AL DISEÑO Y VERIFICACIÓN DE CIRCUITOS DIGITALES COMPLEJOS, EMPLEANDO TÉCNICAS

Más detalles

Laboratorio de Arquitectura de Computadoras

Laboratorio de Arquitectura de Computadoras Laboratorio de Arquitectura de Computadoras CPU de cuatro instrucciones Oscar Alvarado Nava oan@azc.uam.mx Departamento de Electrónica División de Ciencias Básicas e Ingeniería Universidad Autónoma Metropolitana,

Más detalles

ARQUITECTURA VON NEUMANN

ARQUITECTURA VON NEUMANN ARQUITECTURA VO EUMA Computador bus de datos bus de direcciones bus de control Usuario y aplicaciones Lenguajes de alto nivel Sistema operativo Unidad Central de Proceso Memoria principal Unidad de Entrada

Más detalles

Tema 5 Diseño del Set de Instrucciones (ISA) Arquitectura de Computadoras

Tema 5 Diseño del Set de Instrucciones (ISA) Arquitectura de Computadoras Tema 5 Diseño del Set de Instrucciones (ISA) Arquitectura de Computadoras http://www.herrera.unt.edu.ar/arqcom dcohen@herrera.unt.edu.ar Temario 1. Evolución histórica. 2. Repaso de conceptos importantes.

Más detalles

ARQUITECTURA SPARC: FORMATO DE INSTRUCCIÓN

ARQUITECTURA SPARC: FORMATO DE INSTRUCCIÓN ARQUITECTURA SPARC: FORMATO DE INSTRUCCIÓN De Diego Varona, Rubén Romay López, Oscar Manuel Vega Martínez, Jorge INTRODUCCIÓN La representación de la instrucción en la computadora se denomina formato.

Más detalles

TEMA 4. ARQUITECTURA IA-64

TEMA 4. ARQUITECTURA IA-64 TEMA 4. ARQUITECTURA IA-64 Stalling, W.Computer Organization and Architecture cap. 15 Intel IA-64 Architecture Software Developer s Manual Generalidades IA-64 Desarrollo conjunto Intel-HP Nueva arquitectura

Más detalles

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones Introducción a la Computación Capítulo 10 Repertorio de instrucciones: Características y Funciones Que es un set de instrucciones? La colección completa de instrucciones que interpreta una CPU Código máquina

Más detalles

Titulación: Ingeniería Informática Asignatura: Fundamentos de Computadores. Bloque 3: Sistemas secuenciales Tema 9: Módulos secuenciales básicos

Titulación: Ingeniería Informática Asignatura: Fundamentos de Computadores. Bloque 3: Sistemas secuenciales Tema 9: Módulos secuenciales básicos Titulación: Ingeniería Informática Asignatura: Fundamentos de Computadores Bloque 3: Sistemas secuenciales Tema 9: Módulos secuenciales básicos Pablo Huerta Pellitero Luis Rincón Córcoles ÍNDICE Bibliografía

Más detalles

Capítulo 5 El procesador

Capítulo 5 El procesador Capítulo 5 El procesador Félix García Carballeira Jesús Carretero Pérez José Daniel Sánchez García David Expósito Singh Ediciones Paraninfo 1 Figura 5.1: Componentes básicos de un computador Ediciones

Más detalles

Modelos Computacionales

Modelos Computacionales Análisis y Complejidad de Algoritmos Modelos Computacionales Arturo Díaz Pérez El circuito lógico La máquina de estados finitos La máquina de acceso aleatorio La máquina de Turing Compuertas Lógicas Compuerta

Más detalles

Definición de prestaciones

Definición de prestaciones Definición de prestaciones En términos de velocidad. Diferentes puntos de vista: Tiempo de ejecución. Productividad (throughput) Medidas utilizadas En función de la duración del ciclo de reloj y del número

Más detalles

ELO211: Sistemas Digitales. Tomás Arredondo Vidal 1er Semestre 2008

ELO211: Sistemas Digitales. Tomás Arredondo Vidal 1er Semestre 2008 ELO211: Sistemas Digitales Tomás Arredondo Vidal 1er Semestre 2008 Este material está basado en: textos y material de apoyo: Contemporary Logic Design 1 st / 2 nd Borriello and Randy Katz. Prentice Hall,

Más detalles

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria

Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria 1.2. Jerarquía de niveles de un computador Qué es un computador? Sistema electrónico digital (binario) que procesa datos siguiendo unas instrucciones almacenadas en su memoria Es un sistema tan complejo

Más detalles

ARQUITECTURA DE COMPUTADORES CAPÍTULO 2. PROCESADORES SEGMENTADOS

ARQUITECTURA DE COMPUTADORES CAPÍTULO 2. PROCESADORES SEGMENTADOS ARQUIECURA DE COMPUADORES P2.1. Se tiene un sencillo sistema RISC con control en un único ciclo (similar al descrito en la asignatura). Las instrucciones son de 32 bits y los bits se distribuyen como en

Más detalles