Article first printed in PC Design , April 1997
Dealing with ringing and crosstalk in fast digital systems has never been an easy task. Especially today, with 150-MHz processors, new chips at 300-ps edge rates, and digital designers that want to carpet your board with 128-bit buses flying every which way, sometimes it's a wonder anything ever works.
On top of that, every year, relentless progress in the density of high-speed integrated circuits makes the situation worse . You can literally watch it happening. To see the effect, compare a new PC motherboard today with one from just a few years ago. The new one will have a lot more terminators. That is the direct, incontrovertible evidence that signal-integrity problems are growing more prevalent with every new product generation.
Whenever I speak to a group of digital designers, I ask "How many of you have ever had to add terminators to a board during debug to get it to work?" Without hesitation, everybody's hand goes up.
It's an endemic problem and an indication of the rather crude state of the art of signal-integrity design at many companies. Terminations are one of the key tools available to help fix problems with ringing, yet many digital designers don't know how to tell when ringing will occur, what kind of termination will be required to fix the problem, and where it must be placed.
Too often have I seen a board laid out with termination mounting pads provided on every net, with the assumption that a debug technician will test every signal by hand, apply terminators as needed, and then update the net list. Can't we do better than this? Isn't there some way to automate the process? IBIS to the rescue!
13.4.1 What Is IBIS?
The I/O Buffer Information Specification (IBIS) is an international standard for the electrical specification of chip drivers and receivers. It provides a standard file format for recording parameters like driver output impedances and waveforms, input loading, package parasitics, and pcb descriptions, all of which may then be used by any software application.
The parameters provided by an IBIS data file are ideally suited for automatic calculation of ringing and crosstalk.
The IBIS file structure makes it easy to specify the behavior of large chips with lots of I/O. IBIS I/O specifications are like macros that may be easily assigned to individual package pins. This hierarchical structure keeps the I/O specifications somewhat distinct from the package specifications, which helps when specifying very large devices or devices that may be packaged in different ways. The proponents of IBIS call it component-centric , which means that the root level of specification is at the component level (or packaged-chip level), which is the same level at which pcb layout tools operate . By way of contrast, a SPICE model usually focuses more on the detailed operation of individual I/O circuits rather than on the specification of a whole component.
Another difference between IBIS and SPICE is the form in which information appears. You can look in an IBIS file format and directly read out the worst-case V OH value at a specified output current. In that sense, IBIS provides specifications . With a SPICE model, you must run a SPICE simulation with various combinations of circuit parameters to discover the same information. SPICE provides models . With SPICE, there's no way to represent a circuit that operates at one level of performance today, while reserving some headroom in the specification for future changes in the chip production process. An IBIS specification can do that.
13.4.2 Who Created IBIS?
The IBIS file format was originally created by an industry group called the IBIS Open Forum and later adopted by the American National Standards Institute (ANSI) and also the Electronic Industries Alliance (EIA) (see Section 13.5.1, "IBIS Historical Overview"). Information about the latest state of the standard is maintained by the EIA  .
Keep in mind that IBIS by itself is nothing but a file format. It specifies how to record the various parameters of a chip driver or receiver in a standard IBIS file, but it does not specify what to do with them once they have been recorded. That's up to the simulation tools that use IBIS models.
To effect practical simulations using IBIS, you need four things:
13.4.3 What Is Good About IBIS?
IBIS is a fairly simple, straightforward file format. It is well suited for use by SPICE-like circuit simulation tools, but it is not SPICE-compliant, because the file format is not directly readable by all versions of SPICE, although this is changing rapidly with the introduction from several SPICE vendors of new B models that directly accept IBIS parameters.
IBIS provides a behavioral description of a driver or receiver without revealing proprietary details of how the circuit is internally fabricated. In other words, vendors can use IBIS models to specify how their great new gate designs work without giving away too much information to their competitors . Also, because it is a simplified model, it is reported to require on the order of 10 to 15 times less computation time than an equivalent SPICE transistor -level model when simulating typical digital configurations.
IBIS provides for specification of a complete I-V table representing a driver in it's high state, another I-V table to represent the driver in it's low state, plus some other information that tells it how to morph from one to the other at a defined rate of transition. The use of I-V tables is what gives IBIS the ability to easily model nonlinear effects like protection diodes, TTL totem-pole drivers, and emitter-follower outputs.
IBIS can be used to produce accurate, detailed simulations of high-speed ringing and crosstalk behavior. It can be used to examine signal behavior under worst-case risetime conditions, something impossible to manage with physical testing.
Lastly, because IBIS is a file format, not a procedural specification, you can use it for lots of stuff. Right now, it's being built into many of the tools you already use on a daily basis. Don't be surprised if all layout tools of the future calculate ringing and crosstalk on the fly as they route your traces, identifying and fixing signal integrity violations during auto-routing.
13.4.4 What's Wrong with IBIS?
Of course, IBIS is not perfect. There are some problems, but in my opinion, none significant enough to imperil the status of IBIS as the best, most comprehensive, and genuinely useful piece of signal-integrity technology to come along in a great while. With that said, here's my list of flaws:
I don't view any of these issues as major impediments to eventual acceptance of the IBIS technology. Most engineers today get almost no support when it comes to ringing, crosstalk, and ground bounce, and are suffering because of it. If IBIS helps, I say more power to it.
13.4.5 What You Can Do to Help
IBIS is coming. IBIS is going to solve a lot of common, everyday, high-speed design problems, but first we have to get our chip vendors to provide IBIS model files for every part they make.
When you talk to chip vendors about library files, please indicate your interest in IBIS. Let them know you think it's important. Let them know you need it. And, if you are planning to buy a lot of high-speed parts , let them know that you value working with a vendor that understands the importance of signal integrity in high-speed digital design.
POINTS TO REMEMBER
Transmission Line Parameters
Pcb (printed-circuit board) Traces
Generic Building-Cabling Standards
100-Ohm Balanced Twisted-Pair Cabling
150-Ohm STP-A Cabling
Time-Domain Simulation Tools and Methods
Points to Remember
Appendix A. Building a Signal Integrity Department
Appendix B. Calculation of Loss Slope
Appendix C. Two-Port Analysis
Appendix D. Accuracy of Pi Model
Appendix E. erf( )