SPARC

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Sun UltraSPARC II Microprocessor

SPARC (acrónimo para Scalable Processor ARChitecture, significa Arquitetura de Processadores Escaláveis) é uma arquitetura de processador aberta desenvolvida pela Sun em meados de 1987 baseada na arquitetura RISC. A empresa desenvolveu a sua própria implementação SPARC (UltraSPARC) e também licenciou a arquitetura para outros fabricantes, como a Fujitsu, para que produzissem processadores compatíveis. A arquitetura SPARC, possui sua organização de registradores e o seu conjunto de instruções fortemente baseados no modelo RISC.

Inicialmente o processador SPARC possuía 32 bits e foi utilizado primeiramente nas estações de trabalho Sun-4, substituindo as máquinas anteriores desenvolvidas pela Sun, as quais utilizavam processadores Motorola 68000. Em 1994, os processadores SPARC evoluíram para 64 bits.

É uma arquitetura orientada a registrador, onde as únicas instruções que referenciam memória são LOAD e STORE. Seguindo modelo RISC, possui um conjunto de instruções simples, onde as operações mais complexas são realizadas via “software”.

A SPARC International é a organização criada em 1989 para gerenciar as marcas comercias SPARC e fornecer testes de conformidade. Essa organização deixou a arquitetura aberta esperando que a concorrência entre os fabricantes aumenta-se o desempenho e diminuem-se os custos. Outro ponto fundamental que motivou manter arquitetura aberta foi visar um ecossistema maior para o projeto, tentando concorrer com a Intel no mundo dos computadores pessoais.

Os mais recentes projetos usando processadores SPARC são o “Venus" de oito núcleos da empresa Fujitsu Laboratories introduzido em Junho de 2009, o supercomputador "K computer", SPARC64 X "Athena" introduzido em Agosto de 2012[1] e o SPARC T5 de 16 núcleos desenvolvido pela Oracle Corporation, em março de 2013, rodando a 3,6 GHz.

A plataforma SPARC foi muito utilizada em institutos de pesquisa, principalmente na área de bioengenharia, onde auxiliou a sequenciar o genoma humano.

Recursos[editar | editar código-fonte]

A arquitetura SPARC tem profunda influência nos projetos RISC I e II da Universidade da Califórnia em Berkeley. Esses projetos originais possuíam um reduzido conjunto de instruções com o objetivo de executa-las a uma taxa de quase uma instrução por ciclo de clock. Isso fez da SPARC uma arquitetura muito similar a MIPS em vários aspectos, incluindo a não existência de instruções de multiplicar ou dividir. Outra característica do SPARC influenciada pelo movimento RISC é o Branch Delay Slot.

O processador SPARC possui normalmente até 160 registradores de uso geral. Desses 32 estão visíveis para o software, sendo 8 um conjunto de registradores globais(Apenas 7 estão disponíveis, pois um é o g0, que possui sempre o valor 0)e os outros 24 são registradores de pilha. Esses 24 formam o que é chamado de Janela de Registro. Essa janela é usada para passar parâmetros de função e retorno de valores, sendo movida para cima e para baixo da pilha de registro. Cada janela tem 8 registradores locais .

A palavra Escalável vem de que o SPARC permite implementações em escala de processadores embarcados para grandes servidores, todos compartilhando o mesmo núcleo e conjunto de instruções. Um dos parâmetros que podem escalar é o numero de janelas de registros aplicadas. Pode- se implementar de 3 a 32 janelas. Optando por implementar todos os 32 para proporcionar o máximo de eficiência da pilha de chamadas ou apenas 3 para reduzir os custos e a complexidade.

A arquitetura já passou por diversas revisões. Entre as principais estão, o surgimento de múltiplos Hardwares e funcionalidades de divisão na versão 8[2] . E a evolução da arquitetura para 64 bits completos (endereços e registradores) na versão 9, publicada em 1994.

A ordenação da arquitetura SPARC V8 de 32bits é puramente big-endian. (Big-endian quer dizer que os byts de maior ordem são salvos nos menores endereços, e nos maiores são armazenados os que possuem menor ordem, litte-endiam é exatamente o contrário de big-endian). A versão 9 do SPARC com 64 bits também é big-endian, porém nessa verão é possível acessar dados em qualquer ordem de byte seja no nível de instrução (load/store) ou no nível da página de memória.

História[editar | editar código-fonte]

Na década de 1970, os Unixes eram muito populares nas universidades, mas nenhum computador pessoal era capaz de executá-los. Alunos de tais universidades eram obrigados a utilizar sistemas de tempo compartilhado, executando nos DEC PDP-11, VAX (muitas vezes sobrecarregados).

Motivado (entenda-se: frustrado) por esta situação, o estudante alemão Andy Bechtolsheim, durante sua pós-graduação em Stanford (1981), constrói uma estação de trabalho a partir de peças e componentes encontrados no mercado. Esta máquina, utilizando uma CPU Motorola 68020, recebeu a alcunha 'SUN-1' (de Stanford University Network).

Vinod Khosla, indiano graduado em Stanford, viu nestas máquinas uma boa oportunidade de negócios. Juntamente com Bill Joy e Scott McNealy, fundaram a Sun Microsystems em 1982.

As máquinas sucessoras do ‘Sun-1’, a Sun-2 e a Sun-3 continuaram utilizando CPUs da Motorola e assim como a Sun-1, logo se tornaram um sucesso, pois eram máquinas poderosas para a época e projetadas para trabalhar em rede, possuindo conexão Ethernet utilizando software TCP/IP para se conectar com a Arpanet, a antecessora da atual internet.

