Components / Plexers
Decoder in Logisim
Converts an S-bit binary Select input into a one-hot code across 2^S output lines (asserting exactly Y[S] = 1).
| Library | Plexers |
|---|---|
| Type name | Decoder |
| Pins and defaults | sel S (-20, bottom), out0..out(2^S-1) Y0..Yn (0, y), selectBits 2 (1..4) |
How the Decoder Works in Logisim
A Binary Decoder reads an S-bit binary number on its bottom Select pin (S, default 2 bits) and asserts exactly one corresponding 1-bit output line High (Y[S] = 1) while holding all other 2^S - 1 outputs Low (0).
Decoders are fundamental for memory address decoding, register file write-enable selection, and enabling one Controlled Buffer at a time on a shared bus. Because each output Y_i represents a single minterm of the input bits, you can implement any Boolean function by OR-ing together the Decoder outputs corresponding to its truth-table 1-rows.
Tip: Use a 2-to-4 or 3-to-8 Decoder with a Splitter to select which Register or ROM bank is active for a given memory address.
Decoder Pins & Pinout
| Pin | Direction | Width | Location & Role |
|---|---|---|---|
| sel (S) | Input (Bottom edge) | 1–4 bits (default 2) | Located at x = -20 on the bottom edge. Binary index (0 to 2^S - 1) of the output to assert. |
| out0 .. out(2^S-1) (Y0..Yn) | Output (Right edge) | 1 bit each | Located at x = 0 from top (Y0) to bottom. Exactly Y[S] is 1; all other outputs are 0. |
Decoder Truth Table & Behavior
| Select S (Binary) | Y0 | Y1 | Y2 | Y3 |
|---|---|---|---|---|
| 00 (0) | 1 | 0 | 0 | 0 |
| 01 (1) | 0 | 1 | 0 | 0 |
| 10 (2) | 0 | 0 | 1 | 0 |
| 11 (3) | 0 | 0 | 0 | 1 |