Waiving Known DRC Violations from Layout IP

Slides:



Advertisements
Similar presentations
Logical and Physical Design of an Information System
Advertisements

Copyright © 2009,Intel Corporation. All rights reserved. Auto ECO Flow Development For Functional ECO Using Efficient Error Rectification Method Based.
Circuit Extraction 1 Outline –What is Circuit Extraction? –Why Circuit Extraction? –Circuit Extraction Algorithms Goal –Understand Extraction problem –Understand.
ONYX RIP Version Technical Training General. Overview General Messaging and What’s New in X10 High Level Print and Cut & Profiling Overviews In Depth.
Annoucements  Next labs 9 and 10 are paired for everyone. So don’t miss the lab.  There is a review session for the quiz on Monday, November 4, at 8:00.
Chapter 4 Design Approaches and Methods
Chapter 7: User-Defined Functions II Instructor: Mohammad Mojaddam.
An Introduction to Java Programming and Object- Oriented Application Development Chapter 8 Exceptions and Assertions.
Programming Types of Testing.
Konstanz, Jens Gerken ZuiScat An Overview of data quality problems and data cleaning solution approaches Data Cleaning Seminarvortrag: Digital.
Accelerating Productization. Functional Metrology TM Challenges of Semiconductor Productization Leading IDM’s Solution Novel Solution -> In-product Functional.
Chapter 10 Quality Control McGraw-Hill/Irwin
Ch6: Software Verification. 1 Statement coverage criterion  Informally:  Formally:  Difficult to minimize the number of test cases and still ensure.
Chapter 9 Using Data Flow Diagrams
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 7: Planning a DNS Strategy.
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
From Concept to Silicon How an idea becomes a part of a new chip at ATI Richard Huddy ATI Research.
Automated Tests in NICOS Nightly Control System Alexander Undrus Brookhaven National Laboratory, Upton, NY Software testing is a difficult, time-consuming.
StaffCV Recruitment Management Solution A New Paradigm In Recruiting StaffCV Recruitment Management Solution A New Paradigm In Recruiting.
Process Modeling SYSTEMS ANALYSIS AND DESIGN, 6 TH EDITION DENNIS, WIXOM, AND ROTH © 2015 JOHN WILEY & SONS. ALL RIGHTS RESERVED. 1 Roberta M. Roth.
Workflow API and workflow services A case study of biodiversity analysis using Windows Workflow Foundation Boris Milašinović Faculty of Electrical Engineering.
Presented by Brian Griffin On behalf of Manu Goel Mohit Goel Nov 12 th, 2014 Building a dynamic GUI, configurable at runtime by backend tool.
1.Database plan 2.Information systems plan 3.Technology plan 4.Business strategy plan 5.Enterprise analysis Which of the following serves as a road map.
Benefits of PL/SQL. 2 home back first prev next last What Will I Learn? In this lesson, you will learn to: –List and explain the benefits of PL/SQL –List.
What is Sure BDCs? BDC stands for Batch Data Communication and is also known as Batch Input. It is a technique for mass input of data into SAP by simulating.
1 Chapter 11 Implementation. 2 System implementation issues Acquisition techniques Site implementation tools Content management and updating System changeover.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
Data Flow Diagram A method used to analyze a system in a structured way Used during: Analysis stage: to describe the current system Design stage: to describe.
CAD for Physical Design of VLSI Circuits
Open Discussion of Design Flow Today’s task: Design an ASIC that will drive a TV cell phone Exercise objective: Importance of codesign.
C++ Programming: From Problem Analysis to Program Design, Fifth Edition, Fifth Edition Chapter 7: User-Defined Functions II.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
ISV Innovation Presented by ISV Innovation Presented by Business Intelligence Fundamentals: Data Cleansing Ola Ekdahl IT Mentors 9/12/08.
Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 1: Software and Software Engineering.
Today’s Agenda  HW #1  Finish Introduction  Input Space Partitioning Software Testing and Maintenance 1.
Quality Software Project Management Software Size and Reuse Estimating.
Synopsys Custom Designer Tutorial for a chip integration using the University of Utah Standard Cell Libraries In ON Semiconductor 0.5u C5 CMOS Version.
Systems Life Cycle. Know the elements of the system that are created Understand the need for thorough testing Be able to describe the different tests.
DataBase Management System What is DBMS Purpose of DBMS Data Abstraction Data Definition Language Data Manipulation Language Data Models Data Keys Relationships.
Disciplined Software Engineering Lecture #2 Software Engineering Institute Carnegie Mellon University Pittsburgh, PA Sponsored by the U.S. Department.
Copyright © 1994 Carnegie Mellon University Disciplined Software Engineering - Lecture 1 1 Disciplined Software Engineering Lecture #2 Software Engineering.
1 Introduction to Software Testing. Reading Assignment P. Ammann and J. Offutt “Introduction to Software Testing” ◦ Chapter 1 2.
3 1 Chapter 3 The Relational Database Model Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
AL-MAAREFA COLLEGE FOR SCIENCE AND TECHNOLOGY INFO 232: DATABASE SYSTEMS CHAPTER 1 DATABASE SYSTEMS Instructor Ms. Arwa Binsaleh.
Celltroy Technologies Cell Compiler “Ardon” Overview.
An Overview of Hardware Design Methodology Ian Mitchelle De Vera.
CHAPTER 8 Developing Hard Macros The topics are: Overview Hard macro design issues Hard macro design process Physical design for hard macros Block integration.
March 2004 At A Glance autoProducts is an automated flight dynamics product generation system. It provides a mission flight operations team with the capability.
Software Testing Process By: M. Muzaffar Hameed.
Session 5 Review A3 progress Error Proofing Visual Control Workplace organisation Standard Operating Procedures.
Yield Cleaning Software and Techniques OFPE Meeting
Finding a PersonBOS Finding a Person! Building an algorithm to search for existing people in a system Rahn Lieberman Manager Emdeon Corp (Emdeon.com)
Software Engineering Saeed Akhtar The University of Lahore.
UNIT-III Group Technology and Computer Aided Process Planning
GCSE ICT 3 rd Edition The system life cycle 18 The system life cycle is a series of stages that are worked through during the development of a new information.
Perfecto Mobile Automation
Quality Control Copyright © 2015 McGraw-Hill Education. All rights reserved. No reproduction or distribution without the prior written consent of McGraw-Hill.
Hands-On Microsoft Windows Server 2008 Chapter 7 Configuring and Managing Data Storage.
If you have a transaction processing system, John Meisenbacher
Text2PTO: Modernizing Patent Application Filing A Proposal for Submitting Text Applications to the USPTO.
Project Overview  Structural part Introduction  Laser cutting & forming  Model Making  Designing & Developing  Manufacturing  Building & Analysing.
Project Overview Structural part Introduction Laser cutting & forming
Muen Policy & Toolchain
Transaction processing systems
Lecture 12: Data Wrangling
A Procedure and Program to Optimize Shuttle Mask Cost Advantage
Programming Logic and Design Fourth Edition, Comprehensive
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
HP ALM Test Lab Module To protect the confidential and proprietary information included in this material, it may not be disclosed or provided to any third.
Presentation transcript:

Waiving Known DRC Violations from Layout IP John Ferguson Technical Marketing Engineer Mentor Graphics Corp.

Additional Metal DRC Rules The Problem Due to Process Limitations the Number of DRC Rules is Growing Rule Complexity is Also Growing Difficulty in Defining Rules to Capture Failure Configuration Leads to Over Constrainment Many ‘Errors’ Can Actually Yield Well Meeting all Design Rules is Difficult if Not Impossible 350nm 250nm 180nm 130nm 90nm 65nm 45nm Additional Metal DRC Rules 3 Layer Metal DRC Rules AE Training – mbDRC – Advanced Checks are simple

Manifestation: DRC “Waivers” Waivers = Real DRC Violations That are Allowed in a Design Layout for Mask and Chip Manufacturing Examples: Historic IP Block Has Been Manufactured Clean for Years. Now with New DRC Rules, It Fails. Certain Blocks (Memories) Take Advantage of Rigid Design Approach. Fail Standard Logic Rules, But Will Manufacture at a Reasonable Yield. Block is DRC Clean, but Has “Recommended Rule Violations” that Cannot be Fixed Without Generating DRC Violations AE Training – mbDRC – Advanced Checks are simple

Traditional IP Waivers Dilemma IP Provider (e.g. ARM, Virage, etc.) Foundry (e.g. TSMC, UMC, etc.) Can I waive these? Sure, why not. Runs DRC Gets Results Phones Foundry Delivers IP to Customer What is with this IP you sold me!!. What do you mean? Foundry said I could waive! Can I waive these? Let’s call him together and waste tons of your time sorting thi out! What?!? Heck No!! Designer: Integrates IP into Design Gets Results Manually Reviews All Why so many in IP?? Phones Foundry Phones IP Provider Fabless (e.g. Broadcom, Qualcomm, etc.) AE Training – mbDRC – Advanced Checks are simple

