Two very different meanings of 'disabled'
'Disabling' a signal sounds like one idea, but Boolflow ships two genuinely different elements for it. GATE is an AND-based enable: when EN=0, its output is forced to a clean 0, same as any other logic value. TRIBUF is a tri-state buffer: when EN=0, its output disconnects entirely โ high impedance, driving neither 0 nor 1.
When 0 is the right answer
If a signal feeds into ordinary combinational logic โ say, one operand of an ALU that should contribute nothing when disabled โ GATE is exactly right: a forced 0 is a perfectly valid logic value that the downstream AND/OR gates handle normally.
When disconnecting is the right answer
If several drivers need to share the exact same wire and only one may speak at a time, a GATE cannot do that job โ driving a plain 0 onto a shared wire is just as much an active assertion as driving a 1, and two GATEs disagreeing would still fight each other. Only TRIBUF's genuine high-impedance state lets the wire truly belong to nobody until exactly one driver is enabled.
Try it yourself
Build the same two-source shared-wire circuit twice in the circuit editor โ once with GATE elements, once with TRIBUF elements โ and enable both sources at once in each version. See the Help reference for GATE and TRIBUF's exact truth tables, and compare the two outcomes directly: the TRIBUF version behaves like a bus โ the disabled driver lets go and the enabled one sets the value โ while the GATE version can never let go, because a disabled GATE still drives a hard 0. The Check page reports the GATE wiring as outputs tied together.