Keypad scanner timing — effect on dav after key release In the keypad application, just after 4 ms the simulation releases the key (column returns to F hex), causing the d output to enter Hi-Z. On the next rising clock edge after this release, what happens to the data-available signal dav?

Difficulty: Medium

Correct Answer: It goes LOW.

Explanation:


Introduction / Context:
Many keypad interface state machines assert a data-available (dav) flag when a stable key code is present at the data bus d. When the key is released, the column lines revert (F hex), the encoder tri-states d (Hi-Z), and the controller clears dav on a defined clock edge. Understanding this timing prevents software from falsely reading stale data.



Given Data / Assumptions:

  • At t ≈ 4 ms, the column lines return to the idle pattern F hex, indicating release.
  • The output d goes Hi-Z after release.
  • dav is a registered flag updated on the rising clock edge.
  • No key debounce or hold latch is keeping dav asserted after Hi-Z.


Concept / Approach:
dav indicates “valid data present.” Once d is Hi-Z, there is no valid key code. On the next clock edge, the FSM or register bank samples the absence of a valid key and deasserts dav. Therefore, dav transitions LOW at the next rising edge following the release event.



Step-by-Step Solution:
t ≈ 4 ms → key released → columns = F hex.Encoder action → d → Hi-Z (no valid code).Synchronous update → next rising edge clocks state.Since d is not valid → dav is cleared → dav goes LOW.



Verification / Alternative check:
Timing diagrams in typical keypad scanner IP show dav asserted only while a stable decoded key is latched. When the matrix returns to idle, dav is cleared on the next clock edge.



Why Other Options Are Wrong:

  • Goes HIGH: contradicts loss of valid data.
  • Goes to Hi-Z: dav is a driven status flag, not a tri-stated bus.
  • Goes to 1111H: dav is a single-bit signal, not a 4-bit value.


Common Pitfalls:
Confusing the tri-stated data bus with status flags; only the bus lines go Hi-Z, not control flags.


Final Answer:
It goes LOW.

Discussion & Comments

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