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: 6196



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 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

Criando um jogo de pacman usando javascript e pixi.js (parte 1)

Desenvolvimento dos conceitos mais básicos do clássico pacman, como: mapa, animação, deslocamento e detector de colisões.

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.

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.

Usando dados fornecidos pelo TSE para simular o gráfico das eleições presidenciais de 2022

Simulação dos gráficos do segundo turno das eleições presidenciais, utilizando python e ferramentas de análise de dados, pandas e jupyter.

Veja também

Estar antenado pode te salvar de cair em algum golpe

A engenharia social é a forma mais fácil de roubar os dados da vítima, principalmente aqueles que não estão antenados..

Todo empreendedor deve estar consciente que cada funcionário é um humano, portanto deve reconhecer as tentações em alguns cenários

Estudar o comportamento das pessoas pode auxiliar um administrador a criar um sistema de fiscalização mais eficiente, evitando fraudes que prejudicam a imagem da empresa

Política de privacidade

A política de privacidade tem como objetivo informar ao usuário, o objetivo e o modo de tratamento dos dados pessoais coletados.

Acessibilidade Digital

Prática que visa em incluir todas as pessoas digitalmente, incluindo idosos e deficientes, para que possam ter acesso a informação.

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.

Inteligência Artificial

Inteligência artificial é a criação de máquinas que podem pensar, aprender, sentir ou tomar decisões conforme o ambiente ao seu redor.