SlideShare a Scribd company logo
1 of 19
Download to read offline
Design Verification at D2Audio
    March 8, 2006
    Mayur Mehta



1
D2Audio Products

    • D2Audio builds all Digital Class D amplifier controller ICs
      which use sophisticated digital Pulse Width Modulation
      (PWM) Techniques.
         All-digital signal path
         On-Chip DSP provides amplifier controls and
         comprehensive audio signal processing.
         25-600 watts per channel
         93% power efficient




2
D2Audio Products –
    Enabling Digital Power In The Broad Audio Market

                         Consumer




                                               Professional




                         Automotive




3
D2Audio Integrates Multiple Functions in IC


               Amplifier                          GUI


                                DSP




           Digital I /O
     VID1___
                                                  Firmware
     VID2___
     AUD___
     HDMI__
     S/PDIF_
     Tuner__




4
ONLY True “Scalable” Solution from 15W to 600W Today!

                                    Assumed Performance Constraints
                                            • 8-ohm Loudspeaker
                                            • < 0.1% Distortion
                                            • > 100dB SNR                                                 D2Audio
                 150W+
                                            • Reliable and Cost-Effective                                   Intelligent        Discrete    Discrete
                                                                                                          PWM Controller        Driver    N+N FETs


                                                                                         D2Audio
                          125W                                                            Intelligent         Discrete      Discrete
                                                                                        PWM Controller         Driver      N+P FETs
    Power Level (8 ohm)




                                    Technology-Imposed Limit
                                                                                          Integrated      Discrete
                          75W                                              Controller
                                                                                            Driver         FETs

                                                                                        • 40V Process Limit
                                                                                        • Protection
                                                                                        • Control
                                                   Integrated                           • Drive
                          50W       Controller
                                                  Power Stage


                                 PWM controller   Drive/Protection/Power




5
Verification Overview




6
Chips Developed

    • 1st Gen Digital Audio Engine IC (DAE-1)
          PWM Controller with SRC (Sample Rate Converter), DSP, Output
          Protection
          In production for > 1year
           • Demonstrated full audio performance and features on first silicon.
    • 2nd Gen Digital Audio Engine IC (DAE-2)
          First to develop Class D amplifier with all-digital feedback
           • Power supply feed-forward and closed-loop feedback technology correct for
             power supply variations, non-linearity and other distortion-inducing
             mechanisms
           • As much as 60dB performance improvement
           • Most analog PWM Solutions use analog closed-loop feedback
          In Production Now
           • Demonstrated full audio performance with feed forward and feedback on first
             silicon
           • 4 channel and 7 channel reference design solutions




