Vous êtes sur la page 1sur 7

Arquitetura SUN UltraSPARC III Cu

Tasso Gomes de Faria1


1

Instituto de Informtica Universidade Federal do Rio Grande do Sul (UFRGS)


Caixa Postal 15.064 91.501-970 Porto Alegre RS Brazil
tfaria@inf.pucrs.br

Abstract. This document has the objective to describe the working of SUN
ULTRASparc III Cu architecture. The intention is to bring together the study
of the functioning of this architecture and all main features. At the end, we can
analize with other RISC architectures.
Resumo. Este documento tem o objetivo de descrever o funcionamento da
arquitetura da SUN UltraSPARC III Cu. Pretende-se reunir o estudo do
funcionamento desta arquitetura e suas principais caractersticas. Ao final,
analisaremos com outras arquiteturas RISC.

1. Introduo
Os processadores sempre foram um dos principais objetos de estudos na busca de alto
desempenho em sistemas computacionais. Desde sua inveno, as arquiteturas so
especialmente desenvolvidas para a reduo do tempo de processamento de
determinadas tarefas. Estas arquiteturas podem ser padronizadas ou apresentarem sua
estrutura fechada.
O objeto de estudo deste trabalho a arquitetura UltraSPARC III desenvolvida
pela Sun Microsystems Inc. A arquitetura UltraSPARC do tipo SPARC, Scalalable
Processor ARChitecture, a qual tem por caracterstica ser aberta e baseada em RISC
(Reduced Instruction Set Computer) [3].
Sabe-se que hoje, h um grande foco de estudo em alto desempenho, onde as
mquinas devem ser aglomeradas, trocando informaes e dividindo grandes e
complexas tarefas. A grande vantagem de se padronizar uma arquitetura , sem dvida,
a interao destas mquinas de diferentes fabricantes. Pensando nisso, desde 1989 a
arquitetura SPARC especificada por um comit internacional (SPARC Architecture
Committee of SPARC International), o qual formado por um consrcio de empresas
[2, 6].
A arquitetura SPARC foi criada pela Sun Microsystems em 1984, mas o
primeiro produto surgiu em 1986, o qual foi desenvolvido pela Sun e a Fujitso. Desde
ento, surgiram muitas mquinas baseadas neste tipo de arquitetura. Em 1990, existiam
mais de uma dzia de empresas que j fabricavam arquiteturas SPARC e mais de 8.000
aplicaes certificadas para compilar nelas [5].
Em 1994, o SPARC International publicou The SPARC Architecture Manual,
Version 9 [6], o qual define uma mquina de 64 bits. A SPARC V9 fornecia 64 bits para
endereos virtuais, 64 bits para dados inteiros, tolerncia a falhas, rpida troca de
contexto, entre outras. A primeira mquina UltraSPARC da Sun Microsystems era

compatvel com a SPARC V9, e a partir da, surgiram novas verses da arquitetura
nesta famlia.
Este trabalho procura estudar as principais caractersticas da UltraSPARC III
Cu, e a partir da prxima seo estas sero demonstradas. Todo estudo foi compilado a
partir de informaes dadas pelo fabricante [5, 1].

2. Viso Geral da Arquitetura


A arquitetura UltraSPARC III composta por um processador superescalar de alta
performance. Esta alta performance deve-se ao fato de poder executar quatro instrues
por ciclo de mquina. Este processador baseado na arquitetura RISC, no padro
SPARC V9 de 64 bits.
As quatro instrues por ciclo acontecem mesmo que ocorra branches
condicionais ou cache misses. Isto ocorre pois as unidades da arquitetura conseguem,
assincronamente, tratar instrues de dados no resto do pipeline. Conforme o manual
desta arquitetura, as instrues previstas so distribudas em unidades funcionais desta
arquitetura. Assim estas podem ser executadas em paralelo.
Outras caractersticas do processador da arquitetura UltraSPARC III podem ser
resumidas em:

