Baixe o app para aproveitar ainda mais
Prévia do material em texto
08/05/2014 1 Arquitetura e Organização de Computadores Prof. Nelson Miguel Betzek • Visão geral de arquitetura e organização de computadores; • Histórico; • Processador. • Barramentos; • Memórias; • Conjunto de instruções; • Prática com simuladores. Transmissão de Dados • Quando um dispositivo digital trabalha a um determinado número de bits isto significa que o canal de comunicação desse dispositivo transmite e recebe essa quantidade de bits por vez, podendo comunicar-se com dispositivos que manipulem a mesma quantidade de bits. • Esta transmissão pode ser PARALELA ou em SÉRIE. Transmissão Paralela • Todos os bits que o dispositivo transmissor é capaz de manipular são transmitidos simultaneamente ao receptor. • A comunicação dos circuitos internos é feita desta maneira. Transmissão Paralela • Transmissão paralela – bits compondo uma palavra de dados são conduzidos ao longo de um conjunto de vias • sendo uma via para cada bit F O N T E D E S T I N O TERRA 8 bits (dados) 08/05/2014 2 Transmissão Paralela • Oferece maior velocidade. • Quanto menor o cabo melhor • Usada internamente • Problemas: – ruído (interferência magnética), quanto maior o clock, maior o problema. – Atenuação, o sinal vai ficando fraco à medida em que trafega no fio. Transmissão Paralela • Quanto > a frequência de operação (clock) > o problema de interferência eletromagnética. – Por isso, o clock Externo é muito menor do que o Interno. • Em virtude da Atenuação, quase não é usada no exterior do micro. Transmissão Serial • É o modo de transmissão que ocorre quando cada bit é transmitido em sequência, um após o outro, por uma única linha de dados. – Ex.: rede, ... • Existe a necessidade de um protocolo (conjunto de regras) especial entre o emissor e o receptor para marcar certas características da transmissão, como início dos dados, velocidade dos bits, etc. Transmissão Serial • Por exemplo, se um caracter é representado pelo binário 01001100, sua transmissão obedecerá a ordem: • 0 -> 1 -> 0 -> 0 -> 1 -> 1 -> 0 -> 0 Transmissão Serial • Como transmite apenas um bit por vez, sofre bem menos com problemas de ruído e atenuação. • É utilizado na transmissão com dispositivos externos: – Teclado – Mouse – Rede – Dispositivos USB Transmissão Serial • É medida em bits por segundo (bps) – Ex.: modem (56 Kbps) rede local (1000 Mbps) – Transmissão Paralela é medida em B/s (Bytes por segundo) – Ex.: 150 MB/s 08/05/2014 3 Computador • CPU • Memórias • Componentes de E/S • São interconectados através dos barramentos para realizar a função básica do computador: executar programas. Ciclo de instrução • consiste em: – uma busca de instrução – zero ou mais buscas de operandos – zero ou mais armazenamentos de operandos – uma verificação de interrupção. Conceitos principais da arquitetura • Dados e instruções são armazenados em uma única memória de leitura e escrita; • O conteúdo desta memória é endereçável por local, sem considerar o tipo de dados neles contidos; • A execução ocorre em um padrão sequencial de instruções. Barramentos • Os principais componentes de um sistema de computação – Processador – Memórias – Módulos de entrada e saída • Precisam estar interconectados a fim de trocar dados e sinais de controle. Barramentos • O meio de interconexão mais popular é o uso de um barramento do sistema compartilhado, consistindo de múltiplas linhas. • Normalmente, existe uma Hierarquia de barramentos: para melhorar o desempenho. 08/05/2014 4 Barramento • É responsável pela conexão entre o processador, memória principal e módulos de E/S para troca de dados e sinais de controle. • É um caminho para a troca de dados entre dois ou mais circuitos. • Em geral, utilizam comunicação paralela. Estrutura de interconexão • Coleção de caminhos conectando os diversos módulos. • O projeto dessa estrutura depende das trocas que precisam ser feitas entre os módulos. Módulos do computador Conexão de memória • Recebe e envia dados. • Recebe endereços (de locais). • Recebe sinais de controle: – Leitura. – Escrita. Conexão de entrada/saída • Semelhante à memória do ponto de vista do computador. • Saída: – Recebe dados do computador. – Envia dados a periféricos. • Entrada: – Recebe dados de periféricos. – Envia dados ao computador. Conexão de entrada/saída • Recebe sinais de controle do computador. • Envia sinais de controle aos periféricos. – Ex.: girar disco. • Recebe endereços do computador. – Ex.: número de porta para identificar periférico. • Envia sinais de interrupção (controle). 08/05/2014 5 Conexão da CPU • Lê instruções e dados. • Escreve dados (após processamento). • Envia sinais de controle a outras unidades. • Recebe (e atua sobre) interrupções. Estrutura de interconexão • Deve admitir os seguintes tipos de transferências: – Memória para processador: o processador lê uma instrução ou uma unidade de dados da memória; – Processador para memória: o processador escreve uma unidade de dados na memória; – E/S para processador: o processador lê dados de um dispositivo de E/S por meio de um módulo de E/S. Estrutura de interconexão • Deve admitir os seguintes tipos de transferências: – Processador para E/S: o processador envia dados para o dispositivo de E/S; – E/S de ou para a memória: um módulo de E/S tem permissão para trocar dados diretamente com a memória, sem passar pelo processador, usando o DMA. Barramento • Um caminho de comunicação conectando dois ou mais dispositivos. • Meio de transmissão compartilhado. • Consiste em múltiplos caminhos de comunicação. • Cada linha transmite sinais representando 0 e 1 binário. • Normalmente, broadcast. • Frequentemente agrupado. – Uma série de canais em um barramento. – Ex.: barramento de dados de 32 bits são 32 canais de bits separados. Barramentos de sistema • Computador: 3 componentes fundamentais • Interligados por 3 barramentos – Endereços – Dados – Controle 08/05/2014 6 Barramentos • Barramento de endereços: indica de onde os dados a serem processados devem ser retirados ou para onde devem ser enviados. Comunicação unidirecional. • Barramento de dados: é por onde os dados transitam. • Barramento de controle: faz a sincronização das atividades, habilitando ou desabilitando o fluxo de dados. Barramentos Barramento de dados • Caminho para movimentação de dados entre os módulos do sistema. – não existe diferença entre “dados” e “instruções” neste nível. • Largura é um determinante fundamental do desempenho. – 8, 16, 32, 64, 128 bits. • 1 bit por linha por vez, então o número de linhas é conhecido como Largura do barramento. Barramento de dados - Exemplo • Barramento de dados: 32 bits de largura • Instrução de 64 bits • Processador precisa acessar o módulo de memórias duas vezes durante cada ciclo de instrução. Barramento de endereço • Identifica origem ou destino dos dados. – Exemplo: CPU precisa ler uma instrução (dados) de determinado local na memória. – Insere o endereço nas linhas de endereço. Barramento de controle • Controlar o acesso e o uso das linhas de dados e endereço. • Linhas de dados e endereços são compartilhadas, por isso precisam ser controladas. • Transmitem informação de comando e sincronização entre os módulos do sistema. • Os sinais de sincronização indicam a validade da informação de dados e endereço. 08/05/2014 7 Linhas de controle • Escrita de memória: faz com que os dados no barramento sejam escritosno local endereçado; • Leitura de memória: faz com que os dados do local endereçado sejam colocados no barramento; • Escrita de E/S: faz com que os dados no barramento sejam enviados para a porta de E/S endereçada; Linhas de controle • Leitura de E/S: faz com que os dados da porta de E/S endereçada sejam colocados no barramento; • ACK (Acknowledgement - reconhecimento) de transferência: indica que dados foram aceitos do barramento ou colocados nele; • Solicitação de barramento (bus request): indica que um módulo precisa obter controle do barramento; Linhas de controle • Concessão de barramento (bus grant): indica que um módulo solicitante recebeu controle do barramento; • Requisição de interrupção (interrupt request): indica que a interrupção está pendente; • ACK de interrupção: confirma que a interrupção pendente foi reconhecida; Linhas de controle • Clock: é usado para operações de sincronização; • Reset: inicializa todos os módulos. Esquema de interconexão de barramento Organização Lógica de um microcomputador 08/05/2014 8 Operação do barramento • Para enviar dados é necessário: – Obter o uso do barramento; e – Transferir dados por meio do barramento. Operação do barramento • Para requisitar dados é necessário: – Obter o uso do barramento; – Transferir uma requisição pelas linhas de controle e endereço apropriadas; – Esperar que o outro módulo envie os dados. Barramentos - exemplo • Processador necessita de um dado presente na memória. • Pelo barramento de endereços, ele obtém a localização desse dado dentro da memória. • O processador indica pelo barramento de controle que é uma operação de leitura na memória. • O dado é então localizado e inserido no barramento de dados, por onde o processador, finalmente, o lê. Barramento do sistema – fisicamente é: • Linhas paralelas (condutores elétricos) em placas de circuito. • Cabos de fita. • Conectores em tira nas placas mãe. – P.e., PCI. • Conjuntos de fios. Realização física da arquitetura de barramento 08/05/2014 9 Estrutura típica • Barramento local: conecta o processador à memória cache. • Controlador de Cache conecta a Cache ao barramento local e ao barramento do sistema. • Barramento do sistema: conecta os módulos de memória principal e barramento de expansão. Barramento de I/O • Barramento para comunicação com periféricos lentos. • Exemplos: – AGP – PCI – ISA Estrutura de barramento tradicional (com cache) Arquitetura de alto desempenho Parâmetros dos Barramentos Tipo Método de arbitração Sincronização Dedicado Centralizado Síncrona Multiplexado Distribuído Assíncrona Largura Tipo de transferência de dados Endereço Leitura Ler-modificar-escrever Dados Escrita Leitura-após-escrita Boco 08/05/2014 10 Tipos de barramento • Dedicado: – Linhas separadas para dados e endereço. • Multiplexado. – Linhas compartilhadas. – Linha de controle, de endereço ou dados. – Vantagem – menos linhas – Desvantagens: • Controle mais complexo. • Menor desempenho. Problemas do barramento único • Muitos dispositivos em um barramento levam a: – Atrasos de propagação • Longos caminhos de dados significa que a coordenação do uso do barramento pode afetar contrariamente o desempenho. • Se a demanda de transferência de dados agregada se aproxima da capacidade do barramento. • A maioria dos sistemas utiliza múltiplos barramentos para contornar esses problemas. Arbitração de barramento • Mais de um módulo pode precisar do controle do barramento. – P.e., CPU e controlador de DMA (módulo de E/S escreve ou lê diretamente da memória). • Apenas um módulo pode controlar barramento de uma só vez. • Arbitração pode ser centralizada ou distribuída. Arbitração centralizada e distribuída • Centralizada: – Único dispositivo de hardware controlando o acesso ao barramento. • Controlador de barramento. • Árbitro. – Pode ser parte da CPU ou separada. • Distribuída: – Cada módulo pode reivindicar o barramento. – Lógica de controle em todos os módulos. Temporização • Coordenação de eventos no barramento. • Síncrona: – Eventos determinados por sinais de clock. – Barramento de controle inclui linha de clock. – Uma única transmissão 1-0 é um ciclo do barramento. – Todos os dispositivos podem ler linha de clock. – Normalmente, sincronismo na borda inicial. – Geralmente, um único ciclo para um evento. Temporização • Assíncrona: – A ocorrência de um evento em um barramento segue e depende da ocorrência de um evento anterior; 08/05/2014 11 Largura do barramento • O barramento de dados impacta no desempenho do sistema – Quanto mais largo o barramento de dados, maior o número de bits transferidos por vez; • O barramento de endereço impacta na capacidade do sistema – Quanto mais largo, maior o intervalo de locais que podem ser referenciados. Elementos do projeto dos barramentos • Arbitração: permissão para enviar sinais nas linhas do barramento, pode ser controlada de forma central ou distribuída; • Temporização: os sinais do barramento podem ser sincronizados com um clock central ou enviados de forma assíncrona; • Largura: número de linhas de endereço e número de linhas de dados. Barramento de 100 MHz • teclado, que fornece uma taxa máxima de 30 caracteres por segundo (quando usamos o REPEAT). • Entre a chegada de dois caracteres consecutivos, transcorrem cerca de 2,6 milhões de ciclos. • Não teria sentido o processador ficar monopolizado entre a chegada de dois caracteres consecutivos, testando milhares de vezes se o próximo caracter já chegou. Barramento de 100 MHz • Para isso são usadas interrupções. • O processador não testa se chegou o próximo caracter, ele continua executando outras tarefas, e a interface de teclado gera uma interrupção quando uma tecla é pressionada. • Para atender à interrupção o processador precisa salvar o seu contexto (armazenar o conteúdo de todos os registradores internos), atender à interrupção e retornar ao processamento original, o que consome entre 50 e 100 ciclos. Barramento de 100 MHz • Como o intervalo neste caso é de 2,6 milhões de ciclos, vale a pena para o processador executar outras tarefas e ser interrompido quando chegar um caracter. • Por isso podemos, por exemplo, tranquilamente digitar um texto enquanto o processador de textos faz correção gramatical ou salva o arquivo automaticamente. • Portanto a E/S programada com o uso de interrupções é um método bem adequado para a operação do teclado. Taxa de transferência - Desempenho • Baseado no: – Clock – Largura – Transferências por ciclo de clock • taxa de transferência = frequencia de operação x nro de bits / 8 • Ex.: 08/05/2014 12 Barramentos Barramentos • Barramento Local :É por onde o processador se comunica aos dispositivos essenciais da placa mãe. Memória RAM, cache. Barramentos • Barramento de Dados: É por onde os dados são transmitidos bidirecionalmente. • Barramento de Controle: realiza o controle do tráfego de dados. • Barramento de Endereço: É através dele que é feito o endereçamento a memória. Barramentos • Barramento de Expansão: É por onde são conectados os periféricos ao computador. • Ex.: placa de vídeo, som, etc. 08/05/2014 13 Barramentos de expansão • Os barramentos de expansão - SLOTS • Exceto (diretamente conectados a placa-mãe): – USB; – Firewire ; – IrDA. Barramentos de expansão • SLOT: encaixes para que os dispositivos utilizem determinados padrões de barramento. • Os slots possuem ranhuras para a conexão de placasde circuito com a placa-mãe. Barramentos de expansão • Exemplos: – ISA (Industry Standard Architecture); – VLB (VESA Local Bus); – PCI (Peripheral Component Interconnect); Barramentos de expansão • Exemplos: – AGP (Accelerated Graphics Port) – USB (Universal Serial Bus): • Alguns autores não consideram como barramento, mas uma porta serial de alta velocidade. Chipset • Conjunto de circuitos de apoio. • Auxiliam o processador no gerenciamento do computador. Ex.: controlar a memória RAM. • Ligados diretamente ao chip da CPU. • Responsáveis pela maioria das trocas de informações entre a CPU, memórias e barramentos (interface IDE, controle das memórias RAM, controle das memórias cache externo, controle de barramentos de extensão, controle da DMA e interrupções. Chipset • Componente fundamental para o funcionamento do computador. • Conjunto de circuitos integrados responsáveis pela troca de informações entre os componentes do computador. • Grande parte do desempenho de um sistema é determinado pelo tipo de chipset. 08/05/2014 14 Chipset • Ponte norte (northbridge): responsável por controlar os componentes rápidos do computador. Ex.: processador, placa de vídeo (AGP e PCI Express) e memória RAM • Ponte sul (southbridge): responsável pelos componentes lentos do computador (dispositivos de E/S). Ex.: Hd, portas USB, pararela. • http://canaltech.com.br/o-que-e/hardware/O-que-e-um-Chipset/#ixzz30KEcZM1l Chipset mp
Compartilhar