Post on 18-Oct-2015
1Tecnologia de Computadores e
Arquiteturas e Tecnologias dos ComputadoresComputadores
Diapositivos de ApoioIII. Processadores
17. Processadores Intel de 32 bits (IA-32) e 64 bits (x86-64) Microarquitetura Intel NetBurst
Cursos:Engenharia Informtica DiurnoEngenharia Informtica Ps-LaboralInformtica para a Sade
Compilao de textos: Rui Vasco Monteiro
Verso 07.2012
Disponvel:- Livro: pgs. 196-208
216-219 - Acetatos: Sim
rv@
sco
Processadores Intel x86 de 32 bits e 64 bits Microarquitetura Intel Netburst
Os processadores Intel x86 de 32 bits da Microarquitetura Intel Netburst englobam:
ador
es v
.07.
2012
by Pentium 4 1.3-2.0 (Willamette) Pentium 4 1.6A-3.4 (Northwood) Pentium 4 2.26A, 2.4A, 2.4E, 2.66, 2.8A, 2.8E, 3.0E, 3.2E, 3.4E (Prescott) Xeon (Foster, MP Foster, Prestonia,
MP Gallatin ) Pentium 4 Extreme Edition (Gallatin) Celeron 1.7 e 1.8 (Willamette)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 1
Celeron 1.8A, 2.0, 2.1, 2.2, 2.3, 2.4,2.5, 2.6, 2.7 e 2.8 (Northwood)
Celeron D 3xx (Prescott-256)
2rv@
sco
Processadores Intel x86 de 32 bits e 64 bits Microarquitetura Intel Netburst
Os processadores Intel x86 de 64 bits da Microarquitetura Intel Netburst englobam:
P ti 4 3 2F 3 4F 3 6F 3 8F (P tt) P ti 4 5 (P tt) P ti
ador
es v
.07.
2012
by Pentium 4 3.2F, 3.4F, 3.6F, 3.8F (Prescott), Pentium 4 5xx (Prescott), Pentium 4 6x0 (Prescott-2M), Pentium 4 6x1 (Cedar Mill)
Pentium 4 Extreme Edition 3.2, 3.4, 3.46 (Gallatin), Pentium 4 EE 3.73 (Prescott-2M)
Pentium D 8xx (Smithfield),Pentium D 9xx (Presler)
Pentium 840 Extreme Edition(Smithfield) Pentium 955 965
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 2
(Smithfield), Pentium 955, 965Extreme Edition (Presler)
Celeron D 3xx (Prescott-256),Celeron D 3xx (Cedar Mill-512)
rv@
sco
ador
es v
.07.
2012
by3.
Pro
cess
a
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 3
Evoluo Cronolgica da Microarquitetura NetBurst da Intel
3rv@
sco
Processadores Intel x86 de 32 bits Microarquitetura Intel Netburst
Os processadores Intel x86 de 32 bits da Microarquitetura Intel Netburst englobam:
ador
es v
.07.
2012
by Pentium 4 1.3-2.0 (Willamette) Pentium 4 1.6A-3.4 (Northwood) Pentium 4 2.26A, 2.4A, 2.4E, 2.66, 2.8A, 2.8E, 3.0E, 3.2E, 3.4E (Prescott) Xeon (Foster, MP Foster, Prestonia,
MP Gallatin ) Pentium 4 Extreme Edition (Gallatin) Celeron 1.7 e 1.8 (Willamette)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 4
Celeron 1.8A, 2.0, 2.1, 2.2, 2.3, 2.4,2.5, 2.6, 2.7 e 2.8 (Northwood)
Celeron D 3xx (Prescott-256)
rv@
sco
Microarquitetura NetBurst de 32 bits Principais Caratersticas
Microarquitetura de 32 bits lanada em Novembro de 2000 Oferece suporte a novos processadores x86 incompatveis
d t i ti t
ador
es v
.07.
2012
by com processadores anteriores mas que continuam a suportar o modelo de programao de 32 bits (IA-32): Pentium 4 Willamette Pentium 4 Northwood
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 5
4rv@
sco Como se recorda, o Modelo de Programao x86 de 32
bits (IA-32) apresenta as seguintes caratersticas:
Microarquitetura NetBurst de 32 bits Principais Caratersticas
ador
es v
.07.
2012
by 8 Registos (GPR) de 32 bits 8 Registos x87/MMX de 80 bits 8 Registos SSE/SSE2 de 128 bits PC de 32 bits
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 6
rv@
sco
Microarquitetura NetBurst de 32 bits Principais Caratersticas
Suporte a 144 novas instrues multimdia:SSE2 (Streaming SIMD Extensions 2) SIMD
ador
es v
.07.
2012
by
SSE2 (Streaming SIMD Extensions 2) SIMD (Single Instruction Multiple Data)
Execuo Dinmica Avanada:Janela de 126 Instrues em Curso
Rapid Execution Engine Execution Trace Cache
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 7
FSB QDR: Suporta 4 transferncias num ciclo de relgio
5rv@
sco
Microarquitetura NetBurst de 32 bits Principais Caratersticas
Suporte a 144 Novas instrues multimdia SSE2:
ador
es v
.07.
2012
by
SSE2:Permitem otimizar cdigo para udio, vdeo,
reconhecimento de vozDesde a microarquitetura P6 e at esta altura
tinham sido adicionados aos processadores x86 os seguintes conjuntos de instrues:
Instrues MMX
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 8
Instrues MMX Instrues SSE Instrues SSE2
rv@
sco Resumo dos Conjuntos de Instrues Adicionados
desde a Microarquitetura Intel P6:
Microarquitetura NetBurst de 32 bits Principais Caratersticas
ador
es v
.07.
2012
by Conjunto de Instrues MMX: Adio de 57 novas instrues s instrues x86 Suporte a operaes (SIMD) vetoriais aritmticas de inteiros (no
oferece suporte a operaes vetoriais aritmticas de vrgula flutuante)
Utiliza 8 Registos de 64 bits (identificados como MM0MM7). No so adicionados novos registos, uma vez que estes so partilhados com os 8 Registos x87 (FP0FP7) de 80 bits
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 9
partilhados com os 8 Registos x87 (FP0FP7) de 80 bits utilizados pela FPU
6rv@
sco Resumo dos Conjuntos de Instrues Adicionados
desde a Microarquitetura Intel P6:
Microarquitetura NetBurst de 32 bits Principais Caratersticas
ador
es v
.07.
2012
by Conjunto de Instrues SSE:Adio de 70 novas instrues s instrues x86Suporte a operaes vetoriais (SIMD) aritmticas de vrgula
flutuante Utiliza 8 novos Registos de 128 bits (identificados como
XMM0XMM7) Instrues sobre vetores de inteiros s podem operar nos
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 10
Instrues sobre vetores de inteiros s podem operar nos registos MMX de 64 bits
rv@
sco Resumo dos Conjuntos de Instrues Adicionados
desde a Microarquitetura Intel P6:
Microarquitetura NetBurst de 32 bits Principais Caratersticas
ador
es v
.07.
2012
by Conjunto de Instrues SSE2:Adio de 144 novas instrues s instrues SSE, para
poder suportar operaes vetoriais (SIMD) de inteirosSuporte ao armazenamento vetorial de inteiros de 128
bits nos registos XMM, pelo que as instrues MMX podem agora operar nos registos XMM
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 11
7rv@
sco
Microarquitetura NetBurst de 32 bits Principais Caratersticas
Tecnologia Hyper-Pipelined:Pipeline de 20 estgios
ador
es v
.07.
2012
by
p g Hyper-Threading (HT):
Tecnologia que consiste em dividir o processador em 2 unidades lgicas, passando este a ser reconhecido pelo Sistema Operativo como 2 processadores lgicos
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 12
O processador pode executar 2 processos simultaneamente, aumentando significativamente o seu desempenho
rv@
sco
Microarquitetura NetBurst de 32 bits Principais Caratersticas - Tecnologia Hyper-Threading
A tecnologia Hyper-Threading (HT) duplica a circulao de informao dentro do processador: Permite executar mltiplos threads ao mesmo tempo
ador
es v
.07.
2012
by
Permite executar mltiplos threads ao mesmo tempo til em aplicaes multithread, por ex. executar o Antivrus ao mesmo
tempo que estamos a usar uma folha de clculo
Requer suporte:
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 13
A tecnologia Hyper-Threading (HT) ser abordado com mais pormenor mais frente
ChipsetBIOS SO
8rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
2 Diagramas de Blocos do Pentium 4:
ador
es v
.07.
2012
by3.
Pro
cess
a
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 14
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
Arquitetura Superescalar Processador hbrido ou
ador
es v
.07.
2012
by Ps-RISC: Transforma instrues
x86 em micro-instrues Implementa o
Sequenciamento Dinmico pelo que a microarquitetura suporta a Execuo Fora de Ordem
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 15
Como principal novidade destaca-se a incluso de uma Execution Trace Cache de 12 Kops
9rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
O Front End prepara as instrues paraexecuo pelo Back End, pelo que as
ador
es v
.07.
2012
by mesmas provm do subsistema de memriaou da cache L1 de instrues (trace cache): Para no limitar o processo de obteno de
instrues, necessrio predizer o destinodas instrues de salto (Sistema dePredio de Saltos), pelo que utilizadouma memria (BTB Branch Target Buffer)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 16
uma memria (BTB Branch Target Buffer)que contm o endereo de destino dos saltos maisrecentes
A Unidade de Busca (fetch) tenta alimentar o descodificador ao dbito mximo, indo buscar instrues memria cache de instrues, se necessrio
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
Front End: O descodificador implementa uma
descodificao complexa (decode) das
ador
es v
.07.
2012
by descodificao complexa (decode) das instrues x86, convertendo-as em micro-instrues (ops), que posteriormente so armazenadas na Trace Cache (Cache L1de instrues) para serem executadaspelo Back End
A Trace Cache uma das novidades i t d id t i it t d d
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 17
introduzidas por esta microarquitetura, de modo que a sua incluso altera o caminho que as instrues seguem at serem executadas pelas Unidades de Execuo, tal como se pode comprovar nos 3 acetatos seguintes
10
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
Nos Processadores x86 anteriores ao Pentium 4: As Instrues x86 seguem o caminho desde a cache de instrues
ador
es v
.07.
2012
by L1 at ao descodificador No descodificador as instrues x86 so
divididas em mltiplas, pequenas, uniformes emais facilmente manipulveis instrues: Microperaes, micro-instrues ou
micro-op (ops) Estas ops so manipuladas sequenciadas
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 18
Estas ops so manipuladas, sequenciadas,executadas (pelas Unidades de Execuo)e guardadas (write) no Motor deExecuo Fora de Ordem ou (Back End)
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
No Pentium 4, a L1 dividida em Cache de Dados e emCache de Instrues (Trace Cache) colocada no Front End
CPU Busca instrues x86 em L2 que descodifica em ops
ador
es v
.07.
2012
by
CPU Busca instrues x86 em L2 que descodifica em ops(traces) e que ficam armazenadas na cache L1
A Trace Cache contm ops (instrues j descodificadas)que esto prontas para serem enviadas para o Motor deExecuo Fora de Ordem (Back End)Enquanto o cdigo necessrio para a execuo de umdeterminado programa estiver armazenado na L1 TraceCache o caminho de execuo de instrues ser o que
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 19
Cache, o caminho de execuo de instrues ser o queest ilustrado na figura: Quando h um cache miss na Trace Cache, o Front End vai procurar
ou buscar (fetch) cdigo x86 na cache L2, que posteriormente traduzido em ops. Estas micro-instrues so finalmente armazenadas na Trace Cache pontas para serem executadas
11
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos - Trace Cache
O que difere uma Trace Cache de uma tradicional Cache de Instrues? Armazena Microperaes ou micro-op (ops), em vez de instrues x86
ador
es v
.07.
2012
by Organiza o cdigo do programa em funo do fluxo de execuo espetvel, em vez de ser em funo da sua localizao em memria
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 20
CPU x86 c/ Cache de Instrues Pentium 4 c/ Trace Cache
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos - Trace Cache
Trace Cache:A descodificao j no ocorre
ador
es v
.07.
2012
by
A descodificao j no ocorre dentro do caminho de execuo crtica do processador
O paralelismo de execuo de programas j no est limitado ao nmero de descodificadores x86:Pode s conter 1 ou 2
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 21
Pode s conter 1 ou 2 descodificadores de instrues x86
12
rv@
sco
Caminho de Execuo Crtico de um Normal Processador x86 vs. Microarquitetura NetBurst
No P6 (fig. esq.) a cacheL1 armazena instrues x86 (ainda no descodificadas)
ador
es v
.07.
2012
by
(ainda no descodificadas) No Pentium 4 (fig. dir.) a
cache L1 armazena ops(instrues j descodificadas ou traces), as quais so enviadas para os buffers do Back End para serem executadas
A cache L1 constitui 1 N tb t
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 22
A cache L1 constitui 1reservatrio de ops, podendo enviar3 ops/ciclo para oBack End
Processador x86 Netburst
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
As funes desempenhadas pelo Back End(Execution Engine) passam por: Sequenciar a passagem das ops s
ador
es v
.07.
2012
by
Sequenciar a passagem das ops sUnidades de Execuo, de modo a queas mesmas possam ser executadas forade ordem e de forma especulativa
atualizar o estado interno do processadorno final do processamento (Commit ou Retirement)
Antes das instrues estarem em condies depoderem ser executadas fora de ordem, as mesmas
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 23
tm de ser reordenadas pelo que efetuado osequenciamento de instrues. Esta reordenao tem em vista uma execuo tima de instrues e realizada no mais curto espao de tempo possvel. Aps esta reordenao, as instrues esto prontas para serem rapidamente executadas, desde que os respetivos operandos de entrada (dados) estejam igualmente disponveis
13
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
Deste modo, para alm da execuo deinstrues pelas Unidades de Execuo,
B k E d li i t f
ador
es v
.07.
2012
by o Back End realiza as seguintes funes,no sentido de efetuar a reordenao dasmesmas: Alocao Renomeao Sequenciamento
A reordenao de instrues realizada pelo
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 24
seguinte conjunto de hardware: Allocator/Register Renamer (Alocao/ Renomeao de Registos) Micro-ops Queues (Filas de Micro-instrues ou ops) Schedulers (Escalonadores ou Sequenciadores)
rv@
sco Para que as instrues possam ser executadas, a
Trace Cache envia 3 ops/ciclo (por ordem) para o Allocator/ Register Renamer nos quais efectuado:
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
ador
es v
.07.
2012
by
Allocator/ Register Renamer, nos quais efectuado: A Reserva ou Alocao de Recursos (buffers):
Permite a monitorizao do estado deexecuo (fora de ordem) das instrues(janela at 126 de instrues em curso)
A Renomeao de Registos: Recorda-se que a Renomeao de Registos
consiste no mapeamento de Registos
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 25
p gLgicos ou Arquiteturais (e que sovisveis ao programador) em 128 RegistosFsicos ou Microarquiteturais (e que esto escondidos do programador).
14
rv@
sco Allocator (Alocador):
Aloca ou reserva os recursos (buffers) que i d d
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
ador
es v
.07.
2012
by so necessrios para a execuo de cadaop, pelo que os mesmos permitem efetivara realizao de operaes de reordenao,de monitorizao e de sequenciao: Quando h indisponibilidade de recursos
(como por exemplo, uma entrada do RegisterFile) que so necessrios para uma das 3 ops que
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 26
recebe no respetivo ciclo de relgio, o Alocator irprotelar ou adiar (stall) o envio das instrues para os blocos seguintes
Quando os recursos ficam disponveis o Alocator atribui-os s opsrequerentes, permitindo que as mesmas possam fluir pela pipeline para serem executadas
rv@
sco Allocator (Alocador):
Integra uma Fila de Espera (FIFO First InFirst Out) de Micro instrues (op Queue)
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
ador
es v
.07.
2012
by First Out) de Micro-instrues (op Queue) que recebe as ops que so enviadas pela Trace Cache: A sua funo passa por tentar regularizar o
fluxo de instrues que se move pelo BackEnd, uma vez que esta Fila retira qualquer bolha (bubble) que tenha sido introduzida nas fases de busca ou
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 27
introduzida nas fases de busca ou descodificao
As ops abandonam a Fila em ordem, de modo a prosseguirem para os prximos estgios da pipeline
15
rv@
sco Allocator (Alocador):
As ops ao serem retiradas pela parte inferior daFila de Espera implica que o Allocator faa a
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
ador
es v
.07.
2012
by Fila de Espera, implica que o Allocator faa areserva (alocao) de uma das 126 entradas doBuffer de Reordenao (ReOrder Buffer - ROB): A alocao de uma entrada do ROB permite
monitorizar o estado do processamento de cada uma das 126 ops que podem estar execuo (in-flight) simultnea
Das 126 ops (40 ops no P6) que podem estar em curso, h um conjunto de entradas do ROB que esto direcionadas para operaes de
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 28
conjunto de entradas do ROB que esto direcionadas para operaes de LOAD e STORE. Deste modo, o Allocator pode reservar at: 48 entradas do ROB (LOAD buffers) para instrues de carregamento
de dados da memria (LOAD) 24 entradas do ROB (STORE buffers) para instrues de
armazenamento de dados na memria (STORE)
rv@
sco O Register Renamer permite:
Eliminar dependncias falsas
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
ador
es v
.07.
2012
by Efectuar a Renomeao de Registos,pelo que mapeia os Registos LgicosISA em Registos Fsicos: Como veremos mais adiante, o Modelo
de Programao especifica: 8 Registos GPR 8 Registos x87/MMX (vrgula flutuante)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 29
8 Registos x87/MMX (vrgula flutuante) 8 Registos SSE/SSE2 (vectoriais)
O Pentium 4 integra 128 Registos Fsicos de cada um dos tipos de Registos Lgicos do Modelo de Programao no Ficheiro de Registo (Register File)
16
rv@
sco
Ao contrrio do que acontecia com a microarquitetura P6: A alocao de entradas no ROB e no Register File (RF) feita
separadamente
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
ador
es v
.07.
2012
by
separadamente ROB constitui um array que guarda apenas o Estado
de processamento de cada uma das126 instrues in-flight e dosrespetivos registos associados(Registos Especulativos ouArquiteturais):
Cada entrada do RF alocada a
3.P
roce
ssa Cada entrada do RF alocada a
partir de uma lista de 128 registosdisponveis, pelo que estes armazenamtodos os operandos que so utilizados durante o processamento de instrues, seja os que so utilizados pelos Registos Renomeados, seja os que so usados pelos Registos ArquitecturaisDepartamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 30
rv@
sco Integra 2 Tabelas de Renomeao de Registos (Register Alias
Table RAT), pelo que a incluso de uma 2 tabelait i t d d d d
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
ador
es v
.07.
2012
by procura evitar o movimento de dados deum registo para outro registo
A finalizao (Commit) de umainstruo realizada pela simplesmudana no mapeamento (Ponteiro),de tal modo que o Registo Arquiteturali t l t t
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 31
ir apontar para o valor correcto que estno RF: A efetivao da finalizao no implica o deslocamento (cpia) dos
resultados da execuo dos Registos Fsicos para Registos Lgicos
17
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
O Alocator/ Register Renamer envia 3 ops/ciclo para serem armazenadas num dos seguintes 2 Tipos de Filas (Queues): Memory op Queue (Fila de ops de Memria):
ador
es v
.07.
2012
by
Memory op Queue (Fila de ops de Memria): Guarda operaes de memrias
(LOADS e STORES) que se destinam LSU (Load-Store Unit)
Integer & Floating Point op Queue (Filadas Restantes ops): Guarda todos os outros tipos de
(i t i l fl t t )
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 32
operaes (inteiras e vrgula flutuante) As 2 Filas de ops (FIFO):
Asseguram que as instrues so finalizadas em ordem, pois as mesmas podem ser executadas fora de ordem
Vo posteriormente alimentar 4 Sequenciadores ou Escalonadores(Schedulers)
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
As funes dos 4 Sequenciadores ou Escalonadores (Schedulers)passam por:
Analisar as ops (verificam as suas dependncias) que esto nas Filas
ador
es v
.07.
2012
by Analisar as ops (verificam as suas dependncias) que esto nas Filas (Queues), para que se possa escalonar as ops que vo ser executadas fora de ordem
Determinar qual a Unidade de Execuopara onde devem ser enviadas as ops
Enviar as ops para a Unidade deExecuo (UE) apropriada, desde que osoperandos estejam disponveis e exista
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 33
operandos estejam disponveis e existauma UE livre
de realar que as 2 Filas de Esperade ops e os 4 Escalonadores de ops substituem as ReservationStations da microarquitetura P6
18
rv@
sco Os Escalonadores de ops dividem-se em:
Fast Integer Scheduler:Sequencia operaes ALU (instrues de
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
ador
es v
.07.
2012
by Sequencia operaes ALU (instrues deinteiros e lgicas) para Unidade de Execuo de Inteiros
Slow Integer/ General Floating Point Scheduler: Sequenciamento das restantes instrues de inteiros e da maior parte
das instrues de vrgula flutuante Simple Floating Point Scheduler:
Sequencia instrues de vrgula flutuante simples e operaes de memria de nmeros de vrgula flutuante
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 34
Memory Scheduler: Sequencia operaes de memria para LSU (Load-Store Unit)
Cada um dos 4 Escalonadores consiste numa pequena fila de ops com 8 a 12 entradas
rv@
sco Os Escalonadores fazem a emisso ou
despacho (dispatch) de ops, pelo quecoletivamente podem distribuir at 6 ops/ciclo
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
Pentium 4
ador
es v
.07.
2012
by
coletivamente podem distribuir at 6 ops/ciclopelas UE atravs de 4 Portos de Emisso (verfigura em cima): Recorda-se que na microarquitetura P6 a Reservation Station (RS) envia
instrues para 5 Portos (ver figura em baixo) Os 4 Portos de Emisso esto assim divididos:
2 Portos para instrues de acesso memria (LOAD e STORE) 2 Portos (Porto 0 e Porto 1) para as restantes instrues
Dos 4 Portos de Execuo 2 Portos (para
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 35
Dos 4 Portos de Execuo, 2 Portos (para inteiros simples) so double pumped, pelo
que podem enviar instrues nas vertentesascendente e descendente do relgio: Os 4 Portos suportam ento o envio
de 6 ops
Pentium Pro
19
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
Aps receberem as ops, as Unidades de Execuo que esto integradas no
ador
es v
.07.
2012
by
de Execuo, que esto integradas no Rapid Execution Engine, efetuam a leitura (read) dos operandos de entrada (dados) de cada instruo a partir do Register File apropriado (Floating Point Register File FPRF ou Integer Register File IFR): Os dados provm da memria cache
L1 de dados (est situada ao fundo na
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 36
L1 de dados (est situada ao fundo na figura) ou da memria cache L2 unificada
rv@
sco
Microarquitetura NetBurst - Pentium 4 O Rapid Execution Engine integra 5 Unidades para
Processamento Aritmtico (ALU e FPU):P t d E 0
ador
es v
.07.
2012
by Porto de Execuo 0:1 ALU (SIU1) doubled pumped p/ instrues + simples
(adio, subtrao e operaes lgicas de inteiros). Processa 1 instruo de inteiros em cada 0.5 ciclos (ou seja, 2 instrues em cada ciclo de relgio)
1 FPU/Moves e Stores de Instrues SSE2 e SSE
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 37
20
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
O Rapid Execution Engine integra 5 Unidades para Processamento Aritmtico (ALU e FPU): Porto de Execuo 1:
ador
es v
.07.
2012
by
Porto de Execuo 1: 1 ALU (SIU2) doubled pumped para instrues mais simples 1 ALU (CIU) para instrues complexas (deslocamentos e rotaes) 1 FPU/SSE/SSE2/ MMX (Vetorial de inteiros) que manipula adio,
subtrao, multiplicao e diviso de nmeros SSE/SSE2 (vetores de vrgula flutuante) e de escalares de vrgula flutuante, bem como instrues MMX
As 2 ALUs rpidas podem processar 4 instrues de inteiros simples em cada ciclo de relgio
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 38
cada ciclo de relgio
rv@
sco Antes de poderem ser finalizadas as instrues
executadas tm de ser reordenadas para a posiooriginal do fluxo de cdigo do programa pelo que
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
ador
es v
.07.
2012
by
original do fluxo de cdigo do programa, pelo que ento utilizada a informao que foi previamente armazenada noROB. Quando as instrues estiverem reordenadas os resultadosda sua execuo so actualizados de forma definitiva noRegister File e o estado arquitetural da mquina actualizado
Uma vez que a execuo de instrues realizada de forma especulativa, s aps a execuo das mesmas que poder estar disponvel o resultado da avaliao da condio de uma instruo de salto condicional, pelo que neste momento que comparado o resultado do salto com a previso efetuada pelo Sistema de
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 39
que comparado o resultado do salto com a previso efetuada pelo Sistema de Predio de Saltos: Caso acerte no resultado da condio de salto, as instrues podem ser
finalizadas (commit) em ordem Caso tenha errado, so descartadas todas as instrues entretanto
processadas aps a instruo de salto, pelo que recomeado o processamento das instrues a seguir instruo de salto
21
rv@
sco No processamento das instrues, os vrios
blocos do Pentium 4 apresentam os seguintesd h
Microarquitetura NetBurst Desempenho do Pentium 4
ador
es v
.07.
2012
by desempenhos: O Front End pode fornecer (Issue em ordem) at
3 ops/ ciclo O Sequenciamento pode despachar (dispatch)
ou emitir at 6 ops/ciclo para as Unidades deExecuo
No Back End (Commit em ordem) podem serfinali adas at 3 ops/ciclo
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 40
finalizadas at 3 ops/ciclo de realar que o excesso de capacidade de emisso ou despacho
de ops permite: Uma maior flexibilidade na escolha das instrues a tratar Absorver as irregularidades introduzidas no processamento pelas
dependncias entre instrues
rv@
sco O principal artificio utilizado pela
microarquitetura Netburst para melhorar o d h l ti t i i t t
Microarquitetura NetBurst Desempenho do Pentium 4
ador
es v
.07.
2012
by desempenho relativamente microarquietcturaanterior est ento na utilizao de uma Trace Cache, a qual armazena instrues j descodificadas (ops). Deste modo: Memria apenas acedida quando ocorre um
cache miss na Trace Cache Elimina o overhead subjacente Descodificao.
Deste modo, consegue alimentar rapidamente com
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 41
, g pops o longo pipeline que est a funcionar a elevadas frequncias de operao, pelo que a eficincia do Back End deixa de estar dependente do ritmo de descodificao de instrues
22
rv@
sco Para alm disso, o aumento do desempenho est
relacionado com a utilizao/ implementao de:Vrias Unidades de Execuo (Superescalar)
Microarquitetura NetBurst Desempenho do Pentium 4
ador
es v
.07.
2012
by Vrias Unidades de Execuo (Superescalar) Hyperpipelined Sistema de Predio de Saltos Execuo Fora de Ordem: Novo Conjunto de Instrues (SSE2) Register Renaming:
8 Registos Lgicos (modelo de programao x86), 128 Registos Fsicos (na microarquitetura P6 so utilizados 40 Registos Renomeados)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 42
Escalonamento Dinmico: Utilizadas Filas de ops com 126 entradas para guardar informao sobre
as instrues em processamento (no P6 so utilizados o buffer ROB com 40 entradas e o buffer RS com 20 entradas)
Suporta uma janela de 126 instrues em curso nos vrios de processamento (no P6 utilizada uma janela de 40 instrues em curso)
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
Seguidamente apresenta-se, de um modo informal, os 20 estgios da pipeline do Pentium 4:
ador
es v
.07.
2012
by Estgios n. 1 e n. 2 - Trace Cache Next Instruction Pointer: Acesso a BTB de forma a determinar endereo da prxima instruo Acesso memria se instruo no est na cache
Estgios n. 3 e n. 4 - Trace Cache Fetch: L as instrues (ops) da cache Cache contm 12Kops organizadas
em traces
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 43
em traces Em cada ciclo 3 ops podem ser
lidas da cache Estgio n. 5 Drive
23
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
Estgios n. 6 ao n. 8 - Allocate e Rename (ROB): Reserva recursos (buffers) para a execuo das ops Mapeamento dos 8 registos lgicos nos 128 registos fsicos
ador
es v
.07.
2012
by
Mapeamento dos 8 registos lgicos nos 128 registos fsicos Utiliza Tabela de Alocao de Registos (Register Alias Table - RAT), para
mapear registos arquiteturais (lgicos) em registos microarquiteturais (fsicos) Elimina dependncias falsas
Estgio n. 9 Queue: Insere ops nas Filas de ops:
1 Fila de uops de memria, 1 Fila para restantes uops Filas de ops asseguram que as instrues so finalizadas pela ordem correta
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 44
Filas de ops asseguram que as instrues so finalizadas pela ordem correta As Filas de ops e os Escalonadores substituem as Reservation Stations
Estgios n. 10 ao n. 12 Schedule: Analisam uops da Fila de uops Verificam dependncias e estado das UE Podem enviar uops para execuo fora de ordem
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4 Estgios n. 13 e n. 14 Dispatch:
Envia as ops para as Unidades de Execuo
ador
es v
.07.
2012
by3.
Pro
cess
a
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 45
Estgios n. 15 e n. 16 - Register Files Estgios n. 17 Execute
24
rv@
sco
Microarquitetura NetBurst Diagrama de Blocos do Pentium 4
Estgio n. 18 Flags Estgio n 19 Branch Check:
ador
es v
.07.
2012
by Estgio n. 19 Branch Check:Compara resultado do salto com a previso
Estgio n. 20 Drive, Write-Back e Retire
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 46
rv@
sco
Resumo de Caratersticas do Diagrama de Blocos da Microarquitetura Netburst vs. P6 (Pentium Pro, Pentium II e Pentium III)
Pentium Pro vs. Pentium II vs. Pentium III vs. Pentium 4:
ador
es v
.07.
2012
by3.
Pro
cess
a
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 47
25
rv@
sco
Tecnologia Hyper-Threading Hyper-Threading (HT)
Tecnologia que consiste em dividir o processador em 2 unidades lgicas passando este a ser reconhecido pelo SO como 2
ador
es v
.07.
2012
by lgicas, passando este a ser reconhecido pelo SO como 2 processadores lgicos
CPU pode executar 2 processos simultaneamente, aumentando significativamente o seu desempenho.
capaz de melhorar o desempenho do processador at 30 % Instrues so reorganizadas, de forma que CPU possa aproveitar
os ciclos em que no est a processar instrues por forma a incluir l i d 2
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 48
operaes relacionadas com o 2 processo Nvel de utilizao das Unidades de Execuo desempenho Ensaio p/ processadores dual-core que foram lanados posteriormente Para tirar partido desta tecnologia, necessrio que esta seja
suportada pelo sistema operativo e por software especfico
rv@
sco
Tecnologia Hyper-Threading Ganhos so mais expressivos em ambientes multitarefa. As
aplicaes que tiram maior proveito do HT so as que esto relacionados com:
ador
es v
.07.
2012
by
relacionados com: Compactao/ Descompactao de ficheiros Compresso de udio e vdeo Renderizao 3D Alguns jogos
Circuitos responsveis pelo HT: Circuito TLB e a Trace Cache
(foram alvo de expanso)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 49
3 Circuitos Adicionais: Return Stack Predictor Next Instruction Pointer
(Program Counter) Register Alias Tables
26
rv@
sco
Tecnologia Hyper-Threading Em grande parte dos SO modernos, os programas so
designados como processos: Os processos integram mltiplos threads (fragmentos) sendo que
ador
es v
.07.
2012
by
Os processos integram mltiplos threads (fragmentos), sendo que cada processo consiste em pelo menos 1 thread (thread de execuo principal)
A cada thread est associado um contexto: Termo abrangente que engloba toda informao que descreve
completamente o estado atual de execuo do processo (contedo dos registos da CPU, Program Counter, etc)
Para alm do contexto associado a um processo, cada um dos threads pode ter o seu prprio contexto local
C ( i ) E t ( ti ) P
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 50
Correr (running) vs. Executar (executing) Programa: Correr programa quando o cdigo do mesmo carregado para a
memria principal Executar programa s quando o codigo carregado para o
processador SO corre programas, enquanto o processador os executa
rv@
sco
Tecnologia Hyper-Threading Processador Single-Thread:
O processador s capaz de executar um programa de cada vez apesar da memria ter carregado
ador
es v
.07.
2012
by
de cada vez, apesar da memria ter carregado mltiplos programas
Cada programa acredita que tem o monoplio da utilizao da memria e do processador e que o processador o est a executar continuamente sem interrupes
O utilizador tem a iluso que os vrios programas atualmente carregados em memria esto a ser executados em simultneo
N fi t i t
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 51
Na figura as cores representam as instrues dos 4 programas que esto em memria: Somente as instrues para o programa vermelho
esto atualmente a ser executadas, enquanto as restantes aguardam que a CPU lhes d ateno
27
rv@
sco
Tecnologia Hyper-Threading Symmetric MultiProcessing (SMP):
Suporte a mais do que um processador na mesma Placa MeE i t t i d
ador
es v
.07.
2012
by Em sistemas que executam mais do que um processo ao mesmo tempo permite efetuar a diviso da carga de processamento entre os diversos processadores: Aumenta o Tempo de Execuo do processador que dedica a
cada Processo Diminui o Tempo que as instrues
esto espera na memria a fim deserem executadas
O programa vermelho e o processo
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 52
O programa vermelho e o processoamarelo podem ser executados emsimultneo, um em cada processador Duplica n. de processos executados,
mas o n. de slots de execuo vazios (caixas a branco) tambm duplica
rv@
sco
Tecnologia Hyper-Threading Superthreading com Processador Multithreaded:
Tcnica utilizada para aumentar o desempenho do processdor ao eliminar o desperdcio associado ao SMP single-threaded
ador
es v
.07.
2012
by
eliminar o desperdcio associado ao SMP single threaded CPU so capazes de executar mais do que 1
thread por unidade de tempo Existem poucos slots de execuo vazios, pelo que
no h desperdcio da execuo uma vez que CPUest a executar instrues de ambas as threadsem simultneo
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 53
O Processador est limitado na forma de misturaras instrues de 2 threads: Num ciclo de relgio, cada estgio da pipeline
s pode conter instrues de uma s thread
28
rv@
sco
Tecnologia Hyper-Threading Superthreading com Processador
Multithreaded:N Fi F t E d d 4
ador
es v
.07.
2012
by Na Figura o Font End pode mover 4 instrues por ciclo de relgio para 4 das 7 pipelines das Unidades de funcionais que integram o Motor de Execuo
Contudo, todas as 4 instrues que so deslocadas no mesmo ciclo de relgio devem ser provenientes da mesma
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 54
pthread
rv@
sco
Tecnologia Hyper-Threading Simultaneous Multithreading (SMT) ou
Hyper-Threading: um aperfeioamento do superthreading pois
ador
es v
.07.
2012
by
um aperfeioamento do superthreading, pois no existe a restrio de que todas as instrues processadas pelo Front End em cada ciclo terem de ser da mesma thread
Atua como se existissem 2 processadores: Sob o ponto de vista do SO, o processador
dividido em 2 ou mais processadores lgicos e as threads podem ser escalonadas para serem executadas em qualquer um dos processadores
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 55
Permite uma flexibilidade mxima no escalonamento lgico por forma a preencher os slots de execuo: Faz um uso mais eficiente dos recursos de
execuo disponveis ao manter o ncleo de execuo sempre ocupado
29
rv@
sco
Tecnologia Hyper-Threading Com CPU Superescalar:
50% do CPU no utilizado
ador
es v
.07.
2012
by Com SMP: 50% de cada CPU por
utilizar Com HT (SMT):
Eficincia aumenta para 90%
Com HT usando 2 CPU: 2 processadores fsicos 4 processdores lgicos
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 56
4 processdores lgicos Processa 4 threads
independentes emsimultneo
Eficincia em cerca de 90%
rv@
sco
Reconhecimento da tecnologia Hyper-Threading no sistema operativo Windows XP
Tecnologia Hyper-Threading
ador
es v
.07.
2012
by operativo Windows XP
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 57
30
rv@
sco
Tecnologia Hyper-Threading Para a implementao desta tecnologia o processador teve
de sofrer algumas modificaes:
ador
es v
.07.
2012
by Passou a incorporar algumas Unidades de Controlo em duplicado, mas mantm as mesmas Unidades de Execuo (so partilhadas),que so carregadas de forma mais eficiente e com maior quantidade de dados de cada vez
Integra Tabelas de Alocao de Registos (Register AllocationTables - RAT) em duplicado: Cada uma faz o mapeamento dos 8 Registos de Uso Geral (GPR), dos 8
Registos de Vrg la Fl t ante (FPR) e dos 8 Registos Vetoriais (SSE2)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 58
Registos de Vrgula Flutuante (FPR) e dos 8 Registos Vetoriais (SSE2) nos 128 Registos Fsicos GPR (Rename Registers), nos 128 Registos Fisicos FPR e nos 128 Registos Fiscos SSE2
RAT um dos recursos duplicados (replicados) que gere um recurso partilhado que so os Registos da Microarquitetura, Registos Fiscosou Registos Renomeados Rename Registers
rv@
sco
Tecnologia Hyper-Threading As Filas de ops (Queues) so o exemplo de recursos que so
particionados, pois cada Queue dividida ao meio, com metade das entradas atribuda a um processador lgico e a restante metade ao outro
ador
es v
.07.
2012
by
entradas atribuda a um processador lgico e a restante metade ao outro processador lgico
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 59
Todos os outros recursos, como por exemplo a Cache, as Unidades de Execuo e os 128 Registos Renomeados (Rename Registers) da microarquitetura (GPR, FPR, SSE2) que esto escondidos do programador, so partilhados por ambos os processadores lgicos
31
rv@
sco
Tecnologia Hyper-Threading Em resumo, para implementar HT os recursos do processador so
ento divididos nas seguintes 3 categorias:
ador
es v
.07.
2012
by Categorias RecursosDuplicados Hardware que gere o Register Renaming, tal como o RAT
Program Counter (PC)Translation Look-aside Buffer (TLB)Return Stack PredictorVrios outros Registos Arquiteturais
Particionados Buffers ReOrder (ROB)Buffers LOAD e STORE
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 60
Buffers LOAD e STOREFilas de Espera ou Queues (Scheduling Queues, opQueue,)
Partilhados Memrias Caches: Trace Cache, L1 e L2Unidades de Execuo (ALU, FPU, )Registos da Microarquitetura (Register Renaming)
rv@
sco
Arquitetura Hyper-Threading versus sistema multiprocessador (a) processador com Hyper-Threading
Tecnologia Hyper-Threading
ador
es v
.07.
2012
by
(a) processador com Hyper-Threading (b) sistema multiprocessador
ProcessadorLgico 2
ProcessadorLgico 1
ALU's
Cache's
Registos Registos
ProcessadorFsico 2
ProcessadorFsico 1
Registos Registos
ALU's
Cache's
ALU's
Cache's
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 61
Memria principal
Barramento de sistema
(a)
Memria principal
Barramento de sistema
(b)
32
rv@
sco
Processadores Intel x86 de 32 bits Microarquitetura Intel Netburst
Resumo de caratersticas de processadores Intel x86 de 32 bits da Microarquitetura Intel Netburst:
ador
es v
.07.
2012
by Pentium 4 1.3-2.0 (Willamette) Pentium 4 1.6A-3.4 (Northwood) Pentium 4 2.26A, 2.4A, 2.4E, 2.66, 2.8A, 2.8E, 3.0E, 3.2E, 3.4E (Prescott) Xeon (Foster, MP Foster, Prestonia,
MP Gallatin ) Pentium 4 Extreme Edition (Gallatin) Celeron 1.7 e 1.8 (Willamette)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 62
Celeron 1.8A, 2.0, 2.1, 2.2, 2.3, 2.4,2.5, 2.6, 2.7 e 2.8 (Northwood)
Celeron D 3xx (Prescott-256)
rv@
sco
Pentium 4
Inicialmente o Pentium 4 Willamette utilizava Memria Rambus:Novo barramento
ador
es v
.07.
2012
by
Novo barramentoMuito rpido; largura = 16 bits; So memrias de 8 bits ( aos pares)Ex: PC-800 (800 MHz) 3.2 GB/sChipset Intel 850:
Desvantagem:C !
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 63
Caro!Soluo:
Outros chipsets (Intel 845) sistemas + baratos com memria DDR
33
rv@
sco
Pentium 4 Em 2002 surge Pentium 4 Northwood:
0.13 m (anterior era de 0.18 m)
ador
es v
.07.
2012
by
( )Ncleo menor Menor consumo Tenso de alimentao menor: 1.5 V (anterior 1.7 V )Cache L2 = 2xL2 (Willamette) = 512 KBSurgiram as as seguintes alteraes:
FSB 400 MHz 533 MHz 800 MHzAt li d l d d d h d
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 64
Atualizao do ncleo do processador desempenho de cerca de 2 %, (verses 2500, 2600, 2666 e 2800 MHz);
A incluso da Tecnologia Hyper-Threading, antes usada apenas em servidores
rv@
sco
Ncleo do Pentium 4 Willamette (esquerda) e Northwood(direita)
Pentium 4
ador
es v
.07.
2012
by (direita)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 65
34
rv@
sco
Pentium 4
Em Fevereiro de 2004 surge o Pentium 4 Prescott(32 bits):
ador
es v
.07.
2012
by
( ) 90 m ou (0.09 m)
de realar que em Agosto de 2004 o Pentium 4 Prescott teve um upgrade com o lanamento da verso de 64 bits (x86-64):As caratersticas do Prescott de 32 bits sero
b d d i di t ( it P d I t l
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 66
abordadas mais adiante (no item Processadores Intel x86 de 64 bits da Microarquitetura Intel Netburst), quando falarmos das caratersticas do Prescott de 64 bits
rv@
sco Pentium 4 Willamette disponibilizado em:
Socket 423 Socket 478
Pentium 4 - Sockets
ador
es v
.07.
2012
by Socket 423 Socket 478 Pentium 4 Northwood disponibilizado em:
Socket 478 Pentium 4 Prescott (32 bits) disponibilizado em:
Socket 478N t I t t
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 67
Nota Importante: Como veremos mais adiante, a verso Pentium 4
Prescott (64 bits) disponibilizado em LGA 775, em que os pinos esto do lado da placa me
35
rv@
sco
Processadores Intel x86 de 32 bits Microarquitetura Intel Netburst
Resumo de caratersticas de processadores Intel x86 de 32 bits da Microarquitetura Intel Netburst:
ador
es v
.07.
2012
by Pentium 4 1.3-2.0 (Willamette) Pentium 4 1.6A-3.4 (Northwood) Pentium 4 2.26A, 2.4A, 2.4E, 2.66, 2.8A, 2.8E, 3.0E, 3.2E, 3.4E (Prescott) Xeon (Foster, MP Foster, Prestonia,
MP Gallatin ) Pentium 4 Extreme Edition (Gallatin) Celeron 1.7 e 1.8 (Willamette)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 68
Celeron 1.8A, 2.0, 2.1, 2.2, 2.3, 2.4,2.5, 2.6, 2.7 e 2.8 (Northwood)
Celeron D 3xx (Prescott)-256
rv@
sco
Xeon e Pentium 4 EE
Em 2001 foi lanado o Xeon:Direcionado para estaes trabalho com maiores
ador
es v
.07.
2012
by Direcionado para estaes trabalho com maiores necessidades de processamentoUtiliza memria RDRAM de duplo canal
Em 2003 foi lanado o Pentium 4 Extreme Edition, que adiciona cache L3 de 2 MB:
Direcionado aos utilizadores mais exigentes no
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 69
Direcionado aos utilizadores mais exigentes, no que diz respeito necessidade de processamento.
36
rv@
sco
Processadores Intel x86 de 32 bits Microarquitetura Intel Netburst
Resumo de caratersticas de processadores Intel x86 de 32 bits da Microarquitetura Intel Netburst:
ador
es v
.07.
2012
by Pentium 4 1.3-2.0 (Willamette) Pentium 4 1.6A-3.4 (Northwood) Pentium 4 2.26A, 2.4A, 2.4E, 2.66, 2.8A, 2.8E, 3.0E, 3.2E, 3.4E (Prescott) Xeon (Foster, MP Foster, Prestonia,
MP Gallatin ) Pentium 4 Extreme Edition (Gallatin) Celeron 1.7 e 1.8 (Willamette)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 70
Celeron 1.8A, 2.0, 2.1, 2.2, 2.3, 2.4,2.5, 2.6, 2.7 e 2.8 (Northwood)
Celeron D 3xx (Prescott-256)
rv@
sco
Intel Celeron Surgiram em Maio 2002 e so inspirados na
microarquitetura Netburst (em socket 478 e de
ador
es v
.07.
2012
by
microarquitetura Netburst (em socket 478 e de 32 bits)
Distinguem-se:Celeron 4 (baseado no Pentium 4 Willamette), com
as seguintes verses comerciais:Celeron 1.7 e 1.8
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 71
Celeron 4 (baseado no Pentium 4 Northwood), com as seguintes verses comerciais:Celeron 1.8A, 2.0, 2.1, 2.2, 2.3, 2.4. 2.5, 2.6, 2.7 e 2.8
37
rv@
sco
Intel Celeron Em 2004 surgiram os Celeron D (Prescott) de 32 bits,
baseados no Pentium 4 (Prescott-256) de 32 bits e di ibili d k t 478 LGA 775 i t
ador
es v
.07.
2012
by disponibilizados em socket 478 e LGA 775, e com as seguintes verses comerciais: Celeron D 3xx
Posteriormente surgiram os Celeron D (Prescott-256) de 64 bits (x68-64), disponibilizados em LGA 775, e com as seguintes verses comerciais: Celeron D 3xx
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 72
Celeron D 3xx Nota Importante:
As caratersticas do Celeron D (Prescott -256) de 32 bits sero abordadas mais adiante (no item Processadores Intel x86 de 64 bits da Microarquitetura Intel Netburst), quando falarmos das caratersticas do Celeron D
rv@
sco Comparao de caratersticas do Celeron
Willamette/Northwood com os seus antecedentes
Resumo de Caratersticas
Caratersticas 2 a 2.7 GHz 1.7 e 1.8 GHz1A, 1.1A, 1.2, 1.3
e 1.4 GHz
Celeron Tualatin
ador
es v
.07.
2012
by Encapsulamento FC-PGA2 de 370 pinos XEncapsulamento FC-PGA2 de 478 pinos X X
Tecnologia de 0.13 m X XTecnologia de 0.18 m XBarramento de sistema de 100 MHz X
Barramento de sistema de 400 MHz X XCache L1 32 kB (16+16 kB) XCache L1 8 kB X XExecution Trace Cache 12 kB micro-ops X XCache L2 128 kB Advanced Transfer Cache X XCache L2 256 kB Advanced Transfer Cache XCapacidade Endereamento de memria at 64 GB X X X
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 73
Capacidade Endereamento de memria at 64 GB X X X
Capacidade Endereamento de memria at 4 GB X X X
Streaming SIMD Extensions 2 X XStreaming SIMD Extensions X X XInstrues MMX X X X
Arquitetura DIB X X X
Execuo Dinmica X X X
Tecnologia Hyper Pipeline X XRapid Execution Engine X X
38
rv@
sco Principais caratersticas e inovaes do Celeron
Resumo de Caratersticas
CPU Data Inovaes Caratersticas
ador
es v
.07.
2012
by
Celeron Abril 1998
No tem cache L2 at ao modelo 300 MHzA partir do modelo 300A tem cache L2 de 128 kB
incorporada no ncleoUtiliza Slot 1 e Socket 370 (s a partir do modelo a
300 MHz)Encapsulamento PPGA
2 V
0.25 m7.5 milhes de transstores19 milhes de transstores
(com cache L2)Cache L1 16 + 16 kB
FSB de 66 MHz
Celeron II Maro 20000.18 m
FSB de 100 MHz (a partir da verso 800 MHz)Encapsulamento FC-PGA
FSB de 66 MHz18.8 milhes de transstores
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 74
Celeron III Jan. 20020.13 m
Encapsulamento FC-PGASSE
FSB de 100 MHz28.1 milhes de transstores
Celeron 4 Maio 2002
0.13 m (Northwood)Encapsulamento FC-PGA2
SSE2FSB 400 MHz
L1 8 kB dados + 12 K op
0.18 m (Willamette)36.5 milhes de transstores
L2 128 kB
rv@
sco
Processadores Intel x86 de 32 bits Microarquitetura Intel Netburst No Anexo A03-20 - Caratersticas dos Processadores Intel x86 de 32 bits e
de 64 bits-Microarquitetura Intel Netburst esto expressas detalhadamente as caratersticas dos seguintes processadores de 32 bits:
ador
es v
.07.
2012
by
caratersticas dos seguintes processadores de 32 bits: Pentium 4 1.3-2.0 (Willamette) Pentium 4 1.6A-3.4 (Northwood) Pentium 4 5xx (Prescott) Xeon (Foster, MP Foster, Prestonia,
MP Gallatin ) Pentium 4 Extreme Edition (Gallatin) Celeron 1 7 e 1 8 (Willamette)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 75
Celeron 1.7 e 1.8 (Willamette) Celeron 1.8A, 2.0, 2.1, 2.2, 2.3, 2.4,
2.5, 2.6, 2.7 e 2.8 (Northwood) Celeron D 3xx (Prescott-256)
39
rv@
sco
Processadores Intel x86 de 64 bits Microarquitetura Intel Netburst
Os processadores Intel x86 de 64 bits da Microarquitetura Intel Netburst englobam:
P ti 4 3 2F 3 4F 3 6F 3 8F (P tt) P ti 4 5 (P tt) P ti
ador
es v
.07.
2012
by Pentium 4 3.2F, 3.4F, 3.6F, 3.8F (Prescott), Pentium 4 5xx (Prescott), Pentium 4 6x0 (Prescott-2M), Pentium 4 6x1 (Cedar Mill)
Pentium 4 Extreme Edition 3.2, 3.4, 3.46 (Gallatin), Pentium 4 EE 3.73 (Prescott-2M)
Pentium D 8xx (Smithfield),Pentium D 9xx (Presler)
Pentium 840 Extreme Edition(Smithfield) Pentium 955 965
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 76
(Smithfield), Pentium 955, 965Extreme Edition (Presler)
Celeron D 3xx (Prescott-256),Celeron D 3xx (Cedar Mill-512)
rv@
sco
Evoluo Cronolgica da Microarquitetura NetBurst da Intel
ador
es v
.07.
2012
by3.
Pro
cess
a
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 77
40
rv@
sco
Evoluo da Microarquitetura NetBurst de 64 bits
Intel Pentium 4:Prescott
ador
es v
.07.
2012
by PrescottCedar Mill
Pentium 4 Extreme Edition Pentium D:
SmithfieldPresler
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 78
Pentium Extreme Edition Celeron D:
Prescott-256Cedar Mill-512
rv@
sco
Evoluo da Microarquitetura NetBurst de 64 bits
ador
es v
.07.
2012
by3.
Pro
cess
a
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 79
41
rv@
sco
Microarquitetura NetBurst de 64 bits Principais Caratersticas
A verso de 64 bits da Microarquitetura NetBurst foi lanada em Agosto de 2004
ador
es v
.07.
2012
by Para alm de integrar as caratersticas presentes nos processadores da microarquitetura NetBurst de 32 bits, a microarquitetura NetBurst de 64 bits oferece suporte a:Execute Disable BitFSB com frequncias de operao ainda mais elevadasCache L2 com maior capacidade de armazenamento
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 80
Cache L2 com maior capacidade de armazenamentoProcessadores a operar c/ frequncia de operao
nominal de 3.8 GHz13 Novas Instrues, denominadas de SSE3 (Streaming
SIMD Extensions 3)
rv@
sco
Microarquitetura NetBurst de 64 bits Principais Caratersticas
Para alm de integrar as caratersticas presentes nos processadores da microarquitetura NetBurst de 32 bits, a
ador
es v
.07.
2012
by microarquitetura NetBurst de 64 bits oferece suporte a:Tecnologia de VirtualizaoTecnologia Enhanced SpeedStepTDP (Thermal Design Power) ou Potncia Trmica de
Projeto mais elevadoModelo de Programao x86 de 64 bits (x86 64):
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 81
Modelo de Programao x86 de 64 bits (x86-64):Tecnologia EM64T (Extended Memory 64 Technology) ou
Tecnologia de Memria Estendida 64 que posteriormente foi renomeada para Intel 64
42
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Execute Disable Bit
Fornece segurana acrescida ao PC Previne a ocorrncia de certas tipos de ataques (buffer
ador
es v
.07.
2012
by
p q (overflow), quando combinado com suporte do SO
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 82
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Front Side Bus
FSB um componente chave no desempenho global do sistema, uma vez que suporta a transferncia de dados entre CPU e memria
ador
es v
.07.
2012
by FSB com frequncias de operao ainda mais elevadas: 200 MHz QDR (4 transferncias/ciclo = 800 MHz) 266 MHz QDR (1066 MHz)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 83
43
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Cache L2
Cache L2 condiciona o desempenho global do sistema, pelo quanto maior o seu tamanho, maior a quantidade de dados que
d d d i id t did l
ador
es v
.07.
2012
by pode armazenar, podendo assim ser rapidamente acedidos pela CPU
Aumento do tamanho da Cache L2 para capacidades de 1 MB ou 2 MB (por ncleo)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 84
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Frequncia de operao
Fator que contribui para o desempenho de um sistema, uma vez que determina a rapidez com que so executadas as instruesO P ti 4 P tt h 3 8 GH
ador
es v
.07.
2012
by O Pentium 4 Prescott chegou a operar a 3.8 GHz
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 85
44
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Instrues SSE3
Em 2004 foram lanadas 13 novas instrues, denominadas de SSE3 (Streaming SIMD Extensions 3)
ador
es v
.07.
2012
by
( g )que foram originalmente integradas com o Pentium 4 (Prescott):Permitem o alargamento das capacidades SIMD
disponibilizadas pelas extenses SSE e SSE2Permitem o aumento do desempenho no processamento de
dados em diversas reas, como por exemplo, na converso
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 86
de nmeros de vrgula flutuante para inteiros, sincronizao de threads e na codificao de vdeo
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Tecnologia de Virtualizao
Muito em voga atualmente, a virtualizao x86 (virtualizao de hardware) permite que mltiplos Sistemas Operativos (SO)
tilh i lt d f fi i t
ador
es v
.07.
2012
by possam partilhar em simultneo, de uma forma segura e eficiente, os recursos (hardware) de um processador x86
No final dos anos 90 do sc. XX, a virtualizao x86 era implementada com a utilizao de tcnicas de software bastante complexas, por forma a contornar a falta de suporte virtualizao por parte dos processadores.
Todavia a partir de 2005 a Intel e a AMD adicionaram H/W aos
3.P
roce
ssa Todavia, a partir de 2005, a Intel e a AMD adicionaram H/W aos
seus processadores por forma a tornar o S/W de virtualizaomais simples e mais rpido a ser executado
de realar que no foi s aos processadores que foi adicionado H/W para melhorar a virtualizao x86, mas tambm ao chipset
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 87
45
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Tecnologia de Virtualizao
A melhoria verificada na virtualizao x86 foi ento conseguida custa da adio de H/W especifico aos seguintes componentes:
P d
ador
es v
.07.
2012
by Processador: A Intel em 2005 e a AMD em 2006 criaram, de forma autnoma, o seguinte
novo conjunto de extenses (tecnologia de extenses para a virtualizao) arquitetura x86: AMD Virtualization (AMD-V), ntroduzido no Athlon 64, Athlon 64 X2 e
Athlon 64 FX Intel Virtualization (VT-x) , introduzido no Pentium 4
Chipset:
3.P
roce
ssa Chipset:
Permite a implementao da virtualizao da memria e da virtualizao de E/S, utilizando: IOMMU (AMD-Vi e VT-d) Virtualizao de Rede (VT-c) PCI-SIG I/O Virtualization (IOV)
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 88
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Tecnologia de Virtualizao
IOMMU: Permite que uma mquina virtual possa utilizar diretamente os
dispositivos perifricos (tais como Ethernet controladores de disco
ador
es v
.07.
2012
by dispositivos perifricos (tais como Ethernet, controladores de disco rgido,), atravs de remapeamento de DMA e/ou de interrupes
Foram lanadas as seguintes especificaes: I/O Virtualization Technology (AMD-Vi) originalmente denominada pela
AMD de IOMMU Virtualization Technology for Directed I/O (VT-d) desenvolvida pela Intel
VT-c (Virtualization Technology for Connectivity):
3.P
roce
ssa
Especificao que permite a virtualizao de Rede e que foi lanada pela Intel
PCI-SIG I/O Virtualization (IOV): Conjunto genrico de mtodos de virtualizao de hardware de E/S
baseado em PCI Express que foi padronizado pelo consrcio PCI-SIGDepartamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 89
46
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Tecnologia de Virtualizao
A Tecnologia de Virtualizao, nomeadamente a Intel Virtualization (VT-x) e a Virtualization Technology for
ador
es v
.07.
2012
by Directed I/O (VT-d), quando combinada com suporte de S/W apropriado (por exemplo VMWare) permite tirar vantagens de ambientes virtuais
Permite que uma nica plataforma de H/Wfuncione como mltiplas plataformas virtuais
Pode ser utilizada para tirar o mximo
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 90
desempenho da separao de tarefasno PC, de tal modo que cada tarefa podeser executada dentro do seu isoladoPC virtual
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Tecnologia de Virtualizao
Um exemplo das vantagens do uso da virtualizao ser a navegao
ador
es v
.07.
2012
by web dentro de um PC virtual:Permite aumentar a segurana,
pois a navegao web comporta riscos que podem potenciar a ocorrncia de ataques
Se PC virtual for infectado por vrus o mesmo pode ser encerrado
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 91
vrus, o mesmo pode ser encerrado, protegendo-se assim os recursos do PC
47
rv@
sco
Principais Caratersticas da Microarquitetura NetBurstde 64 bits - Tecnologia Enhanced SpeedStep
Ajusta de um modo automtico a tenso de alimentao da CPU, quando a carga do processador mnima (quando executa aplicaes que no requerem elevado poder de clculo):
ador
es v
.07.
2012
by
que no requerem elevado poder de clculo ): Baixa o consumo de energia do processador (e implicitamente o
calor libertado), uma vez que reduz automaticamente a sua frequncia e a sua tenso de alimentao, sempre que no seja necessrio obter o seu mximo desempenho
til para portteis, pois pode prolongar a carga das baterias
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 92
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - TDP (Thermal Design Power)
Potncia Trmica de Projeto ou Thermal Design Power (TDP): Mdia da potncia trmica mxima que o processador pode
di i ( l ) t t S/W i t di l
ador
es v
.07.
2012
by dissipar (calor), enquanto executa S/W que existe disponvel em termos comerciais
Constitui um valor de projeto que serve de guia para que os fabricantes de solues trmicas (ventiladores, ventoinhas) possam avaliar o calor que dever ser dissipado
TDP no quantifica a potncia trmica mxima que a CPU pode gerar:
E di CPU d lib i l l d
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 93
Em certas condies a CPU pode libertar mais calor que o valor de projeto, podendo a temperatura atingir o seu valor mximo (sem danificar a CPU)
TDP cerca de 20%-30% menor que a Potncia Mxima de Dissipao ou Maximum Power Dissipation (MPD)
48
rv@
sco
A Potncia Mxima de Dissipao ouM i P Di i i (MPD)
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - TDP (Thermal Design Power)
ador
es v
.07.
2012
by Maximum Power Dissipation (MPD): Potncia mxima dissipada pela CPU sob as
condies mais adversas: Tenso de alimentao do ncleo mxima Temperatura mximaCondies de carga do sinal eltrico mximas
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 94
Condies de carga do sinal eltrico mximas Deste modo:
MPD > TDP
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Tecnologia EM64T ou Intel 64
A partir do Pentium 4 Prescott, os processadores x86 Intel da microarquitetura NetBurst passam a suportar a
ador
es v
.07.
2012
by computao de 64 bits, uma vez que os Registos de Uso Geral (GPR) passam a ser de 64 bits. Isto foi possvel porque estes modelos integram: A Tecnologia de Memria Estendida 64 ou Tecnologia EM64T
(Extended Memory 64 Technology ) Todos os modelos Intel da familia x86 posteriores ao Pentium
4 Prescott utilizam um Modelo de Programao x86 de 64
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 95
4 Prescott utilizam um Modelo de Programao x86 de 64 bits (x86-64)
A adoo da Tecnologia EM64T teve outras implicaes que seguidamente sero explicadas
49
rv@
sco
Principais Caratersticas da Microarquitetura NetBurst de 64 bits - Tecnologia EM64T ou Intel 64
A Tecnologia EM64T permite enderear
ador
es v
.07.
2012
by
permite enderear mais memria fsica e virtual (alm dos 4GB)
til para aplicaes que precisam de muita memria (aplicaes 64 bits, p. ex.)
Aumenta o
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 96
u e ta odesempenho, poisreduz o swapping
* Requer suporte do chipset, BIOS, OS, drivers e aplicaes habilitados para tal
rv@
sco
Tecnologia EM64T ou Intel 64 Esta tecnologia foi originalmente desenvolvida pela AMD, tendo a
Intel clonado-aE t t l i di i t i t d 64 bit (i l i
ador
es v
.07.
2012
by Esta tecnologia que adiciona suporte a instrues de 64 bits (inclui novos registos, suporte a endereos de memria de 64 bits, ) foi baptizada pela AMD de X86-64. Posteriormente a AMD renomeou-a para AMD64: AMD no repetiu o erro da Intel que lanou uma plataforma
completamente nova (Itanium), incompatvel com os softwares atuais AMD decidiu desenvolver um projeto mais simples (AMD64), que
adicionasse suporte a instrues de 64 bits no Athlon, sem quebrar a
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 97
adicionasse suporte a instrues de 64 bits no Athlon, sem quebrar a compatibilidade com as aplicaes de 32 bits e sem perda de desempenho
A Intel adotou esta tecnologia sob a designao inicial de EM64T e posteriormente renomeou-a de Intel 64
50
rv@
sco
Computao de 64 bits Computao de 64 bits ou x86-64:
Constitui a evoluo da arquitetura x86, pelo que uma extenso de 64 bits relativamente arquitetura x86 de 32 bits
ador
es v
.07.
2012
by
64 bits relativamente arquitetura x86 de 32 bits Quando a Etiqueta 64 bits aplicada ao processador, carateriza
o fluxo de dados do mesmo Quando a Etiqueta 64 bits aplicada ao cdigo, significa que o
cdigo opera em dados de 64 bits De um especifico, a referncia processador de 64 bits designa
o nmero de bits (64) que cada Registo de Uso Geral (General Purpose Register GPR) pode armazenar:
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 98
u pose eg ste G ) pode a a e a Possui Registos GPRs que armazenam nmeros de 64 bits De igual modo, a referncia Instruo de 64 bits, significa que a
instruo opera sobre nmeros de 64 bits, que esto armazenados num Registo GPR de 64 bits
rv@
sco
Computao de 64 bits Num processador de 64 bits nem todos
os dados armazenados na memria, na cache e nos Registos so de 64
ador
es v
.07.
2012
by
na cache e nos Registos so de 64 bits. Assim, os tamanhos dos dados esto misturados, sendo que o maior corresponde a 64 bits
Nas 2 figuras, a largura do fluxo de cdigo no foi alterada, uma vez que o Opcode (cdigo binrio da instruo) pode representar 1 instruo que opera em nmeros de 32 bits ou de 64
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 99
pbits
Na figura de cima o fluxo de dados de entrada e de sada (resultados) esto representados como uma mistura de dados de 32 e 64 bits
51
rv@
sco A largura do fluxo de dados duplicou (relativamente aos
processadores de 32 bits), mas o fluxo de instrues manteve-se:
Computao de 64 bits
ador
es v
.07.
2012
by Para acomodar um maior fluxo de dados, o tamanho dos Registos do processador e o tamanho dos barramentos internos de dados (que alimentam esses Registos) tiveram de duplicar
O tamanho do Instruction Register (IR), que armazena a instruo que est a ser executada manteve o tamanho
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 100
rv@
sco Recordar que o tipo de informao que pode ser manipulada/
processada pelo processador :E d ( i i l d i i d i i d
Computao de 64 bits
ador
es v
.07.
2012
by Endereos (tipo especial de inteiros que designam posies de memria)
Dados de inteiros Dados de vrgula flutuante Dados vetoriais
Cada um dos itens referidos anteriormente possui o seu conjunto especifico de registos e as suas prprias Unidades
3.P
roce
ssa de Execuo:
Por exemplo, os dados de inteiros e os endereos so armazenados nos Registos de Uso Geral (GPR) e os respetivos clculos so realizados pela Unidade de Execuo ALU
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 101
52
rv@
sco A tabela compara os 4 tipos de dados suportados por processadores de 32 bits
e de 64 bits (no h alterao no H/W de vrgula flutuante e vetorial):
Computao de 64 bits
Tipo de Dados Tipo de Unidades de Tamanho x86 Tamanho
ador
es v
.07.
2012
by Tipo de Dados Tipo de Registos
Unidades de Execuo
Tamanho x86 (bits)
Tamanho x86-64 (bits)
Inteiros GPR ALU 32 64
Endereos GPR ALU ou AGU 32 64
Vrgula Flutuante FPR FPU 64 64
3.P
roce
ssa
Com a alterao dos Registos GPR de 32 para 64 bits, a gama de inteiros que o processador pode reconhecer e os clculos aritmticos que pode realizar passaram de 232 = 4.3 x109 para 1.8 x1019
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 102
Vetores VR VPU 128 128
rv@
sco At esta altura o Modelo de Programao x86 de 32 bits (IA-32)
apresenta as seguintes caratersticas:
EM64T / Intel 64 / x86-64
ador
es v
.07.
2012
by 8 Registos (GPR) de 32 bits 8 Registos x87/MMX de 80 bits 8 Registos SSE/SSE2 (SIMD) de 128 bits PC de 32 bits
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 103
53
rv@
sco Registos Estendidos:
Duplicao do tamanho dos 8 Registos de Uso Geral (General Purpose Register - GPR)
EM64T / Intel 64 / x86-64 Principais Alteraes
ador
es v
.07.
2012
by
Purpose Register - GPR) Atribuio de novas mnemnicas aos Registos estendidos Aumento do nmero de Registos:
Permite que o processador possa manter mais dados nos locais acedidos pelas Unidades de Execuo
Permite reduzir o nmero de Acessos Memria, pela diminuio de Loads e Stores de/para a memria
de realar que anteriormente (processadores IA-32) j tinham sido
3.P
roce
ssa de realar que anteriormente (processadores IA 32) j tinham sido
aumentados os Registos que esto escondidos do programador, atravs da tcnica Register Renaming. Por exemplo, no Pentium 4 existem apenas 8 Registos GPR, mas h igualmente 128 Registos Internos da Microarquitetura (escondidos do programador). De uma forma dinmica os 8 Registos visveis so mapeados nos 128 Registos que esto escondidos
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 104
rv@
sco Aumento do nmero de Registos:
16 Registos de 64 bits de Uso Geral (GPR):
EM64T / Intel 64 / x86-64 Principais Alteraes
ador
es v
.07.
2012
by Foram adicionados 8 novos Registos de 64 bits aos 8 GPR j existentes
Os 8 GPR j existentes foram estendidos para 64 bits Espao de armazenamento 4 vezes superior
16 Registos SIMD de 128 bits (SSE/SSE2): Foram adicionados 8 novos Registos de 128 bits aos 8
SSE/SSE2 j existentes
3.P
roce
ssa
Os 8 GPR j existentes mantiveram o tamanho de 128 bits Program Counter (PC) de 64 bits:
Aumentou de 32 bits para 64 bits
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 105
54
rv@
sco Aumento da Capacidade de Endereamento:
Capacidade de endereamento de 1 TB de memria
EM64T / Intel 64 / x86-64 Principais Alteraes
ador
es v
.07.
2012
by
Capac dade de e de ea e to de de e afsica (utilizao de 40 bits de endereos): No so usados 64 bits devido a questes relacionadas com o
desempenho, porque no h mdulos/placas usem tanta memria
Passagem de 4 GB (limite terico dos processadores de 32 bits) para 1 TB
C id d d d t d 256 TB (48 bit ) d
3.P
roce
ssa Capacidade de endereamento de 256 TB (48 bits) de
memria virtual
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 106
rv@
sco Resumo das caratersticas do
Modelo de Programao x86 de 64 bit ( 86 64) t
EM64T / Intel 64 / x86-64
ador
es v
.07.
2012
by 64 bits (x86-64) apresenta as seguintes caratersticas: 16 Registos (GPR) de 64 bits 8 Registos x87/MMX de 80 bits 16 Registos SSE/SSE2 (SIMD) de
128 bits PC de 64 bits
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 107
55
rv@
sco
Modos de Operao x86-64 Para haver compatibilidade binria com o cdigo
x86 existente (32 bits e 64 bits), os processadores
ador
es v
.07.
2012
by
x86 existente (32 bits e 64 bits), os processadores x86-64 podem operar em diversos modos assim agrupados:Modo Longo (Long Mode) ou Modo de 64 bitsModo de Compatibilidade (Legacy Mode)
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 108
rv@
sco
Modos de Operao x86-64 Modo Longo (Long Mode) ou Modo de 64 bits:
Serve para colocar o CPU a funcionar a 64 bits. Para alm
ador
es v
.07.
2012
by
Serve para colocar o CPU a funcionar a 64 bits. Para alm dos recursos de 64 bits, so oferecidos registos estendidos para 64 bits bem como adio de novos registos
Requer S.O. de 64 bits e suporta compatibilidade com aplicaes de 32 e 16 bits
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 109
56
rv@
sco
Modos de Operao x86-64Modo de Compatibilidade (Legacy Mode):
Preserva a compatibilidade com aplicaes e S O de
ador
es v
.07.
2012
by
Preserva a compatibilidade com aplicaes e S.O. de 16 e 32 bits
Comporta-se como CPU x86 standard, no sendo adicionadas capacidades de x86-64
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 110
rv@
sco
Modos de Operao x86-64 A estratgia ento usada foi a extenso dos
processadores x86 para trabalharem em 64 bits, com a
ador
es v
.07.
2012
by
p p ,introduo do Modo 64 bits: J tinha sido utilizada uma soluo do mesmo gnero na
transio de 16 bits (CPUs 8088 e 80286) para 32 bits (CPUs80386 e posteriores)
Relembrar que os processadores de 32 bits operam em dois modos:
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 111
em dois modos:Modo real, ficam iguais ao antigo 8088Modo protegido, oferecem recursos de 32 bits, junto com
gestores de tarefas e de memria
57
rv@
sco
Modos de Operao x86-64
Modo deoperao
S.O.Recompilao
de aplicaes
Tam. dosendereos
Tam. dosoperandos
Extensesde
Tam. tpico
regis uso
ador
es v
.07.
2012
by
operao de aplicaes (bits) (bits) registos regis. uso geral
LongMode
64 bit Mode
64 bits
Sim 6432
Sim 64
CompatibilityMode No
32No
32
16 16 16
Legacy
ProtectedMode
32 bits
32 3232
16 16
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 112
LegacyMode No NoVirtual-8086
Mode16 16 16
Real Mode 16 bits
rv@
sco
Processadores x86-64 vs. Processadores IA-64
de realar que os processadores da microarquitetura Netburst no foram os primeiros a suportar o processamento
ador
es v
.07.
2012
by de 64 bits. O 1 processador nativo Intel de arquitetura de 64 bits foi o
Itanium (microarquitetura Merced):Era destinado para:
O mercado dos servidores Concorrer com os processadores RISC (Reduced
3.P
roce
ssa
Departamento de Engenharia Informtica - Escola Superior de Tecnologia e Gesto Instituto Politcnico de Leiria 113
Concorrer com os processadores RISC (ReducedInstruction Set Computer)
Integrava novas instrues (IA-64): Incompatveis c/ famlia x86 de 32 bits (IA-32), pelo que
diminui carga necessria para manter retrocompatibilidade
58
rv@
sco
Processadores x86-64 vs. Processadores IA-64 A principal vant