Historic Approaches to Try to Solve the Problem Black-Box the IP During DRC Fast RunTimes False Results Eliminated Missed Real Errors Remove Results Per Block Per Cell At DRC Runtime or Post-Process No Missed Real Errors Many False Errors Still Exist AE Training – mbDRC – Advanced Checks are simple

Issue: Interaction Errors Between Waived Cells Can be Incorrectly Waived Identify Blue Inside Waived Cell Waive Spacing Errors Between Identified Shapes Waived Cell Waived Result Errors from Interactions Also Waived X = M1 NOT INSIDE CELL A Y = M1 INSIDE CELL A Check {EXTERNAL X < .2 EXTERNAL X Y < .2} AE Training – mbDRC – Advanced Checks are simple

Results Not Consistent with All Instances: Result Promotion Results Not Consistent with All Instances: Reported at Top Unique Errors Reported at Top Waived Cell Waived Result Results No Longer Associated with Waived Cell Waivers Do Not Apply AE Training – mbDRC – Advanced Checks are simple

Proposed DRC Waiver Flow The Waiver Flow is a 2-Step Process Waiver classification: Identify Waived Results within Cells Cell Library Cell Library W/ Waivers Waiver_flow Cell Characterization Rules Chip level run: Merge chip database with waived results Distinguish waived results by waiver requirements during DRC Remaining results output Also capture all waived results for record keeping Waiver Setup File Chip GDSII Chip Verification Results Final Results Waived Results Unused waivers AE Training – mbDRC – Advanced Checks are simple

Solving the IP Waiver Dilemma IP Provider (e.g. ARM, Virage, etc.) Foundry (e.g. TSMC, UMC, etc.) Can I waive these? Runs DRC Gets Results Phones Foundry Delivers IP to Customer Sure, why not. Designer: Integrates IP into Design Gets Results Waived Results Removed! Goes Home Early for the Day! Fabless (e.g. Broadcom, Qualcomm, etc.) AE Training – mbDRC – Advanced Checks are simple

Typical Flows Representing 3rd Party Foundry & IP Provider 3rd Party IP with Waivers Embedded into Design IP Block Containing Errors to Waive Rules from Foundry Other Files Created by IP Provider Foundry Golden Rules Waiver Setup File Waiver Description File waiver_flow Cell Characterization DRC Chip Verification Waivers Merged with IP By IP Provider Waivers Stripped from Final Results Using Info from Waiver Files IP with Waivers and Waiver Files Passed to Customer By IP Provider Purchased / Reused IP AE Training – mbDRC – Advanced Checks are simple

Proposed Waiver Flow DRC DRC Debug Debug The Proposed Waiver Flow Provides a Automated Communication Channel Between Foundry, IP Providers and Designers for Significantly Reducing Design Debug Time by Eliminating the Reporting of Known and Waived Errors from IP Blocks Unlike Historic Approaches, The Waiver Flow Requires Little Effort by the Designer and Minimizes the Risk of Missed Real Errors without Increasing the Reporting of False Errors AE Training – mbDRC – Advanced Checks are simple

Waiver_Flow: Capturing the Waivers at the IP Level