7
Chip Block Diagram




                            !!        !   '%




                            !
                  # !




                                                    #
                            " !
                        !




                                                )
                                          '
                                          & !
                  "




                                  %




                                                (




                                                    *
                            $




8
Verification Techniques

    • C++ Model
    • Verilog simulations
         Block-level and chip-level verification
         NC-Verilog, Verdi and SureCov
         CVS, Bugzilla and nLint
         Verilog level transactors interacting with embedded C Program to
         synchronize DSP and I/O functions
         Assembly level and C code to perform DSP functions
    • FPGA emulation
         Full chip implementation synthesized to Xilinx FPGA
         Custom I/O boards developed for “rest of system”
         Connectivity to real world audio streams
         Back-end power electronics for amplifier system testing

9
Development and Verification Flow for Signal Processing
     Blocks

     • Matlab – Numerical Analysis tool to aid in developing
       algorithms
     • C++ based simulator
     • Matlab script generates a setup file and input data files
          Executes the C++ simulator and dumps output into files.
          On termination of simulator, Matlab script performs analysis of
          the data produced by simulator.
     • C++ model to implement algorithms on a fairly high level
          Verify the functionality using the above C++ simulator
          Determine gross computational complexity
     • Refine the algorithms to a cycle accurate level


10
Development and Verification Flow




11
Development and Verification Flow (Contd.)

     • Verification environment
           Generate setup files, input and expected output data for the RTL
           Simulator.
           Verilog based transactor performs RTL initialization, initializes the
           computational engine and runs the simulation with input data while it
           compares output data to the expected data read from files.
           Run Verilog simulations with the cycle accurate model in parallel to verify
           that the RTL implementation has same functionality and identical
           performance to the original model.
     • Run extensive simulations to exercise typical setups as well as the
       boundaries of the design.
     • Typically the output files from Matlab become part of the design data
       base
           Test Suites for regression testing
     • Maintain C++ model to match architectural and design changes



12
Block Diagram of Chip-level Verification

                                                                                                                                                                                                                                                                                                                                         Global
                                                                                                                                              Transactor                                                                                                           Transactor                                                          Transactor




                                                                                                                                                                                                                PUMPLO
                                                                                                                                                                                                       PSSYNC
                                                                                                                           OSCOUT




                                                                                                                                                                                                                         PUMPHI
                                                                                                                                               XTALO




                                                                                                                                                                                                                                                                     SRD0




                                                                                                                                                                                                                                                                                                          SRD1
                                                                                                                                                                                                                                            SCK0




                                                                                                                                                                                                                                                                                     SCK1
                                                                                                                                      XTALI




                                                                                                                                                                                                                                                                            STD0




                                                                                                                                                                                                                                                                                                                 STD1
                                                                                                                                                                                                                                                               SC0




                                                                                                                                                                                                                                                                                                    SC1
                                                                                                                                                                       TIO
                                                                                                                                                                3




                                                                                                                                                                                                                                                               3




                                                                                                                                                                                                                                                                                                    3
                                      2
                               SDIN
                                                                                                                                                                                                                                                                      Reserved




                                                Serial Audio Interface
                                      2                                                                                             PLL                                                                Timer
                              SCKR                                                                                                                                                                                                                             Serial Audio Interface
            Transactor




                                      2
                             LRCLK
                              MCLK
                             SCLKT
                             LRCKT                                                                        Digital Signal Processor                                                                                                                                                                  Pulse Width Modulator
                             SDOUT

                              SCLK                                                                                                                                                                                                                                                                                                                                                             PWMH0




                                                                                                                                                                       Frequency Response Correction
                               RXD             SCI                               Sample Rate Conversion                                                                                                                                                                                                                                                                                        PWML0




                                                                                                                                                                                                                                                                                                                                                                                                       Transactor
                               TXD                                                                                                                                                                                                                                                                                                                                                             PWMH1
              Transactor




                                                                                                                                                                                                                                         Linear Interpolator




                                                                                                                                                                                                                                                                                   PWM Correction
                                                                                                                                                                                                                                                                                                                                                                                               PWML1




                                                                                                                                                                                                                                                                                                                        Noise Shaper




                                                                                                                                                                                                                                                                                                                                                                     Output Drive
                               SCL




                                                                                                                                                                                                                                                                                                                                           Quantizer
                                              2-Wire
                                                                                                                                 Effects
                                                                                                                                                                                                                                                                                                                                                                                               PWMH2
                               SDA
                                                                                                                                                                                                                                                                                                                                                                                               PWML2

                            SPDIFRX                                                                                                                                                                                                                                                                                                                                                            PWMH3
                                              S/PDIF                                                                                                                                                                                                                                                                                                                                           PWML3
                            SPDIFTX


                            nRESET                                                                                                                                                                                                                                                                                                                                                             OTSEL
                                              Control
                           nRSTOUT
              Transactor




                           PWMSYNC
                                      5
                               SYS
                                      4
                               BMS
                                      8
                              GPIO
                                      16                                  TEST                                                                 Power Supply                                                                                                                                                                                               Protection
                             XGPIO




                                                                                                                                                                                                                                                                                                                                                         4
                                                                                                                                                                                                                                                                                                                                                                 4
                                                                                                                                                                                                                                                                                                                                                                                4
                                                                                                                                                                                                                                                                                                                                                                                    PROTECTC
                                                                                                                                                                                                                                                                                                                                                          PROTECTA
                                                                                                                                                                                                                                                                                                                                                                     PROTECTB
                                                                                                             PLLAVDD
                                                                                                                       PLLAGND
                                                                                                                                 PLLDVDD
                                                                                                                                           PLLDGND
                                                                                                                                                     OSCVDD
                                                                                                                                                              PWMVDD
                                                                                                                                                                         PWMGND
                                                                                                                                                                                                         CVDD
                                                                                                                                                                                                                  CGND
                                                                                                                                                                                                                           RVDD
                                                                                                                                                                                                                                  RGND
                                                                         nTRST

                                                                                     TEST




           Test.c                          Test.V

                                                                                                                                                                                                                                                                                                                                                       Transactor




13
Verification Techniques – FPGA Emulation



                                   •1:1 Mapping with the chip

                                   •Capability to do
                                   performance correlation

                                   •Verify external Interfaces

                                   •Platform for software
                                   development

                                   •Vehicle to demonstrate
                                   performance and new
       FPGA Emulation System       features


14
Lessons Learned

     • Always Emulate
          Bug count found in FPGA emulation easily justifies effort and
          resources expended
          Confidence of working with real world interfaces without surprises
          Great tool to develop software which allows us to accelerate
          firmware development
          Emulation system should be scalable, repeatable and
          transportable
     • Top-level environment where tests can be
       interchangeably simulated and emulated is very valuable.
          Needed to debug emulation system during bring up stages
          FPGA was always correlated with RTL
          FPGA emulation is used as a hardware accelerator


15
Lessons Learned (Contd.)

     • Code Coverage was useful in finding holes in our test
       cases
     • Project Management
          Comprehensive Microsoft Project scheduling with detailed
          dependencies between RTL Development, Block-level
          verification,Chip verification, FPGA and Physical design
          completion




16
Why the current methodology works for D2Audio

     • Comprehensive block-level and system-level specifications
     • Easy to use test environment allowed us to generate comprehensive
       tests
     • Everything under CVS control
     • Production firmware was run on FPGA emulation before tape-out
     • Comprehensive verification in simulation environment before starting
       FPGA Verification
     • FPGA emulation confirmed performance before tape-out
           Confirms that the high-level model represents reality
           Plug tests
     • Simple verification environment allowed us to scale verification
       resources
     • Mature engineering team


17
Improvements

     • Plan to use assertion tools for debugging, verification and
       Code/functional coverage
     • Add regression suite for FPGA builds
     • Evaluate System C/System Verilog
          Improve inefficiencies in the current verification environment
           • Test Development
           • CPU intensive

     • Verify external IP for complete functionality and clear
       specifications




18
Suggested Follow-up activities of DVClub

     • Present a methodology which has used assertion tools
     • Present a methodology which has used code and
       functional coverage tools
          Correlation with bugs found on chip
          How do you use it to predict schedule and tape-out decision
     • Discuss Verification projects which did not use FPGA
       emulation
     • Discuss projects which developed software simulator of a
       chip for partners to use for software development
     • DV for mixed signal ICs
     • Pros and Cons of outsourcing verification

19

More Related Content

What's hot

Datavideo HS-550
Datavideo HS-550Datavideo HS-550
Datavideo HS-550AVNed
 
Arista @ HPC on Wall Street 2012
Arista @ HPC on Wall Street 2012Arista @ HPC on Wall Street 2012
Arista @ HPC on Wall Street 2012Kazunori Sato
 
Uei Remote Controls
Uei Remote ControlsUei Remote Controls
Uei Remote Controlsarjungehlot
 
FPGA Camp - Softjin Presentation
FPGA Camp - Softjin PresentationFPGA Camp - Softjin Presentation
FPGA Camp - Softjin PresentationFPGA Central
 
Benefits of Using FPGAs for Embedded Processing: Embedded World 2010
Benefits of Using FPGAs for Embedded Processing: Embedded World 2010Benefits of Using FPGAs for Embedded Processing: Embedded World 2010
Benefits of Using FPGAs for Embedded Processing: Embedded World 2010Altera Corporation
 

What's hot (11)

AJA D10 C2
AJA D10 C2AJA D10 C2
AJA D10 C2
 
Datavideo HS-550
Datavideo HS-550Datavideo HS-550
Datavideo HS-550
 
Arista @ HPC on Wall Street 2012
Arista @ HPC on Wall Street 2012Arista @ HPC on Wall Street 2012
Arista @ HPC on Wall Street 2012
 
Servotronix motion control
Servotronix motion controlServotronix motion control
Servotronix motion control
 
Uei Remote Controls
Uei Remote ControlsUei Remote Controls
Uei Remote Controls
 
AJA D4 E
AJA D4 EAJA D4 E
AJA D4 E
 
FPGA Camp - Softjin Presentation
FPGA Camp - Softjin PresentationFPGA Camp - Softjin Presentation
FPGA Camp - Softjin Presentation
 
Benefits of Using FPGAs for Embedded Processing: Embedded World 2010
Benefits of Using FPGAs for Embedded Processing: Embedded World 2010Benefits of Using FPGAs for Embedded Processing: Embedded World 2010
Benefits of Using FPGAs for Embedded Processing: Embedded World 2010
 
Acd 2300 ds-120326
Acd 2300 ds-120326Acd 2300 ds-120326
Acd 2300 ds-120326
 
AJA D10 CE
AJA D10 CEAJA D10 CE
AJA D10 CE
 
AJA D5 CE
AJA D5 CEAJA D5 CE
AJA D5 CE
 

Viewers also liked

Design Verification Research and Teaching
Design Verification Research and TeachingDesign Verification Research and Teaching
Design Verification Research and TeachingDVClub
 
Track B- Advanced ESL verification - Mentor
Track B- Advanced ESL verification - MentorTrack B- Advanced ESL verification - Mentor
Track B- Advanced ESL verification - Mentorchiportal
 
IP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the EnterpriseIP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the EnterpriseDVClub
 
Constrained-Random Thoughts on Advanced Constrained-Random Thoughts on Advanc...
Constrained-Random Thoughts on Advanced Constrained-Random Thoughts on Advanc...Constrained-Random Thoughts on Advanced Constrained-Random Thoughts on Advanc...
Constrained-Random Thoughts on Advanced Constrained-Random Thoughts on Advanc...DVClub
 
Verification Planning and Metrics to Ensure Efficient Program Execution
Verification Planning and Metrics to Ensure Efficient Program ExecutionVerification Planning and Metrics to Ensure Efficient Program Execution
Verification Planning and Metrics to Ensure Efficient Program ExecutionDVClub
 
Cisco Base Environment Overview
Cisco Base Environment OverviewCisco Base Environment Overview
Cisco Base Environment OverviewDVClub
 
Generic and Automatic Specman Based Verification Environment
Generic and Automatic Specman Based Verification EnvironmentGeneric and Automatic Specman Based Verification Environment
Generic and Automatic Specman Based Verification EnvironmentDVClub
 

Viewers also liked (7)

Design Verification Research and Teaching
Design Verification Research and TeachingDesign Verification Research and Teaching
Design Verification Research and Teaching
 
Track B- Advanced ESL verification - Mentor
Track B- Advanced ESL verification - MentorTrack B- Advanced ESL verification - Mentor
Track B- Advanced ESL verification - Mentor
 
IP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the EnterpriseIP Reuse Impact on Design Verification Management Across the Enterprise
IP Reuse Impact on Design Verification Management Across the Enterprise
 
Constrained-Random Thoughts on Advanced Constrained-Random Thoughts on Advanc...
Constrained-Random Thoughts on Advanced Constrained-Random Thoughts on Advanc...Constrained-Random Thoughts on Advanced Constrained-Random Thoughts on Advanc...
Constrained-Random Thoughts on Advanced Constrained-Random Thoughts on Advanc...
 
Verification Planning and Metrics to Ensure Efficient Program Execution
Verification Planning and Metrics to Ensure Efficient Program ExecutionVerification Planning and Metrics to Ensure Efficient Program Execution
Verification Planning and Metrics to Ensure Efficient Program Execution
 
Cisco Base Environment Overview
Cisco Base Environment OverviewCisco Base Environment Overview
Cisco Base Environment Overview
 
Generic and Automatic Specman Based Verification Environment
Generic and Automatic Specman Based Verification EnvironmentGeneric and Automatic Specman Based Verification Environment
Generic and Automatic Specman Based Verification Environment
 

Similar to Design Verification at D2Audio

15.00 hr van Hilten
15.00 hr van Hilten15.00 hr van Hilten
15.00 hr van HiltenThemadagen
 
Grassvalley ADVC-700
Grassvalley ADVC-700Grassvalley ADVC-700
Grassvalley ADVC-700AV ProfShop
 
V diagram por inverter control
V diagram por inverter controlV diagram por inverter control
V diagram por inverter controlJavier Gutierrez
 
Research and Prototyping Ground Robot Platform
Research and Prototyping Ground Robot PlatformResearch and Prototyping Ground Robot Platform
Research and Prototyping Ground Robot Platformcharlesk
 
Grassvalley ADVC-1000
Grassvalley ADVC-1000Grassvalley ADVC-1000
Grassvalley ADVC-1000AV ProfShop
 
FPGA Camp - Aldec Presentation
FPGA Camp - Aldec PresentationFPGA Camp - Aldec Presentation
FPGA Camp - Aldec PresentationFPGA Central
 
Aldec overview 2011-10 revised
Aldec overview 2011-10 revisedAldec overview 2011-10 revised
Aldec overview 2011-10 revisedPrateek Chopra
 
FPGA_prototyping proccesing with conclusion
FPGA_prototyping proccesing with conclusionFPGA_prototyping proccesing with conclusion
FPGA_prototyping proccesing with conclusionPersiPersi1
 
USB Training - Silicon Labs -
USB Training - Silicon Labs -USB Training - Silicon Labs -
USB Training - Silicon Labs -Emanuele Bonanni
 
Product Brief Mini Dsp Kit Balanced
Product Brief Mini Dsp Kit BalancedProduct Brief Mini Dsp Kit Balanced
Product Brief Mini Dsp Kit BalancedAntoine Rouget
 
Advanced Motion Controls drive ware and digiflex product overview march 2009
Advanced Motion Controls  drive ware and digiflex product overview march 2009Advanced Motion Controls  drive ware and digiflex product overview march 2009
Advanced Motion Controls drive ware and digiflex product overview march 2009Servo2Go.com
 
Advanced motion controls dzsantu 020b080
Advanced motion controls dzsantu 020b080Advanced motion controls dzsantu 020b080
Advanced motion controls dzsantu 020b080Electromate
 
Advanced motion controls dzxcante 015l080
Advanced motion controls dzxcante 015l080Advanced motion controls dzxcante 015l080
Advanced motion controls dzxcante 015l080Electromate
 
Advanced motion controls dzxcante 008l080
Advanced motion controls dzxcante 008l080Advanced motion controls dzxcante 008l080
Advanced motion controls dzxcante 008l080Electromate
 
Grassvalley ADVC series
Grassvalley ADVC seriesGrassvalley ADVC series
Grassvalley ADVC seriesAV ProfShop
 
OMAP Verification
OMAP VerificationOMAP Verification
OMAP VerificationDVClub
 

Similar to Design Verification at D2Audio (20)

15.00 hr van Hilten
15.00 hr van Hilten15.00 hr van Hilten
15.00 hr van Hilten
 
Avb Module Datasheet
Avb Module DatasheetAvb Module Datasheet
Avb Module Datasheet
 
Grassvalley ADVC-700
Grassvalley ADVC-700Grassvalley ADVC-700
Grassvalley ADVC-700
 
V diagram por inverter control
V diagram por inverter controlV diagram por inverter control
V diagram por inverter control
 
Research and Prototyping Ground Robot Platform
Research and Prototyping Ground Robot PlatformResearch and Prototyping Ground Robot Platform
Research and Prototyping Ground Robot Platform
 
Grassvalley ADVC-1000
Grassvalley ADVC-1000Grassvalley ADVC-1000
Grassvalley ADVC-1000
 
FPGA Camp - Aldec Presentation
FPGA Camp - Aldec PresentationFPGA Camp - Aldec Presentation
FPGA Camp - Aldec Presentation
 
Aldec overview 2011-10 revised
Aldec overview 2011-10 revisedAldec overview 2011-10 revised
Aldec overview 2011-10 revised
 
FPGA_prototyping proccesing with conclusion
FPGA_prototyping proccesing with conclusionFPGA_prototyping proccesing with conclusion
FPGA_prototyping proccesing with conclusion
 
My Profile
My ProfileMy Profile
My Profile
 
USB Training - Silicon Labs -
USB Training - Silicon Labs -USB Training - Silicon Labs -
USB Training - Silicon Labs -
 
G7.01 Flyer
G7.01 FlyerG7.01 Flyer
G7.01 Flyer
 
Product Brief Mini Dsp Kit Balanced
Product Brief Mini Dsp Kit BalancedProduct Brief Mini Dsp Kit Balanced
Product Brief Mini Dsp Kit Balanced
 
Advanced Motion Controls drive ware and digiflex product overview march 2009
Advanced Motion Controls  drive ware and digiflex product overview march 2009Advanced Motion Controls  drive ware and digiflex product overview march 2009
Advanced Motion Controls drive ware and digiflex product overview march 2009
 
Custom servo solutions
Custom servo solutionsCustom servo solutions
Custom servo solutions
 
Advanced motion controls dzsantu 020b080
Advanced motion controls dzsantu 020b080Advanced motion controls dzsantu 020b080
Advanced motion controls dzsantu 020b080
 
Advanced motion controls dzxcante 015l080
Advanced motion controls dzxcante 015l080Advanced motion controls dzxcante 015l080
Advanced motion controls dzxcante 015l080
 
Advanced motion controls dzxcante 008l080
Advanced motion controls dzxcante 008l080Advanced motion controls dzxcante 008l080
Advanced motion controls dzxcante 008l080
 
Grassvalley ADVC series
Grassvalley ADVC seriesGrassvalley ADVC series
Grassvalley ADVC series
 
OMAP Verification
OMAP VerificationOMAP Verification
OMAP Verification
 

More from DVClub

Intel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and ChallengesIntel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and ChallengesDVClub
 
Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)DVClub
 
Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)DVClub
 