Em meados de 1987 a empresa resolver projetar sua própria CPU tendo como base o projeto RISC II da Universidade da Califórnia em Berkeley. Surgiu o SPARC (Scalable Processor ARChitecture, que significa Arquitetura de Processadores Escaláveis). Essa nova CPU, tornou-se a base do ‘Sun-4’ e em pouco tempo de todos os projetos da Sun Microsystems.

Inicialmente a SPARC era uma maquina com endereços e registradores de 32 bits funcionando em 36 MHz. Possuía 3 formatos de instruções com somente 55 instruções no total. Continha também uma unidade de ponto flutuante adicionando mais 14 instruções.

A arquitetura passou por duas grandes revisões. A primeira delas foi em 1990, com a publicação da SPARC Versão 8(V8). As principais mudanças em relação à Versão7 foram à adição de instruções de multiplicação e divisão de inteiros, e a atualização da aritmética de ponto flutuante que era de 80 bits “precisão estendida “e passou a ser de 128 bits “quad-precision”. O processador SPARC V8, serviu de base para o padrão IEEE 1754-1994, um padrão IEEE para uma arquitetura de microprocessador de 32 bits.

A segunda grande modificação foi o desenvolvimento da arquitetura SPARC (V9). A nona versão possuía endereços de 64 bits e registradores de 64 bits. A primeira estação de trabalho a implementar essa versão foi a UltraSPARC lançada em 1994. A UltraSPARC era retro compatível, ou seja, era compatível binária com as de 32 bits existentes.

A UltraSPARC surgiu com o intuito de manipular imagens, vídeos e outros arquivos multimídia, diferentemente das máquinas anteriores que foram projetadas para executar programas como processadores de textos e planilhas. Além de se tornar uma arquitetura de 64 bits, outras 23 instruções surgiram incluindo as VIS(Visual Instruction Set) que eram destinadas a aumento tamanho de imagens, gira-las e algumas para compreensão e descompressão de vídeos em tempo real. Além disso, a UltraSPARC visou aplicações de grandes servidores.

Em 2002 a Sun e a Fujitsu lançaram a Joint Programming Specification 1-JPS1 (Especificação de programação conjunta 1) descrevendo as funções de processador que foram identicamente implementadas nas CPUs de ambas as empresas. As primeiras CPUs seguindo a JPS1 foram a UltraSPARC III pela Sun e a SPARC64 V pela Fujitsu. As funcionalidades que não estão contidos no JPS1 são documentados para cada processador em "Suplementos de Implementação".

No início de 2006, a Sun lançou uma especificação de arquitetura estendida, Arquitetura UltraSPARC 2005. Nela, incluiu a maioria das partes privilegiadas do SPARC V9, e também todas as extensões de arquiteturas desenvolvidas através das gerações de processadores de UltraSPARC III, IV, IV +. Arquitetura UltraSPARC 2005 inclui extensões padrão da Sun e continua a ser compatível com a especificação completa SPARC V9 Nível 1.

Em Agosto de 2012 a Oracle Corporation disponibilizou uma nova especificação. A Oracle SPARC Architecture 2011, que além da atualização geral da referência, adiciona as três instruções VIS em sua especificação[3]

A arquitetura tem sido retrocompatível binária contínua desde a primeira implementação SPARC V7 em 1987 para as implementações Sun UltraSPARC Arquitetura.

SuperSPARC da Sun e UltraSPARC-I eram muito populares, e foram usados como sistemas de referência para SPEC CPU95 e CPU2000 benchmarks. A 296 MHz UltraSPARC-II é o sistema de referência para o benchmark SPEC CPU2006.

Suporte ao Sistema Operacional[editar | editar código-fonte]

Máquinas SPARC têm em geral utilizado SunOS, Solaris ou OpenSolaris, mas outros sistemas operacionais também são usados como NeXTSTEP, RTEMS, FreeBSD, OpenBSD, NetBSD, e Linux.

Supercomputadores[editar | editar código-fonte]

Na Lista do TOP 500 computadores de Novembro de 2014[4] , bem como na lista de Junho[5] desse mesmo ano, o K Computer [6] da empresa Japonesa Fujitsu, figura em 4º lugar. O mesmo já esteve em primeiro lugar nas listas de junho e novembro de 2011[7] [8] . O K Computer possui 88128 CPUS SPARC64 de 8 núcleos cada operando a uma frequência de 2.0GHZ em 672 racks e é capaz de desempenhar 10,51 quadrilhões de operações de ponto flutuante por segundo( 10,51 Petaflops).

Outro supercomputador baseado em processadores SPARC que obtiveram destaque no TOP500 é o chinês Tianhe-1 [9] que esteve em 8º na lista de novembro de 2012.


Ícone de esboço Este artigo sobre hardware é um esboço. Você pode ajudar a Wikipédia expandindo-o.


Referências[editar | editar código-fonte]

  1. SPARC64™X: Nova geração de processador de 16 núcleos da Fujitsu para os servidores UNIX. Fujitsu (2012-08-29). Visitado em 2014-11-01.
  2. SPARC Options. (2012-08-29). Visitado em 2014-11-03.
  3. Documentação Oracle SPARC Architecture 2011. Visitado em 2014-11-19.
  4. Lista TOP 500 NOVEMBRO DE 2014. Visitado em 2014-11-19.
  5. Lista TOP 500 JUNHO DE 2014. Visitado em 2014-11-19.
  6. Computador K, empresa Fujitsu. Visitado em 2014-11-03.
  7. Lista TOP 500 de Junho de 2011. Visitado em 2014-11-03.
  8. Lista TOP 500 de Novembro de 2011. Visitado em 2014-11-03.
  9. Tianhe-1. Visitado em 2014-11-03.