waiver_flow: Capturing the Cell Results to Waive A ALL B foo C bar ./Waiver_results/A/DRC_RES.db All Rule Results Waiver.gds Waived Results Only rules waiver_flow waiver_setup ./Waiver_results/B/ DRC_RES.db All Rule Results ./Waiver_results/C/ DRC_RES.dbAll Rule Results Chip or Cell Lib C A B -hier and -64 needed to keep consistency of results. All rules must be run to keep consistency of results. Also allows editing of individual results. Ascii Result May be Edited to Selected Results Only Optionally Create New Library with Original Lib and Waivers Merged AE Training – mbDRC – Advanced Checks are simple

Minimizing Reserved Layers Creates Empty Cell for Each Waived Cell Name Instantiates Child Cell into Waived Cell <waiver_keyword>_<check_name>_< orig cell name> Once Cell For Each Waived Check All Results on Specified Layer from waiver_setup Subsequent DRC Differentiates Results by Cell Name Only One Reserved Layer Required! Output Library GDS Files Merges Waiver.gds with Original Cell Data Waiver Cells Instantiated Added Cell Naming Convention Remains Intact Cell Nand2_2x Cell = waive$$_PO.W.R.2_in_Nand2_2x Cell = waive$$_PO.W.S.5_in_Nand2_2x AE Training – mbDRC – Advanced Checks are simple

Waiving from Chip Level

Removal of Waivers The Removal of Waived Results from Real Results is Done at the Time of Running DRC Determined by Pattern Matching Previously Captured IP Waivers to Chip Level Results for the Same Rule DRC Hierarchical Engine Resolves Issues of Results Promotion The Pattern Matching is Determined through the Setup File As Qualified Per Check by the Foundry or Fab AE Training – mbDRC – Advanced Checks are simple

Pattern Matching Criteria: Handling Multiple Overlaps Original IP Should Final Result be Waived? Generated Waivers Parent Level Results (pre-waived) Context IP Block Waiver Setup Specifies Handling of Multiple Overlaps AE Training – mbDRC – Advanced Checks are simple

Tolerances for Waiver Overlap? Chip IP Block IP Waiver Should the Green Results Still Be Waived? Waiver Setup Specifies Required IP Waiver to Chip Error Pattern Matching AE Training – mbDRC – Advanced Checks are simple

Allowing Tolerances for Waiving Chip IP Block Chip level result IP Waiver Allowable Difference? Waiver Setup Specifies Chip Error to IP Waiver Pattern Matching Criteria A Result is Either Fully Waived or Not Waived No chopping of results AE Training – mbDRC – Advanced Checks are simple

Example 1 inv_1 inv_1 in Layout Full-chip result m1_space_waiver A single waiver interacts with the result The waiver matches the result exactly The result matches the waiver exactly AE Training – mbDRC – Advanced Checks are simple

Example 2 Waiving Will Depend On the Specification of the Waiver to Result Matching inv_1 inv_1 in Layout Full-chip result m1_space_waiver A single waiver interacts with the result The waiver is not fully covered by the result The result is fully covered by the waiver AE Training – mbDRC – Advanced Checks are simple

Example 3 Waiving Will Depend On the Specification of the Result to Waiver Matching inv_1 inv_1 in Layout Full-chip result m1_space_waiver AE Training – mbDRC – Advanced Checks are simple

Example 4 Waiving Will Depend On the Specification of the Waiver to Result Matching AND Count Tolerance inv_1 inv_1 in Layout m1_space_waiver AE Training – mbDRC – Advanced Checks are simple

Summary The Proposed Waiver Flow Provides Significant Value Over Historic Automated Approaches to Waiving DRC Violations All Waived Results Automatically and Accurately Waived at DRC Run Time Enables Passing of IP Between 3rd Parties with Waiver Information in Tact Enables Foundry to Specify Acceptable Waiving Tolerances Per Rule Per IP Eliminates Need for Rule File Modifications Works from Standard GDSII, No Proprietary Formats All Waived Results Captured for Final Review and Tracking AE Training – mbDRC – Advanced Checks are simple

AE Training – mbDRC – Advanced Checks are simple