Library: Plexers
Introduced: 2.0 Beta 11


Copies the input on the west edge onto exactly one of the outputs on the east edge; which of these outputs is specified via the current value received through the input on the south edge. I find it useful to think of a demultiplexer as analogous to a railroad switch, controlled by the select input.

(Incidentally, some authorities spell this demultiplexor, but demultiplexer is the predominant spelling.)

Pins (assuming component faces east, select is bottom/left)

West edge (input, bit width matches Data Bits attribute)
The value to be routed to one of the outputs on the east edge.
East edge, variable number (outputs, bit width matches Data Bits attribute)
The outputs are numbered starting with 0 on the north. An output will match the west input if its number matches the value currently received through the select input on the south; otherwise, its value will be either all-zeroes or all-floating, depending on the value of the Three-State? attribute. If the select input contains any unspecified bits, then all outputs are floating.
South edge, left side (input, bit width 1)
Enable: When 0, all outputs consist of all floating bits, regardless of the data and select inputs.
South edge, right side indicated by gray circle (input, bit width matches Select Bits attribute)
Select input: The value of this input determines to which output on the east edge to route the value received on the west edge.


When the component is selected or being added, the digits '1' through '4' alter its Select Bits attribute, Alt-0 through Alt-9 alter its Data Bits attribute, and the arrow keys alter its Facing attribute.

The direction of the component (specifying which side has the outputs).
Select Location
The location of the select and enable lines relative to the component.
Select Bits
The bit width of the component's select input on its south edge. The number of outputs for the demultiplexer will be 2selectBits.
Data Bits
The bit width of the data being routed through the demultiplexer.
Specifies whether the unselected outputs should be floating (Yes) or zero (No).
Disabled Output
Specifies what each bit of the outputs should be when the component is disabled (i.e., when the enable pin is 0). Options include zero and floating; in the latter case, the outputs are effectively disconnected from any other ports.
Include Enable?
The component has an enable input when this attribute is yes. The attribute is primarily for supporting circuits built using older versions of Logisim that did not provide an enable input.

Poke Tool Behavior


Text Tool Behavior


Back to Library Reference