Stop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification MethodologyStop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification MethodologyDVClub
 
Validating Next Generation CPUs
Validating Next Generation CPUsValidating Next Generation CPUs
Validating Next Generation CPUsDVClub
 
Verification Automation Using IPXACT
Verification Automation Using IPXACTVerification Automation Using IPXACT
Verification Automation Using IPXACTDVClub
 
Validation and Design in a Small Team Environment
Validation and Design in a Small Team EnvironmentValidation and Design in a Small Team Environment
Validation and Design in a Small Team EnvironmentDVClub
 
Trends in Mixed Signal Validation
Trends in Mixed Signal ValidationTrends in Mixed Signal Validation
Trends in Mixed Signal ValidationDVClub
 
Verification In A Global Design Community
Verification In A Global Design CommunityVerification In A Global Design Community
Verification In A Global Design CommunityDVClub
 
Design Verification Using SystemC
Design Verification Using SystemCDesign Verification Using SystemC
Design Verification Using SystemCDVClub
 
Verification Strategy for PCI-Express
Verification Strategy for PCI-ExpressVerification Strategy for PCI-Express
Verification Strategy for PCI-ExpressDVClub
 
SystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification ProcessSystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification ProcessDVClub
 
Efficiency Through Methodology
Efficiency Through MethodologyEfficiency Through Methodology
Efficiency Through MethodologyDVClub
 
