Função do Computador / Interconexão do Computador
Componentes do Computador
Estruturas de Interconexão
Função do Computador
Interconexão de Barramento
Interconexão Ponto-a-Ponto
Arquitetura de Von Newmann
Dados/Intruções armazenados em única memória de leitura e escrita
A Programação do Computador (Possibilidade 1)
A Programação do Computador (Possibilidade 2)
Execução em padrão sequencial de uma instrução para a seguinte
Conteúdo da memória endereçavel pela localização (desconsidera o tipo de dado)
Interconexão entre componentes para armazenar dados binários e realizar operações lógicas/aritméticas
Cada cálculo exige uma configuração lógica específica
Componentes interligados = "programa" na forma de hardware
Unidades podem ter comportamento alterado dependendo de sinais de controle aplicados
Hardware não é religado para novos programas, o programador dá novos sinais de controle
Programa
Sequência de etapas
Cada etapa = uma operação artimética/lógica
Cada etapa = conjunto diferente de sinais de controle
Software: Sequência de códigos que geram sinais de controle quando interpretadas
Unidade Central de Processamento
Unidade de Controle
Unidade Lógica e Aritmética
Componentes Entrada/saída
Entram com dados e instruções no sistema, além de sair com resultados
Memória Principal
Armazena temporariamente códigos e resultados
Processo básico
Módulos básicos do Computador
Memória
Entrada/Saída
Processador
Módulos do Computador
Conexão de Memória
Recebe e envia dados
Recebe endereços
Recebe sinais de controle (leitura,escrita,temporização)
Conexão de E/S
Saída
Entrada
Recebe dados do computador
Envia dados a periféricos
Conexão da CPU
Recebe dados de periféricos
Envia dados ao computador
Recebe endereços do computador
Escreve dados após processamento
Envia sinais de controle
Lê instruções e dados
Recebe e atua em interrupções
Mais usada atualmente
restrições elétricas encontradas com aumento da frequencia em barramentos muito largos
Vantagens
Maior taxa de dados (velocidade)
Melhor escalabilidade
Baixa latência
Barramento
Somente um dispositivo por vez pode transmitir com sucesso
Transmissão feita em sinais de 0 e 1
Caminho de comunicação que conecta dispositivos
Várias linhas juntas formam um barramento paralelo
Barramento de Sistema: conecta CPU, memória e E/S
Barramento de Dados
Parâmetros que afetam conexão: Largura e Frequência
Aumentar largura de banda
Transporta dados
Maior frequência do barramento
Mais bits no barramento
Barramento de Endereço
Identifica origem ou destino dos dados
Largura determina capacidade máxima de memória no sistema
Linhas de endereço também endereçam portas de E/S
Barramento de controle
Controlar acesso e uso das linhas de dados e endereço
Operação do barramento
Envio de dados
Requisitar dados
Transferir dados
Obter uso do barramento
Obter uso do barremento
Transferir requisição ao outro módulo(linhas de controle)
Esperar o segundo módulo enviar os dados
Tipo de barramento
Multiplexado
Dedicado
Linhas separadas para dados e endereços
Linhas compartillhadas
Linha de controle váidas de endereço ou dados
Vantagem: menos linhas
Desvantagens: Controle mais complexo e desempenho máximo
Método de arbitração
Centralizada
Distribuída
Árbitro de barramento aloca tempo
Módulo separado ou parte do processador
Não existe controlador central
Cada módulo contém lógica de controle de acesso
Módulos atuam juntos para compartilhar barramento
Temporização
Coordenação de eventos no barramento
Assíncrona
Síncrona
Sincronismo na borda inicial
Barramento de controle inclui linha de clock
Eventos determinados por sinais de clock
Único ciclo para um evento
Flexível porém complexa de implementar
Pode-se misturar dispositivos lentos e rápidos
A ocorrência de um evento depende da ocorrência do evento anterior
Largura do Barramento
Impacta desempenho do sistema e a capacidade de memória endereçável
+trilhas = +custo
Tipo de Transferência de dados
Leitura-após-escrita
Transferência de dados em blocos
Leitura-modificação-escrita
Multiplexado(endereço e dados)
Leitura(escravo=>mestre)
Escrita(mestre => escravo)
Execução de um programa
Execução da instrução(ciclo de execução)
Busca de instruções(ciclo de busca/fetch)
Ciclo de Busca (Fetch)
Contador de Programa mantém endereço da próxima instrução
Processador busca instrução do local de memória apontado pelo PC
Incrementar PC
Instrução carregada no Registrador de Instrução
Processador interpreta instrução e realiza ações
Ciclo de Execução
Controle
Processador de dados
E/S do processador
Processador-memória
Combinação geral
Interrupções
E/S
Timer
Programa
Falha de hardware
Interrupções e Ciclo de interrupção
Suspende execução do programa atual
Interrupção de processo
Salva contexto
Define PC para endereço inicial da rotina de interrupções
Restaura contexto e continua programa interrompido
Múltiplas Interrupções
Controlador de linha gerará interrupção toda vez que unidade de dados chegar
Impressora gerará interrupção toda vez que completar uma operação
Técnicas para múltiplas interrupções
Desativar interrupções
Definir prioridades
Interrupções ficam pendentes e são verificadas após primeiras serem processadas
Processador ignora demais interrupções enquanto processa uma
Interrupções tratadas em sequência enquanto ocorrem
Interrupções de baixa prioridade podem ser interrompidas pelas de alta prioridade
Processamento de alta prioridade termina, processador volta a interrupção anterior