Superscalar é um tipo de arquitectura de microprocessador que permite a execução simultânea de múltiplas instruções num único ciclo de relógio. Isto permite um processamento mais rápido das instruções, o que pode resultar num aumento do desempenho dos sistemas informáticos. A tecnologia Superscalar tem sido utilizada em muitos microprocessadores desde a introdução dos processadores Pentium da Intel em 1993.
A tecnologia Superscalar tem vários benefícios para sistemas informáticos, tais como maior rendimento de instruções, maior desempenho, e maior eficiência energética. Isto porque a execução simultânea de instruções permite a conclusão de múltiplas instruções num único ciclo de relógio, o que pode reduzir a quantidade de tempo necessário para processar instruções. Isto pode traduzir-se num melhor desempenho e numa maior eficiência energética.
O Superscalar funciona dispondo de múltiplas condutas de instruções que podem ser utilizadas para processar instruções em paralelo. O número de condutas disponíveis depende do tipo de processador, mas tipicamente há três ou quatro condutas disponíveis. Cada tubagem pode processar uma instrução diferente ao mesmo tempo, o que permite um rendimento mais rápido da instrução.
Superscalar e pipelining são duas técnicas diferentes utilizadas em microprocessadores para aumentar o desempenho. Enquanto ambas são utilizadas para aumentar o rendimento da instrução, a forma como funcionam é diferente. A canalização funciona processando instruções por fases, enquanto a superscalar funciona processando instruções múltiplas em paralelo.
As técnicas avançadas de superescalar são utilizadas para aumentar ainda mais a produção de instruções através da optimização da utilização de condutas de instruções. Isto pode incluir técnicas como o desenrolamento de laço, renomeamento de registo e programação dinâmica. Estas técnicas permitem uma utilização mais eficiente de condutas de instrução, o que pode resultar num aumento do desempenho.
A tecnologia Superscalar tem algumas limitações, tais como o facto de nem sempre ser possível processar várias instruções num único ciclo de relógio. Isto deve-se ao facto de que algumas instruções requerem mais ciclos para serem completadas do que outras. Isto pode limitar os ganhos de desempenho que podem ser alcançados com a tecnologia superscalar.
A arquitectura Superscalar é uma parte importante da concepção do microprocessador, uma vez que permite ao processador processar instruções em paralelo. Isto requer uma arquitectura complexa de conjunto de instruções que pode suportar várias condutas de instruções. Esta arquitectura é tipicamente implementada em microprocessadores modernos, tais como a série Intel Core.
A tecnologia Superscalar é utilizada em muitas aplicações modernas, tais como consolas de jogos e dispositivos móveis. Isto deve-se à sua capacidade de aumentar o desempenho, o que pode resultar numa melhor experiência do utilizador. É também utilizada em sistemas informáticos de alto desempenho, tais como supercomputadores, onde a velocidade é da maior importância.
Super pipelining é uma técnica utilizada para melhorar o desempenho de um processador, aumentando a quantidade de trabalho que pode ser feito em cada ciclo do relógio. Superscalar é uma técnica utilizada para melhorar o desempenho de um processador através da execução de múltiplas instruções em paralelo.
A arquitectura super escalar é um tipo de arquitectura informática que é capaz de executar múltiplas instruções ao mesmo tempo. Isto é feito através de múltiplas unidades de processamento que podem, cada uma, executar uma instrução diferente.
Os processadores ARM não são superescalares.
Um superscalar é um processador que pode executar mais do que uma instrução de cada vez. Ele faz isto através da busca e descodificação de múltiplas instruções de cada vez e depois executando-as em paralelo.
Um processador superscalar é uma CPU capaz de executar mais do que uma instrução de cada vez. Isto é feito através de múltiplas unidades de execução dentro da CPU, cada uma das quais pode trabalhar com uma instrução diferente. As instruções são retiradas da memória e depois enviadas para a unidade de execução apropriada. Os resultados são então escritos de volta para a memória.