Debouncing....at About 1Mhz

Nov 01, 2007 300 Replies

One of the great engineering virtues is laziness. I consider a circuit or a piece of code or a mechanism and say "that's going to be way too much work" so I put it off for a while, or talk to somebody about it. Usually something simpler emerges. Too many people, cursed with excess energy, just plow ahead and implement the first idea they have. And when it turns out to have bugs, as complex things will, they add stuff to repair the bugs.

John

Yeah, I was thinking along those lines. This is a "feed-beside" sort of concept, a brutally fast forward path, with slower tweaks off to the side to fix the low-speed defects. This was the concept Tek used in their 7000 series oscilloscopes.

I was also thinking that the origical hysteresis idea was OK except that the hyst band of cmos schmitts is poorly defined. That's fixable by defining it better, namely by adding additional hysteresis. The numbers ought to work.

John

With PREbar functional....

formatting link

I use that inverter/buffer characteristic of the XOR a lot...

Say I have an 8GHz (Johnson-type) divider chain down to 125MHz... object to create single-side-band. (Mixed-mode to boot... CML down to around 500MHZ, then CMOS.)

Since it's a Johnson counter with no set or reset, how do I guarantee the phase relationship of the 8GHz to the 125MHz?

Answer, I don't.

What I did was measure literally, using a cell aptly named "WhosOnFirst.sch" (*) and invert as needed.