Pre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si ValidationPre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si ValidationDVClub
 
OpenSPARC T1 Processor
OpenSPARC T1 ProcessorOpenSPARC T1 Processor
OpenSPARC T1 ProcessorDVClub
 
Intel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification ExperienceIntel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification ExperienceDVClub
 
Using Assertions in AMS Verification
Using Assertions in AMS VerificationUsing Assertions in AMS Verification
Using Assertions in AMS VerificationDVClub
 
Low-Power Design and Verification
Low-Power Design and VerificationLow-Power Design and Verification
Low-Power Design and VerificationDVClub
 
UVM Update: Register Package
UVM Update: Register PackageUVM Update: Register Package
UVM Update: Register PackageDVClub
 
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...DVClub
 

More from DVClub (20)

Intel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and ChallengesIntel Xeon Pre-Silicon Validation: Introduction and Challenges
Intel Xeon Pre-Silicon Validation: Introduction and Challenges
 
Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)Verification of Graphics ASICs (Part II)
Verification of Graphics ASICs (Part II)
 
Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)Verification of Graphics ASICs (Part I)
Verification of Graphics ASICs (Part I)
 
Stop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification MethodologyStop Writing Assertions! Efficient Verification Methodology
Stop Writing Assertions! Efficient Verification Methodology
 
