ZeBu : A Unified Verification Approach for Hardware Designers and Embedded Software Developers

Similar documents
Validation Strategies with pre-silicon platforms

Veloce2 the Enterprise Verification Platform. Simon Chen Emulation Business Development Director Mentor Graphics

Figure 1: Target environment includes peripherals.

SoC Verification Methodology. Prof. Chien-Nan Liu TEL: ext:

100M Gate Designs in FPGAs

Mapping Multi-Million Gate SoCs on FPGAs: Industrial Methodology and Experience

Effective Verification of ARM SoCs

Creating hybrid FPGA/virtual platform prototypes

Does FPGA-based prototyping really have to be this difficult?

Test and Verification Solutions. ARM Based SOC Design and Verification

High Speed Multi-User ASIC/SoC Prototyping system

The Veloce Emulator and its Use for Verification and System Integration of Complex Multi-node SOC Computing System

SYSTEMS ON CHIP (SOC) FOR EMBEDDED APPLICATIONS

ESE Back End 2.0. D. Gajski, S. Abdi. (with contributions from H. Cho, D. Shin, A. Gerstlauer)

Post processing techniques to accelerate assertion development Ajay Sharma

A Deterministic Flow Combining Virtual Platforms, Emulation, and Hardware Prototypes

Contents 1 Introduction 2 Functional Verification: Challenges and Solutions 3 SystemVerilog Paradigm 4 UVM (Universal Verification Methodology)

Embedded Hardware and Software

Automating Root-Cause Analysis to Reduce Time to Find Bugs by Up to 50%

Choosing an Intellectual Property Core

EEM870 Embedded System and Experiment Lecture 4: SoC Design Flow and Tools

Accelerating Networking Products to Market by Lauro Rizzatti, Rizzatti LLC

CONSIDERATIONS FOR THE DESIGN OF A REUSABLE SOC HARDWARE/SOFTWARE

Boost FPGA Prototype Productivity by 10x

Leveraging Formal Verification Throughout the Entire Design Cycle

Will Everything Start To Look Like An SoC?

Design and Verification of FPGA and ASIC Applications Graham Reith MathWorks

Optimizing Emulator Utilization by Russ Klein, Program Director, Mentor Graphics

Verifying the Correctness of the PA 7300LC Processor

Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink

Will Everything Start To Look Like An SoC?

Transaction-Based Acceleration Strong Ammunition In Any Verification Arsenal

Design and Verification of FPGA Applications

Verifying big.little using the Palladium XP. Deepak Venkatesan Murtaza Johar ARM India

Model-Based Design for effective HW/SW Co-Design Alexander Schreiber Senior Application Engineer MathWorks, Germany

Hardware/Software Co-Verification Using the SystemVerilog DPI

INDUSTRIAL TRAINING: 6 MONTHS PROGRAM TEVATRON TECHNOLOGIES PVT LTD

Hardware Software Bring-Up Solutions for ARM v7/v8-based Designs. August 2015

ADVANCED DIGITAL IC DESIGN. Digital Verification Basic Concepts

ASIC world. Start Specification Design Verification Layout Validation Finish

Next Generation Verification Process for Automotive and Mobile Designs with MIPI CSI-2 SM Interface

Extending Fixed Subsystems at the TLM Level: Experiences from the FPGA World

System Level Design with IBM PowerPC Models

Samsung and Cadence. Byeong Min, Master of Infrastructure Design Center, System LSI Business, Samsung. The Customer. The Challenge. Business Challenge

Design and Verify Embedded Signal Processing Systems Using MATLAB and Simulink

Ten Reasons to Optimize a Processor

S2C K7 Prodigy Logic Module Series

Design Process. Design : specify and enter the design intent. Verify: Implement: verify the correctness of design and implementation

Accelerating FPGA/ASIC Design and Verification

Design Verification Challenges Past, Present, and Future

Yafit Snir Arindam Guha Cadence Design Systems, Inc. Accelerating System level Verification of SOC Designs with MIPI Interfaces

Cover TBD. intel Quartus prime Design software

6 Month Certificate Program in VLSI Design & Verification" with Industry Level Projects. Tevatron Technologies Prívate Limited

Configurable Processors for SOC Design. Contents crafted by Technology Evangelist Steve Leibson Tensilica, Inc.

Early Software Development Through Emulation for a Complex SoC

Graph-Based Verification in a UVM Environment

An approach to accelerate UVM based verification environment

