When is a digital circuit not a digital circuit? When somebody forgot that ultimately everything is an analog circuit, and things like L, R, and C combine in the most insidious ways to derail a design.
Fortunately, some digital things just happen to scream, "I'm inherently analog!" For example, an LVDS interface bus will do that, particularly as you go from circuit design to layout and have to start considering the dielectric constant of the fiberglass material out of which you make the PCB and the widths of all the copper traces you put down.
Other digital circuits can be more subtle, however -- particularly if they're perceived to be "low speed," or they're deceptively single-ended signals. Those can be easy to overlook as being truly "analog" at their root. Open-drain signals are particularly sneaky in this regard, since unless you're having some specification called out to you as a legitimate pull-up value (as may be the case if you're dealing with an open-drain clock or data line on a bused serial communications system on a cable with real-world L's and C's staring you in the face).
It can be mighty tempting to say, "Just slap a 10K resistor down there and be done with it, since we have lots of those on the board already and there'd be one less reel to load on the pick-and-place machine when the boards are built." Often you can get away with this. But sometimes you can't.
This was a case we encountered some years back with the Net 186 design, a popular processor and networking chip evaluation card put out by AMD.
AMD's idea was simple: They wanted to penetrate the nascent Internet-connected device market using an Ethernet controller chip (the Am79C961A) they made for PC-ISA cards and a 80186 microprocessor variant (the Am186ES) they made for embedded control systems. And for just about all of the Net 186 cards they ever shipped, the system performed quite admirably.
Then again, the bulk of their users were implementing designs where the Ethernet frames sent to the controller were small and the DMA system never got that heavily stressed. Or their customers were using the core of the reference design as a starting point for their own designs, and enough things were getting changed before anything went to market that little things such as the values chosen for pull-up resistors never caught up with them.
Where the Net186 card began to break down -- and first came to our attention, since we had done some of the software tools and written a few drivers for the system -- was when users began to beat hard on the Ethernet controller chip and send large frames through it (or send a lot of them back-to-back).
To understand where this breakdown occurred, you have to understand that the Am79C961A was designed to be a chip on a PC-ISA card looking back at a host ISA bus. As a consequence, a few of the signals it wanted (and had to send) were subtly different from those going to and coming from the bus of an x86 processor. The bus of an early x86 processor and an ISA bus are similar, but not identical. As a consequence, between the Am79C961A and the Am186ES sat a small 22V10 PAL to implement the glue logic to make one work with the other.