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

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

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

Apresentações semelhantes


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

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

2 Arquitetura do Pentium Bus Unit Page Unit 8kb instruction cache TLB Branch target buffer 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 8kb data cache TLB Floating point registers 256 Data bus - 64 bits Add. Bus 32 bits Control bus Add. Data 32 Address bus - 32 bits Data bus - 64 bits Add. generate V pipe Add. generate U pipe Integer register file ALU V pipe ALU U pipe Shifter Instruction pointer Branch target address 32 Floating point unit Prefetch address

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 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 Prefet. Buffer V 64 bytes Prefet. Buffer U 64 bytes 256 bits Decod. D1 V Decod. D1 U

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

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

7 Decod. D2 V Decod. D2 U Arquitetura do Pentium Decod. D1 V Decod. D1 U Unidade de Microcódigo Conrole ADDDIVMUL FPU Reg. File 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 I1 I2I3 I4I5 I6I7 I8I9 I10 I1 I2I3 I4 I5 I6I7 I8 I1 I2I3 I4I5 I6 I1 I2 I3 I4 I1 I2 PF D1 D2 EX WB

10 Previsão Dinâmica de Desvio 8kb instruction cache TLB Branch target buffer 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 256 Instruction pointer Branch target address Prefetch address H:11 P:T H:10 P:T H:00 P:NT H:01 P:T NT T T T T Address Instruction Targ. Add. History Prediction.

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 PFD1D2EX X1X2WF ER Bypass Fluxo de instruções e de dados Pipeline U Fluxo de dados 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 PFD1D2EX X1X2WF ER Bypass 2 Bypass 1 Fluxo de instruções e de dados Pipeline U Fluxo de dados 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 Registradores de Ponto Flutuante 80 bits 64 bits MM7 MM6 MM5 MM4 MM3 MM2 MM1 MM0 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. ST(0) ST(1) ST(2) ST(3) ST(4) ST(5) ST(6) ST(7)

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

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 Barramento I cache I cache I cache I cache D cache D cache D cache D cache X=7 X=30 X=10 P1 P2 p3 p4

18 Pentiu m II/III

19 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 I-cache Instruction Fetch Unit Next_IP Branch Target Buffer Microcode Instruction Sequencer Register Alias Table Instruction Decode Unit Simple Decoder IA-32 instructions Alignment Simple Decoder General Decoder op1 op2op3 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/Execut e Unit to/from Reorder Buffer Port 0 Port 1 Port 2 Port 3 Port 4 Reservation Station Unit MMX Functional Unit Floating-point Functional Unit Integer Functional Unit MMX Functional Unit Jump Functional Unit Integer Functional Unit Load Functional Unit Store Functional Unit Store Functional Unit


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

Apresentações semelhantes


Anúncios Google