Integrate Ethernet QVIP in a Few Hours: an A-to-Z Guide by Prashant Dixit, Questa VIP Product Team, Mentor Graphics

SoC Verification Strategies for Embedded Systems Design

Hardware Design Environments. Dr. Mahdi Abbasi Computer Engineering Department Bu-Ali Sina University

Verification of Clock Domain Crossing Jitter and Metastability Tolerance using Emulation

Optimizing Hardware/Software Development for Arm-Based Embedded Designs

Cover TBD. intel Quartus prime Design software

Digital Systems Design. System on a Programmable Chip

Appendix SystemC Product Briefs. All product claims contained within are provided by the respective supplying company.

Actel s SX Family of FPGAs: A New Architecture for High-Performance Designs

System-on-Chip Architecture for Mobile Applications. Sabyasachi Dey

2. HW/SW Co-design. Young W. Lim Thr. Young W. Lim 2. HW/SW Co-design Thr 1 / 21

Employing Multi-FPGA Debug Techniques

VCS AMS. Mixed-Signal Verification Solution. Overview. testing with transistor-level accuracy. Introduction. Performance. Multicore Technology

Mentor Graphics Solutions Enable Fast, Efficient Designs for Altera s FPGAs. Fall 2004

Modeling and Verifying Mixed-Signal Designs with MATLAB and Simulink

HES-7 ASIC Prototyping

System-on-a-Programmable-Chip (SOPC) Development Board

The SOCks Design Platform. Johannes Grad

Co-Emulation of Scan-Chain Based Designs Utilizing SCE-MI Infrastructure

Park Sung Chul. AE MentorGraphics Korea

For a long time, programming languages such as FORTRAN, PASCAL, and C Were being used to describe computer programs that were

Digital Design Methodology (Revisited) Design Methodology: Big Picture

Digital Design Methodology

Symantec NetBackup 7 for VMware

Verification Futures The next three years. February 2015 Nick Heaton, Distinguished Engineer

Trend in microelectronics The design process and tasks Different design paradigms Basic terminology The test problems

Glossary. AHDL A Hardware Description Language, such as Verilog-A, SpectreHDL, or VHDL-A, used to describe analog designs.

Introduction to Embedded Systems

HW & SW co-verification of baseband HSPA Processor with Seamless PSP

Verification of Multiprocessor system using Hardware/Software Co-simulation

NS115 System Emulation Based on Cadence Palladium XP

Observability in Multiprocessor Real-Time Systems with Hardware/Software Co-Simulation

Bluespec Product Status and Direction. MIT Bluespec Workshop August 13, 2007

IMPROVES. Initial Investment is Low Compared to SoC Performance and Cost Benefits

Strato and Strato OS. Justin Zhang Senior Applications Engineering Manager. Your new weapon for verification challenge. Nov 2017

Chapter 5: ASICs Vs. PLDs

An introduction to CoCentric

Hardware Emulation: Three Decades of Evolution Part II

ENABLING A NEW PARADIGM OF SYSTEM-LEVEL DEBUG PRODUCTIVITY WHILE MAINTAINING FULL IN-CIRCUIT EMULATION PERFORMANCE. CDNLive! Silicon Valley 2012

Reducing the cost of FPGA/ASIC Verification with MATLAB and Simulink

Optimizing ARM SoC s with Carbon Performance Analysis Kits. ARM Technical Symposia, Fall 2014 Andy Ladd

SoC / ASIC / FPGA / IP

8. Best Practices for Incremental Compilation Partitions and Floorplan Assignments

Transcription:

THE FASTEST VERIFICATION ZeBu : A Unified Verification Approach for Hardware Designers and Embedded Software Developers White Paper April, 2010 www.eve-team.com

