On line Design Rule Checking (DRC) is nothing new. The technology has been in use for years in a variety of different layout editors and yet nearly every Layout engineer has a love / hate relationship with it. Why? Well it really comes down to the use model and the responsiveness of the application.
At the beginning of the design process, layout engineers love on line DRC. But as the design progresses the relationship begins to sour. The problem is that as the layout gets bigger and more complex the performance invariably starts to fall off until it reaches a point where it becomes unacceptable and the layout engineer simply turns it off and resorts to running the occasional batch checks.
To really be effective, on line DRC has to be an interactive tool that is run often during the layout process, so as such it needs to have a simple use model and have a fast response. The engine needs to be ‘built in’ to deliver the required performance and the feedback needs to be comprehensive enough to enable the layout engineer to quickly fix the violation.
Custom Compiler’s In-Design assistants have been architected with both performance and use model in mind. The use model is simple. Whatever is visible in the active viewport is what gets checked. That way the layout engineer can easily control which portions of the design are being checked. In addition the In-Design assistant has a GUI to control which type of checks you want to do and also lets the layout engineer setup a group of checks and save them off in for future reuse. For example the layout engineer can save off a set of checks for Poly and another set for metals. The built in DRC engine is lightweight and extremely fast with results delivered in seconds.
Violations are viewed via an error viewer and the layout engineer can simply select which type of violation they want to view in more detail. Details of the type of violation and the objects associated with it are displayed in the Marker index panel. When an object associated with that violation is selected from that panel the error viewer automatically zooms to the error marker in the layout window. Holding the cursor over the marker in the layout window also gives the layout engineer details of the violation using the actual description of the violation that was specified in the rules file. Displaying the information in this way makes it easy to determine what to do to fix the violation. Figure (1) shows the violation marker and details of the metal violation.