I need a circuit is designed to detect whether there has been at least one transition during the past clock period. This image show detail the operating principle of the circuit. I am not specialized in digital, so i don't know this circuit is possible? Please give me some information about the circuit.
You need two pipelined registers, reg1 and reg2. Keep the current data in reg1. On the next clock edge, move the content of reg1 to reg2. Always compare each bit in reg1 with corresponding bit in reg2 using XOR gate. You'll get a '1' when the contents are different. You'll get a '0' otherwise.
I wonder whether some kind of flip-flop detector would work. However I'm not certain whether you can get it to it work on a single up or down transition, or whether it requires an entire cycle.
From the opposite standpoint what does your output do? It stays high most of the time, and it drops when it sees no transition during a clock cycle. Therefore it might also be called a missing pulse detector. A 555 timer IC can be made to do that.
Hi Akanimo,
Thanks for your help.
This circuit work with clock frequency is smaller than the input signal frequency.
Therefore, I think it is impossible to use the your method.
Hi BradtheRad,
Thanks for your help. The method use 555 timer IC is very suitable for my case. But I can't use the IC 555, I need a integrated circuit in my IC. Do you have any other method to design a missing pulse detector?
Thanks,
The "at least one transition" point needs clarification. There can be potentially many transitions with high repetition frequency, under circumstances they may be detected as zero transitions.
Hi,
We need to operate at the frequency greater than 10MHz. Is the IC 555 can work in this case? Is this depend on the technology?
I wonder if I use 65nm CMOS technology with the same topology of IC555, can I obtain the expected operation frequency?
You have mentioned too many frequencies: 10MHz, 30MHz, and the "input" waveform of your last post shows a frequency that is about double that of the 30-MHz clock.
Anyways, the idea is that the clock is in tens of MHz.
I asked you earlier on how you got the clock signal, whether it is a primary clock or a generated clock but you didn't give any response in that regard.
What I think you can do right now is to use a clock multiplier (a PLL would be sufficient) to generate a fast enough clock signal from your 30-MHz clock so that you can use my approach of Post #2.
I noticed that your output logic level of Post #10 is reversed compared to that of Post #1. This means you would replace the XOR gate with an XNOR gate.
- - - Updated - - -
But this means that the generated clock frequency has to be faster than 1/5ns ( =200MHz).
1) The Data Signal is converted from "H-to-L" & "L-to-H" transitions to very narrow Pulses - ( width needs verified )
2) One, or more, Data Pulses will SET the R-S Latch, asynchronously.
3) The rising edge of the Clock triggers the D-Latch to transfer the state of the R-S Latch to the OUTPUT Pin.
4) The rising edge of the Clock also RESETS the R-S Latch - ( I need to SYNC this with a new Data Transition Pulse )
5) The RESET of the R-S latch can be blocked by an active Transition of the Data Signal - ( currently very poorly )
The logic to handle a "simultaneous" Data Transition and a Rising Clock Edge RESET needs to fixed by making them always sequential.