Introduction Moore s law continues to drive both chip complexity and performance to new highs every year, and continues to stress and periodically break existing design flows. Fortunately for EDA users, the same shrinking geometries that make their design problems tougher are also helping to improve the performance for their EDA tools. But when it comes to functional verification, traditionally the largest bottleneck in the design process, software-based approaches like simulation continue to lose ground. Why isn t simulation speed keeping pace with device complexity? Because many new devices like 3G cell phones, internet routers, image processors, etc. require massive verification sequences that would take many CPU-years to simulate on even the fastest PC. These sequences are often a result of the need to run long, contiguous, serial protocol streams or complex embedded software in order to fully verify a new SoC or system design. Increasingly, embedded software is overtaking the hardware content of SoC devices. The net result is a kind of chicken-egg problem: which comes first - the final hardware or the final software? Embedded software developers need an accurate model of the hardware in order to validate their code, while the hardware designers need fairly complete software to fully validate their ASIC or SoC. Software developers can sometimes get started using a bare-bones, non-cycle accurate high-level C model of the processor or an instruction set simulator (ISS). Similarly, chip designers can simulate their design along with small code snippets or diagnostics to verify basic functionality. But eventually both these groups need to come together on a common model to verify the complete hardware and the embedded software together. Unfortunately, for most teams that first complete model is the actual silicon. The problem with waiting for real silicon is that the embedded software can t be fully validated in the context of a complete, accurate system model until very late in the design cycle. That increases the probability that significant problems will be found in the silicon, the software or both, often necessitating additional silicon re-spins and code revisions. Both of these have significant cost and time-to-market implications. This is illustrated in figure 1 below. Figure 1. Most design teams wait for real silicon before performing HW-SW integration and final software validation. The net result is a significant time to market delay. The costs can be substantial. At 65 nm, a new mask set costs approximately $3M and may add weeks to months of additional delay. What s more, a 3 month delay in a fast moving market can cause a loss of April 2010 2 EVE White Paper

25% of total product lifetime revenue, according to IBS, Inc. How can these costs be avoided? What s needed is a hardware-assisted verification approach that can enable hardware/software integration to begin well ahead of first silicon. Traditional Approaches to Hardware Assisted Verification Logic emulation and prototyping have been around for close to thirty years but neither of these approaches provides an optimum solution for hardware/software integration. Traditional emulation systems offer the large capacity required to emulate complex systems, in addition to hardware debugging features that help designers isolate bugs in their chip design. However they are very expensive assets, while their performance of sub-megahertz is inadequate for embedded software validation. As a result, these systems tend to be relegated exclusively to hardware verification activities, and mostly to large companies with big EDA budgets. Embedded software teams typically need better performance to run long code sequences, and need more cost-effective systems since they may need multiple copies to support a team of several software developers. -based rapid prototyping systems are an order of magnitude faster than emulators and are much less costly. However, for SoC designs in excess of 10 million ASIC gates they are not easy to handle since the design mapping process is virtually manual and therefore error-prone and timeconsuming. Further, they are not well suited to hardware debugging tasks since probe points must be added selectively at compile time. As a result, prototypes appeal more to software development teams. Introducing ZeBu - The Best of Both Worlds What s needed is a new approach to hardware-assisted verification that combines the strengths of traditional emulation with those of rapid prototyping into a unified solution that is accessible to both hardware designers and software developers. That is what EVE has set out to do with the breakthrough architecture used in ZeBu (for Zero Bugs). As shown in the table below, ZeBu is much faster and more affordable than traditional emulation systems, and is much easier to use, offers much higher capacity and better hardware debugging than prototyping systems. In addition, ZeBu s integration with popular HDL simulators and, even more so, with high-level of abstraction test benches at transaction-level offers virtual interfaces to potential unavailable parts and the highest performance in the industry, reducing coemulation overhead by at least one order of magnitude. ZeBu has been architected to meet the needs of both hardware and embedded software engineers, and to provide them with the hardware and software debugging capabilities to help to debug complex embedded SoC designs. ZeBu incorporates the largest s available with the highest level of integration and smallest footprint - all key to the system s capacity, performance and cost-effectiveness. The ZeBu compiler automatically handles any design, regardless of size, coding style, clocking scheme, or memory structure, making it easy to map even large designs. These have historically been the biggest problems with other -based rapid prototyping systems, but not with ZeBu, thanks to its complete software infrastructure. April 2010 3 EVE White Paper

