logging in or signing up HPProcessor worm Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINTLite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 290 Category: Entertainment License: All Rights Reserved Like it (1) Dislike it (0) Added: December 29, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript Microarquitetura P6: Microarquitetura P6 O P6 foi a base para Pentium Pro, Pentium II e Pentium III; Introduzida em 1995 se constituiu em uma nova microarquitetura para processadores compatíveis ao x86; Diferenças: extensões no conjunto de instruções (MMX somado ao Pentim II e SSE ao Pentim III (SIMD para multimedia); Características importantes: Processador super escalar (5 unidades de execução) Reorder buffer e Memory Reorder Buffer Branch Target Buffer Cache L1 de dados e instruções separados Cache L2 juntoMicroarquitetura: MicroarquiteturaDecodificação: Decodificação As instruções são convertidas em uop, instruções tipo RISC têm três operandos (duas fontes e um destino); são register-register; operações que trabalham direto sobre a memória têm de ser quebradas em mais de uma uop. Há três unidades de decodificação que decodificam uma instrução por ciclo de clock uma geral que pode receber qualquer instrução: gera de 1 a 4 uop/ciclo; duas simples que geram apenas uma uop/ciclo. instruções que precisam mais do que 4 uop são manipuladas pelo uop sequencer Para maximizar a operação no decodificador devemos ter uma combinação de três instruções que gerem 4-1-1 uop. De acordo a Intel na média cada instrução usa 1,5-2,0 uopsReorder e Renaming: Reorder e Renaming Reorder Buffer tem 40 entradas que guardam os resultados de load e de cálculos. RRF: Real Register File; RAT: Register Alias Table; Status: fornece o status da instrução; O RAT indica se o valor do registrador está no ROB ou no RRF. Com isto é executado o renaming. Tal operação é essencial no Pentium pois o numero de registradores da arquitetura x86 é pequeno. Até 3 uops podem passar pelo renaming e pelo ROBUnidades de Execução: Unidades de Execução Há 20 Reservation Stations; Há cinco unidades de execução: p/ cálculo de endereço de load p/ cálculo de endereço de stores p/ preparar dado para stores Duas p/ cálculos com inteiro e P.F. podem ser dispatched (issue) até 5 uops/ciclo. Uma instrução de store precisa duas uops: uma para calcular o endereço e outra para preparar o dado; O scheduling ideal é aquele onde todas as unidades de execução estejam sempre ocupadas. Para implementações com MMX (PIII)ROB e MOB (Memory Reorder Buffer): ROB e MOB (Memory Reorder Buffer) O ROB pode aceitar até 3 uops/ciclo 1 da unidade aritmética principal; 1 da unidade aritmética secundária; 1 do load. O ROB pode retire (commit) até 3 uops/ciclo. MOB serve para evitar que o store seja feito fora de ordem. Loads podem ser feitos fora de ordem; Quando um load é feito, é verificado se seu endereço não coincide com o de um store que está no MOB;Cache L1 e L2: Cache L1 e L2 O cache L1 está dividido em dados e instruções. 8 Kbytes de instruções: largura de barramento 128 bits 8 Kbytes de dados: duas portas de 32 bits, permitindo uma leitura e uma escrita simultâneas a cada ciclo de clock (três ciclos de latência) Com cache pequeno a leitura é mais rápida O cache L2 é maior com 256Kbytes cache L2 P6Características do Cache: Características do Cache Nonblocking: se no acesso a um dado há um miss, enquanto não for passado o dado para o cache outros dados podem ser lidosPipeline: Pipeline Pipeline de 12 estágios: caso simples onde a execução leva apenas um ciclo de clock (operações com inteiros) e não há atrasos durante a execuçãoSlide10: Pipeline: execução simples e acesso à cachePipeline: saltos: Pipeline: saltos Se a instrução estiver no BTB faz a previsão do endereço de salto Se a instrução não estiver no BTB apenas aqui é determinado que é branch e o endereço para onde pode saltar É adotada a seguinte política: salto para frente é considerado não tomado; salto para trás é considerado tomado (não descarta as uops que já inicializaram) Apenas neste ponto é determinado se o salto devia ou não ter sido dado. 10 uop, ou mais, podem ser descartadas. Foto do P6: Foto do P6Resumo: ResumoComparação com outras implementações: Comparação com outras implementaçõesSlide15: A comparação interessante é com o MIPS R10000. Este é um processador RISC puro. O P6 gasta um número maior de transistores na parte lógica devido a dificuldades de decodificação das instruções (custo em manter a compatibilidade); O MIPS pode gastar um número maior de transistores com cache (maior); O MIPS consegue um clock maior mesmo com pipeline menos profundo; Em função disso, em tecnologias semelhantes, o MIPS é 50% mais veloz no SPECint e 300% no SPECfp.Slide17: Tamanho do BTB: 512 entradasPentium 4: Pentium 4 Conhecida como arquitetura NetBurst introduzido em 2000 Características importantes Ainda decodifica instr. X86 para uop. Tem um melhor preditor de branch Tem uma BTB maior: 4K entradas mais unidades de execução O cache de instruções armazena as uop, depois de codificadas (chamado de trace cache). Barramento de memória mais rápido: de 133 MHz para 400 MHz 24 estágios de pipeline (contra 14 do P6 e 5 do Pentium)Microarquitetura: MicroarquiteturaSlide23: Decodificação As instruções são convertidas em uop, instruções tipo RISC Há uma unidade de decodificação que decodifica uma instrução por ciclo de clock gerando de 1 a 4 uop. Para instruções que necessitam mais uop é usada uma ROM para geração. A redução no número de unidades de decodificação se deve ao fato de se ter o Trace Cache para os uops. Reorder e Renaming: Reorder e Renaming Reorder Buffer aramazena apenas o status da instrução e tem 126 posições O RF (register file) tem 128 registradores para renaming RRF: Real Register File; Existem duas listas RAT (Register Alias Table): nesta nova estrutur se procura evitar o movimento de dados de um registrador para outroSlide25: Unidades de execução AGU (address generator unit): gera endereços para o load AGU (address generator unit): gera endereços para o store 2 ULAs para instruções simples: cada uma executa até duas operações em um ciclo de clock 1 ULA para uop complexas Unidade de ponto flutuante: executa operações em F.P. e operações MMX e SSE Unidade para movimentos e PF. Slide26: Há 4 portas para fazer o dispatch (issue): podem ser iniciadas a execução de até 6 uop/ciclo É feito no máximo 3 uops retire. Quando um load lê um dado que ainda está no MOB, então o uop pega este dado direto desse buffer.Foto do Pentium 4: Foto do Pentium 4 Transistores: 42M PIII: 26M Área: 217 mm2 PIII: 106 mm2 Por quê?: Por quê? Número de instruções é o mesmo para PIV, PIII e ATLHON; Freqüência do Clock: PIV > ATHLON > PIII Tempo de execução: números de instr. X CPI X 1/(clock Freq.) O número de CPI do PIV deve ser pior do que os dois outros.Preços de Processadores: Preços de ProcessadoresFreqüência do Clock (MHz): Freqüência do Clock (MHz)SPECint2000: SPECint2000SPECint2000: SPECint2000SPECint2000 por MHz: SPECint2000 por MHz MIPSSlide35: Power Density (W/mm2)Freqüência Relativa: Freqüência Relativa 5 estágios 10 estágios 20 estágiosComparação de Peformance: Comparação de PeformancePentium HT: Pentium HTDetalhes da Entrada (Front-End): Detalhes da Entrada (Front-End)Execução fora de Ordem: Execução fora de OrdemComparação de Peformance: Comparação de Peformance You do not have the permission to view this presentation. In order to view it, please contact the author of the presentation.
HPProcessor worm Download Post to : URL : Related Presentations : Share Add to Flag Embed Email Send to Blogs and Networks Add to Channel Uploaded from authorPOINTLite Insert YouTube videos in PowerPont slides with aS Desktop Copy embed code: (To copy code, click on the text box) Embed: URL: Thumbnail: WordPress Embed Customize Embed The presentation is successfully added In Your Favorites. Views: 290 Category: Entertainment License: All Rights Reserved Like it (1) Dislike it (0) Added: December 29, 2007 This Presentation is Public Favorites: 0 Presentation Description No description available. Comments Posting comment... Premium member Presentation Transcript Microarquitetura P6: Microarquitetura P6 O P6 foi a base para Pentium Pro, Pentium II e Pentium III; Introduzida em 1995 se constituiu em uma nova microarquitetura para processadores compatíveis ao x86; Diferenças: extensões no conjunto de instruções (MMX somado ao Pentim II e SSE ao Pentim III (SIMD para multimedia); Características importantes: Processador super escalar (5 unidades de execução) Reorder buffer e Memory Reorder Buffer Branch Target Buffer Cache L1 de dados e instruções separados Cache L2 juntoMicroarquitetura: MicroarquiteturaDecodificação: Decodificação As instruções são convertidas em uop, instruções tipo RISC têm três operandos (duas fontes e um destino); são register-register; operações que trabalham direto sobre a memória têm de ser quebradas em mais de uma uop. Há três unidades de decodificação que decodificam uma instrução por ciclo de clock uma geral que pode receber qualquer instrução: gera de 1 a 4 uop/ciclo; duas simples que geram apenas uma uop/ciclo. instruções que precisam mais do que 4 uop são manipuladas pelo uop sequencer Para maximizar a operação no decodificador devemos ter uma combinação de três instruções que gerem 4-1-1 uop. De acordo a Intel na média cada instrução usa 1,5-2,0 uopsReorder e Renaming: Reorder e Renaming Reorder Buffer tem 40 entradas que guardam os resultados de load e de cálculos. RRF: Real Register File; RAT: Register Alias Table; Status: fornece o status da instrução; O RAT indica se o valor do registrador está no ROB ou no RRF. Com isto é executado o renaming. Tal operação é essencial no Pentium pois o numero de registradores da arquitetura x86 é pequeno. Até 3 uops podem passar pelo renaming e pelo ROBUnidades de Execução: Unidades de Execução Há 20 Reservation Stations; Há cinco unidades de execução: p/ cálculo de endereço de load p/ cálculo de endereço de stores p/ preparar dado para stores Duas p/ cálculos com inteiro e P.F. podem ser dispatched (issue) até 5 uops/ciclo. Uma instrução de store precisa duas uops: uma para calcular o endereço e outra para preparar o dado; O scheduling ideal é aquele onde todas as unidades de execução estejam sempre ocupadas. Para implementações com MMX (PIII)ROB e MOB (Memory Reorder Buffer): ROB e MOB (Memory Reorder Buffer) O ROB pode aceitar até 3 uops/ciclo 1 da unidade aritmética principal; 1 da unidade aritmética secundária; 1 do load. O ROB pode retire (commit) até 3 uops/ciclo. MOB serve para evitar que o store seja feito fora de ordem. Loads podem ser feitos fora de ordem; Quando um load é feito, é verificado se seu endereço não coincide com o de um store que está no MOB;Cache L1 e L2: Cache L1 e L2 O cache L1 está dividido em dados e instruções. 8 Kbytes de instruções: largura de barramento 128 bits 8 Kbytes de dados: duas portas de 32 bits, permitindo uma leitura e uma escrita simultâneas a cada ciclo de clock (três ciclos de latência) Com cache pequeno a leitura é mais rápida O cache L2 é maior com 256Kbytes cache L2 P6Características do Cache: Características do Cache Nonblocking: se no acesso a um dado há um miss, enquanto não for passado o dado para o cache outros dados podem ser lidosPipeline: Pipeline Pipeline de 12 estágios: caso simples onde a execução leva apenas um ciclo de clock (operações com inteiros) e não há atrasos durante a execuçãoSlide10: Pipeline: execução simples e acesso à cachePipeline: saltos: Pipeline: saltos Se a instrução estiver no BTB faz a previsão do endereço de salto Se a instrução não estiver no BTB apenas aqui é determinado que é branch e o endereço para onde pode saltar É adotada a seguinte política: salto para frente é considerado não tomado; salto para trás é considerado tomado (não descarta as uops que já inicializaram) Apenas neste ponto é determinado se o salto devia ou não ter sido dado. 10 uop, ou mais, podem ser descartadas. Foto do P6: Foto do P6Resumo: ResumoComparação com outras implementações: Comparação com outras implementaçõesSlide15: A comparação interessante é com o MIPS R10000. Este é um processador RISC puro. O P6 gasta um número maior de transistores na parte lógica devido a dificuldades de decodificação das instruções (custo em manter a compatibilidade); O MIPS pode gastar um número maior de transistores com cache (maior); O MIPS consegue um clock maior mesmo com pipeline menos profundo; Em função disso, em tecnologias semelhantes, o MIPS é 50% mais veloz no SPECint e 300% no SPECfp.Slide17: Tamanho do BTB: 512 entradasPentium 4: Pentium 4 Conhecida como arquitetura NetBurst introduzido em 2000 Características importantes Ainda decodifica instr. X86 para uop. Tem um melhor preditor de branch Tem uma BTB maior: 4K entradas mais unidades de execução O cache de instruções armazena as uop, depois de codificadas (chamado de trace cache). Barramento de memória mais rápido: de 133 MHz para 400 MHz 24 estágios de pipeline (contra 14 do P6 e 5 do Pentium)Microarquitetura: MicroarquiteturaSlide23: Decodificação As instruções são convertidas em uop, instruções tipo RISC Há uma unidade de decodificação que decodifica uma instrução por ciclo de clock gerando de 1 a 4 uop. Para instruções que necessitam mais uop é usada uma ROM para geração. A redução no número de unidades de decodificação se deve ao fato de se ter o Trace Cache para os uops. Reorder e Renaming: Reorder e Renaming Reorder Buffer aramazena apenas o status da instrução e tem 126 posições O RF (register file) tem 128 registradores para renaming RRF: Real Register File; Existem duas listas RAT (Register Alias Table): nesta nova estrutur se procura evitar o movimento de dados de um registrador para outroSlide25: Unidades de execução AGU (address generator unit): gera endereços para o load AGU (address generator unit): gera endereços para o store 2 ULAs para instruções simples: cada uma executa até duas operações em um ciclo de clock 1 ULA para uop complexas Unidade de ponto flutuante: executa operações em F.P. e operações MMX e SSE Unidade para movimentos e PF. Slide26: Há 4 portas para fazer o dispatch (issue): podem ser iniciadas a execução de até 6 uop/ciclo É feito no máximo 3 uops retire. Quando um load lê um dado que ainda está no MOB, então o uop pega este dado direto desse buffer.Foto do Pentium 4: Foto do Pentium 4 Transistores: 42M PIII: 26M Área: 217 mm2 PIII: 106 mm2 Por quê?: Por quê? Número de instruções é o mesmo para PIV, PIII e ATLHON; Freqüência do Clock: PIV > ATHLON > PIII Tempo de execução: números de instr. X CPI X 1/(clock Freq.) O número de CPI do PIV deve ser pior do que os dois outros.Preços de Processadores: Preços de ProcessadoresFreqüência do Clock (MHz): Freqüência do Clock (MHz)SPECint2000: SPECint2000SPECint2000: SPECint2000SPECint2000 por MHz: SPECint2000 por MHz MIPSSlide35: Power Density (W/mm2)Freqüência Relativa: Freqüência Relativa 5 estágios 10 estágios 20 estágiosComparação de Peformance: Comparação de PeformancePentium HT: Pentium HTDetalhes da Entrada (Front-End): Detalhes da Entrada (Front-End)Execução fora de Ordem: Execução fora de OrdemComparação de Peformance: Comparação de Peformance