Using async signal

Guest #2405053
Rate this post
useful
not useful
Hi, i'm new to VHDL, i have this problem:

i've an async signal, called REQUEST, and into my process, if the 
counter arrives to 5 and if the REQUEST signal went 1 in the previous 
period of clock, i must do something. my problem is that REQUEST is 
asynchronous, and its period should be less long than clock's period, so 
i can't check it every positive edge of clock with the usual clock'event 
and clock='1'….

how can i solve this problem? thanks!
Moderator (Company: Titel) #2405182
Rate this post
useful
not useful
> and if the REQUEST signal went 1 in the previous
> period of clock, i must do something.
Lets say these are your signals:  (X=signal change)
CLK   .-------.         ,-------.         ,-------.         ,-------.
     ´         `-------´         `-------´         `-------´
CNT    X     3           X     4           X      5          X
REQUEST   when does it get active?   ^here     ^or here

> and its period should be less long than clock's period, so i can't
> check it every positive edge of clock with the usual clock'event
> and clock='1'….
You can store a pulse in a signal shorter than your clock cycle in a way 
like this:
http://www.lothar-miller.de/s9y/archives/19-Kurzer-Spike-in-Puls-umgewandelt.html
But even a trick like this doesn't help you with your problem of clock 
donaim crossing. As you describe it, I see no chance to react reliable 
in less than one clock cycle...

Reply

Please log in before posting.

or

Log in with Google account

Registration is free and takes only a minute.

Register now