Validating Next Generation CPUs
Validating Next Generation CPUsValidating Next Generation CPUs
Validating Next Generation CPUs
 
Verification Automation Using IPXACT
Verification Automation Using IPXACTVerification Automation Using IPXACT
Verification Automation Using IPXACT
 
Validation and Design in a Small Team Environment
Validation and Design in a Small Team EnvironmentValidation and Design in a Small Team Environment
Validation and Design in a Small Team Environment
 
Trends in Mixed Signal Validation
Trends in Mixed Signal ValidationTrends in Mixed Signal Validation
Trends in Mixed Signal Validation
 
Verification In A Global Design Community
Verification In A Global Design CommunityVerification In A Global Design Community
Verification In A Global Design Community
 
Design Verification Using SystemC
Design Verification Using SystemCDesign Verification Using SystemC
Design Verification Using SystemC
 
Verification Strategy for PCI-Express
Verification Strategy for PCI-ExpressVerification Strategy for PCI-Express
Verification Strategy for PCI-Express
 
SystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification ProcessSystemVerilog Assertions (SVA) in the Design/Verification Process
SystemVerilog Assertions (SVA) in the Design/Verification Process
 
Efficiency Through Methodology
Efficiency Through MethodologyEfficiency Through Methodology
Efficiency Through Methodology
 
