System buses – what is the primary purpose of tri-state or open-collector memory outputs when multiple devices share a common bus?

Difficulty: Easy

Correct Answer: isolate devices connected to a common bus

Explanation:


Introduction / Context:
Many memory chips connect to a shared data bus. If more than one device attempts to drive the lines simultaneously, contention can damage parts or corrupt data. Tri-state and open-collector outputs enable safe sharing by ensuring only one device actively drives the bus at a time.


Given Data / Assumptions:

  • Multiple memory or peripheral devices connected to a single data bus.
  • Chip select and output enable control which device is active.
  • Bus pull-ups (for open-collector/drain) or high-impedance state (for tri-state) are available.


Concept / Approach:
A tri-state output has three states: logic 0, logic 1, and high-impedance (Z). When not selected, the device goes to Z, effectively disconnecting from the bus. An open-collector/drain output can only pull the line low; a shared pull-up resistor brings it high. Wired-OR/AND combinations become possible without active conflicts, enabling multiple devices to interface safely on common lines.


Step-by-Step Solution:

1) Assert chip select on the desired memory; others remain deselected.2) The selected device enables its outputs; non-selected devices present Z (tri-state) or remain passive (open-collector/drain).3) Bus carries valid data from the one active source without contention.4) Release control to return the bus to idle for the next master/slave.


Verification / Alternative check:
Timing diagrams show OE controlling Z vs active drive. I2C uses open-drain sharing with pull-ups, demonstrating conflict-free multi-device operation.


Why Other Options Are Wrong:
They do not address contention prevention: speed, current, or internal simplicity are side effects at best, not the core reason.


Common Pitfalls:
Forgetting to deassert OE/CS on inactive devices; neglecting proper pull-ups for open-drain buses.


Final Answer:
isolate devices connected to a common bus

More Questions from Memory and Storage

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion