Laurent VUILLEMIN Platform Compile Software Manager Emulation Division The Veloce Emulator and its Use for Verification and System Integration of Complex.

Slides:



Advertisements
Similar presentations
Presenter : Shao-Chieh Hou VLSI Design, Automation and Test, VLSI-DAT 2007.
Advertisements

FPGA (Field Programmable Gate Array)
Introduction to Programmable Logic John Coughlan RAL Technology Department Electronics Division.
Using emulation for RTL performance verification
1 of 24 The new way for FPGA & ASIC development © GE-Research.
EXTERNAL COMMUNICATIONS DESIGNING AN EXTERNAL 3 BYTE INTERFACE Mark Neil - Microprocessor Course 1 External Memory & I/O.
Using Virtual Platforms for Firmware Verification James Pangburn Jason Andrews.
February 28 – March 3, 2011 Stepwise Refinement and Reuse: The Key to ESL Ashok B. Mehta Senior Manager (DTP/SJDMP) TSMC Technology, Inc. Mark Glasser.
Survey of Reconfigurable Logic Technologies
EELE 367 – Logic Design Module 2 – Modern Digital Design Flow Agenda 1.History of Digital Design Approach 2.HDLs 3.Design Abstraction 4.Modern Design Steps.
Graduate Computer Architecture I Lecture 15: Intro to Reconfigurable Devices.
ENGIN112 L38: Programmable Logic December 5, 2003 ENGIN 112 Intro to Electrical and Computer Engineering Lecture 38 Programmable Logic.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
VirtexIIPRO FPGA Device Functional Testing In Space environment. Performed by: Mati Musry, Yahav Bar Yosef Instuctor: Inna Rivkin Semester: Winter/Spring.
Configurable System-on-Chip: Xilinx EDK
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Naor Huri Idan Shmuel.
Implementation of DSP Algorithm on SoC. Mid-Semester Presentation Student : Einat Tevel Supervisor : Isaschar Walter Accompaning engineer : Emilia Burlak.
CPU Chips The logical pinout of a generic CPU. The arrows indicate input signals and output signals. The short diagonal lines indicate that multiple pins.
CS 151 Digital Systems Design Lecture 38 Programmable Logic.
1 A survey on Reconfigurable Computing for Signal Processing Applications Anne Pratoomtong Spring2002.
General Purpose FIFO on Virtex-6 FPGA ML605 board midterm presentation
© 2011 Xilinx, Inc. All Rights Reserved This material exempt per Department of Commerce license exception TSU Xilinx Tool Flow.
Programmable Logic- How do they do that? 1/16/2015 Warren Miller Class 5: Software Tools and More 1.
© Copyright Alvarion Ltd. Hardware Acceleration February 2006.
Role of Standards in TLM driven D&V Methodology
NetBurner MOD 5282 Network Development Kit MCF 5282 Integrated ColdFire 32 bit Microcontoller 2 DB-9 connectors for serial I/O supports: RS-232, RS-485,
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
ISE. Tatjana Petrovic 249/982/22 ISE software tools ISE is Xilinx software design tools that concentrate on delivering you the most productivity available.
Silicon Building Blocks for Blade Server Designs accelerate your Innovation.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.

