associated with the layout. Usually worst-case parasitics and best-case parasitics are extracted and used in the simulations. For ICs, unlike PCBs, physical measurement of the parasitics is almost never done, since in-situ measurements with external equipment are extremely difficult. Furthermore, any measurement would occur after the chip has been created, which is too late to fix any problems observed. Create a list of expected noise events, including different types of noise, such as coupling and charge sharing. Create a model for each noise event. It is critical that the model is as accurate as necessary to model the given noise event. For each signal event, decide how to excite the circuit so that the noise event will occur. Create a SPICE (or another circuit simulator) netlist that represents the desired excitation, to include as many effects (such as parasitic inductance and capacitance, and various distortion effects) as necessary. Run SPICE simulations. Analyze the simulation results and decide whether any re-design is required. It is common to analyze the results with an eye pattern and by calculating a timing budget. Modern signal integrity tools for IC design perform all these steps automatically, producing reports that give a design a clean bill of health, or a list of problems that must be fixed. However, such tools generally are not applied across an entire IC, but only selected signals of interest. Fixing IC signal integrity problems Once a problem is found, it must be fixed. Typical fixes for IC on-chip problems include: Removing impedance discontinuities. Finding places where significant shifts in the impedance exist and adjusting the geometry of the path to shift the impedance to better match the rest of the path. Driver optimization. You can have too much drive, and also not enough. Buffer insertion. In this approach, instead of upsizing the victim driver, a buffer is inserted at an appropriate point in the victim net. Aggressor downsizing. This works by increasing the transition time of the attacking net by reducing the strength of its driver. Add shielding. Add shielding of critical nets or clock nets using GND and VDD shields to reduce the effect of crosstalk (this technique may lead to routing overhead). Routing changes. Routing changes can be very effective in fixing noise problems, mainly by reducing the most troublesome coupling effects via separation. Each of these fixes may possibly cause other problems. This type of issue must be