When Logic Switches Too Fast
We've been shipping the same product for 10 years now, and it worked just fine until last month. I don't know what happened, but that new batch of chips just doesn't seem to work anymore. The darn thing just has a 5-MHz processor and a few logic gates. What could have gone wrong?
Sound familiar? That's not surprising. I hear the same story from engineers all over the country. The most common cause of this problem is rise-time shrinkage.
Not long ago, the major TTL logic families all had typical rise and fall times that, by modern standards, were very slow--on the order of 10 ns. Products that use these old chips have few problems with ringing or crosstalk. Today's digital logic operates much faster. Modern vanilla-bean logic families have rise and fall times on the order of 1 ns or less. As chips continue to shrink, and as switching speeds continue to improve by a factor of two every few years, we will soon see rise and fall times slink down into the deep sub-nanosecond realm, a territory previously reserved for UHF and microwave engineers. This relentless, shrinking trend toward sub-nanosecond risetimes brings us to the crux of the problem: Faster switching exaggerates problems with ringing and crosstalk. Over the years, as logic outputs have continued to switch faster and faster, problems with ringing and crosstalk have gotten progressively worse.
The two traces in the figure illustrate the nature of the problem. This scenario represents the behavior of an unterminated logic trace which is driven with two different test signals:
- Typical 1986 driver output (rise/fall = 5 ns)
- Typical 1996 driver output (rise/fall = 1/2 ns)
In both cases, the trace is the same length (3 in.) and is driven with the same logic pattern. With the older, slower driver, the signal looks OK. With the newer, faster driver, the signal is almost unrecognizable. There aren't too many of us that would want to depend on such a signal for our processor clock or address-data bus, yet this is precisely the signal found in many digital products (hopefully, not yours). These products were often designed in one era, assuming slow logic, and subsequently assembled using more modern, faster logic. The clock rate in both cases is the same. Nobody sped up the clock. The problem is entirely due to an increase in switching speed (faster rise and fall times). Where ringing is concerned, the switching speed matters more than the clock rate.
This example brings home two very important points. First, for a given layout, faster switching makes for uglier signals. This problem is inescapable. It can only be circumvented by improving the layout, reducing the loads, or adding terminators. Second, chip manufacturers are not always doing us a favor when they begin shipping "new and improved'' logic circuits. When substituted into an older design, the increase in speed may buy you nothing but headaches.