H
HUANG Huan
Guest
"sig1" and "sig2" are two asynchronous signals. Both are low active.
Assume that at any time the negative pulses of these two signals do
not overlap and there is enough time between the two pulses.
process (ack, sig1)
begin
if ack = '1' then
ready <= '0';
elsif rising_edge(sig1) then
ready <= '1';
end if;
end process;
process (ready, sig2)
begin
if ready = '0' then
ack <= '0';
elsif rising_edge(sig2) then
ack <= '1';
end if;
end process;
I use Xilinx FPGA to do the post-place-and-route simulation.
The waveform is as follows:
_______ _______________________________________
| |
sig1 |_____|
__________________
| |
ready _______________| |_____________________
________________________ _________________________
| |
sig2 |_____|
___
| |
ack ________________________________| |___________________
The pulse width of "ack" is about 4ns. Because the signal "ready" is
actually a flip-flop and the signal "ack" is the asynchrounous reset
of this flip-flop, will the pulse width of "ack" too short to clear
the flip-flop in real circuits?
Thank you!
Assume that at any time the negative pulses of these two signals do
not overlap and there is enough time between the two pulses.
process (ack, sig1)
begin
if ack = '1' then
ready <= '0';
elsif rising_edge(sig1) then
ready <= '1';
end if;
end process;
process (ready, sig2)
begin
if ready = '0' then
ack <= '0';
elsif rising_edge(sig2) then
ack <= '1';
end if;
end process;
I use Xilinx FPGA to do the post-place-and-route simulation.
The waveform is as follows:
_______ _______________________________________
| |
sig1 |_____|
__________________
| |
ready _______________| |_____________________
________________________ _________________________
| |
sig2 |_____|
___
| |
ack ________________________________| |___________________
The pulse width of "ack" is about 4ns. Because the signal "ready" is
actually a flip-flop and the signal "ack" is the asynchrounous reset
of this flip-flop, will the pulse width of "ack" too short to clear
the flip-flop in real circuits?
Thank you!