1 Extending FPGA Verification Through The PLI Charles Howard Senior Research Engineer Southwest Research Institute San Antonio, Texas (210) 522-3419

Slides:



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

FPGA (Field Programmable Gate Array)
1 System Level Verification of OCP-IP based SoCs using OCP-IP eVC Himanshu Rawal eInfochips, Inc.,4655 Old Ironsides Drive, Suite 385,Santa Clara, CA
Chapter 2Test Specification Process. n Device Specification Sheet – Purpose n Design Specification – Determine functionality of design n Test List Generation.
Internal Logic Analyzer Final presentation-part B
University Of Vaasa Telecommunications Engineering Automation Seminar Signal Generator By Tibebu Sime 13 th December 2011.
#147 MAPLD 2005Mark A. Johnson1 Design of a Reusable SpaceWire Link Interface for Space Avionics and Instrumentation Mark A. Johnson Senior Research Engineer.
MotoHawk Training Model-Based Design of Embedded Systems.
Week 1- Fall 2009 Dr. Kimberly E. Newman University of Colorado.
Extensible Processors. 2 ASIP Gain performance by:  Specialized hardware for the whole application (ASIC). −  Almost no flexibility. −High cost.  Use.
Data Protection Card Submit: Assaf Matia Technion Guide: Eran Segev Rafael Guide: Henri Delmar Winter & Spring 2004.
NoC Modeling Networks-on-Chips seminar May, 2008 Anton Lavro.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Department of Electrical and Computer Engineering Texas A&M University College Station, TX Abstract 4-Level Elevator Controller Lessons Learned.
Technion – Israel Institute of Technology Department of Electrical Engineering High Speed Digital Systems Lab Project performed by: Naor Huri Idan Shmuel.
SiliconAid Solutions, Inc. Confidential SAJE SiliconAid JTAG Environment Overview – Very Short.
ECE 699: Lecture 2 ZYNQ Design Flow.
Matlab as a Design Environment for Wireless ASIC Design June 16, 2005 Erik Lindskog Beceem Communications, Inc.
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
Introduction to Software Testing
Design Synopsys System Verilog API Donations to Accellera João Geada.
Churning the Most Out of IP-XACT for Superior Design Quality Ayon Dey Lead Engineer, TI Anshuman Nayak Senior Product Director, Atrenta Samantak Chakrabarti.
VerificationTechniques for Macro Blocks (IP) Overview Inspection as Verification Adversarial Testing Testbench Design Timing Verification.
Programmable Logic- How do they do that? 1/16/2015 Warren Miller Class 5: Software Tools and More 1.
The 6713 DSP Starter Kit (DSK) is a low-cost platform which lets customers evaluate and develop applications for the Texas Instruments C67X DSP family.
VERIFICATION OF I2C INTERFACE USING SPECMAN ELITE By H. Mugil Vannan Experts Mr. Rahul Hakhoo, Section Manager, CMG-MCD Mr. Umesh Srivastva, Project Leader.
Final presentation – part B Olga Liberman and Yoav Shvartz Advisor: Moshe Porian April 2013 S YMBOL G ENERATOR 2 semester project.
Trigger design engineering tools. Data flow analysis Data flow analysis through the entire Trigger Processor allow us to refine the optimal architecture.
Infrastructure design & implementation of MIPS processors for students lab based on Bluespec HDL Students: Danny Hofshi, Shai Shachrur Supervisor: Mony.
1CADENCE DESIGN SYSTEMS, INC. Cadence Proposed Transaction Level Interface Enhancements for SCE-MI SEPTEMBER 11, 2003.
Magnetic Field Measurement System as Part of a Software Family Jerzy M. Nogiec Joe DiMarco Fermilab.
Some Course Info Jean-Michel Chabloz. Main idea This is a course on writing efficient testbenches Very lab-centric course: –You are supposed to learn.
Design Verification An Overview. Powerful HDL Verification Solutions for the Industry’s Highest Density Devices  What is driving the FPGA Verification.
Presenter : Ching-Hua Huang 2013/7/15 A Unified Methodology for Pre-Silicon Verification and Post-Silicon Validation Citation : 15 Adir, A., Copty, S.
Using Formal Verification to Exhaustively Verify SoC Assemblies by Mark Handover Kenny Ranerup Applications Engineer ASIC Consultant Mentor Graphics Corp.
CHAPTER TEN AUTHORING.
1 Extending FPGA Verification Through The PLI Charles Howard Senior Research Engineer Southwest Research Institute San Antonio, Texas (210)
J. Christiansen, CERN - EP/MIC
Hardware/Software Co-design Design of Hardware/Software Systems A Class Presentation for VLSI Course by : Akbar Sharifi Based on the work presented in.
Chonnam national university VLSI Lab 8.4 Block Integration for Hard Macros The process of integrating the subblocks into the macro.
A Light-Weight C/C++ Based Tool for Hardware Verification Alexander Kamkin CTestBench Institute for System Programming of the Russian.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
1 Abstract & Main Goal המעבדה למערכות ספרתיות מהירות High speed digital systems laboratory The focus of this project was the creation of an analyzing device.
I/O Computer Organization II 1 Interconnecting Components Need interconnections between – CPU, memory, I/O controllers Bus: shared communication channel.
Verification Environment Architecture Sergey Nemanov December 21, 2005 Verification Leadership Seminar.
Lecture 12: Reconfigurable Systems II October 20, 2004 ECE 697F Reconfigurable Computing Lecture 12 Reconfigurable Systems II: Exploring Programmable Systems.
ELEMENTS OF A COMPUTER SYSTEM HARDWARE SOFTWARE PEOPLEWARE DATA.
An Overview of Hardware Design Methodology Ian Mitchelle De Vera.
CHAPTER 8 Developing Hard Macros The topics are: Overview Hard macro design issues Hard macro design process Physical design for hard macros Block integration.
Lopamudra Kundu Reg. No. : of Roll No.:- 91/RPE/ Koushik Basak
Requirements Validation
1 Copyright  2001 Pao-Ann Hsiung SW HW Module Outline l Introduction l Unified HW/SW Representations l HW/SW Partitioning Techniques l Integrated HW/SW.
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
Part A Final Dor Obstbaum Kami Elbaz Advisor: Moshe Porian August 2012 FPGA S ETTING U SING F LASH.
Input/Output Problems Wide variety of peripherals —Delivering different amounts of data —At different speeds —In different formats All slower than CPU.
Digital Logic Design Lecture # 15 University of Tehran.
12005 MAPLDIssues in FPGA Verification Panel Discussion 2005 MAPLD International Conference Washington, D.C. September 6, 2005.
Chapter 11 System-Level Verification Issues. The Importance of Verification Verifying at the system level is the last opportunity to find errors before.
Speaker: Utku Özcan ASIC Designer, R&D, Netaş, Turkey Designers: Utku Özcan,ASIC Designer İsmail Hakkı Topçu, Hardware Designer Ömer Aydın, Senior System.
CoDeveloper Overview Updated February 19, Introducing CoDeveloper™  Targeting hardware/software programmable platforms  Target platforms feature.
Benefits of a Virtual SIL
Programmable Logic Devices
ASIC Design Methodology
environment infrastructure
Design and Implementation of Spacecraft Avionics Software Architecture based on Spacecraft Onboard Interface Services and Packet Utilization Standard Beijing.
Teaching The Art of Verification
Figure 1 PC Emulation System Display Memory [Embedded SOC Software]
Matlab as a Design Environment for Wireless ASIC Design
Srinivas Aluri Jaimin Mehta
Presentation transcript:

1 Extending FPGA Verification Through The PLI Charles Howard Senior Research Engineer Southwest Research Institute San Antonio, Texas (210)

HowardMAPLD2005/1932 Background Verilog is a hardware description language for digital logic design (FPGA/ASIC/PLD) Typical usage –Design End item design description (RTL for synthesis) –Verification Modeling input interfaces (providing proper data/control relationships) Generation of test stimuli, esp. for low-level verification activities. Robust & simple first order DV with standard tools –Not adequate with growing complexity, multiple devices

HowardMAPLD2005/1933 Low-level Verification Results of this first order modeling are often verified by visual means –Finite limitation on the amount of transactions that can be verified visually Rudimentary checking of interface protocols in Verilog models –Repetitive pattern detection –Interface timing Verilog checkers increase verification capabilities tremendously –Directed tests are excellent for nominal function –Perfect for small number of scenarios It is at this point that the real strength of Verilog is revealed – the programming level interface (PLI).

HowardMAPLD2005/1934 The Verilog PLI The Programming Language Interface is a procedural interface between Verilog simulation and other software programs –Verilog models can invoke external program during simulation Accessibility to every attribute within the simulation structure Capability to read and/or modify any value in the simulation Flexibility to perform any simulation task –Initializing memories at simulation start –Verifying end of simulation results.

