Splitters
When you work with multi-bit values, you will often want to route
different bits in different directions.
The Base library's splitter tool ( allows you to accomplish this.
For example, suppose we want to build a circuit taking an eight-bit
input and outputting the AND of its two nibbles (the upper four bits and
the lower four bits). We will have an eight-bit value coming from the
input pin, and we want to split that into two four-bit values. In the
below circuit, we have used a splitter to accomplish this.
In this example, the splitter happens to actually split an
incoming value into multiple outgoing values. But splitters can
also combine multiple values into a single value. In fact,
they are non-directional: They can send values one way at one time
and another way later, and they can even do both at the same
time, as in the below example where two values are fed rightward
and the middle value feeds leftward.
The key to understanding splitters is their attributes.
In the following, the term split end refers to one of
the multiple wires on one side, while the term combined
end refers to the single wire on the other side.
- The Facing attribute tells where the split ends
should be relative to the combined end. This cannot be changed
once a splitter is dropped into the circuit.
- The Fan Out attribute specifies how many
split ends there are. This also cannot be changed once a splitter is
dropped into the circuit.
- The Bit Width attribute specifies the bit width of
the combined end.
- The Bit x attribute says which split
end corresponds to bit x of the combined end. If multiple
bits correspond to the same split end, then their relative ordering
will be the same as in the combined end. Logisim splitters cannot
have a bit from the combined end correspond to multiple split ends.
Note that any change to the Fan Out or Bit Width
attributes will reset all Bit x attributes so that
they will distribute the bits of the combined value as evenly
as possible among the split ends.
Next: Wire colors.