Combinador de barramento

Um barramento é um feixe de fios que transporta um valor de vários bits como uma única linha. O Combinador compõe N linhas individuais de 1 bit em um único barramento de saída de N bits, de modo que a entrada i se torna o bit i do barramento. Ele não realiza lógica nem adiciona atraso: é apenas uma conveniência de fiação que permite combinar sinais controlados separadamente em uma única linha de barramento. É a contraparte exata do Divisor — onde o Divisor decompõe um barramento, o Combinador o remonta.

Básico

Combinar quatro linhas de 1 bit

Defina a largura de bits do Combinador como 4 e conecte quatro linhas separadas de 1 bit às suas quatro entradas — in0, in1, in2 e in3 (bit menos significativo primeiro). A saída única transporta então o barramento composto, onde a entrada i simplesmente se torna o bit i do valor do barramento, portanto in0=1, in1=1, in2=0, in3=1 produz o valor de barramento 1011.

in3in2in1in0Bus
00000000
10111011
11111111
Intermediário

Indexação de bits, LSB primeiro

O Combinador segue a convenção do bit menos significativo primeiro: o índice de entrada 0 se torna o LSB do barramento e o índice N-1 se torna o MSB. Isso corresponde à forma como o Divisor numera suas saídas, então um barramento dividido e recombinado com índices correspondentes retorna ao mesmo valor. Manter a mesma ordem de bits em ambas as pontas é essencial sempre que você divide um barramento, processa os bits individuais e os recombina.

Avançado

Transformar fontes individuais em um barramento

Conecte quatro Interruptores a um Combinador e leve sua saída de 4 bits à entrada do decodificador de um Display de 7 Segmentos. Alternar os interruptores agora compõe um valor bit a bit e o exibe como um único dígito, o padrão comum para montar um barramento a partir de fontes controladas independentemente, como interruptores, sensores ou as saídas de vários subcircuitos pequenos. Para fazer o inverso e decompor um barramento de volta em bits individuais, use o Divisor em vez disso.

Citações

  • Harris, D. M., & Harris, S. L. (2012). Digital design and computer architecture (2nd ed.). Morgan Kaufmann. Referência 1
  • Mano, M. M., & Ciletti, M. D. (2018). Digital design: With an introduction to the Verilog HDL, VHDL, and SystemVerilog (6th ed.). Pearson. Referência 2