(*) No one got the joke. Youngsters :-(

...Jim Thompson

| James E.Thompson, P.E. | mens | | Analog Innovations, Inc. | et | | Analog/Mixed-Signal ASIC\'s and Discrete Systems | manus | | Phoenix, Arizona Voice:(480)460-2350 | | | E-mail Address at Website Fax:(480)460-2142 | Brass Rat | | http://www.analog-innovations.com | 1962 | America: Land of the Free, Because of the Brave

[snip]

I've been known to toss designs that I had been working for weeks/months, because of too many "patches".

Panics the hell out of clients until they see the results of a clean start.

...Jim Thompson

| James E.Thompson, P.E. | mens | | Analog Innovations, Inc. | et | | Analog/Mixed-Signal ASIC\'s and Discrete Systems | manus | | Phoenix, Arizona Voice:(480)460-2350 | | | E-mail Address at Website Fax:(480)460-2142 | Brass Rat | | http://www.analog-innovations.com | 1962 | America: Land of the Free, Because of the Brave

It takes guts to dump something you've put three months into. Even if the new thing would be better and finished sooner. It's even more difficult in a team design, where peer pressure exists. But yeah, I'll consider dumping a design that's far along, even finished, when a better or simpler idea pops up, or when the original starts creaking of its own weight.

That's why it's better to not start too soon, to play with ideas for a while at the start.

John

I've done that in Manchester-coded optical systems. If the uP doesn't see good data frames for a while, it sets a bit to xor the data stream, and sets another bit to open up the pll filter bandwidth.

John

[snip]

My wife says I have the Michelangelo syndrome, with the Pope (aka the client) saying, "When will you make an end?"

I'm always striving for that simple perfect work of art ;-)

...Jim Thompson

| James E.Thompson, P.E. | mens | | Analog Innovations, Inc. | et | | Analog/Mixed-Signal ASIC\'s and Discrete Systems | manus | | Phoenix, Arizona Voice:(480)460-2350 | | | E-mail Address at Website Fax:(480)460-2142 | Brass Rat | | http://www.analog-innovations.com | 1962 | America: Land of the Free, Because of the Brave

formatting link

Service to my country? Been there, Done that, and I\'ve got my DD214 to prove it. Member of DAV #85. Michael A. Terrell Central Florida

You don't drag them, you push them around! ;-)

Service to my country? Been there, Done that, and I\'ve got my DD214 to prove it. Member of DAV #85. Michael A. Terrell Central Florida

At the peak of the Beatles era, I designed the "Come Together" circuit for levelling the steam pressures from two boilers that had separate control loops.

Did you like my Seesaw Inverter?

John

On Sun, 11 Nov 2007 07:56:21 -0800, John Larkin wrote:

--- I think this pretty much takes care of it all.

Version 4 SHEET 1 1700 680 WIRE 688 -336 496 -336 WIRE 368 -304 16 -304 WIRE 576 -304 368 -304 WIRE 368 -256 368 -304 WIRE 336 -240 192 -240 WIRE 576 -240 576 -304 WIRE 496 -224 496 -336 WIRE 496 -224 400 -224 WIRE 544 -224 496 -224 WIRE -256 -208 -304 -208 WIRE -128 -208 -176 -208 WIRE 336 -208 -128 -208 WIRE 688 -208 608 -208 WIRE 544 -192 448 -192 WIRE 192 -128 192 -240 WIRE 256 -128 192 -128 WIRE 688 -128 688 -208 WIRE 688 -128 320 -128 WIRE -128 -32 -128 -208 WIRE -80 -32 -128 -32 WIRE 16 -32 16 -304 WIRE 16 -32 0 -32 WIRE -128 0 -128 -32 WIRE 16 0 16 -32 WIRE 240 0 16 0 WIRE 448 0 448 -192 WIRE 448 0 320 0 WIRE 448 16 448 0 WIRE 480 16 448 16 WIRE 576 16 576 -176 WIRE 576 16 544 16 WIRE 16 64 16 0 WIRE 64 64 16 64 WIRE 192 64 192 -128 WIRE 192 64 144 64 WIRE 448 64 448 16 WIRE 192 96 192 64 WIRE 16 112 16 64 WIRE -128 224 -128 80 WIRE 16 224 16 192 WIRE 16 224 -128 224 WIRE 192 224 192 176 WIRE 192 224 16 224 WIRE 368 224 368 -192 WIRE 368 224 192 224 WIRE 448 224 448 144 WIRE 448 224 368 224 WIRE 576 224 576 16 WIRE 576 224 448 224 WIRE -128 288 -128 224 FLAG -128 288 0 SYMBOL Comparators\\\\LT1720 368 -288 R0 WINDOW 0 33 88 Left 0 WINDOW 3 26 41 Left 0 SYMATTR InstName U1 SYMBOL voltage 16 96 R0 WINDOW 123 0 0 Left 0 WINDOW 39 0 0 Left 0 WINDOW 0 -69 53 Left 0 WINDOW 3 -62 78 Left 0 SYMATTR InstName V2 SYMATTR Value 5 SYMBOL res 160 48 R90 WINDOW 0 64 56 VBottom 0 WINDOW 3 66 56 VTop 0 SYMATTR InstName R6 SYMATTR Value 10k SYMBOL cap 320 -144 R90 WINDOW 0 66 31 VBottom 0 WINDOW 3 70 33 VTop 0 SYMATTR InstName C3 SYMATTR Value 1e-10 SYMBOL Comparators\\\\LT1720 576 -272 R0 WINDOW 0 33 88 Left 0 WINDOW 3 26 41 Left 0 SYMATTR InstName U2 SYMBOL res 208 192 R180 WINDOW 0 -47 72 Left 0 WINDOW 3 -51 44 Left 0 SYMATTR InstName R1 SYMATTR Value 10k SYMBOL res 464 160 R180 WINDOW 0 44 70 Left 0 WINDOW 3 36 40 Left 0 SYMATTR InstName R2 SYMATTR Value 10k SYMBOL res 336 -16 R90 WINDOW 0 64 58 VBottom 0 WINDOW 3 71 59 VTop 0 SYMATTR InstName R3 SYMATTR Value 10k SYMBOL cap 544 0 R90 WINDOW 0 64 31 VBottom 0 WINDOW 3 65 31 VTop 0 SYMATTR InstName C1 SYMATTR Value 1e-9 SYMBOL res -272 -192 R270 WINDOW 0 70 59 VTop 0 WINDOW 3 67 58 VBottom 0 SYMATTR InstName R5 SYMATTR Value 750 SYMBOL res -112 96 R180 WINDOW 0 -40 64 Left 0 WINDOW 3 -52 34 Left 0 SYMATTR InstName R7 SYMATTR Value 1000 SYMBOL res -96 -16 R270 WINDOW 0 71 56 VTop 0 WINDOW 3 65 54 VBottom 0 SYMATTR InstName R8 SYMATTR Value 1000 TEXT -112 256 Left 0 !.tran 10e-6 uic TEXT -336 -208 Left 0 ;IN TEXT 696 -336 Left 0 ;OUT

-- JF

I still sketch for the tough problems. That gives me the freedom to express the problem in any fashion. If drawing cartoons of a little choo choo train stuck in a valley helps to solve the circuit ... great! :)