HW Emulators ZeBu Prototyping Primary Application Hardware Verification Hardware & Software Software Validation Verification Max Design Size 250M ASIC gates 1B ASIC gates 10M ASIC gates Speed 0.1 1MHz 1 60MHz 1 100MHz Cost $$$$ $-$$ $-$$ Setup Time Days-Weeks Days-Weeks Months HDL Co-emulation Good Good No Transaction-level Coemulation Fair Excellent No HW Debugging Good Good Poor HW/SW Integration Fair Excellent Poor SW Validation Poor Excellent Excellent Table 1. Comparison between ZeBu, traditional emulation systems and -based prototypes. Reconfigurable Test Bench (RTB) Architecture ZeBu s patented Reconfigurable Test Bench (RTB) architecture makes the system especially well suited for hardware debugging applications. The RTB controls and optimizes how the emulated system receives stimulus and communicates with software running on the workstation. Based on a powerful C/C++ API, the RTB communicates directly with HDL test benches (VHDL/Verilog/SystemVerilog) and/or abstract system level models (C/C++/SystemC or SystemVerilog). The RTB supports communications both at the signal/bit-level and at the transaction-level with high-level data such as frames, packets, or blocks. The latter is especially efficient, with ZeBu systems able to sustain up to 5 million transactions per second. The RTB is used to implement complex synthesizable transactors, synthesizable test benches, or even synthesizable assertions. The RTB also provides all the controllability and accessibility functions required by hardware designers in order to debug their design. For example, the RTB provides interactive read/write access to all internal registers and memories at run-time, without needing to compile internal probes. In addition, there is a clean separation of the testbench from the design-under-test (DUT) resulting in significantly better utilization of DUT targeted s. Not to mention that a change in the testbench, for example from Verilog to SystemVerilog or from cycle-level to transaction-level, only requires recompilation of the RTB and not of the DUT, saving a significant amount of time. April 2010 4 EVE White Paper

PCIe to Host-PC Smart-ZICE Reconfigurable TestBench (RTB) Transactors Synthesizable Testbench Dynamic Probes Static Probes Triggers/Logic Analyzer ZEMI-3 Monitors Design Under Test (DUT) Clock Trees Clock Server Resources Server DUT, SVA Flexible Probe Resources Direct-ICE ZeBu Architecture Figure 2. ZeBu's patented Reconfigurable Test Bench (RTB) architecture enables efficient co-emulation with PC-based simulators, or C/C++/SystemC models written at high-level of abstraction and provides extensive visibility to the emulation resources. ZeBu Applications ZeBu s flexibility enables its use throughout the hardware and embedded software development cycle to: Verify and debug ASICs/SoCs, IP cores Co-verify hardware and software Develop and debug embedded software These applications are detailed below: Verify and debug ASICs/SoCs, IP cores With its integrated hardware debugging resources and high execution speed, ZeBu is ideal for verifying and debugging complex hardware blocks, IP cores and full chip designs. Early in the design cycle Zebu can be used as a simulation accelerator in co-emulation with leading HDL simulators and/or C/C++ code. ZeBu can be driven by existing HDL testbenches with no modification, and by HVL testbenches such as SystemVerilog, Vera and e. In addition, test benches can be applied externally by the workstation or synthesized and mapped into the emulator. Co-verify hardware and software Later in the design cycle as the pieces of the design come together, ZeBu can be used to validate the entire system by running the embedded software with either a synthesizable test bench or in co-emulation with C++/System C code on the workstation. ZeBu has been architected for especially fast co-emulation at the transaction level, with operating speeds up to 30 MHz. For software debugging, the system s processor can be connected through a JTAG cable or a JTAG transactor interface to standard embedded software debuggers from ARM, TI, ARC, etc. The JTAG connection via transactor allows for stopping the clock for tracing HW bugs in the design hardware. In this way ZeBu can execute software drivers, operating systems or applications at MHz speed, while providing full hardware and software debugging capabilities to both hardware and software engineers on the same design representation. This enables hardware and software April 2010 5 EVE White Paper

development teams to collaborate on the resolution of integration issues in a way that was never possible before. Figure 3: Example of virtual platform based on a set of transactors used to verify a popular PDA core Develop and debug embedded software with reduced-cost replicates ZeBu can also be used as a dedicated software development platform for embedded software developers, with full access to software development and debugging tools. The embedded software can be downloaded into the design memory via the PCI-Express interface in a fraction of second, much faster than via the JTAG port. Also, ZeBu s save and restore capability can be used to skip the OS boot phase and advance directly to the point in the code at which a problem was detected. Since hardware debugging features are not required at this stage, EVE offers a replicate version of ZeBu that is optimized for the needs of embedded software developers, and available at a fraction of the cost of a full ZeBu system. Many teams utilize one fully configured ZeBu system for hardware debugging while providing multiple replicate systems to the software development teams. In this way, they can leverage the same system model used for hardware verification while controlling overall costs. The net result is that ZeBu users are better able to parallelize hardware and software validation tasks, and accelerate the time to market significantly. This is illustrated in figure 3 below. April 2010 6 EVE White Paper