1 Integration Verification: Re-Create or Re-Use? Nick Gatherer Trident Digital Systems.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
J. Christiansen, CERN - EP/MIC
© 2004 Mercury Computer Systems, Inc. FPGAs & Software Components Graham Bardouleau & Jim Kulp Mercury Computer Systems, Inc. High Performance Embedded.
NIOS II Ethernet Communication Final Presentation
1 Abstract & Main Goal המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory The focus of this project was the creation of an analyzing device.
The Macro Design Process The Issues 1. Overview of IP Design 2. Key Features 3. Planning and Specification 4. Macro Design and Verification 5. Soft Macro.
COMPUTER ARCHITECTURE. Recommended Text 1Computer Organization and Architecture by William Stallings 2Structured Computer Organisation Andrew S. Tanenbaum.
Lecture 10: Logic Emulation October 8, 2013 ECE 636 Reconfigurable Computing Lecture 13 Logic Emulation.
I/O Computer Organization II 1 Interconnecting Components Need interconnections between – CPU, memory, I/O controllers Bus: shared communication channel.
Boost Verification Results by Bridging the Hw/Sw Testbench Gap by Matthew Ballance Verification Technologist Mentor Graphics.
25 April 2000 SEESCOASEESCOA STWW - Programma Evaluation of on-chip debugging techniques Deliverable D5.1 Michiel Ronsse.
Spring 2007 W. Rhett Davis with minor editing by J. Dean Brock UNCA ECE Slide 1 ECE 406 – Design of Complex Digital Systems Lecture 1: Introduction.
BridgePoint Integration John Wolfe / Robert Day Accelerated Technology.
EKT303/4 PRINCIPLES OF PRINCIPLES OF COMPUTER ARCHITECTURE (PoCA)
PROJECT - ZYNQ Yakir Peretz Idan Homri Semester - winter 2014 Duration - one semester.
Lecture 12: Reconfigurable Systems II October 20, 2004 ECE 697F Reconfigurable Computing Lecture 12 Reconfigurable Systems II: Exploring Programmable Systems.
An Overview of Hardware Design Methodology Ian Mitchelle De Vera.
1 Extending FPGA Verification Through The PLI Charles Howard Senior Research Engineer Southwest Research Institute San Antonio, Texas (210)
SOC Virtual Prototyping: An Approach towards fast System- On-Chip Solution Date – 09 th April 2012 Mamta CHALANA Tech Leader ST Microelectronics Pvt. Ltd,
This material exempt per Department of Commerce license exception TSU Xilinx On-Chip Debug.
ZHAO(176/MAPLD2004)1 FFT Mapping on Mathstar’s FPOA FilterBuilder Platform MathStar, Inc. Sept 2004.
Survey of Reconfigurable Logic Technologies
Chapter 11 System-Level Verification Issues. The Importance of Verification Verifying at the system level is the last opportunity to find errors before.
Introduction to Field Programmable Gate Arrays (FPGAs) EDL Spring 2016 Johns Hopkins University Electrical and Computer Engineering March 2, 2016.
1 of 24 The new way for FPGA & ASIC development © GE-Research.
1 The user’s view  A user is a person employing the computer to do useful work  Examples of useful work include spreadsheets word processing developing.
Presenter: Yi-Ting Chung Fast and Scalable Hybrid Functional Verification and Debug with Dynamically Reconfigurable Co- simulation.
April 15, 2013 Atul Kwatra Principal Engineer Intel Corporation Hardware/Software Co-design using SystemC/TLM – Challenges & Opportunities ISCUG ’13.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
System-on-Chip Design Homework Solutions
ASIC Design Methodology
THE PROCESS OF EMBEDDED SYSTEM DEVELOPMENT
Figure 1 PC Emulation System Display Memory [Embedded SOC Software]
Agenda Why simulation Simulation and model Instruction Set model
HIGH LEVEL SYNTHESIS.
NetFPGA - an open network development platform
System View Inc..
Presentation transcript:

Laurent VUILLEMIN Platform Compile Software Manager Emulation Division The Veloce Emulator and its Use for Verification and System Integration of Complex Multi-node SOC Computing System

© 2010 Mentor Graphics Corp. Company Confidential Agenda What is Emulation Use models Veloce Architecture Overview Veloce Software Practical : Use Veloce to verify Veloce 2

© 2010 Mentor Graphics Corp. Company Confidential Agenda What is Emulation Use models Veloce Architecture Overview Veloce Software Practical : Use Veloce to verify Veloce 3

© 2010 Mentor Graphics Corp. Company Confidential Verification Challenges 4 Systems Debug Software

© 2010 Mentor Graphics Corp. Company Confidential Hardware Development Typical Development Cycle System Verification Block-level Verification Design Cycle System Integration Software Development Fab Chip-level Verification Time to Market Hardware Development 5

© 2010 Mentor Graphics Corp. Company Confidential Hardware Development Typical System Development System Verification Block-level Verification Design Cycle System Integration Software Development Fab Chip-level Verification Time to Market 6

© 2010 Mentor Graphics Corp. Company Confidential Software Simulation Model is represented in Data Structures Compute and propagate signal values 7 module counter (ck, en, step, dout); input ck, en; input [3:0] step output [3:0] dout reg [3 : 0] dout; (posedge ck) begin if ( en ==1 ) dout = dout+step; end endmodule RTL Model module counter (ck, en, step, dout); input ck, en; input [3:0] step output [3:0] dout reg [3 : 0] dout; (posedge ck) begin if ( en ==1 ) dout = dout+step; end endmodule Test bench

© 2010 Mentor Graphics Corp. Company Confidential Clock Speed Scaling Stalls Emulation Required to Extend Performance Source: Recording Microprocessor History 4/6/2012 Andrew Danowitz, Kyle Kelley, James Mao, John P. Stevenson, Mark Horowitz

