Altifigence Academy

13 / 63 · Concepto

DEMUX y decodificador: envíe datos por el camino seleccionado

Compare dirección y función de MUX, DEMUX y decodificador y verifique one-hot y one-hot-or-zero.

MUX reúne; DEMUX distribuye

Un MUXMultiplexor Circuito combinacional que conecta una de varias entradas a la salida según una señal de selección. Debe especificarse la correspondencia entre los bits de selección y los números de entrada. Más información envía una de varias entradas de datos a una salida. Un DEMUXDEMUX Circuito que envía un dato de entrada a la salida indicada por la selección. También debe especificarse el valor de las salidas no seleccionadas. envía una entrada d a la salida seleccionada y mantiene las demás en 0. Para un DEMUX 1 a 4 con selección s1s0s_1s_0:

y0=ds1‾s0‾,y1=ds1‾s0,y2=ds1s0‾,y3=ds1s0y_0=d\overline{s_1}\overline{s_0},\quad y_1=d\overline{s_1}s_0,\quad y_2=ds_1\overline{s_0},\quad y_3=ds_1s_0

La misma función como decodificador con enable

En la figura, lea a1 y a0 como dirección y enable como dato d. Las salidas d0–d3 corresponden a y0–y3. La misma función combinacional recibe nombres distintos según su contexto.

Si enable es la entrada de datos, se obtiene un DEMUX

d[i] = enable AND (2 × a1 + a0 = i)

Con dirección 10 y dato 1, solo y2 vale 1. Con dato 0, todas las salidas, incluida la seleccionada, valen 0. Por tanto, no siempre se cumple one-hotOne-hot Representación en la que exactamente un bit vale 1. Si también se permite que todos sean 0, la condición se denomina one-hot-or-zero. Más información, exactamente un 1; para toda la operación corresponde one-hot-or-zero, como máximo un 1.

Distinga selección y escritura efectiva

Para escribir en uno de cuatro registrosRegistro Circuito que almacena varios bits de estado. Los registros síncronos de este curso capturan la entrada especificada en el flanco de reloj. Más información, puede usarse write_en como d y la dirección como selección. El decodificadorDecodificador Circuito que activa la línea de salida correspondiente a un código binario. Con enable, puede llevar todas las salidas a 0 cuando está deshabilitado. Más información no almacena valores: el registro recibe enable y datos en el flanco de reloj y entonces almacena. Cambiar una selección combinacional no cambia inmediatamente el valor guardado.

Selección y almacenamiento son dos etapas
  1. Dirección + write_en: Defina dónde escribir y si se escribe
  2. Decodificador: Genere enable para un único registro seleccionado
  3. Flanco de reloj: El registro seleccionado almacena el dato

Compruebe tanto la salida seleccionada como que todas las restantes valgan 0. Hay cuatro combinaciones con d=0 y cuatro con d=1: ocho en total. Esta comprobación funcional no garantiza ausencia de pulsos espurios al cambiar la dirección.

Inténtalo tú

Con s1s0=01, calcule y3y2y1y0 para d=1 y d=0. ¿Cuándo falla exigir que exactamente un enable de los cuatro registros esté activo?

Leer la explicación

Son 0010 y 0000. Con d o write_en en 0 es correcto que ninguna salida esté activa. La condición de exactamente una solo se aplica con d=1.

Tu elección se aplica a este navegador. Puedes cambiarla en el pie de página.