A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Família Intel P5 e P6 P5 P6 NetBurst Incluindo cache L2.

Apresentações semelhantes


Apresentação em tema: "Família Intel P5 e P6 P5 P6 NetBurst Incluindo cache L2."— Transcrição da apresentação:

1 Família Intel P5 e P6 P5 P6 NetBurst Incluindo cache L2

2 Arquitetura do Pentium
Floating point unit Floating point registers Instruction pointer Branch target buffer Branch target address 32 Prefetch address 8kb instruction cache P b I d r u n e e f s c f f t o e e r d t r u e c t. h Control ROM C o n u t n r i o t l Add. generate V pipe ALU V pipe 8kb data cache 256 Integer register file Add. generate U pipe ALU U pipe TLB Shifter TLB Page Unit 32 Address bus - 32 bits Data bus bits Add. Bus Unit Data Data bus - 64 bits Control bus Add. Bus 32 bits

3 Arquitetura do Pentium
Dois pipelines de 5 estágios: U e V Estágios PF - prefetch D1 - instruction decode D2 - address generate EX - execute, cache, ALU access WB - writeback

4 Arquitetura do Pentium
Prefet. Buffer V 64 bytes U 256 bits Decod. D1 V U 256 bits P b I d r u n e e f s c f f t o e e r d t r u e c t. h

5 Arquitetura do Pentium
Para o BTB Decod. D1 V U Decod. D2 V U Ger. End. V Ger. End. U Para o BTB

6 Arquitetura do Pentium
Decod. D1 V U ALU V REG ALU U Decod. D2 V Decod. D2 U Unidade de Microcódigo

7 Arquitetura do Pentium
FPU Decod. D1 V U Decod. D2 V Conrole Reg. File ADD DIV MUL Decod. D2 U Unidade de Microcódigo Dados

8 Arquitetura do Pentium
Execução Super-Escalar Ambas as instruções devem ser simples. Sem dependência de dados. As instruções não podem ter modos de endereçamento imediato e indireto. Instruções com prefixo só podem ser executadas no pipelin U. Não requerem micro-código para serem executadas. Normalmente levam 1 ciclo de clock para serem executadas. ADD AX,BX (não podem ser executadas ADD AX,CX em paralelo) MOV TABLE[SI],7 MOV ES:[DI],AL

9 Arquitetura do Pentium
Execução Super-Escalar Ciclos de clock I I2 I I4 I I6 I I8 I I10 PF D1 D2 EX WB I I2 I I4 I I6 I I8 I I2 I I4 I I6 I I2 I I4 I I2

10 Previsão Dinâmica de Desvio
NT T H:11 P:T H:10 P:T T Instruction pointer Branch target buffer NT T Branch target address T H:00 P:NT H:01 P:T Prefetch address NT 8kb instruction cache P b I d r u n e e f s c f f t o e e r d t r u e c t. h NT 256 Address Instruction Targ. Add. History Prediction TLB .

11 Unidade de Ponto Flutuante
PF - pré-busca D1 - decodificação de instrução D2 - geração de endereço EX - leitura de memória e registradores. Conversão do formato de ponto flutuante em formato de memória. Escrita em memória. X1 - primeiro estágio de execução. Dados da memória são convertidos no formato ponto flutuante. Escreve o operando para os registradores de ponto flutuante. X2 - segundo estágio de execução. WF - arrendonda o resultado e escreve nos registradores de ponto flutuante. ER - sinalização de erro e atualização da palavra de status.

12 Unidade de Ponto Flutuante
Pipeline U PF D1 D2 EX Fluxo de instruções e de dados Bypass ER Fluxo de dados WF X2 X1 ST(0) ST(1) ST(2) ST(3) ST(4) ST(5) ST(6) ST(7) Registradores de Ponto Flutuante 80 bits

13 Unidade de Ponto Flutuante
Pipeline U PF D1 D2 EX Fluxo de instruções e de dados Bypass 2 Bypass 1 ER Fluxo de dados WF X2 X1 ST(0) ST(1) ST(2) ST(3) ST(4) ST(5) ST(6) ST(7) Registradores de Ponto Flutuante 80 bits

