Barramento (Bus)

Caminhos entre os componentes do computador que são responsáveis pela transferência de informações de controle, endereçamento e dados.

Categoria de Tecnologia

Postado em 27 fevereiro 2023

Atualizado em 27 fevereiro 2023

Palavras-chave: bus,computador,cpu,processador,memoria,memory,componente,barramento,informacao,dados,controle,caminhos,trilhas,linhas

Visualizações: 5640



O computador é um sistema composto por diversos componentes. Os 5 componentes mais importantes são o processador, unidade de controle, memória e dispositivos de entrada e saída.

Porém, uma variedade de outros componentes são necessários para compor o computador como conhecemos hoje. Um desses componentes é o barramento.

O que é barramento (bus) na computação?

O barramento (em inglês: bus) é um conjunto de caminhos em um sistema computacional que permite a transferência de dados entre componentes. Componentes como CPU, memória e periféricos de entrada e saída são conectados ao barramento e não podem se comunicar com outros componentes sem a presença desses caminhos.

Geralmente, esses caminhos são compostos por fios de cobre, porém podem ser substituídos por fibra óptica. Além disso, não precisa ser necessariamente um caminho físico, tecnologias como Wi-Fi e bluetooth também podem servir de barramento para a transferência de dados quando apresentar mais conveniência em determinada situação.

Nos computadores atuais, o barramento já vem embutido na placa mãe com tecnologia de PCB (Placa de circuito impresso). Antes disso, os barramentos eram integrados de forma separada e eram chamados de barramentos paralelos.

O barramento afeta o desempenho do computador?

O barramento em um sistema de computador é muito importante, pois afeta a largura e a velocidade em que os dados podem ser transferidos de um componente para o outro. Componentes como o CPU e memória do computador podem ter seu desempenho influenciado pelo barramento em caso de falta de largura de banda na transferência de informação.

A eficiência do barramento pode ser medido em termos de velocidade de transferência de dados e largura de banda. A velocidade de transferência de dados pode ser medida baseando-se em sua frequência que é expressada em Hertz (Hz). A frequência do barramento é o número de pacotes de dados que podem ser enviados ou recebidos por segundo. A frequência que o barramento opera é determinada pelo clock do sistema. A largura de banda é medida em bits ou bytes por segundo (bps ou B/s) que o barramento pode transferir em um trajeto. Lembrando que a “velocidade” do barramento é relativo a outros fatores do circuito e depende de um amplo contexto.

Quais são os tipos de linhas em um barramento?

Os três principais tipos de linha em um barramento são:

  • Linha de controle
  • Linha de endereçamento
  • Linha de dados

Barramento bus arquitetura

Linha de controle

A linha de controle é responsável pela transmissão de sinais de controle entre o CPU e os outros componentes. Esses sinais podem ser operações de leitura e escrita, sinais de interrupção e solicitações de acesso direto à memória (DMA). Alguns exemplos de sinais de controle são:

  • Leitura: O CPU solicita a leitura de dados de algum dispositivo conectado ao barramento.
  • Escrita: O CPU solicita a escrita de dados de algum dispositivo conectado ao barramento.
  • Solicitação de DMA: Algum dispositivo conectado ao barramento solicita acesso direto à memória sem a intervenção do CPU.
  • Sinal de relógio: Sincroniza as operações de transferência de dados.

Linha de endereçamento

Diz ao sistema onde os dados de leitura e escrita estão localizados na memória ou outro dispositivo de extensão conectado. O número total de linhas de endereçamento disponíveis é o que define quantos bits podem ser usados para o endereçamento. Quanto maior esse número de linhas, mais endereços podem ser transferidos.

Um barramento contendo 32 linhas pode endereçar até 4,294,967,296 diferentes endereços. Exemplos de barramentos contendo diferentes números de linhas de endereçamento são:

  • Barramento ISA (Industry Standard Architecture): 24 bits de endereçamento
  • Barramento EISA (Extended Industry Standard Architecture): 32 bits de endereçamento
  • Barramento PCI (Peripheral Component Interconnect): 32 bits ou 64 bits de endereçamento