© 2010 Mentor Graphics Corp. Company Confidential Emulation 9 Multiples FPGA reproduce Model behavior from high level description Map RTL model in Programmable Logic module counter (ck, en, step, dout); input ck, en; input [3:0] step output [3:0] dout reg [3 : 0] dout; (posedge ck) begin if ( en ==1 ) dout = dout+step; end endmodule RTL Model Programmable Logic Control execution and get results

© 2010 Mentor Graphics Corp. Company Confidential Start Early – Continue for Entire SoC Life Architecture Phase Block-level Verification Fullchip/SoC Verification Software, Firmware & Device Drivers Systems Validation Post Silicon Bringup and Validation

© 2010 Mentor Graphics Corp. Company Confidential Agenda What is Emulation Use models Veloce Architecture Overview Veloce Software Practical : Use Veloce to verify Veloce 11

© 2010 Mentor Graphics Corp. Company Confidential Modern SOC environment CPU Arbiter Fabric UART Slave IF GPIO Slave IF PCI Express PHY Fabric Software Memory Software Memory Master IF Display Processor Display Processor PHY Slave IF SATA PHY Slave IF Ethernet PHY Slave IF USB PHY SlaveIF Master IF CPU Master IF SoC Embedded SW Debugger RSP JTAG 12

© 2010 Mentor Graphics Corp. Company Confidential ICE use Model The emulator is connected to actual Hardware Veloce 13 External Hardware DUT Cables

© 2010 Mentor Graphics Corp. Company Confidential Ethernet Verification With ICE iSolve Ethernet Ethernet Network Live Traffic Stimulus Generation / Analysis Tools 14

© 2010 Mentor Graphics Corp. Company Confidential 15 Co Emulation Testbench Xpress (TBX) Transactions High-speed Interface Testbench divided in 2 parts one in emulator the other in Station Communication via transactor Software sends commands that are interpreted by transactor to generate DUT stimulus PCI E 1/2 X-actor AGP 1/2 X-actor USB 1/2 X-actor 1/2 X- actor Testbench DUT Software Hardware

© 2010 Mentor Graphics Corp. Company Confidential Veloce Use Models USB PCIe Physical I/O Accelerated Transactors OVM/UVM SystemVerilog C/SystemC Simulation Acceleration Testbench Xpress.... iSolve Solutions VirtuaLAB Solutions USB Virtual Protocol Solutions SATA Video Ethernet Software Debug Codelink SW Debug VProbe Fast ISS QEMU Video SATA Co-Model Channels Physical Protocol Solutions Ethernet PCIe 16

© 2010 Mentor Graphics Corp. Company Confidential Agenda What is Emulation Use models Veloce Architecture Overview Veloce Software Practical : Use Veloce to verify Veloce 17

© 2010 Mentor Graphics Corp. Company Confidential Veloce 2 Architecture 18 Crystal2 Chip Maximus2 X 16 AVB2 X SXB (Switch boards) + 4 CXB (clock board) Quattro2 + 6 SXB (Switch boards) 16 AVB2 + 1 CXB (clock board)

© 2010 Mentor Graphics Corp. Company Confidential Crystal 2 IC 19 Programmable Logic Array Control Memories Debug Resources Virtual Wire Logic Programmable Logic Array Set of LUT an Sequential elements Interconnect Network Memories : User Memories model Virtual Wire Logic Transport signals between chips Debug Resources Trace every Sequential element and memories Triggers Control Load configuration Control emulation

© 2010 Mentor Graphics Corp. Company Confidential Agenda What is Emulation Use models Veloce Architecture Overview Veloce Software —Compile Software —Runtime Software Practical : Use Veloce to verify Veloce 20

© 2010 Mentor Graphics Corp. Company Confidential Software Overview 21 Emulator host NetworkNetwork Compile SW Configuration bitstream Runtime SW User design Compile Servers PC Farm Low Level SW Transform design in bistream User Interface Control Emulator Collect debug data

© 2010 Mentor Graphics Corp. Company Confidential Compile software 22 TBX RTLC Platform Compile Design +Testbench Design +Testbench Bitstream Gate netlist RTL Partition Testbench between SW and Emulator Perform RTL Synthesis Partitioning in Crystal Sytem Routing Crystal Place and Route Ressource Allocation