14 Registradores MMX Acesso direto Mudança automática ao se executar uma
instrução MMX Executar instrução EMMS para retorno ao acesso dos reg. de ponto flutuante. Registradores de Ponto Flutuante 80 bits 1 ST(0) ST(1) ST(2) ST(3) ST(4) ST(5) ST(6) ST(7) MM7 MM6 MM5 MM4 MM3 MM2 MM1 MM0 64 bits Registradores MMX

15 Barramento de Dados Pentium 64 Bit Dev. 32 Bit Dev. 16 Bit Dev. A31:A3
Add. Trans A2,BE3: BE0 BE7:BE0 A2,A1 BHE,BLE A2,A1,A0 64 Bit Dev. 32 Bit Dev. 16 Bit Dev. 8 BitDev.

16 Coerência de Cache em Sistemas Multiprocessadores
Protocolo de coerência de Cache MESI Modified - a linha corrente foi modificada (diferente da informação na memória principal) e pertence a uma única cache. Exclusive - linha não modificada e exclusiva de uma única cache. Escrevendo-se nesta linha, esta passa para o estado Modified. Shared - linha corrente pertence a mais de uma cache. Ao escrever-se nesta linha, um writethrough é gerado e invalia-se as outras cópias em outras caches. Invalid - a linha corrente está vazia. Uma leitura desta linha gera um miss.

17 Coerência de Cache em Sistemas Multiprocessadores
X=7 I cache I cache D cache D cache Barramento P2 p4 I cache D cache I cache D cache X=10 X=30

18 Pentium II/III Bus externo Cache L2 Memory Reorder Buffer
Bus Interface Unit Instruction Fetch Unit (com I-cache) Reservation Station Unit Cache L2 Bus externo Memory Reorder Buffer D-cache Unit Instruction Decode Interface Functional Units Microcode Sequencer & Retirement Register File Branch Target Alias Table Pentium II/III

19 Pentium II/III A instruction fetch unit (IFU) lê a I-cache, baseado no IP, no BTB, e interrupção. Branch prediction: BTB contêm 512 entradas com informações sobre a “história” e endereços destino (previstos). Penalidades devido a Branch misprediction: pelo menos 11 cíclos, em média 15 cíclos A instruction decoder unit (IDU) é formada por três decodificadores.

20 Pentium II/III As instruções IA-32 são “quebradas” em micro-operações (ops). Cada ops possui dois operandos fonte e um operando destino. As ops têm comprimento fixo. A maioria das IA-32 são convertidas em uma única ops (por qualquer um dos decodificadores). Algumas instruções são transformadas (decodificadas) em até 4 ops (1,2,3 e 4) pelo general decoder. Instruções mais complexas apontam para micro-códigos no microcode instruction sequencer (MIS) que gerará o fluxo apropriado de ops. As ops são enviadas para register alias table (RAT), onde ocorre a renomeação de registradores. As referências aos registradores lógicos (IA-32) são convertidas em referências aos registradores físicos. As ops prosseguem para reorder buffer (ROB, 40 entradas) e para reservation station unit (RSU, 20 entradas).

21 Unidade de Busca e decodificação - Fetch/Decode Unit
IA-32 instructions Instruction Fetch Unit I-cache Next_IP Alignment Branch Target Buffer Microcode Instruction Sequencer General Decoder Simple Decoder Simple Decoder Instruction Decode Unit Register Alias Table op1 op2 op3 in-order section instruction decoder unit (IDU)

22 Seção de Execução for a de ordem
O envio das ops ao ROB é feito na ordem do programa. As ops são enviadas para RSU que possui 20 reservation stations (RS), cada uma capaz de executar uma op. As ops são enviadas às unidades funcionais de acordo com a dependência de dados e de recursos, sem observar a ordem do programa. A RSU tem cinco portas e pode enviar até cinco ops por cíclo.

23 Latência e throughtput no Pentium II/III FUs

24 Issue/Execute Unit MMX Functional Unit Floating-point Integer Port 0
to/from Reorder Buffer Port 0 Port 1 Port 2 Port 3 Port 4 Reservation Station Unit MMX Functional Unit Floating-point Integer Jump Load Store Issue/Execute Unit


Carregar ppt "Família Intel P5 e P6 P5 P6 NetBurst Incluindo cache L2."

Apresentações semelhantes


Anúncios Google