A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Bruno Iran Ferreira Maciel

Apresentações semelhantes


Apresentação em tema: "Bruno Iran Ferreira Maciel"— Transcrição da apresentação:

1 Bruno Iran Ferreira Maciel
Capítulo 02 - Pipeline Arquitetura de Computadores Aula 01 28/08/2012 Bruno Iran Ferreira Maciel Mestrando em Ciências da Computação – Cin/UFPE

2 Revisão da aula passada
Memória Cache Partição de memória Paginação e Segmentação

3 Aula de hoje Hoje vamos ver Pipeline Implementação de pipeline
Problemas com o uso de pipeline

4 Pipeline

5 Pipeline É uma técnica para aumento de desempenho de arquiteturas de processadores.

6 Pipeline Algumas verdades
Aumenta o número de instruções executadas simultaneamente e a taxa de instruções iniciadas e terminadas por unidade de tempo. Pipeline não reduz o tempo gasto para completar cada instrução individualmente.

7 Pipeline Algumas verdades
Aumenta o número de instruções executadas simultaneamente e o tempo do ciclo do relógio do processador deve ser igual ou maior que o tempo de execução do estágio mais lento do "pipeline". Deve-se procurar dividir a execução da instrução em estágios com o mesmo tempo. O pipeline deve ser mantido sempre "cheio" para que o desempenho máximo seja alcançado.

8 Pipeline Algumas verdades
De um modo gera, com o uso do pipeline, cada instrução ainda leva o mesmo tempo para ser executada. Algumas instruções contudo podem ter o seu tempo de execução aumentado, pois atravessam estágios em que não realizam nenhuma operação útil.

9 Implementação de Pipeline

10 Pipeline Exemplo

11 Pipeline Exemplo

12 Pipeline Exemplo

13 Pipeline Exemplo

14 Pipeline Exemplo *Throughput (ou taxa de transferência) é a quantidade de dados transferidos de um lugar a outro.

15 Pipeline Throughput (ou taxa de transferência) é a quantidade de dados transferidos de um lugar a outro.

16 Pipeline O tempo usado pelo processamento de X instruções em um pipeline com N estágios e ciclo de máquina igual a t é dado por: T = [ N + (X-1)] * t Se X >> N (Caso comum), T é aproximadamente X * t

17 Pipeline O tempo usado pelo processamento de instruções em um pipeline com 6 estágios e ciclo de máquina igual a é dado por: T = [6 + ( )] * = ~ 10006*106 (com pipeline) T = (6* ) * =~ 60006*106 (sem pipeline)

18 Pipeline

19 Pipeline

20 Pipeline CPU 2,6ns 1,4ns 2,5ns 3ns 1,5ns

21 Pipeline Exemplo 1: Um computador é construído usando a arquitetura de 5 estágios. Os atrasos de tempo das unidades individuais são dados por a)Qual a frequência do clock f1 necessária pelo método de uma única instrução por período de clock (sem pipeline)? b)Suponha que o clock seja utilizado em cada estágio simultaneamente (com pipeline). Qual seria a freqüência de clock f2 neste caso? 1,8ns 1,2ns 3,5ns 4ns 1,5ns

22 Pipeline a) T = 1,8 + 1,2 + 3,5 + 4 + 1,5 = 12ns f = 1 / T
f = 1 / (12 * 10-9) = 0,08333 * 109 = 83,33 * 106 = 83,33 MHz b) T = 4ns (parte mais lenta do pipeline) f = 1 / (4 * 10-9) = 0,25 * 109 = 250 * 106 = 250 MHz 1Gb = 109 1MHz = 106 1ns = 10-9

23 Pipeline Exemplo 2: Considere um sistema que possua instruções, uma frequência de 200 MHz e uma arquitetura da pipeline de 8 estágios. Calcule o tempo necessário para executar uma instrução; Calcule o tempo necessário para executar todo o programa sem utilizar a técnica de pipeline; Calcule o tempo necessário para executar todo o programa utilizando a técnica de pipeline;

24 Pipeline a) f = 1 / T T1instr = T * NumEstag b)
TsemPIPE = T * NumEstag * NumInstr c) TcomPIPE = T ( NumInstr + NumEstag - 1)

25 Problemas com Pipeline

26 Pipeline

27 Pipeline

28 Perguntas ?

29 Exercício 1) Um computador é construído usando a arquitetura de 5 estágios. Os atrasos de tempo das unidades individuais são dados por a) Qual a freqüência do clock f1 necessária pelo método de uma única instrução por período de clock (sem pipeline)? b) Suponha que o clock seja utilizado em cada estágio simultaneamente (com pipeline). Qual seria a freqüência de clock f2 neste caso? 2) Considere um sistema que possua instruções, uma frequência de 900 MHz e uma arquitetura da pipeline de 6 estágios. a) Calcule o tempo necessário para executar uma instrução; b) Calcule o tempo necessário para executar todo o programa sem utilizar a técnica de pipeline; c) Calcule o tempo necessário para executar todo o programa utilizando a técnica de pipeline; 2,8ns 3,2ns 1,5ns 1,8ns 0,6ns


Carregar ppt "Bruno Iran Ferreira Maciel"

Apresentações semelhantes


Anúncios Google