Pre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si ValidationPre-Si Verification for Post-Si Validation
Pre-Si Verification for Post-Si Validation
 
OpenSPARC T1 Processor
OpenSPARC T1 ProcessorOpenSPARC T1 Processor
OpenSPARC T1 Processor
 
Intel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification ExperienceIntel Atom Processor Pre-Silicon Verification Experience
Intel Atom Processor Pre-Silicon Verification Experience
 
Using Assertions in AMS Verification
Using Assertions in AMS VerificationUsing Assertions in AMS Verification
Using Assertions in AMS Verification
 
Low-Power Design and Verification
Low-Power Design and VerificationLow-Power Design and Verification
Low-Power Design and Verification
 
UVM Update: Register Package
UVM Update: Register PackageUVM Update: Register Package
UVM Update: Register Package
 
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
Verification of the QorIQ Communication Platform Containing CoreNet Fabric wi...
 

Recently uploaded

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 

Recently uploaded (20)

Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 

Design Verification at D2Audio

  • 1. Design Verification at D2Audio March 8, 2006 Mayur Mehta 1
  • 2. D2Audio Products • D2Audio builds all Digital Class D amplifier controller ICs which use sophisticated digital Pulse Width Modulation (PWM) Techniques. All-digital signal path On-Chip DSP provides amplifier controls and comprehensive audio signal processing. 25-600 watts per channel 93% power efficient 2
  • 3. D2Audio Products – Enabling Digital Power In The Broad Audio Market Consumer Professional Automotive 3
  • 4. D2Audio Integrates Multiple Functions in IC Amplifier GUI DSP Digital I /O VID1___ Firmware VID2___ AUD___ HDMI__ S/PDIF_ Tuner__ 4
  • 5. ONLY True “Scalable” Solution from 15W to 600W Today! Assumed Performance Constraints • 8-ohm Loudspeaker • < 0.1% Distortion • > 100dB SNR D2Audio 150W+ • Reliable and Cost-Effective Intelligent Discrete Discrete PWM Controller Driver N+N FETs D2Audio 125W Intelligent Discrete Discrete PWM Controller Driver N+P FETs Power Level (8 ohm) Technology-Imposed Limit Integrated Discrete 75W Controller Driver FETs • 40V Process Limit • Protection • Control Integrated • Drive 50W Controller Power Stage PWM controller Drive/Protection/Power 5
  • 7. Chips Developed • 1st Gen Digital Audio Engine IC (DAE-1) PWM Controller with SRC (Sample Rate Converter), DSP, Output Protection In production for > 1year • Demonstrated full audio performance and features on first silicon. • 2nd Gen Digital Audio Engine IC (DAE-2) First to develop Class D amplifier with all-digital feedback • Power supply feed-forward and closed-loop feedback technology correct for power supply variations, non-linearity and other distortion-inducing mechanisms • As much as 60dB performance improvement • Most analog PWM Solutions use analog closed-loop feedback In Production Now • Demonstrated full audio performance with feed forward and feedback on first silicon • 4 channel and 7 channel reference design solutions 7
  • 8. Chip Block Diagram !! ! '% ! # ! # " ! ! ) ' & ! " % ( * $ 8
  • 9. Verification Techniques • C++ Model • Verilog simulations Block-level and chip-level verification NC-Verilog, Verdi and SureCov CVS, Bugzilla and nLint Verilog level transactors interacting with embedded C Program to synchronize DSP and I/O functions Assembly level and C code to perform DSP functions • FPGA emulation Full chip implementation synthesized to Xilinx FPGA Custom I/O boards developed for “rest of system” Connectivity to real world audio streams Back-end power electronics for amplifier system testing 9
  • 10. Development and Verification Flow for Signal Processing Blocks • Matlab – Numerical Analysis tool to aid in developing algorithms • C++ based simulator • Matlab script generates a setup file and input data files Executes the C++ simulator and dumps output into files. On termination of simulator, Matlab script performs analysis of the data produced by simulator. • C++ model to implement algorithms on a fairly high level Verify the functionality using the above C++ simulator Determine gross computational complexity • Refine the algorithms to a cycle accurate level 10
  • 12. Development and Verification Flow (Contd.) • Verification environment Generate setup files, input and expected output data for the RTL Simulator. Verilog based transactor performs RTL initialization, initializes the computational engine and runs the simulation with input data while it compares output data to the expected data read from files. Run Verilog simulations with the cycle accurate model in parallel to verify that the RTL implementation has same functionality and identical performance to the original model. • Run extensive simulations to exercise typical setups as well as the boundaries of the design. • Typically the output files from Matlab become part of the design data base Test Suites for regression testing • Maintain C++ model to match architectural and design changes 12
  • 13. Block Diagram of Chip-level Verification Global Transactor Transactor Transactor PUMPLO PSSYNC OSCOUT PUMPHI XTALO SRD0 SRD1 SCK0 SCK1 XTALI STD0 STD1 SC0 SC1 TIO 3 3 3 2 SDIN Reserved Serial Audio Interface 2 PLL Timer SCKR Serial Audio Interface Transactor 2 LRCLK MCLK SCLKT LRCKT Digital Signal Processor Pulse Width Modulator SDOUT SCLK PWMH0 Frequency Response Correction RXD SCI Sample Rate Conversion PWML0 Transactor TXD PWMH1 Transactor Linear Interpolator PWM Correction PWML1 Noise Shaper Output Drive SCL Quantizer 2-Wire Effects PWMH2 SDA PWML2 SPDIFRX PWMH3 S/PDIF PWML3 SPDIFTX nRESET OTSEL Control nRSTOUT Transactor PWMSYNC 5 SYS 4 BMS 8 GPIO 16 TEST Power Supply Protection XGPIO 4 4 4 PROTECTC PROTECTA PROTECTB PLLAVDD PLLAGND PLLDVDD PLLDGND OSCVDD PWMVDD PWMGND CVDD CGND RVDD RGND nTRST TEST Test.c Test.V Transactor 13
  • 14. Verification Techniques – FPGA Emulation •1:1 Mapping with the chip •Capability to do performance correlation •Verify external Interfaces •Platform for software development •Vehicle to demonstrate performance and new FPGA Emulation System features 14
  • 15. Lessons Learned • Always Emulate Bug count found in FPGA emulation easily justifies effort and resources expended Confidence of working with real world interfaces without surprises Great tool to develop software which allows us to accelerate firmware development Emulation system should be scalable, repeatable and transportable • Top-level environment where tests can be interchangeably simulated and emulated is very valuable. Needed to debug emulation system during bring up stages FPGA was always correlated with RTL FPGA emulation is used as a hardware accelerator 15
  • 16. Lessons Learned (Contd.) • Code Coverage was useful in finding holes in our test cases • Project Management Comprehensive Microsoft Project scheduling with detailed dependencies between RTL Development, Block-level verification,Chip verification, FPGA and Physical design completion 16
  • 17. Why the current methodology works for D2Audio • Comprehensive block-level and system-level specifications • Easy to use test environment allowed us to generate comprehensive tests • Everything under CVS control • Production firmware was run on FPGA emulation before tape-out • Comprehensive verification in simulation environment before starting FPGA Verification • FPGA emulation confirmed performance before tape-out Confirms that the high-level model represents reality Plug tests • Simple verification environment allowed us to scale verification resources • Mature engineering team 17
  • 18. Improvements • Plan to use assertion tools for debugging, verification and Code/functional coverage • Add regression suite for FPGA builds • Evaluate System C/System Verilog Improve inefficiencies in the current verification environment • Test Development • CPU intensive • Verify external IP for complete functionality and clear specifications 18
  • 19. Suggested Follow-up activities of DVClub • Present a methodology which has used assertion tools • Present a methodology which has used code and functional coverage tools Correlation with bugs found on chip How do you use it to predict schedule and tape-out decision • Discuss Verification projects which did not use FPGA emulation • Discuss projects which developed software simulator of a chip for partners to use for software development • DV for mixed signal ICs • Pros and Cons of outsourcing verification 19