02.1 Sistemas de Memoria

Embed Size (px)

Citation preview

  • Organizao e Arquitetura de computadoresProf. Wilfredo Blanco FiguerolaCurso Superior de:Tecnologia em Analise e Desenvolvimento de SistemasRedes

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    EmentaIntroduo Organizao de ComputadoresArquitetura e organizao de computadores: viso geralComponentes do sistema de computadorEvoluo dos ComputadoresSistema de MemriaRepresentao numricaCaractersticas e tiposEstrutura e organizaoHierarquia de memriaMemria principalMemria virtualMemria cacheMemria secundriaUnidade Central de ProcessamentoProcessadoresConstruo de uma via de dadosAbordagem monocicloAbordagem multi-cicloPipelineEvoluo dos ProcessadoresProcessadores CISC e RISCMquinas escalaresMquinas superescalaresMquinas VLIWTendnciasSistema de Entrada e SadaSistema de Interconexo: BarramentosEstruturas de interconexoInterconexo de barramentosMdulos de E/STcnicas de Controle para Transferncia de DadosE/S ProgramadaE/S Dirigida por InterrupoAcesso Direto Memria (DMA)Introduo Arquitetura de ComputadoresA viso do SoftwareO compiladorO montadorO ligadorO carregadorO processo de bootLinguagem de MontagemOperaes e operandosInstrues Lgicas e AritmticasInstrues de desvioLinguagem de MquinaCodificao das InstruesLinguagem de descrio de ArquiteturaAnatomia de um arquivo executvel

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaIntroduo Dispositivos de entradaDispositivos de sadaMemoria primaria (RAM)Programas so armazenados aquiProcessadorControlador de memoriaMemoria secundaria(discos rgidos, CDs, etc)

    Externa (L2)

    Memria Principal

    Armazenamento

    Externo

    Memria Cache

    Interna (L1)

    Armazenamento

    de Segurana

    Capacidade de Armazenamento

    Fita Magntica, MO, WORM

    Memria Interna

    Memria Secundria

    HD, FD, ZIP, CD, DVD

    Custo por bit

    Registradores

    Velocidade de acesso

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria interna: RegistradoresO objetivo de toda memria ou subsistema de memria e armazenar informao, que em algum momento, seja utilizada pelo processador.

    Antes de uma memria sela utilizada, o processador necessita busc-la (memria cache ou principal) e armazen-la no seu prprio interior, nos registradores.

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria interna: RegistradoresRegistradorElemento superior da pirmide de memriaMaior velocidade de transfernciaMenor capacidade de armazenamentoMaior custoTempo de acesso: um ciclo de memria (em torno de 1 ou 2 nanos-segundos)Capacidade: armazenam um nico dado, dependendo do tipo de processador.Volatilidade: so memrias volteis, necessitam de energia para funcionarem.Tecnologia: bipolar e MOS (metal oxide semicondutor)Temporalidade: guardam informao o mais temporariamente possvel (tempo necessrio para ser utilizada na UAL).Custo: elevado

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria cachewww.yourdictionary.com/computer/cacheSistemas de computao antigos no possua memria cache.Em toda execuo de uma instruo, o processador acessa a memria principalDependendo do tipo de instruo, levava mais de um ciclo de memria. Esta interface entre o processador e a memria vem sendo um ponto frgil para o performance (gargalo)(1) Motivo para o surgimento do projeto de uso de memoria cache

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria cacheMemria cache: dispositivo de memria, fabricado com tecnologia semelhante do processador, localizado entre o processador e a memria principal.Tempo de acesso: 5 a 20 nsCapacidade: L1 oscilam entre 32 e 256KB e at 4MB para L2.Volatilidade: so dispositivos volteis.Tecnologia: circuitos eletrnicos de alta velocidade, constitudas de um capacitor/transistor, requerem de recarregamento.Temporariedade: baixoCusto: alto

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria cache(1) Diferena de velocidade processador->memria principalOperaoSoma: 2nsMemriaprincipalTransferncia: 100nsProcessadorCiclo de tempo do processador muito menor que o ciclo tempo da memria principal Estado de espera (wait state) maiorTecnologia vs CustoSe agrava com o uso concorrente de vrios programas (multi-programao)Em 1960 IBM analisaram o comportamento dos processos (programas)

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria cache(2) Principio da localidadeMPExecuo em seqncia Loop 1Loop 2sub_rotina 1Localidade espacial:Localidade temporal:Os programas so executados em pequenos blocos de instrues, executados seqencialmenteOs programas tenderem a usar freqentemente o mesmo endereo em curtos espaos de tempo.

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria cache (Organizao e funcionamento)(2) Principio da localidade (espacial e temporal)(1) Diferena de velocidade processador->memria principalOrganizao e funcionamento da memria cacheDeve possuir elevada velocidade de transferncia

    Tamanho capaz de armazenar partes de um programa

    Suficientemente pequenas para no elevar o custo do sistema.

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria cache (Organizao e funcionamento)Transferncia cache/MP:Bloco por blocos de palavrasTransferncia cache/processador:Palavra por palavraProcessador

    MemriaPrincipal

    MemriaCache

    BD Barramento de dadosBE Barramento de endereoBCBCA conexo entre os dispositivos comum ao processador a as duas memorias.

    Redundancia

    Facilitando a comunicao entre os trs componentes.BCBD - BEEc = -------------------- * 100Acertos (Hit)Total acessosEficincia da cache

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria cache (Organizao e funcionamento)Linha 0Linha 1Linha L-1B BlocosByte 0Byte 1Byte 2Byte 3Byte 4Byte 5Byte 6Byte 7Byte 8Byte N-1TagDadosBloco 0Bloco 1Bloco B-1Memria principalN nmero de palavras ou clulasX nmero de clulas de uma linha B = ----------- * 100NX

    Byte3Byte2Byte1Byte0. . . . Byte 1Byte 0

    :::::Byte 1

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria cache (Organizao e funcionamento)No. de Blocos (B) >>> Linhas (L) Dedicir entre vrias alternativas tecnolgicas:

    Mapeamento de dados MP/cacheDiretoAssociativoAssociativo por conjuntoAlgoritmos de substituo de dados na cache Poltica de escrita pela cacheNveis de cacheDefinio do tamanho das memrias cache, L1 e L2Escolha de Largura de linha de cacheRequerendo

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria cache (Tipos)Podem se definir dois tipos (ate agora):

    UPC/MP (cache de RAM ou RAM Cache)

    MP/Discos (cache de disco ou Disk Cache)

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    Sistema de MemriaMemria cache (Atuais arquiteturas)http://hothardware.com/printarticle.aspx?articleid=1384A diviso tradicional entre cache L1 e cache L2 funcionou bem durante a fase dos processadores single-core e dual-core. Entretanto, com a introduo dos processadores quad-core passou a fazer mais sentido usar caches L1 e L2 menores e incluir um terceiro nvel de cache. Com isso, temos 4 pequenos blocos de cache L1 e L2 (um para cada ncleo) e um grande cache L3 compartilhado entre todos.Um bom exemplo o Core i7 de 45 nm, que usa 64 KB de cache L1 e 256 KB de cache L2 por ncleo e usa um grande cache L3 de 8 MB compartilhado entre todos. Dentro do processador, ele corresponde rea sombreada no diagrama a seguir, novamente uma rea considervel.http://en.wikipedia.org/wiki/Gulftown_%28microprocessor%29

    ORGANIZAO E ARQUITETURA DE COMPUTADORES*

    BibliografiaGabriel Torres. Hardware Curso Completo. Axcel Books do Brasil Editora Ltda, 4ta edio 2001.Andrew S. Tanenbaum. Organizao Estruturada de Computadores. Pearson Prentice Hall, 5ta edio 2007.Mrio A. Monteiro. Introduo Organizao de Computadores, LTC Editora S.A., 4ta edio 2001.http://en.wikipedia.org/

    Inicialmente o cache L2 era um chip separado, que dividia o encapsulamento com o processador, mas a partir da segunda gerao do Celeron (e do Pentium III Coppermine) ele passou a ser integrado diretamente ao processador, o que reduziu os tempos de acesso e tambm os custos.

    Esta uma foto do ncleo de um Pentium III Coppermine com seus 256 KB de cache L2 integrado, que so representados pelos 16 retngulos na parte inferior do processador. Voc pode notar que o cache L2 ocupa uma rea significativa do ncleo do processador, o que explica o fato de serem usados apenas 256 KB:

    *******