A respeito dos sistemas de computadores, responda:
O que é o árbitro de barramento? Descreva como a sua operação pode levar a roubos de ciclo.
O que é o árbitro de barramento? Descreva como a sua operação pode levar a roubos de ciclo.
Passo 1
Beleza, o enunciado pede pra gente falar sobre “árbitro de barramento” e como a operação dele acaba gerando “roubos de ciclo”. Isso é conteúdo de Arquitetura de Computadores, mais especificamente de gerenciamento de barramento e acesso direto à memória (DMA).
O que vamos precisar para resolver:
O que vamos precisar para resolver:
- Entender o que é um árbitro de barramento (bus arbiter).
- Saber como ele decide quem usa o barramento.
- Entender o conceito de roubo de ciclo (cycle stealing) via DMA.
Passo 2
O árbitro de barramento é tipo um “guardinha” que controla quem pode falar no barramento (aquele conjunto de linhas que transporta dados, endereços e sinais de controle). Imagina várias pessoas (CPU, controle de disco, controladora de rede) dando tapa no ombro para usar o mesmo microfone (o barramento). O árbitro ouve quem pediu e diz “pode falar você” (sinal GNT) enquanto os outros ficam em espera (sinal REQ).
Para isso ele:
- Recebe sinais de requisição (REQ) de cada dispositivo.
- Aplica uma política (prioridade fixa, round-robin, etc.).
- Emite sinais de concessão (GNT) para um único mestre, liberando o barramento.
Passo 3
Agora, onde surge o roubo de ciclo? Quando um dispositivo (normalmente um controlador DMA) pede acesso ao barramento, o árbitro pode ceder a ele por um ou alguns ciclos de clock, mesmo que a CPU ainda vá precisar de acesso. Nesse instante, o controlador DMA “rouba” ciclos de barramento da CPU para fazer a transferência entre memória e periférico.
Detalhando:
- A CPU está lendo ou escrevendo memória no ciclo T.
- O DMA solta REQ no ciclo T; o árbitro dá GNT no ciclo T+1.
- No ciclo T+1, o DMA ocupa o barramento, forçando a CPU a esperar (inserindo wait states).
- Terminada a transferência de dados do DMA, o árbitro retorna o barramento pra CPU no ciclo T+2.
Cada ciclo que o DMA ocupa é um ciclo a menos que a CPU pode usar — por isso chamamos de “roubo de ciclo”.
Resposta
O árbitro de barramento é o circuito que gerencia quem acessa o barramento compartilhado, recebendo REQ e emitindo GNT segundo uma política de prioridade. Quando um controlador DMA solicita barramento, o árbitro pode ceder a ele apenas por alguns ciclos, interrompendo temporariamente a CPU e inserindo wait states: isso é o roubo de ciclo, pois cada ciclo cedido ao DMA é um ciclo “roubado” da CPU.