Also, I think I can move my pen faster than a mouse. D from BC

Coffee works better for me.

OK, how about this?

formatting link

John

[snipped .asc file for less scrolling]

Yup ..this is in the same solution family.

Without running a sim, I can see how this works.. It's comparator reference level shifting by differentiator. The differentiator pops the - input into oblivion for a time which makes the comparator dead and that's how the fuzzy edges are skipped. Nice.... Uses single output op amps. Single device prop delay.

1 IC solution. Fast.

I like my 80% baked solution on

formatting link

The first op amp is unstable. When an edge crosses the threshold the comparator locks up fast due to a local positive feedback loop. The input signal probably can't compete with this and therefore no race condition exists and it's unlikely the timing will fault. (Yes...I got scared by JL posts of asynch hairballs. :) )

JF, I see a 2 comparator delay in disabling the first comparator. I have to wonder if some glitch could still slip through..

In my circuit the first comparator is disabled by 1 comparator delay.

D from BC

Looks pretty good. The only hazard I can see is that a very fast spike can blow through the first comparator before the second one has time to come back around. That's a hazard with most all comparators that have external hysteresis.

That's only a problem if the input can in fact have such fast spikes, which in this case maybe it can't.

John

Damn...that's right...This is freakn scope trigger tech... :P I didn't notice. Bummer... :( I'm reinventing the wheel again.

Now I'm wondering if I could have cheated and looked up oscilloscope trigger circuit patents to dodge a whole lot of dinking with gates, D ff's and one shots. There should be ooodles of trigger art since the invention of the oscilloscope.

What to do..... Use time sifting through mountains of patents versus use time designing from scratch..

D from BC

I found, at least with 74HC' stuff, that I needed to delay the clock flip-over as well... looked like SUAH timing was violated.

...Jim Thompson

| James E.Thompson, P.E. | mens | | Analog Innovations, Inc. | et | | Analog/Mixed-Signal ASIC\'s and Discrete Systems | manus | | Phoenix, Arizona Voice:(480)460-2350 | | | E-mail Address at Website Fax:(480)460-2142 | Brass Rat | | http://www.analog-innovations.com | 1962 | America: Land of the Free, Because of the Brave

[snip]

Well, DUH! My circuit trips on the first edge and ignores all others "until sweep is complete"... it's called BLANKING ;-)

...Jim Thompson

| James E.Thompson, P.E. | mens | | Analog Innovations, Inc. | et | | Analog/Mixed-Signal ASIC's and Discrete Systems | manus | | Phoenix, Arizona Voice:(480)460-2350 | | | E-mail Address at Website Fax:(480)460-2142 | Brass Rat | | http://www.analog-innovations.com | 1962 | America: Land of the Free, Because of the Brave

Actually, the input signal is attenuated so that it toggles between 1.5V and 3.5V, (so that one of the inputs is always below the common mode limit) and the differentiator forces the inverting input of the comparator to a little bit higher/lower than the rail with the opposite polarity of the input signal, which keeps the input chatter away from the switching point until the cap discharges.

Yeah. I hate to write ECOs.

John

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required