System-Level Verification –a Comparison of Approach Ray Turner Rapid Systems Prototyping, 1999. IEEE International Workshop on.

Slides:



Advertisements
Similar presentations
SOFTWARE TESTING. Software Testing Principles Types of software tests Test planning Test Development Test Execution and Reporting Test tools and Methods.
Advertisements

VHDL - I 1 Digital Systems. 2 «The designer’s guide to VHDL» Peter J. Andersen Morgan Kaufman Publisher Bring laptop with installed Xilinx.
Jared Casper, Ronny Krashinsky, Christopher Batten, Krste Asanović MIT Computer Science and Artificial Intelligence Laboratory, Cambridge, MA, USA A Parameterizable.
1/1/ /e/e eindhoven university of technology Microprocessor Design Course 5Z008 Dr.ir. A.C. (Ad) Verschueren Eindhoven University of Technology Section.
A reconfigurable system featuring dynamically extensible embedded microprocessor, FPGA, and customizable I/O Borgatti, M. Lertora, F. Foret, B. Cali, L.
MotoHawk Training Model-Based Design of Embedded Systems.
LOGO HW/SW Co-Verification -- Mentor Graphics® Seamless CVE By: Getao Liang March, 2006.
Week 1- Fall 2009 Dr. Kimberly E. Newman University of Colorado.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
Mahapatra-TexasA&M-Spring20031 Introduction to co-simulation CPSC Hardware-Software Codesign of Embedded Systems.
Define Embedded Systems Small (?) Application Specific Computer Systems.
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
UCB November 8, 2001 Krishna V Palem Proceler Inc. Customization Using Variable Instruction Sets Krishna V Palem CTO Proceler Inc.
Principle of Functional Verification Chapter 1~3 Presenter : Fu-Ching Yang.
From Concept to Silicon How an idea becomes a part of a new chip at ATI Richard Huddy ATI Research.
Hardware/Software Partitioning Witawas Srisa-an Embedded Systems Design and Implementation.
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
© Copyright Alvarion Ltd. Hardware Acceleration February 2006.
Constructive Computer Architecture Tutorial 4: SMIPS on FPGA Andy Wright 6.S195 TA October 7, 2013http://csg.csail.mit.edu/6.s195T04-1.
© 2005 The MathWorks, Inc. Advanced Technologies to Accelerate Mixed Signal Simulation Pieter J. Mosterman Senior Research Scientist The MathWorks, Inc.
RISC and CISC. Dec. 2008/Dec. and RISC versus CISC The world of microprocessors and CPUs can be divided into two parts:
Chapter 3 Memory Management: Virtual Memory
1 Chapter 2. The System-on-a-Chip Design Process Canonical SoC Design System design flow The Specification Problem System design.
Ross Brennan On the Introduction of Reconfigurable Hardware into Computer Architecture Education Ross Brennan
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
Computer Science and Engineering Computer System Security CSE 5339/7339 Session 20 October 28, 2004.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
Computing hardware CPU.
CAD Techniques for IP-Based and System-On-Chip Designs Allen C.-H. Wu Department of Computer Science Tsing Hua University Hsinchu, Taiwan, R.O.C {
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
집적회로 Spring 2007 Prof. Sang Sik AHN Signal Processing LAB.
System Design with CoWare N2C - Overview. 2 Agenda q Overview –CoWare background and focus –Understanding current design flows –CoWare technology overview.
Verification Plan & Levels of Verification
ESL and High-level Design: Who Cares? Anmol Mathur CTO and co-founder, Calypto Design Systems.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
BridgePoint Integration John Wolfe / Robert Day Accelerated Technology.
Presentation by Tom Hummel OverSoC: A Framework for the Exploration of RTOS for RSoC Platforms.
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.
© Michel Dubois, Murali Annavaram, Per Strenstrom All rights reserved Embedded Computer Architecture 5SAI0 Simulation - chapter 9 - Luc Waeijen 16 Nov.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
CENTRAL PROCESSING UNIT. CPU Does the actual processing in the computer. A single chip called a microprocessor. Composed of an arithmetic and logic unit.
May08-21 Model-Based Software Development Kevin Korslund Daniel De Graaf Cory Kleinheksel Benjamin Miller Client – Rockwell Collins Faculty Advisor – Dr.
Lecture 1 – Overview (rSp06) ©2008 Joanne DeGroat, ECE, OSU -1- Functional Verification of Hardware Designs EE764 – Functional Verification of Hardware.
PTII Model  VHDL Codegen Verification Project Overview 1.Generate VHDL descriptions for Ptolemy models. 2.Maintain bit and cycle accuracy in implementation.
EE694v-Verification-Lect7-1- Verification Plan & Levels of Verification The Verification Plan Yesterdays and today’s design environment Design specification.
12005 MAPLDIssues in FPGA Verification Panel Discussion 2005 MAPLD International Conference Washington, D.C. September 6, 2005.
Abstraction :Managing Design Complexity through High-Level C-Model Verification Mike Andrews Mentor Graphics Yuan-Shiu Chen present.
Chapter 11 System-Level Verification Issues. The Importance of Verification Verifying at the system level is the last opportunity to find errors before.
From the customer’s perspective the SRS is: How smart people are going to solve the problem that was stated in the System Spec. A “contract”, more or less.
Parallel Computing Presented by Justin Reschke
Hardware/Software Co-Verification with RTOS Application Code Michael Bradley, Mentor Graphics Kainian Xie, Hyperchip Inc.
Lecture 1 – Overview (rSp06) ©2008 Joanne DeGroat, ECE, OSU -1- Functional Verification of Hardware Designs EE764 – Functional Verification of Hardware.
1 COMP427 Embedded Systems Lecture 3. Virtual Platform Prof. Taeweon Suh Computer Science Education Korea University.
Levels of Verification Figure 2.2 p 37 Verification is applied at all different abstraction levels Mostly bottom up, some top down.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
Programmable Logic Devices
Auburn University COMP8330/7330/7336 Advanced Parallel and Distributed Computing Parallel Hardware Dr. Xiao Qin Auburn.
A Level Computing – a2 Component 2 1A, 1B, 1C, 1D, 1E.
Design Components are Code Components
Figure 1 PC Emulation System Display Memory [Embedded SOC Software]
CoCentirc System Studio (CCSS) by
Matlab as a Development Environment for FPGA Design
Software System Integration
The performance requirements for DSP applications continue to grow and the traditional solutions do not adequately address this new challenge Paradigm.
Verification Plan & Levels of Verification
HIGH LEVEL SYNTHESIS.
UNIT 5 EMBEDDED SYSTEM DEVELOPMENT
Presentation transcript:

System-Level Verification –a Comparison of Approach Ray Turner Rapid Systems Prototyping, IEEE International Workshop on

What’s problem? The system designers are often faced with serious project delay when they wait for first silicon to begin software debugging. The objective of system level verification is to make the hardware and software debugging tasks as concurrent as possible. Addressed with intelligent trade-offs in changing the hardware or software,possibly avoiding: A degradation in product functionality. Reduced performance. An increase in product cost.

Introduction There a verity of approaches to system-level verification objectives performance requirement. Describe four different approaches to system verification and the trade-offs of each approach. Example s from actual projects will be used to demonstrate the application of each approach. Recommendations for determining the best verification approach are also given.

Verifying the entire system In a traditional approach, the verification of system under development is composed of –Custom ASIC, FPGA Separately simulation –Standard microprocessor and custom software verification After it appears that the board in working properly. The bugs in the ASIC and hardware/software interfaces  Too late in the product development cycle to implement an optional correction

System verification attempts to… –Verify all element of the design in a parallel fashion –Allowing interface bug s to be discovered early in the development cycle when the system partitioning is still fluid enough to allow for optimal choices to be made for fixing the problem. Verifying the entire system(cont.)

Verification is most frequently performed via simulation of the using a test bench. For more complex designs requiring a very large set of test vectors to cover it adequately, emulation is often used. Emulation has the additional advantage of allowing verification of the entire system with “real” data from a system environment. Testing of a design in the context of actual data and with thousands of time the volume of test data provides exceptionally high confidence in design correctness. Verifying the entire system(cont.)

Another important approach for system-level verification is the type of model available for the microprocessor The type of case –A stand processor being put on a board –A processor core bond-out chip being included in an ASIC The processor model can also be a Instruction Set Simulation(IIS)-a computer software model of the processor Verifying the entire system(cont.)

Models may be: –Clock-cycle-accurate Support verification of hardware to the processor include memory. –Bus-cycle-accurate Allow the verification of hardware and software interactions as well as processor-ASIC interaction. –Instruction-accurate Generally used for verifying the logic and mathematics of software execution. Verifying the entire system(cont.)

The more detail or accurate the model the lower the performance. Different models may be used during the verification the verification of different parts of the system: –Clock-cycle –accurate models Performance is low but relatively few cycle s are needed to verify correct interface between processor, memory and ASIC Verifying the entire system(cont.)

–Instruction-accurate When software is developed concurrently,it is used to verify non-hardware-specific sections of their code –verifying program logic and mathematics. Provide high performance,but cannot by themselves verify software interaction with the hardware. –Bus-cycle-accurate(Bus Functional Model) Provide mid-range performance and are most useful Verifying the software and interaction with the hardware Verifying the entire system(cont.)

There are commercial products: –Eagle from Synopsys –Seamless from Mentor Graphics That create a connection between an ISS and logic simulator. Providing the ability to simulate the ability to simulate the ASIC and other hardware component in complete detail,while running the processor and memory at a very high level of abstraction. Allowing detailed verification of the ASIC and its interaction with the software Verifying the entire system(cont.)

An additional alternative is to use an HDL model of the processor in the logic simulator. Some processor core vender will provide HDL model so that user can verify the entire ASIC which includes the core. Other vendors will not provide HDL models because of their highly proprietary nature. An HDL model also allows high performance emulation when silicon is not yet available. Verifying the entire system(cont.)

Approaches to co-verification Use a logic simulator for the entire design,using an HDL model of the processor and memory and putting the complied software. Use an ISS connection interface and logic simulator. Use an ISS,connection interface and emulator Use an emulator,a target system, and MP- ICE system

System-level verification using a logic simulator

System-level verification using an ISS connection interface and logic simulator.

System-level verification using an ISS,connection interface and emulator

System-Level verification using an emulator,a target system,and an MP-ICE system

Comparison of verification approach

Performance comparison

Conclusion In order to meet ever tighter project schedules and avoid disastrous last-minute surprises it is essential to verify the entire system The chart below shows the relative performance of the approaches described, although performance can vary greatly. As the software content of system s increases over the next several years,emulation will become more widely used due to it’s high performance.