Linha de dados

Transporta os dados que serão processados pelo sistema computacional. A linha de dados pode transmitir e receber dados, sendo uma trilha bidirecional. Assim como a linha de endereçamento, quanto maior a quantidade de linha de dados, maior será a largura de barramento. Isso possibilita que mais dados sejam transferidos em uma determinada unidade de tempo.

A quantidade de linha de dados em barramentos modernos como o PCI Express, pode ter entre 1, 4, 8 e 16 bits de largura.

A quantidade de linhas de dados presentes no barramento pode variar de acordo com o tipo e a geração do barramento. Por exemplo, o barramento ISA (Industry Standard Architecture), que foi utilizado em computadores pessoais dos anos 1980 e 1990, possuía 16 bits de largura, ou seja, tinha 16 linhas de dados para a transmissão de informações.

Já o barramento PCI Express, utilizado em computadores modernos, pode ter 1, 2, 4, 8, 16 ou 32 linhas de dados, dependendo da versão e da configuração do barramento. Quanto mais linhas de dados, maior é a largura de banda do barramento, o que possibilita a transferência de mais dados por unidade de tempo. Alguns exemplos são:

  • PCI: pode ter 32 ou 64 linhas de dados
  • AGP: pode ter 32 linhas de dados
  • SATA: pode ter 1, 2, ou 4 linhas de dados
  • USB 2.0: pode ter 4 linhas de dados
  • PCI Express: pode ter 1, 2, 4, 8, 16 ou 32 linhas de dados

O endereçamento exige mais quantidade de linhas pois os endereços de memória precisam ser únicos, por isso necessitam de mais variações.

Conclusão

O barramento é um conjunto de trilhas que transferem informações de controle, endereçamento e dados entre componentes do computador. O desempenho do barramento é importante para componentes como o CPU, pois a velocidade de processamento pode ser influenciada pelo barramento.

Projetos práticos

Criando um jogo de guerra nas estrelas em javascript usando a biblioteca p5.js

Jogo simples de guerra espacial desenvolvido em javascript. Esse jogo usa cálculos de física para simular efeitos de atrito e inércia.

Tutorial de programação do jogo da serpente em javascript

Programando o clássico jogo da serpente usando o framework p5.js. Tutorial indicado para iniciantes da programação que querem aprender os conceitos básico da área criando jogos.

Caixa eletrônico usando arquitetura limpa

Usando JavaFX e arquitetura limpa para criar um aplicativo de caixa eletrônico extremamente simples.

Desenvolvendo um jogo de quebra blocos em javascript

Programando um jogo clássico de arcade usando javascript e p5.js. O usuário deve quebrar os blocos utilizando uma bola ao mesmo tempo que evita que a bola saia pela parte inferior da tela

Desenvolvendo o campo de visão de um personagem em um plano 2D

Detectando objetos que entram dentro do campo de visão do personagem. Útil para servir de "gatilho" para eventos em um jogo.

Veja também

A internet é uma terra sem lei. O que vai proteger a nossa rede interna da internet é o firewall

Uma rede interna sem um firewall é como se fosse uma casa com a porta destrancada. Um indivíduo com más intenções pode se aproveitar para a invadir quando menos esperamos.

Uma das vantagens de ter um robô trabalhando para você é o aumento da produtividade

Hoje em dia não é mais necessário gastar o nosso tempo com tarefas que podem se automatizadas. Os robôs estão aqui para nos ajudar...

4G (Quarta geração)

Fornece conexão com a rede para dispositivos móveis mesmo quando estes se encontram em deslocamento. Utiliza o protocolo LTE para a transferência de dados.

Prevenção de colisões (collision avoidance)

Comportamento usado em steering behaviors para evitar que o agente se choque contra obstáculos durante o percurso do seu trajeto.

Memória de computador

O computador possui memória primária e memória auxiliar, ambos possuem finalidades específicas como armazenamento de dados temporários ou permanentes.

Busca binária

A busca binária usa o método de divisão de conquista que visa em dividir os problemas em pequenos problemas até que eles se resolvam sozinhos.