Questão O que significa “multiplexação de dados de endereço” e “buffer de barramento”?


Em minhas anotações, continuo encontrando dois termos que estão me confundindo ao examinar minhas anotações no processador 8085.

O primeiro é address data multiplexing. O que significa exatamente isso? Eu entendo o conceito de multiplexação (combinando n sinais para um), mas onde os dados de endereço entram nisto?

Em segundo lugar, o que é bus buffering? Meu entendimento é que esta é a amplificação de sinais elétricos no circuito para que eles possam percorrer distâncias maiores. Isso está correto?


4


origem


Boa pergunta. Sem aprofundar muito em que Synetech inc. respondeu abaixo, note que o termo buffering não tem nada a ver com amplificação de sinais. O armazenamento em buffer é uma forma de isolar efetivamente dois subsistemas, independentemente dos processos que estão ocorrendo em ambos os lados do barramento. - Breakthrough
Então como foi o teste? - Synetech


Respostas:


Eu tentei tirar meu texto de arquitetura do computador, mas ele está enterrado em uma caixa nas costas.

A multiplexação de endereços permite que você use menos pinos no processador e, portanto, menos linhas de barramento. Então, em vez de ter algumas linhas de barramento para o endereço, e mais algumas para os dados, você coloca o endereço na linha de dados, ele é lido, então você coloca os dados nas mesmas linhas, e ele é lido e armazenado anteriormente leia o endereço. Para o 8085, ele permitiu que o design adicionasse um pino, mas cortasse 8, para um ganho líquido (perda?) De 7 pinos (redução da complexidade física / de manufatura ao custo de maior complexidade lógica / de programação).

Computadores têm diferentes dispositivos operando em diferentes velocidades. Como tal, muitas vezes há vários dispositivos competindo pelo ônibus ao mesmo tempo. Para permitir que as transações ocorram em paralelo, em vez de “pegar um ticket”, o sistema precisa ser capaz de manter os dados quando eles estiverem disponíveis, mas o barramento estiver ocupado, até que o barramento seja liberado. Ele armazena esses dados em um buffer.

Espero que isso tenha sido claro o suficiente. Se não, sinta-se à vontade para pedir esclarecimentos sobre qualquer coisa que você não tenha entendido.


10



Buffer no sentido eletrônico também significa fazer a interface de um dispositivo com outros - por exemplo, permitindo que os pinos de uma CPU sejam conectados a um barramento de dados / endereço (através de um circuito / chip buffer) com múltiplos dispositivos (RAM, ROM, I / O etc.) conectado a ele. Esses buffers podem permitir que um dispositivo transmita sinais para muitos outros, inverta a lógica dos sinais para corresponder aos requisitos do sistema ou permitir que o dispositivo host seja desconectado do barramento quando necessário (buffers de três estados). Nesse sentido, os buffers na verdade não 'mantêm' nenhum dado por um período de tempo. - Linker3000
Certo. IIRC (faz décadas) o nome de um circuito que contém dados é um "registro" - e sim, os registradores da CPU tiram seu nome disso. - geekosaur


Estes termos podem ser usados ​​em relação à placa-mãe também, por exemplo, minha faculdade usa processadores 8085 em conjunto com o que é chamado de placa-mãe TomAL.

Com o TomAL, a informação no barramento de dados é multiplexada no tempo - as mesmas linhas de barramento carregam os 8 bits de dados ou os 8 bits de endereço mais baixos (A7-A0) a qualquer momento. Dispositivos periféricos sabem se são dados ou endereços usando sinais gerados pela CPU.

A placa TomAL emprega três chips para buffer de barramento - há dois DFF de 8 bits (registra efetivamente) um que detém os 8 bits mais altos de um endereço (A15-A8) e outro que contém os dados do endereço / barramento de dados. Há um terceiro, um chamado tri-state, que também contém os dados do endereço / barramento de dados, mas os dados que ele contém só são válidos se forem os 8 bits de endereço mais baixos. Caso contrário, este chip produz um sinal equivalente a uma saída "não se preocupe".

O buffer de barramento está simplesmente "retendo" os dados que estavam no barramento a qualquer momento. Um "buffer" manterá o valor que foi gravado por último até que a linha de gravação desse "buffer" seja definida como 1, momento em que o conteúdo do buffer será configurado para os dados que estiverem sendo alimentados. Quando a linha de gravação é definida novamente como 0, o "buffer" agora manterá o novo valor (ou seja, exibirá o novo valor), independentemente de quais dados estão sendo alimentados, até que a linha de gravação seja novamente alternada para 1.

Espero que isto ajude.


2





A maneira que eu entendo multiplexação de endereço:

Desde pinos de linha e coluna para endereçamento de matriz de memória são os mesmos para palavras de n bits. Você pode criar um esquema de temporização (por exemplo, um pino R / W pode ser usado como um sinal de relógio) onde, em alguns intervalos do relógio, os pinos de linha são acessados ​​e a linha da coluna é dividida em outra. Permitindo assim que menos pinos sejam usados ​​enquanto ainda passa palavras de tamanho de n bits para acessar qualquer célula na matriz de memória.


0