Arquitetura De Sistemas Digitais Aula07
1396 palavras
6 páginas
PipelinesPipelining é uma técnica de aceleração de execução de operações inicialmente associada a processadores RISC, mas atualmente utilizada de forma extensa em todos processadores modernos. Em computadores, pipelines são utilizados principalmente no processamento de instruções e de operações aritméticas, que podem ser convenientemente subdivididas em passos menores de execução.
Princípio de operação
Considere uma tarefa que utiliza, para sua execução, um módulo de processamento
Executando k subtarefas: k No esquema apresentado acima, se cada subtarefa requer um tempo de execução “t”_ segundos, a tarefa como um todo irá ser executada em “kt” segundos.
Para a execução de uma sequência de tais tarefas, cada nova tarefa na sequência só poderá ter sua execução iniciada após “kt” segundos, o tempo necessário para a liberação do módulo de processamento.
Princípio de pipeline. Considere uma abordagem alternativa na qual o módulo de processamento é dividido em k módulos menores (estágios), cada um responsável por uma subtarefa, cada um operando concorrentemente aos demais estágios:
O princípio da técnica de pipelining é poder iniciar uma nova tarefa antes que o resultado para a tarefa anterior na sequência de tarefas tenha sido gerado.
A utilização dos estágios de um pipeline pode ser graficamente representada através de um diagrama de ocupação espaço-tempo.
Por exemplo, para um pipeline de quatro estágios:
Na execução em pipeline, cada tarefa individualmente ainda requer “k” segundos. Entretanto, o módulo é capaz de gerar um novo resultado a cada “t” segundos.
Medidas de desempenho
As medidas para comparar desempenhos de pipelines não diferem daquelas para comparação de sistemas computacionais em geral. As principais métricas utilizadas são latência, vazão, speedup e eficiência.
Latência. É o tempo necessário para completar uma operação ao longo do pipeline. Em geral, é maior para sistemas com pipeline do que para sistemas monolíticos. Entretanto, é uma
medida