O processador executa quatro instrues por ciclo, e este tem nove unidades de
execuo e seis pipelines de execuo;
Pipeline de 14 estgios;
Dados, ULA e endereos aritmticos de 64 bits;
Endereamento virtual de 64 bits e 43 bits de espao de endereamento;
Mecanismo de prefetching de dados;
Unidade cache L2, a qual suporta at 2 vias de cache associativa;
Deteco de erro e recuperao;
Unidade de Gerncia de Memria (Memory Management Unit - MMU) com um
buffer de 1040 entradas (Translation Lookaside Buffer - TLB) para traduo.
Este suporta at 4 MB de pginas;
Cache de nvel 1 onde 64K so para dados, 32K para instrues, 2K para busca
prvia e 2K para gravao.

Cabe ressaltar que a frequncia do processador vai de 900 MHz a 1200 MHz. A
verso inicial do UltraSPARC III foi fabricada com tecnologia 0.18 de alumnio. Esta
operava de 600 MHz a 750 MHz. J a verso da UltraSPARC III Cu foi desenvolvida
com tecnologia de Cobre de 0.15 e operava de 900 a 1050 MHz. O ltimo upgrade foi
para 0.13 chegando a 1200 Mhz. A prxima seo, sero apresentados os principais
componentes da CPU da UltraSPARC III Cu.

3. Arquitetura da CPU
A arquitetura da CPU da UltraSPARC III Cu foi desenvolvida para trabalhar com
operaes SIMD (Single Instruction Multiple Data). Sendo assim, o processador
explora do paralelismo a nvel de instruo. Alm disso, possui caches para instrues e
dados (L1). O processador tambm tenta explorar o paralelismo a nvel de memria
com uma pr-busca de dados.
Portanto, o processador consiste de uma mquina de pr-busca de instruo,
chamada de unidade de distribuio de instrues (issue unit). Esta desvinculada do
resto do pipeline pelo buffer de instruo. Cabe lembrar que a arquitetura possui
diversas unidades, como: floating-point (ponto flutuante) execution unit, integer
(inteiro) execution unit, unidade para load/store. O processador ainda deve controlar a
cache L2, o barramento Fireplane e o controlador de memria. A Figura 1 mostra um
diagrama de bloco da arquitetura da CPU UltraSPARC III Cu.

Figura 1. CPU da UltraSPARC III Cu

Alguns elementos merecem destaque na anlise desta arquitetura. A issue unit


responsvel pela busca, armazenamento (em cache) de instrues para seus pipelines de
execuo. Cabe ressaltar que esta tambm responsvel por proporcionar grupos de
instrues (quatro por ciclo). J a cache de instrues tem 32KB de tamanho, com um
conjunto de quatro vias de cache associativa.
Os pipelines de execuo (seis por processador) consistem dos seguintes
elementos: duas ULAs (Unidade Lgica Aritmtica), um pipeline de branch, um

pipeline de load/store, um pipeline de multiplicao de ponto-fluante e um pipeline de


adio de ponto-flutuante. A gerncia de memria feita pelas MMUs (Memory
Management Units), onde estas so separadas conforme sua funo: para traduo de
instrues ou para endereamento de dados. O processador UltraSPARC III Cu pode
suportar caches L2 de 1MB, 4MB ou 8MB. Esta possui duas vias de cache associativa
(PIPT cache).
Outras duas unidades so importantes para o processador. A primeira a SIU
(System Interface Unit), a qual a porta externa do processador para o mundo. Todos
dados so transferidos entre o processador e uma DRAM local (memria principal em
outra CPU). A SIU a mquina responsvel por implementar um protocolo de
coerncia de cache entre sistemas multiprocessador. A outra unidade a MCU
(Memory Controller Unit) a qual manda sinais de controle para a DRAM. Esta suporta
uma memria principal de 128 MB a 16GB.
Os registradores desta arquitetura so importantes no estudo da mesma. O
processador consiste de muitos tipos de registradores que servem para vrias propostas
e so acessados de diversas maneiras [5].

4. Administrao de Branches
Uma das grandes vantagens desta arquitetura como ela trabalha na administrao de
branches. A UltraSPARC III Cu implementa 4Kb de predio de branch baseada em
histrico.
Algumas predies podem gerar erros e estas predies erradas tm 7 ciclos de
penalidade. Portanto, este volta, faz o fetch da instruo, e recomea o processamento
de novo. As instrues so lidas em paralelo, usando uma fila de quatro entradas
(Branch Miss).

