Pipeline

Páginas: 34 (8457 palabras) Publicado: 2 de diciembre de 2014
´ lica de Chile
Pontificia Universidad Cato
´
Escuela de Ingenierıa
´n
Departamento de Ciencia de la Computacio

IIC2343 Arquitectura de Computadores

Pipeline: Paralelismo a nivel de instrucci´
on
c Alejandro Echeverr´
ıa

1.

Motivaci´
on

Las principales mejoras en eficiencia de los computadores no ocurren s´
olo por mejoras en la tecnolog´ıa de construcci´
on de estos,sino tambi´en por el desarrollo de t´ecnicas que permiten aprovechar
procesamiento paralelo en el computador. Existen distintos niveles a los cuales se puede aprovechar
el paralelismo, siendo el m´
as b´asico el paralelismo a nivel de la instrucci´on.

2.

Ciclo de la instrucci´
on

Cada instrucci´on que se ejecuta un computador pasa por un ciclo, que va desde que es seleccionada desdememoria hasta que completa su objetivo. Este ciclo aunque es similar en todas las
arquitecturas de computadores, presenta algunas variaciones, dependiendo de la complejidad de la
microarquitectura y de decisiones de dise˜
no. El computador b´asico Harvard (figura 1), por ejemplo,
tendr´
a un cierto ciclo, pero este no ser´
a exactamente igual al de una arquitectura x86 o de un
PIC16F87AA
81

IncSp

SP
8

DecSp

8
8

Mux DataIn

Sdin

Mux Address

8

PC

Lpc

Sadd0
Sadd1

8

8

Data in

Address

Address

8

8

Data
Memory
Data out

Spc

Mux PC

Adder

W

La

Reg A

Lb

Reg B

Data out

0

1 0

8

Instruction
Memory

8

15

8

8
Sa0
Sa1

Mux A

7

Mux B

8

Sb0
Sb1

Control
Unit

8

AB

ALU
Result

Sop0
Sop1
Sop2

17

Z NCV
La, Lb, Sa0, Sa1, Sb0, Sb1,
Sop0, Sop1, Sop2, Sadd0, W,
Lpc, Sdin, Spc, Sadd1, IncSp,
DecSp

8

Status

4

Figura 1: Diagrama computador b´
asico.
1

El ciclo de la instrucci´on de computador b´asico Harvard, aunque es simple, presenta algunas
complejidades que har´
an dif´ıciles el an´
alisis en detalle de ´esteposteriormente requerido. Para evitar
estos problemas y trabajar con un ciclo m´
as simple, se trabajar´
a con una versi´
on simplificada del
computador b´asico, la cual se muestra en la figura 2. Las principales diferencias son las siguientes:
Se elimina el soporte de stack, eliminando el Stack Pointer y las conexi´
on del PC con memoria.
Se simplifican los saltos condicionales, soportando ahorasolamente el condition code Z, y la
instrucci´on JEQ. Adicionalmente, esta instrucci´on realizar´
a la comparaci´
on (A − B) y el salto
en un mismo ciclo, por lo que se elimina tambi´en el Status Register.
Se elimina la conexi´
on entre la salida de memoria y el MUX B. Ahora la salida de memoria no
se puede ocupar como par´
ametro en la ALU, y solo puede ser usada para cargar los registros
Ay B, es decir s´
olo se soportan instrucciones de transferencia desde la memoria.
La entrada de datos de la memoria, ahora s´
olo puede provenir de los registros A y B, y no de
la ALU, es decir s´
olo se soportan instrucciones de transferencia hacia la memoria
La direcci´
on de la memoria ahora proviene de la ALU, lo que permite los mismos direccionamientos que antes (directo, indirectopor registro B), y agrega otros tipos de direccionamiento (indirecto por registro A, indirecto con ´ındice, etc.)
La unidad de salto, parte de la unidad de control encargada de determinar si corresponde un
salto condicional, se separ´o de la unidad de control.
8

PC

Lpc

Mux Din
8

Data in

Address

Address

Data out

8

8

Data
Memory

La

Reg A

W

8Instruction
Memory

Lb

Reg B

Data out

0

1 0

8

15

8

Mux Reg

Sa0
Sa1

Mux A

7

Mux B

8

Sb0
Sb1

Control
Unit

8

A

B

ALU
Result

Sop0
Sop1
Sop2

Jump
Unit

Z

8
1

Figura 2: Diagrama computador b´
asico modificado.
La idea detr´
as de estas modificaciones es por un lado simplificar el computador, pero tambi´en
lograr que el ciclo...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Pipeline
  • PIPELINE
  • Pipeline
  • Pipelino
  • Gas Pipeline
  • Pipeline De Vendas
  • pipelines y mas
  • Pipeline design

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS