Buscar

Resumo Arquitetura e organização de computadores

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 10 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

CAPITLUO 4 – MEMORIA CACHE.
4.2 Princípios da memoria cache: o uso da memoria cache visa obter velocidade de memoria próxima das memorias mais rápidas que existem e, ao mesmo tempo, disponibilizar uma memoria de grande capacidade ao preço de memorias semicondutoras mais baratas. 
A cache conte uma copia de partes da memoria principal. Quando o processador tenta ler uma palavra de memoria, é feita uma verificação para determinar se a palavra esta na cache se estiver ela é entregue ao processador. Se não, um bloco da memoria principal, consistindo em algum numera fixo de palavras, é lida para a cache e depois a palavra é fornecida ao processador.
A cache L2 é mais lenta e normalmente maior que a cache L1, e a cache L3 é mais lenta e normalmente maior que a cache L2.
Numero de memorias caches: 
- Caches multinivel: à medida que a densidade logica aumenta, torna-se possível ter uma cache no mesmo chip que o processador: a cache no chip (on chip). Em comparação com uma cache conectada por meio de um barramento externo, a cache por chip reduz a atividade do barramento externo do processador e, portanto, agiliza o tempo de execução e aumenta o desempenho geral do sistema.
Cache unificada versus separadas: quando a cache no chip apareceu inicialmente, muitos dos projetos consistiam em uma única cache usada para armazenar referencias a dados e instruções. Mais recentemente, tornou-se comum dividir cache em duas: uma dedicada a instruções e uma dedicada a dados. Essas duas caches existem no mesmo nível, normalmente como duas caches L1. Quando o processador tenta buscar uma instrução a memoria principal, ele primeira consulta a cache L1 de instrução, e quando o processador tenta buscar dados da memoria principal, ele primeiro consulta a cache L1 de dados.
Existem duas vantagens em potencial de uma cache unificada:
- para determinado tamanho de cache, uma cache unificada tem uma taxa de acerto mais alta que as caches divididas, pois ela equilibra a carga entre buscas de instrução e dados automaticamente. Ou seja, se um padrão de execução envolve muito mais buscas de instrução do que buscas de dados, então a cache tendera a ser preenchida com instruções, e se um padrão de execução envolve relativamente mais buscas de dados, acontecera o oposto.
- somente uma cache precisa ser projetada e implementada. 
Apesar dessas vantagens, a tendência é em direção a caches separadas, particularmente para maquina superescalares que enfatizam a execução de instrução paralela e a pre busca de instruções futuras previsíveis. A principal vantagem do projeto de cache separada e que isso elimina a disputa pela cache entre a unidade de busca/decodificação de instrução e a unidade de execução. Isso é importante em qualquer projeto que conta com um pipeline de instruções. Normalmente o processador, buscara instruções antes da hora e preenchera um buffer ou um pipeline, com instruções a serem executadas.
Hierarquia de memoria.
- Registradores
- memoria cache
- memoria principal
- Disco magnético (cd-rom, cd-rw, dvd-rw)
- Fita magnética.
CAPITULO 5 – MEMORIA INTERNA.
5.1 Tipos de memória.
TIPO DE MEMORIA	CATEGORIA		 APAGAMENTO		VOLATILIDADE
RAM			leitura/escrita		eletricamente		volátil
ROM			leitura			não é possível		não volátil
PROM (programável) 	leitura			não é possível		não volátil
EPROM 		leitura			Luz UV			não volátil
EEPROM		leitura			eletricamente		não volátil
Flash			leitura			eletricamente		não volátil
RAM DINAMICA – células que armazenam dados como carga em capacitores.
RAM ESTATICA – Dados armazenados por meio de configurações de portas logicas, uma RAM estática manterá seus dados enquanto houver energia nela.
PROM – Pode ser escrita apenas uma vez.
EPROM – Lida e escrita eletricamente, antes da escrita, todas as células de armazenamento precisam ser apagadas para retornar ao mesmo estado inicial, o apagamento é feito através da luz UV.
EEPROM – Pode ser escrita a qualquer momento sem precisar apagar o conteúdo anterior.
FLASH – Pode ser apagada rapidamente a qualquer momento (cartão sd, pen drive.).
Memoria Intercalada – É possível organizar os bancos de memoria, cada banco independentemente é capaz de atender a uma solicitação de leitura ou escrita da memoria, de modo que um sistema com k bancos pode atender a k solicitações simultaneamente, aumentando as taxas de leitura ou escrita de memoria por um fator k.
5.2 Correções de erros.
Falha permanente - é um defeito físico permanente, de modo que as células da memoria afetadas não podem armazenar dados de modo confiável.
Falha não permanente – é um evento aleatório, não destrutivo, que altera o conteúdo em uma ou mais células sem danificar a memoria.
5.3 Organizações avançadas de DRAM.
DRAM Síncrona – Troca dados com o processador sincronizando com um sinal de clock externo e executando na velocidade plena do barramento do processador/memoria.
DDR SDRAM – Pode enviar dadas duas vezes por ciclo de clock.
CAPITULO 7 – ENTRADA/SAÍDA (E/S).
O elemento chave de um sistema de computação é um conjunto de módulos de E/S. Cada módulo se conecta ao barramento do sistema comutador central e controla um ou mais dispositivos periféricos. O módulo de E/S contem uma logica para realizar uma função de comunicação entre periféricos e o barramento.
Periféricos não são conectados no barramento do sistema pelos seguintes motivos:
- Existe uma grande variedade de periféricos, com diversos métodos de operação. Seria impraticável incorporar a logica necessária dentro do processador para controlar todos os tipos de dispositivos.
- A taxa de transferência de dados dos periféricos é muito mais lenta ou mais rápida que a da memoria ou processador.
7.1 Dispositivos externos.
Um dispositivo externo se conecta ao computador por uma conexão com um modulo de E/S. A conexão e usada para trocar sinais de controle, estado e dados entre módulos de E/S e dispositivos externos.
Categorias de dispositivos externos:
- Legíveis ao ser humano: monitores de vídeo e impressoras.
- Legíveis a maquina: sistemas de disco magnético e fita, sensores e atuadores.
- Comunicação: permite que um computador troque dados com um dispositivo remoto, que pode ser um dispositivo legível ao ser humano, um dispositivo legível a maquina, ou ate mesmo outro computador.
Sinais de controle: Determinam a função que o dispositivo realizara como enviar dados ao modulo de E/S (READ), aceitar dados do modulo de E/S (WRITE), informar o estado ou realizar alguma função de controle particular ao dispositivo.
Sinais de estado: indicam o estado do dispositivo (READY/NOT READY) para indicar se o dispositivo esta pronto para uma transferência de dados.
Lógica de controle: controla a operação do dispositivo em resposta a direção do módulo de E/S.
Transdutor: converte dados de elétrico para outras formas de energia durante a saída e de outras formas para elétrico durante a entrada. Normalmente, um buffer é associado ao transdutor para manter temporariamente os dados transferidos entre o modulo de E/S e o ambiente externo.
7.2 Funções do módulo
Controle de temporização: coordena o fluxo de tráfego entre os recursos internos e dispositivos externos.
Comunicação com o processador:
- decodificação do comando: o modulo de E/S aceita comandos do processador, normalmente enviados como sinais no barramento de controle.
- Dados: os dados são trocados entre o processador e modulo de E/S pelo barramento de dados.
- Informação de estado: como os periféricos são muito lentos é importante conhecer o estado do modulo de E/S. Se um modulo de E/S tiver que enviar dados ao processador, ele pode não ser capaz de fazer isso porque ainda esta trabalhando no comando de E/S anterior.
- Reconhecimento de endereço: assim que cada palavra de memoria tem um endereço, cada dispositivo de E/S também tem. Desse modo o modulo de E/S precisa reconhecer um endereço exclusivo para cada periférico que controla.
Buffering de dados: enquanto a taxa de transferência para entrada e saída na memoria principal ou noprocessador é muito alta, as taxas da maioria dos dispositivos periféricos compreendem uma grande faixa. Os dados vindos da memoria principal são enviados par um modulo de E/S em uma maneira rápida. Os dados são mantidos em um buffer no modulo de E/S e depois enviados ao dispositivo periférico em sua taxa de dados.
Detecção de erro: relata erros ao processador. Uma classe de erros inclui defeitos mecânicos e elétricos relatados pelo dispositivo (por exemplo, papel emperrado, trilha de disco com defeito).
Estrutura do modulo de E/S: O modulo de E/S se conecta ao restante do computador por meio de um conjunto de linhas de sinal (por exemplo, linhas de barramento do sistema). Os dados são transferidos de e para o modulo e são mantidos em um buffer, em um ou mais registradores de dados.
Cada modulo de E/S tem um endereço exclusivo ou, se controlar mais de um dispositivo externo, um conjunto exclusivo de endereços, por fim o modulo de E/S contem a logica especifica a interface com cada dispositivo que ele controla.
Um modulo de E/S funciona se permitir que o processador veja uma grande variedade de dispositivos de uma maneira simples.
7.3 E/S Programada: com a E/S programada, os dados são trocados entre o processador e o modulo de E/S. 
E/S controlada por interrupção: o processador emite um comando de E/S, continua a executar outras instruções e é interrompido pelo modulo de E/S quando o ultimo tiver completado seu trabalho.
Com a E/S programada e por interrupção, o processador é responsável por obter dados da memoria principal para saída, e por armazenar dados na memoria principal para entrada. A alternativa é conhecida como acesso direto a memoria (DMA). Nesse modo, o modulo de E/S e a memoria principal trocam dados diretamente, sem envolvimento do processador.
Comandos de E/S
- Controle: usado para ativar um periférico e dizer-lhe o que fazer.
- Teste: usado para testar diversas condições de estado associados ao modulo de E/S e seus periféricos. O processador desejara saber se o periférico de interesse esta ligado e disponível para uso.
- Leitura: faz com que o modulo de E/S obtenha um item de dados do periférico e coloque em um buffer interno.
- Escrita: faz com que o modulo de E/S apanhe um instem de dado do barramento de dados e depois transmita esse item de dado ao periférico.
7.5 Acesso direto a memoria.
Desvantagens da E/S programada e controlada por interrupção.
A E/S controlada por interrupção, embora mais eficiente que a E/S programada, ainda requer a intervenção ativa do processador para transferir dados entre a memoria e o modulo de E/S, e quaisquer transferência de dados precisam atravessar um caminho passando pelo processador. Assim essas duas formas de E/S tem duas desvantagens inerentes:
A taxa de transferência de E/S é limitada pela velocidade com qual o processador pode testar e atender um dispositivo.
O processador fica ocupado no gerenciamento de uma transferência de E/S, diversas instruções precisam ser executadas para cada transferência de E/S.
Função DMA: DMA envolve um modulo adicional no barramento do sistema. O modulo de DMA é capaz de imitar o processador e, na realidade, assumir o controle do sistema do processador. Ele precisa fazer isso para transferir dados de e para a memoria pelo barramento do sistema. Para essa finalidade, o modulo de DMA precisa usar o barramento apenas quando o processador não precisar dele, ou então precisa forcar o processador a suspender a operação temporariamente.
Características dos canais de E/S: o canal de E/S apresenta uma extensão do conceito de DMA. Um canal de E/S tem a capacidade de executar instruções de E/S, o que lhe oferece um controle completo sobre as operações de E/S. Em um sistema de computação com esses dispositivos, a CPU não executa instruções de E/S. Essas instruções são armazenadas na memoria principal para serem executadas por um processador de uso especifico no próprio canal de E/S.
Um canal seletor controla múltiplos dispositivos de alta velocidade e, a qualquer momento, e dedicado à transferência de dados com um desses dispositivos.
Um canal multiplexador pode tratar da E/S com vários dispositivos ao mesmo tempo. Para dispositivos de baixa velocidade, um multiplexador de byte aceita ou transmite caracteres o mais rápido possível a diversos dispositivos.
7.7 A interface externa.
Interface serial: há apenas uma linha usada para transmitir dados, e os bits precisam ser transmitidos um de cada vez.
Interface paralela: usada para periféricos de, mas alta velocidade.
CAPITULO 15 – OPERAÇÃO DA UNIDADE DE CONTROLE.
15.1 Micro operações: A execução de um programa consiste da execução sequencial de instruções. Cada instrução e executada durante um ciclo de instrução feito de subciclos menores (por exemplo, busca indireto, execução, interrupção). A execução de cada subciclo envolve uma ou mais operações mais curtas, ou seja, micro operações.
Ciclo de busca: ocorre no inicio de cada ciclo de instrução e faz com que uma instrução seja obtida da memoria. Quatro registradores são envolvidos:
- Registrador de endereço de memoria (MAR): conectados as linhas de endereço do barramento de sistema. Ele especifica o endereço na memoria para uma operação de leitura ou escrita.
- Registrador de buffer de memoria (MBR): conectado as linhas de dados do barramento de sistema. Ele contem o valor a ser guardado na memoria ou o ultimo valor lido da memoria.
- Contador de programa (PC): guarda o endereço da próxima instrução a ser lida.
- Registrador de instrução (IR): guarda a ultima instrução lida.
No inicio do ciclo de instrução, o endereço da próxima instrução a ser executada esta no contador de programa (PC), o primeiro passo e mover este endereço para o registrador de endereço de memoria (MAR) porque este e o único registrador conectado as linhas de endereço do barramento de sistema. O segundo passo e trazer a instrução, o endereço desejado (em MAR) é colocado no barramento de endereços, a unidade de controle emite um comando READ no barramento de controle e o resultado aparece no barramento de dados e copiado para o registrador de buffer de memoria (MBR). Precisamos também incrementar o PC pelo tamanho da instrução para se preparar a próxima instrução. Como estas duas ações (ler da memoria e incrementar em PC) não interferem uma com a outra, podemos executa-las simultaneamente para economizar tempo. O terceiro passo é mover o conteúdo de MBR para registrador de instrução (IR). n Isto libera MBR para uso durante um possível ciclo indireto.
Assim todas as unidades de tempo são de duração igual. Cada micro operação pode ser efetuado dentro do tempo de uma única unidade de tempo:
- Primeira unidade de tempo: move conteúdo de PC para MAR.
- Segunda unidade de tempo: move conteúdo da posição de memoria especificada por MAR para MBR, incrementando em I o conteúdo de PC.
- Terceira unidade de tempo: move conteúdo de MBR para IR.
Ciclo de instrução: 
00: busca
01: Indireto
10: Execução
11: Interrupção.
15.2 Controles do processador.
Requisitos funcionais.
ULA – A ULA é a essência funcional do computador, os registradores são usados para armazenar os dados internamente no processador. Alguns registradores cotem a informação de estado necessária para gerenciar o sequenciamento de instruções, outros contem os dados que vem de ou vão pra ULA, memoria e módulos de E/S. Caminhos de dados internos são usados para mover dados entre registradores e entre registrador e ULA. Caminhos de dados externos ligam os registradores com a memoria e modulo de E/S por meio de um barramento de sistema. A unidade de controle faz com que as operações aconteçam dentro do processador.
A execução de um programa consiste em operações envolvendo esses elementos do processador, todo o micro operações se enquadra em uma das categorias a seguir:
- transferência de dados de um registrador para outro.
- transferência de dados de um registrador para uma interface externa.
- transferência de dados de uma interface externa para um registrador.- efetuar uma operação aritmética ou logica, usando registradores de entrada e saída.
Todas as micro operações necessárias para efetuar um ciclo de instrução, incluindo todas as micro operações para executar cada instrução dentro do conjunto de instruções, encaixam-se em uma dessas categorias.
A unidade de controle desempenha duas tarefas básicas:
Sequenciamento: a unidade de controle faz o processador executar por uma serie de micro operações na sequencia correta, com base no programa que esta sendo executado.
Execução: a unidade de controle faz cada micro operação ser executada.
O que precede é uma descrição funcional sobre o que a unidade de controle faz. A chave para o funcionamento da unidade de controle é o uso de sinais.
Sinais de controle: é um modelo geral da unidade de controle, mostrando todas as suas entradas e saídas. As entradas são:
- Clock: é como a unidade de controle matem o tempo. A unidade de controle faz uma micro operação ou um conjunto de micro operação simultâneas serem executadas em cada pulso de clock.
-Registrador de instrução: o opcode e o modo de endereçamento da instrução corrente são usados para determinar qual micro operação executar durante o ciclo de execução.
- Flags: estas são necessárias para a unidade de controle determinar o estado do processador e das saídas das operações anteriores a ULA.
- Sinais de controle do barramento de controle: barramento de controle e uma parte do barramento de sistema que fornece sinais para a unidade de controle.
As saídas são:
- Sinais de controle dentro do processador: existem dois tipos: aqueles que fazem os dados serem movidos de um registrador para outro e aqueles que ativam as funções especificas da ULA.
- Sinais de controle para barramento de controle: existem dois tipos também: sinais de controle para memoria e sinais de controle para modulo de E/S
A unidade de controle recebe entradas a partir do clock, do registrador de instruções e flags. A cada ciclo de clock, a unidade de controle lê todas as suas entradas e emite um conjunto de sinais de controle. Os sinais de controle vão para três caminhamos diferentes:
- Caminho de dados: a unidade de controle controla o fluxo interno de dados. Por exemplo, durante a leitura da instrução, o conteúdo do registrador de buffer de memoria (MBR) é transferido para o registrador de instrução (IR). Para cada caminho a ser controlado, há uma chave. Um sinal de controle da unidade de controle abre as portas temporariamente para deixar os dados passarem.
- ULA: a unidade de controle controla a operação de ALU por meio de um conjunto de sinais de controle. Esses sinais ativam vários circuitos e portas logicas dentro da ULA.
- Barramento de sistema: a unidade de controle envia sinais de controle para linhas de controle do barramento do sistema (por exemplo, READ para leitura de memoria).
CAPITULO 16 – CONTROLES MICROPROGRAMADO
A unidade de controle micro programada, na qual a logica da unidade de controle é especificada por um micro programa. Um micro programa consiste de uma sequencia de instruções em linguagem de micro programação. Trata de instruções que especificam micro operações.
Uma unidade de controle micro programada e um circuito logico relativamente simples que e capaz de sequenciar micro instruções e gerar sinais de controle para executar cada micro instrução.
Assim como em uma unidade de controle por hardware, os sinais de controle gerador por uma micro instrução são usados para causar transferência de registradores e operações de ALU.
Uma sequencia de linhas e conhecida como um micro programa ou firmware.
Unidade de controle micro programada: o conjunto de micro instruções é armazenado na memoria de controle. O registrador de endereço de controle conte o endereço do próximo micro instrução a ser lida. Quando a micro instrução é lida a partir da memoria de controle, ela é transferida para um registrador de buffer de controle. A parte esquerda desse registrador conecta-se a linhas de controle que saem da unidade de controle. Assim, ler uma micro instrução a partir da memoria de controle é o mesmo que executar essa micro instrução. A unidade de sequenciamento carrega o registrador de endereço de controle e emite um comando de leitura:
Para executar uma instrução, a unidade logica de sequenciamento emite um comando READ para memoria de controle.
A palavra cujo endereço é especificado no registrador de endereço de controle é lida para dentro do registrador de buffer de controle.
O conteúdo do registrador de buffer de controle gera sinais de controle e a informação do próximo endereço para a unidade logica de sequenciamento.
A unidade logica de sequenciamento carrega um novo endereço no registrador de endereço de controle com base na informação do próximo endereço a partir do registrador de buffer de controle e flags da ULA.
Tudo isso ocorre durante um pulso de clock. 
Vantagens: a principal vantagem do uso de micro programação para programar uma unidade de controle é que ela simplifica o projeto da unidade de controle. Assim a implementação fica mais barata e menos propensa a erros. Uma unidade de controle por hardware deve conter uma logica complexa para sequenciamento por meio de varias micro operações do ciclo de instrução. Por outro lado, os decodificadores e a unidade de sequenciamento logico de uma unidade de controle micro programada tem uma logica muito simples.
Desvantagens: a principal desvantagem de uma unidade micro programada é que ela será um pouco mais lenta do que a unidade por hardware. Apesar disso, a micro operação é a técnica dominante para programar unidades de controle em arquitetura CISC puras, por causa da facilidade de sua implementação. Os processadores RISC, com seu formato de instrução mais simples, normalmente usam unidade de controle por hardware.
16.2 Sequenciamentos de micro instruções: as duas tarefas básicas desempenhadas por uma unidade de controle micro programada são as seguintes:
- sequenciamento de mincroinstruções: obter a próximo micro instrução da memoria de controle.
- execução do micro instrução: gerar sinais de controle necessários para executar a micro instrução.

Continue navegando

Outros materiais