Figure 4. ZeBu users perform hardware verification and software validation in parallel- ahead of first silicon. This translates directly into a significant time to market advantage. ZeBu Operating Modes In order to provide the most value for each of these applications ZeBu supports several operating modes that help exploit Zebu s performance throughout the design cycle. The 7 different operating modes are as follows: Co-emulation with commercial HDL simulators: A co-emulation link connects ZeBu to any VHDL/Verilog/SystemVerilog simulator compliant with the IEEE Verilog PLI interface, such as NC- SIM, VCS and ModelSim. Specman Elite and Vera are also supported via the HDL simulator. The run-time performance is strictly dependent on the testbench and it can be quickly estimated by profiling the testbench versus the DUT via a simulator. A top speed of 100kHz is probably the maximum achievable. Co-emulation with C/C++/SystemC at Signal-level or Cycle-level: ZeBu provides a C/C++ API with which one can create efficient C/C++/SystemC test benches to stimulate the design-under-test at the cycle level. The C++ API also supports the connection to a SystemC model at the cycle/event level or to an Instruction Set Simulator (ISS). An order of magnitude faster execution than in co-emulation with an event-driven simulator can easily be obtained. Co-emulation with C++/SystemC/SystemVerilog at Transaction-Level: When the design-under-test includes bus interfaces (such as Ethernet, PCI, USB, Sonet ), it is possible to stimulate it with C++ or SystemC or SystemVerilog test benches at transaction level (i.e. with high level data such as frames, packets or blocks) instead of at signal level to minimize the amount of data exchanged between the host PC and the ZeBu emulator. The C++ API also supports the connection to a SystemC model at transaction level (through channels). Another order of magnitude faster execution than in co-emulation with a C/C++/SystemC at the cycle-level can typically be achieved. Test Vectors: This pattern-based mode accelerates the regression testing of designs before tape-out. A pattern file, captured during HDL or C/C++ co-emulation, can be played back at higher speed without the April 2010 7 EVE White Paper

HDL simulator or the C/C++ test bench present. The pattern execution tool detects output signal differences between the expected responses and the current values provided by the emulated design. Similarly to the co-emulation at the cycle-level, a maximum speed of 500kHz is possible. Emulation with Synthesizable Test Bench: A synthesizable test bench can be embedded in the of the RTB to enable emulation at several MHz. This mode provides the best level of performance since there is no interaction with any external software or hardware components. EVE provides a catalog of synthesizable memory models for many Micron and Samsung devices. Emulation with Software Debugger Control. The emulated design can be connected via the Smart- ZICE interface to any software debugger via a JTAG cable or JTAG transactor. The debugger will then be in control of the software execution. In-Circuit Emulation with Target System and/or Hard IP Cores: In this mode, the emulated designunder-test is cabled to the target system, which provides all stimulus and control. One or more hard IP cores can also be included in the system model and speed rate adapters can connect the design to real-time interfaces. A built-in logic analyzer can trace the design states over long emulation runs. Complex triggers can be added to control the tracing mechanism. Multi-mode Operation: ZeBu also supports combinations of the modes outlined above. For example, a multi-mode test environment could include a synthesizable test bench mapped in the RTB, an application program embedded in a DRAM synthesizable model, a set of protocol transactors (USB, Ethernet, Audio, etc.) driven by C++ models executed on the host PC/Linux, a JTAG transactor connected to a S/W debugger running on a PC/Windows and an LCD transactor displaying the LCD image stream directly on the host PC. Summary Unprecedented device complexity and embedded software content are driving the need for a new hardware-assisted verification approach. ZeBu is a breakthrough architecture that combines the strengths of traditional emulation and rapid prototyping into a unified platform for both hardware and embedded software development. For the first time a single platform and design representation can satisfy the needs of both these applications, enabling hardware designers and software developers to communicate and collaborate in a way that was never possible before. The net benefit of ZeBu s unifying approach is to accelerate hardware/software integration well ahead of first silicon, reduce unnecessary re-spins and software revisions, and shorten time to market. With a highly cost-effective architecture, ZeBu makes emulation more accessible than ever beforeaccessible to both SoC designers and embedded software developers, accessible throughout the design cycle, and accessible by groups with modest EDA budgets. Overall, ZeBu clearly provides the best return on investment of any hardware-assisted verification approach. ZeBu is a trademark of EVE USA, Inc. All other company, product or service names mentioned herein are trademarks of their respective holders and should be treated as such. All rights reserved. 2005-2010 EVE USA, Inc. April 2010 8 EVE White Paper