5. Organizao da Memria
Sabe-se que o acesso a memria um dos grandes gargalos na busca de otimizar o
tempo de execuo de determinados programas em arquiteturas de alto desempenho.
Para isto, cabe analisar como esta arquitetura (UltraSPARC III Cu) organizada.
Portanto, com os 43 bits de endereamento de dados, a arquitetura permite um espao
virtual de endereamento de 16 quintilhes de bytes.
Alm disso, a hierarquia de memria eficiente onde esta tenta manter prxima
a CPU, as instrues e dados necessrios. Existem duas hierarquias de cache: L1 e L2.
A L1 tem quatro caches, onde duas so consideradas grandes e as outras duas pequenas.
A L2 nica na arquitetura. A Figura 2 apresenta como a organizao da memria
desta arquitetura.

Figura 2. Organizao da Memria

Conforme foi citado, L1 possui duas caches. As duas primeiras so para


instrues de dados e por isso necessitam ser maiores. J as duas menores, so caches
para operaes com ponto flutuante (prefetch caches). Estas esto inseridas no chip do
processador. J a cache L2, tambm armazena instrues e dados, mas est fora do chip,
endereada na SRAM.

6. Desempenho da Arquitetura UltraSPARC III


Esta seo pretende analisar o desempenho da arquitetura UltraSPARC III. No foi
encontrada uma anlise de desempenho da verso Cu, mas como estes arquiteturas so
iguais, pode-se ter uma boa idia de como esta arquitetura se comporta em altos
processamentos.
A anlise de desempenho ser baseada nos dados obtidos da SPEC. A SPEC
(Standard Performance Evaluation Corporation) um coorporao formada para
estabelecer, manter e proporcionar um nmero de benchmarks padres para avaliar
computadores de alto desempenho. Esta analisa e publica seus resultados [4].

A Tabela 1 e Figura 3 mostram a comparao da arquitetura UltraSPARC III


com arquiteturas RISC [3].

Tabela 1. SPECint 2000 para arquiteturas RISC

Figura 3. SPECint 2000 para arquiteturas RISC

Este bechmark foi baseado em nmero de instrues. A UltraSPARC III da SUN


mostra um crescimento bem maior que as outras arquiteturas em relao a taxa de clock
utilizada. Ela ainda no atingiu os ndices das mquinas RISC da Fujitsu, mas seu
crescimento notvel.

7. Consideraes Finais
Este documento procurou reunir as principais caractersticas da arquitetura
ULTRASparc III Cu da Sun. A sua anlise de desempenho mostrou que sua operao na
execuo de quatro instrues por ciclo torna-se uma vantagem a outras arquiteturas.
Sabe-se que este estudo preliminar, visto que esta arquitetura possui outras diversas
vantagens as quais foram estabelecidas no seu desenvolvimento. Alm disso, este
documento limita-se s informaes cedidas pelo fabricante.

8. Referncias Bibliogrficas
[1] An Overview of the UltraSPARC III Processor. Disponvel em
<http://www.sun.com/processors/UltraSPARC-III/>. Acesso em Maio de 2004.
[2] Paul, R. P., SPARC Architecture, Assembly Language Programming, & C.
Prentice Hall, 1994.
[3] Rodrigues, L. F., Meira L. A., Arquitetura de Processadores SPARC SUN.
Disponvel em <http://www.dcc.unicamp.br/~leizza/>. Acesso em Maio de 2004.
[4] Standard Performance Evaluation Corporation. Disponvel em
<http://www.spec.org/>. Acesso em Maio de 2004.
[5] UltraSPARC III Processor Users Manual. Disponvel em
<http://www.sun.com/processors/UltraSPARC-III/>.Acesso em Maio de 2004.
[6] Weaver, D. L. e Germond T, The SPARC Architecture Manual. Prentice Hall,
1994.

Vous aimerez peut-être aussi