© 2010 Mentor Graphics Corp. Company Confidential Runtime Software Veloce DAC Emulator Message Bus Emulator Host Server LLSW Ressour ce Server Mainten ance Server Runtime Server User Message Bus UI Visibility Server

© 2010 Mentor Graphics Corp. Company Confidential Agenda What is Emulation Use models Veloce Architecture Overview Veloce Software Practical : Use Veloce to verify Veloce —Challenges —The verification infrastructure —Verifying ASIC —Verifying the Compilation software —Low level software integration —Firmware validation debug —Runtime software integration 24

© 2010 Mentor Graphics Corp. Company Confidential Challenges Complex system —ASIC —FPGAs Firmware —Mutliple software components Verifying all component of the system and their interactions Time to get a bug Size : —Detailed model of a full Emulator of next generatio will not fit in current generation 25

© 2010 Mentor Graphics Corp. Company Confidential Addressing the challenges Use a comodel approach for more abstraction level and connection with the software Divide verification in steps based on functionality Simplify the model by using different abstraction level depending on what functionality is tested Veloce DAC

© 2010 Mentor Graphics Corp. Company Confidential Verification Infrastructure Veloce 27 More details on Veloce Crystal Control Crystal Control Control Chip LLSW on host Control Commands Veloce Control Bus

© 2010 Mentor Graphics Corp. Company Confidential Verification Infrastructure Veloce 28 Emulation model Emulator Crystal Control Crystal Control Software Control Chip Veloce Control Bus Transactor Nature of the Software, Transactor and Model in emulator depend on abstraction level

© 2010 Mentor Graphics Corp. Company Confidential ASIC verification : example of Trace Veloce 29 Data SW translator Veloce Comands Comodel SW Emulation Model Crystal Control Macro Block Design Trace Capture Trace control DDR Controler DDR Transac tor Trace Capture, Trace Control and DDR Controler are Accurate models Design is a gate level netlist generating random data Data are either manually generated or come from actual compile Run million cycles on multiple designs

© 2010 Mentor Graphics Corp. Company Confidential Verification of compile SW Veloce 30 Bitstream LLSW Bitstream reader Veloce Comands Comodel SW Emulation Model Crystal Control Macro Block Configuration Block Transac tor Macro and Configuration blocks are Accurate models Bitstream is the output of actual compile flow Verify behavior of design

© 2010 Mentor Graphics Corp. Company Confidential Verification of Low Level Software 1/2 Veloce 31 Crystal Control Virtual Wire Logic Virtual Wire need a training/Calibration sequence This sequence is controled by Low Level Software Crystal Control Virtual Wire Logic Data multiplexed on serial link Example : Virtual Wire Synchronisation

© 2010 Mentor Graphics Corp. Company Confidential Verification of Low Level Software 2/2 Veloce 32 Actual LLSW Comodel SW Emulation Model Trans actor Control block in Crystal and VW block are accurate model Actual LLSW communicate with the model through comodel SW and transactor Crystal Control VW Block Control Chip Crystal Control VW Block

© 2010 Mentor Graphics Corp. Company Confidential AVB Crystal Trigger Logic Macro Block Crystal Trigger Logic Macro Block FPGA AVB Level reduction Verification of Firmware 1/2 Veloce 33 A trigger express a condition on values coming from the design At AVB and System level it is implemented in FPGA A binary is genrerated by runtime SW to express condition Example : Trigger Reduction AVB Crystal Trigger Logic Macro Block Crystal Trigger Logic Macro Block FPGA AVB Level reduction CXB FPGA System Level reduction

© 2010 Mentor Graphics Corp. Company Confidential Verification of Firmware Veloce 34 Trigger binary SW translator Veloce Comands Comodel SW Emulation Model Control Transac tor Design is modeled as gate level netlist Trigger binary is generated by actual runtime SW Verify behavior of trigger in multiple design sequences AVB Crystal Trig ger Logi c Macro Block Crystal Trig ger Logi c Macro Block FPGA AVB Level reduction AVB Crystal Trig ger Logi c Macro Block Crystal Trig ger Logi c Macro Block FPGA AVB Level reduction CXB FPGA System Level reduction

© 2010 Mentor Graphics Corp. Company Confidential Runtime SW Verification Veloce 35 Emulation Model Transac tor Crystal Control Macro Block Design Memories Emulator Message Bus Emulator Host Server LLSW Ressource Server Runtime Server User Message Bus UI Comodel SW Actual Runtime Server is used High level model for the HW

© 2010 Mentor Graphics Corp. Company Confidential QUESTIONS Veloce 36