Difficulty: Easy
Correct Answer: When two or more outputs are connected to the same input (shared bus line)
Explanation:
Introduction / Context:
Three-state buffers (tri-state drivers) are key components for shared buses in microprocessor, FPGA, and memory systems. They prevent electrical contention by allowing only one device at a time to actively drive a line while others are electrically disconnected (high-impedance).
Given Data / Assumptions:
Concept / Approach:
Whenever outputs are wired to a common line, contention can occur if two drivers assert different logic levels simultaneously. Three-state buffers add an enable-controlled Hi-Z state so nonselected devices disconnect from the bus, eliminating fights and avoiding damage or logic errors.
Step-by-Step Solution:
1) Identify a shared bus scenario with N potential talkers (outputs) and one listener (input or bus).2) Assign an output-enable control so that exactly one talker is active at a time.3) Ensure all other talkers are disabled (Hi-Z) to avoid contention.4) The receiver now sees a clean logic level from the currently enabled source.
Verification / Alternative check:
Bus arbitration schemes (e.g., microprocessor address/data buses, I2C with open-drain, or SPI with dedicated chip selects) all hinge on the concept of only one active driver. Tri-state buffers implement this at the electrical level for push-pull buses.
Why Other Options Are Wrong:
All outputs normally HIGH or LOW: the problem is contention, not normal idle levels.Outputs connected to separate inputs: no shared bus, so contention is not inherent.Only one device ever drives the line: a buffer is not strictly required to prevent contention in this case.
Common Pitfalls:
Enabling two devices simultaneously or forgetting that high-impedance lines may need pull-ups or defined idle states to prevent floating inputs. Always coordinate enable signals via chip select or bus arbitration logic.
Final Answer:
When two or more outputs are connected to the same input (shared bus line)
Discussion & Comments