Baixe o app para aproveitar ainda mais
Prévia do material em texto
Arquitetura de Computadores (ARQI1) ADS171 Aula 05: Barramentos Barramento Para que o processador se comunique com as outras partes que compõem o computador, como memória e dispositivos de E/S, há a necessidade de um elemento condutor, visto que os bits são representados por tensões elétricas (presença ou não presença – 0 ou 1). Como um dado é formado por um conjunto de bits (8, 16, 32 ou 64 por exemplo) este elemento condutor será, na verdade, um conjunto de condutores em paralelo, ligando o processador a outros dispositivos. Se tivermos em mãos uma placa de um microcomputador – a placa-mãe ou motherboard, poderemos ver trilhas desenhadas. Algumas dessas trilhas são estes conjuntos de condutores. A este conjunto de condutores damos o nome de barramento ou bus (ônibus, em inglês). Microprocessador O barramento interno de um microcomputador, que na verdade é um conjunto de barramentos, é conhecido por barramento local. O barramento local pode ser divido em três conjuntos: PROCESSADOR MEMÓRIA DISPOSITIVOS DE E/S BARRAMENTO DE DADOS BARRAMENTO DE ENDEREÇOS BARRAMENTO DE CONTROLE Barramento de endereços (Address bus): por onde trafegam os endereços de memória ou dispositivos de E/S. Este barramento é unidirecional: somente o processador fornece endereços. Tem como função conduzir um endereço fornecido pelo processador para que este endereço possa ser acessado. Barramento de dados (Data bus): por onde trafegam os dados do processador para memória e dispositivos de E/S e vice-versa. Portanto, tal barramento é bidirecional: o processador tanto envia como recebe dados. Barramento de controle: bidirecional. Por tal barramento trafegam os sinais de controle do microprocessador para memória e dispositivos, bem como da memória e dispositivos para o processador. Tem como função indicar que o processador quer executar determinada ação (como, por exemplo, ler ou gravar de um endereço de memória) ou receber um sinal indicando determinado estado (por exemplo, dado já disponível no barramento de dados). Também conhecido somente por sinais de controle. Estes barramentos locais funcionam de maneira sincronizada, conforme a operação efetuada pelo processador. Supondo que queiramos guardar o dado FFh no endereço de memória 0100h, o processador irá colocar o endereço 0100h no barramento de endereços, enviar um sinal através do barramento de controle, de que deseja acessar a memória para uma operação de escrita e depois coloca o dado FFh no barramento de dados. Velocidade do barramento Como os dispositivos que compõem a CPU estão limitados – por sua tecnologia eletrônica – a uma determinada velocidade e que tal velocidade normalmente é muito inferior ao dos processadores, os barramentos funcionam em uma velocidade diferente do processador. Assim, é errado dizer que um processador de 3,6 GHz, por exemplo, acessa os dados em memória também a 3,6 GHz. Hoje, vemos casos de processadores de 3,6 GHz acessando dados na memória a 1,6 GHz, por exemplo. A freqüência do barramento ou FSB, de Front Side Bus é que irá indicar a velocidade com que os dados fluam pelos barramentos e tal freqüência é gerada pelo circuito de clock da CPU. Velocidade do barramento É necessário que o processador possa trabalhar com tal freqüência de barramento e que os demais circuitos que compõem a CPU, inclusive as memórias, também possam suportar tal freqüência de barramento. Por exemplo, a motherboard Asus modelo P5LD2-SE, para Pentium 4 HT e dual-core, pode ser configurada , através de um programa instalado na ROM-BIOS para uma freqüência FSB de 533, 800 ou 1066 MHz. É gerado um outro clock para os barramentos de expansão (133, 200 ou 266 MHz) através de um circuito multiplicador, configurado com um fator de multiplicação. O clock do processador pode ser auto-detectado ou configurado manualmente, dando a opção de overclock (clock acima do especificado pelo fabricante). A taxa de transferência de um barramento, também conhecida por Throughput ou Bus Bandwidth¸ é uma medida de velocidade do barramento de dados. Tal taxa indicará a quantidade de bytes que podem ser transferidos pelo bus de dados em um segundo. Ela é determinada pela largura do bus de dados e por sua freqüência de operação. É calculada da seguinte forma: A resposta é dada em bytes por segundo (Bytes/s) se a freqüência for fornecida em Hertz ou Mbytes/s se a freqüência for fornecida em Mega Hertz. Exemplo: Largura do barramento de dados: 64 bits Freqüência do barramento: 800 MHZ Throughput: 6400 Mbytes/s Outras medidas de velocidade de transferência Transferências por segundo (T / s) e seus derivados – gigatransfers por segundo (abreviado GT / s) e megatransfers por segundo (MT / s) são as medidas que se referem ao número de operações de transferência de dados que ocorrem em cada segundo em algum dado canal de transferência de dados. 1 MT / s é de 106 ou um milhão de transferências por segundo. 1 GT / s significa 109 ou mil milhões de transferências por segundo. Estes termos não especificam a taxa de bits em que os dados binário está sendo transferido , porque não descreve o número de bits transferidos em cada operação de transferência (conhecida como a largura do barramento ou extensão da palavra) . A fim de calcular a taxa de transmissão de dados , é necessário multiplicar a taxa de transferência por a largura do canal de informação. A fórmula para uma taxa de transferência de dados é: a largura do canal ( bits / transferência ) × transferências / segundo = bits transferidos / segundo. As unidades geralmente se referem ao número "efetivo" de transferências, ou transferências percebidas “externamente" de um sistema ou componente , em oposição à velocidade interna ou clock do sistema. Um exemplo é um barramento de computador rodando a taxa de dados dupla , onde os dados são transferidos na “subida” e na “descida” do sinal de clock. Se o clock interno funciona em 100 MHz, então a taxa efetiva é de 200 MT / s, porque há 100 milhões de “subidas” por segundo e 100 milhões de “descidas” por segundo em um clock de 100 MHz. Outros tipos de barramentos DIB – Dual Indepente Bus A arquitetura DIB foi implementada inicialmente nos processadores da Intel e AMD de 6ª geração. Foi criada com o intuito de melhorar a largura de banda dos barramentos e consequentemente a performance dos processadores. Tem dois barramentos de dados independentes que possibilitam ao processador acessar os dados de quaisquer um simultaneamente (em paralelo). O segundo barramento, chamado de backside bus é usado para a memória cache L2, que funciona independente do front side bus, que conecta a memória principal. HyperTransport HyperTransport é uma tecnologia que permite criar interconexões bidirecionais point- to-point de processadores com grande largura de banda, baixa latência. O padrão da tecnologia é aberto, sendo gerenciado e promovido por um consórcio de empresas denominado HyperTransport Consortium.1 Esta tecnologia é utilizada pela AMD em seus processadores e pela NVIDIA em seus chipsets. HyperTransport é um barramento criado a partir dos processadores AMD64 socket 754 que faz a comunicação direta entre o processador e os demais dispositivos da placa mãe; ao surgir o AMD64 foi criado um controle de barramento exclusivo aos outros componentes chamado de HyperTransport.HyperTransport A versão atual de um total de 5, a especificação HTX3.1, especificação fornece taxas de 2666 e 3200 MT / s ou cerca de 10.4GB / s e 12,8 GB / s, dependendo se bidirecional – 16 bits, ou unidirecional, 32 bits, operando a 3.2 GHz. Intel® QuickPath Interconnect Quickpath Interconnect é uma conexão ponto-a-ponto unidirecional de alta velocidade, disponibilizada e desenvolvida na segunda metade de 2008 pela Intel. É usada para comunicação com dispositivos de I/O, tais como placas de vídeo e controladoras. Com a implementação do Quickpath em seus processadores, os mesmos passam a utilizar uma arquitetura de conexão direta para comunicação externa. Os processadores que implementam o Quickpath como o core i7 contam ainda com um controlador de memória integrado de 3 canais, o que aumenta a largura de banda total do processador e particularmente diminui a latência de acesso a memória, já que com o controlador implementado diretamente no die do processador, a memória é acessada diretamente, o que não acontecia com o legado Front Side Bus, onde os dados que trafegavam entre a memória e o processador passavam por esse barramento, criando assim um gargalo. Front Side Bus Dual Indepent Bus QuickPath Interconnect
Compartilhar