HowardMAPLD2005/1935 A Few PLI Applications PLI can be used to link any type of application to the simulation –Delay calculators –Custom displays –C language models –Hardware modelers –Co-simulation environments –Reading test vector files –Custom user interfaces –Design debug utilities

HowardMAPLD2005/1936 PLI Implementations C programs can be tied through the PLI to Verilog shell models C programs then used to: –Dynamically generate test stimuli –Check design outputs –Scoreboard non-linear data flows –Incorporate random features Layered approach –Sequences and scenarios Random and directed –Coverage

HowardMAPLD2005/1937 PLI Advantages Simulations do not need to be limited –Time, complexity or randomness Extended to reflect the real world More simulation cycles can occur Capability to randomize each test Coverage –Regression tests

HowardMAPLD2005/1938 PLI Goal In short, the PLI allows the designer to build a robust virtual test bench that allows the functional interaction of hardware and software to first be characterized without lab space. –Recent experiences (what I have learned in the customer’s lab) Flow Control from multiple sources FSW access order

HowardMAPLD2005/1939 Randomization An immense number of HW/SW interactions can be characterized for flaws Using random and directed test techniques, functional verification of the logic design can be extended far beyond first order techniques. Resulting design is much more robust and likely to function when moved into silicon.

HowardMAPLD2005/19310 Our approach PLI extension of FPGA verification capabilities Development of several key bus functional models and PLI routines Specific approaches and examples will be presented.

HowardMAPLD2005/19311 Verification Environment Simulations –Each FPGA undergoes directed simulation at the chip level. Verifies logic, timing, and functionality –FPGAs are integrated into a larger multi-FPGA, board level simulation as they are completed. Verifies processor -> local bus traffic Verifies inter-FPGA local bus traffic

HowardMAPLD2005/19312 Board Verification Board GSE is designed to verify board level requirements. –Mixture of automated and manual measurements. Board Test Cases have been defined based on PFS –Basis for PLI functions IR&D funds for enhanced simulation environment –Three fundamental testing blocks: cPCI Telemetry RX Serial command TX

HowardMAPLD2005/19313 PLI Verification Environment cPCI –Memory peeks / pokes, config cycles, resets –Exhaustive memory tests, VTC duration testing, serial command verification, telemetry packet generation, 1553 traffic, access order dependencies, etc. Telemetry RX –ASM detect, de-randomization, frame length check –Frame integrity, FHP check, packet integrity, data integrity Telecommand TX –Inject telecommands, monitor response –Error injection, data integrity (PCI side)

HowardMAPLD2005/19314 Results Simulation run length Coverage metrics COME ON, NOW, REALLY… I’m still working on this, and trying to bring up hardware in the lab!!!