Splitters

When you work with multi-bit values, you will often want to route the 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.

The attributes tell the splitter how it should work. In this particular example, we wanted to split apart eight bits into two different values, so the Fan Out attribute is 2 and the Bit Width In attribute is 8. The various Bit attributes tell where to send each of the incoming bits; in this case, we told the lower four bits to go to the splitter's upper wire, and the upper four bits to go to the splitter's lower wire.

Despite the talk of values going in and out a splitter, in fact values can go through a splitter in either direction automatically. Indeed, the different bits going through the splitter can work in different ways at the same time, as in the unusual example below, where the middle bit is traveling leftward, while the other two bits are traveling rightward.

Next: Incompatibility Errors.