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

Visualizações: 479



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

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.

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.

Integrando Laravel com o protocolo MQTT para comunicação entre dispositivos

Projeto de comunicação entre dois dispositivos ESP8266 e Raspberrypi4. Laravel irá funcionar como servidor e receptor de dados de temperatura e umidade coletados com o DHT11.

Integrando o PHP com Elasticsearch no desenvolvimento de um sistema de busca

Projeto de criação de um sistema de busca usando o framework Symfony e Elasticsearch. A integração com Kibana também é feito de modo remoto com um raspberrypi.

Criando artes de texto usando imagens

Convertendo imagens para ascii art usando o valor da intensidade das cores cinzentas.

Veja também

A subclasse não deve estender a superclasse que não representa consistência em relação as suas características

No passado existiam girafas com pescoço comprido e as girafas com pescoço curto. Isso resultou em um comportamento inesperado, a seleção natural. Não queremos isso no nosso algoritmo...

Pessoas sem um endereço não podem utilizar os correios. Dispositivos sem um endereço não podem acessar a internet.

Quando nos conectamos à internet, nós recebemos um endereço IP. O endereço IP é o nosso endereço virtual que vai servir como localização para a transferência de dados na internet

Ciência de dados

Data Science ou ciência de dados, é uma área de computação que se concentra em extrair informações valiosas de grandes quantidades de dados.

CPU Unidade central de processamento

O CPU é considerado o cérebro do computador, responsável por tarefas como gerenciar instruções de dispositivos de entrada e fazer cálculos.

Linguagem de programação

A linguagem de programação é um conjunto de instruções que possuem um padrão de escritas, sendo um intermediário entre o programador humano e a máquina.

DB Banco de dados

Um banco de dados é um conjunto de tabelas com dados armazenados de uma forma estruturada, possibilitando a gestão de dados de uma forma organizada.