A
bus interface circuit and method for reliable data capture in the presence of
bus-master changeovers and / or for
synchronizing received data to an internal
clock signal, wherein the received data includes a strobe. Since the strobe may have a
delay that is unknown (due to varying distances from the driver,
clock jitter, and / or other causes), it is important to re-synchronize to the internal
clock, and to do so with the smallest
delay possible. This synchronization is provided in a way that also eliminates potential problems due to
bus-master
changeover, and in a way that minimizes time-
critical signal generation. One aspect provides a method and / or apparatus for reliable data capture. The method includes: providing an N-stage latch including a first stage latch and a second stage latch, wherein N is two or larger; loading every Nth word of a
data stream into the first stage latch using a first
signal based on a strobe passed in the
data stream; loading every N+1st word of the
data stream into the second stage latch using a second
signal based on the strobe passed in the data
stream; unloading every Nth word from the first stage latch using a third signal based on an internal bus clock; and unloading every N+1st word from the second stage latch using a fourth signal based on the internal bus clock. In some embodiments, the first signal and the second signal are further based on a first stage selector and on a data_ready signal passed in the data
stream.