Why Does My Ring Oscillator System Not Oscillate?

In summary, the problem is that when the system starts up, there are glitches caused by the race between the two inverters.
  • #1
littlebilly91
22
0
I am doing a discrete event simulation of logic gates and I have come upon a problem. I have set up a system similar to a ring oscillator. I understand that this system should not oscillate, but after thinking about it, I'm not sure why not. The system has one input, 1 fed into a NAND gate. The NAND feeds into a NOT and the not feeds back into the original NAND. This is similar to an even number of NOTs so it shouldn't oscillate, but any time I analyze it step by step it seems like it still would. Here is my thinking:

At time 0:
Both gates output a 0.
The NAND sees a 1 from the output and a 0 from the NOT gate
The NOT sees a 0 from the NAND
Both the NAND and the NOT will switch to 1 after a propagation delay.

After one delay:
Both gates output a 1.
The NAND sees a 1 from the output and a 1 from the NOT gate
The NOT sees a 1 from the NAND
Both the NAND and the NOT will switch to 0 after another propagation delay.

repeat forever...

I assumed the delays are the same, is that where the mistake lies? The digital logic class I am in is solely focused on the logic so I don't really know any different.
 
Engineering news on Phys.org
  • #2
Suppose you had two inverters with each output feeding the input of the other.

Start at one input and assume it is high.
Its output will be low and so will the input it is connected to.

So the second output will be high, which is OK because it is connected to the first input which we assumed was high.

So, this is a stable state.

Such setups tend to be unstable, though, and may give brief bursts of oscillation ("ringing") if it is driven by another signal.

If you connect a resistor across one of the inverters (from input to output) , and a capacitor in series with either output to input connection, then you will possibly get oscillation. This is a common and useful oscillator.
 
  • #3
Right, it makes sense to think about it like that, but to actually simulate it, I need an initial condition. I had previously been considering all gates to initially be at 0. But this seems to give rise to the problem I stated earlier:


At time 0:
Both gates output a 0.
The NAND sees a 1 from the input and a 0 from the NOT gate
The NOT sees a 0 from the NAND
Both the NAND and the NOT will switch to 1 after a propagation delay.

After one delay:
Both gates output a 1.
The NAND sees a 1 from the input and a 1 from the NOT gate
The NOT sees a 1 from the NAND
Both the NAND and the NOT will switch to 0 after another propagation delay.

mistyped it a bit the first time (had output instead of input) Sorry.
 
  • #4
It looks like a classic race condition.

If both inverters start off with their inputs low and there are pull-up resistors, one of them will get to the "high" level before the other because of small differences in the inverters.

When it does, it will send its output low and force the input of the other inverter to abandon its race upwards and go low.

So, there will be no oscillation, but a couple of glitches on startup.

Unfortunately, simulators do have perfectly matched components, so it would be necessary to deliberately add a resistor or two to produce a realistic difference between components.
 
  • #5
Hmmm... that is interesting. I was hoping to be able to resolve this in my simulation. I guess I won't be able to. I am just doing a simple logic sim, and it's not really fit to handle things like this. Thanks for the feedback. PF never let's me down!
 

Related to Why Does My Ring Oscillator System Not Oscillate?

1. Why is my ring oscillator system not oscillating at all?

There could be several reasons for this issue. First, check if there is a power supply issue or if the components are properly connected. Also, make sure that the ring oscillator is designed correctly and that the components have the correct values. Additionally, check for any short circuits or faulty components.

2. How do I troubleshoot a ring oscillator system that stops oscillating after a few cycles?

This issue could be caused by several factors. Check if there is any external noise or disturbance affecting the system. Also, make sure that the power supply is stable and the components are not overheating. Another possible cause could be mismatched components or incorrect values in the design. Finally, check for any loose connections or faulty components.

3. Can the load capacitance affect the oscillation of a ring oscillator system?

Yes, the load capacitance can significantly impact the oscillation of a ring oscillator system. The load capacitance, along with the other components in the oscillator, determines the frequency of oscillation. If the load capacitance is not properly selected or is too large, it can prevent the system from oscillating or cause it to oscillate at a different frequency than desired.

4. How can I improve the stability of my ring oscillator system?

To improve the stability of a ring oscillator system, you can use a buffer amplifier or a phase-locked loop (PLL) to provide a stable clock signal. Additionally, make sure that the components are of high quality and have low temperature coefficients. You can also add decoupling capacitors to reduce noise and improve the stability of the power supply.

5. Can temperature affect the oscillation of a ring oscillator system?

Yes, temperature can significantly impact the oscillation of a ring oscillator system. As the temperature changes, the characteristics of the components can also change, affecting the frequency of oscillation. It is essential to select components with low temperature coefficients and design the oscillator to compensate for temperature variations to ensure stable oscillation.

Similar threads

  • Electrical Engineering
Replies
6
Views
1K
  • Electrical Engineering
2
Replies
41
Views
4K
  • Electrical Engineering
Replies
3
Views
1K
  • Electrical Engineering
2
Replies
49
Views
2K
  • Engineering and Comp Sci Homework Help
Replies
20
Views
2K
  • Engineering and Comp Sci Homework Help
Replies
7
Views
1K
  • Engineering and Comp Sci Homework Help
Replies
5
Views
1K
  • Engineering and Comp Sci Homework Help
Replies
14
Views
4K
  • Engineering and Comp Sci Homework Help
Replies
10
Views
4K
  • Engineering and Comp Sci Homework Help
Replies
2
Views
3K
Back
Top