Buscar

Arquitetura Superescalar - Cristiano

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

Universidade Federal de Santa Catarina – UFSC
Campus Universitário de Araranguá
Curso de Bacharelado em Tecnologias da Informação e Comunicação
Disciplina de Organização e Arquitetura de Computadores
Professor Dr Rodeval Marcelino
Acadêmico: Cristiano S. P. de Abreu Turma: 02652 
Arquitetura Superescalar
Arquitetura implementada nos processadores Pentium e um dos principais motivos de seu maior desempenho, se comparados aos 486.
Internamente, o Pentium trabalha como dois processadores de 32 bits distintos (chamados de canaleta U e canaleta V), sendo capaz de processar duas instruções por ciclo de clock (uma em cada processador). Cada processador possui acesso total ao cache, à memória RAM, e aos demais componentes do micro. Foi incluída também, uma unidade de controle, com a função de comandar o funcionamento dos dois processadores e dividir as tarefas entre eles.
Teoricamente, o uso de dois processadores distintos dobraria o desempenho do Pentium, já que ao invés de uma, poderiam ser executadas duas instruções por ciclo de clock. Mas, na prática existem algumas limitações.
Se por exemplo, um programa ordena que o processador some 4 números, X + Y + W + K, o processador poderia no primeiro ciclo de clock usar a canaleta U para somar X e Y e a canaleta V para somar W, mas no segundo ciclo, haveria apenas mais um cálculo para ser executado, o resultado das duas somas. Neste caso, apenas uma das canaletas poderia ser usada; a segunda ficaria ociosa. No final das contas, houve um ganho de 33%, já que ao invés do processador demorar 3 ciclos para executar o cálculo, demorou apenas 2.
Em média, a segunda canalização permite um desempenho 30 ou 40% superior ao desempenho obtido com apenas uma canalização. Caso o software seja alterado e otimizado para rodar em um processador com duas canalizações, ordenando as instruções de modo a deixar a segunda canaleta ocupada durante a maior parte do tempo, podemos conseguir mais 10 ou 15% de desempenho, chegando a algo entre 40 e 50%, mas, jamais será possível conseguir o dobro de desempenho. 
Superescalar x superpipelined
Uma técnica alternativa para atingir alta performance no processamento é intitulada como superpipelined, termo utilizado pela primeira vez em 1988 [JOUP88]. Essa técnica explora o fato de que o estágio de pipeline executa tarefas que requerem menos de meio ciclo de clock. Assim, um processador com velocidade de clock interno dobrada, permite um aumento de performance de duas tarefas executadas em um único ciclo de clock externo. (MIPS R4000)
Comparação:
Uma máquina usando pipeline básico executa uma instrução por ciclo de clock e tem e um estágio de pipeline por clock também. O pipeline tem quatro estágios: busca, decodificação, execução e armazenamento do resultado. Note que, ainda que várias instruções estejam sendo executadas concorrentemente, somente uma instrução está no estágio de execução de cada vez.
A implementação superpipelined é capaz de executar dois estágios de pipeline de cada vez. Um forma alternativa de enxergar isso, é entender que a função executada em cada estágio, pode ser dividida em duas partes não sobrepostas e cada pode executar em meio ciclo de clock. Uma implementação superpipelined que se comporta deste modo é chamada de grau 2.
A implementação superescalar pode executar duas instâncias de cada estágio em paralelo.
Tanto o superpipelined como o superescalar comparados, tem o mesmo número de instruções executando ao mesmo tempo no mesmo estado. O processador superpipelined parece com o superescalar ao início de cada programa de cada desvio de fluxo.

Outros materiais