Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology.

Slides:



Advertisements
Similar presentations
Embedded System, A Brief Introduction
Advertisements

A hardware-software co-design approach with separated verification/synthesis between computation and communication Masahiro Fujita VLSI Design and Education.
SoC Challenges & Transaction Level Modeling (TLM) Dr. Eng. Amr T. Abdel-Hamid ELECT 1002 Spring 2008 System-On-a-Chip Design.
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Using emulation for RTL performance verification
Chapter 1 : SystemC Overview. What is SystemC Systemc is a modeling platform  A set C++ class library to add hardware modeling constructs  Simulation.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
1 Hardware description languages: introduction intellectual property (IP) introduction to VHDL and Verilog entities and architectural bodies behavioral,
Mahapatra-Texas A&M-Fall'001 cosynthesis Introduction to cosynthesis Rabi Mahapatra CPSC498.
Review of “Embedded Software” by E.A. Lee Katherine Barrow Vladimir Jakobac.
DSI Division of Integrated Systems Design Functional Verification Environments Development Goals Our main goals are in the field of developing modular.
Models of Computation for Embedded System Design Alvise Bonivento.
Mahapatra-Texas A&M-Fall'001 Codesign Framework Parts of this lecture are borrowed from lectures of Johan Lilius of TUCS and ASV/LL of UC Berkeley available.
Embedded Systems Design at Mentor. Platform Express Drag and Drop Design in Minutes IP Described In XML Databook s Simple System Diagrams represent complex.
© Copyright Alvarion Ltd. Hardware Acceleration February 2006.
Role of Standards in TLM driven D&V Methodology
SystemC: Introduction. SystemC  A C++ based class library and design environment for system-level design.  Suitable for functional description that.
1 Chapter 2. The System-on-a-Chip Design Process Canonical SoC Design System design flow The Specification Problem System design.
CSET 4650 Field Programmable Logic Devices
From Scenic to SystemC Mehrdad Abutalebi. Outline Introducing Scenic Scenic Implementation Modeling Reactivity A Simple example From Scenic to SystemC.
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
System Arch 2008 (Fire Tom Wada) /10/9 Field Programmable Gate Array.
1 Integration Verification: Re-Create or Re-Use? Nick Gatherer Trident Digital Systems.
FPGA-Based System Design: Chapter 6 Copyright  2004 Prentice Hall PTR Topics n Design methodologies.
SystemC and Levels of System Abstraction: Part I.
Configurable, reconfigurable, and run-time reconfigurable computing.
VHDL IE- CSE. What do you understand by VHDL??  VHDL stands for VHSIC (Very High Speed Integrated Circuits) Hardware Description Language.
Chonnam national university VLSI Lab 8.4 Block Integration for Hard Macros The process of integrating the subblocks into the macro.
F. Gharsalli, S. Meftali, F. Rousseau, A.A. Jerraya TIMA laboratory 46 avenue Felix Viallet Grenoble Cedex - France Embedded Memory Wrapper Generation.
Languages for HW and SW Development Ondrej Cevan.
- 1 - EE898_HW/SW Partitioning Hardware/software partitioning  Functionality to be implemented in software or in hardware? No need to consider special.
1 IMEC / KHBO June 2004 Micro-electronics SystemC Dorine Gevaert.
BridgePoint Integration John Wolfe / Robert Day Accelerated Technology.
Electrical and Computer Engineering University of Cyprus LAB 1: VHDL.
UML MARTE Time Model for Spirit IP-XACT Aoste Project INRIA Sophia-Antipolis.
Ch.2 Part E: VHDL, SystemC EECE **** Embedded System Design.
System-level power analysis and estimation September 20, 2006 Chong-Min Kyung.
SCE-MI Meeting 1 San Jose’, 14 th Nov Author: Andrea Castelnuovo SCE-MI Integrating Emulation in a system level design methodology San Jose’, 14/11/2003.
SOC Virtual Prototyping: An Approach towards fast System- On-Chip Solution Date – 09 th April 2012 Mamta CHALANA Tech Leader ST Microelectronics Pvt. Ltd,
Survey of multicore architectures Marko Bertogna Scuola Superiore S.Anna, ReTiS Lab, Pisa, Italy.
System-on-Chip Design Hao Zheng Comp Sci & Eng U of South Florida 1.
Chapter 11 System-Level Verification Issues. The Importance of Verification Verifying at the system level is the last opportunity to find errors before.
SystemC Semantics by Actors and Reduction Techniques in Model Checking Marjan Sirjani Formal Methods Lab, ECE Dept. University of Tehran, Iran MoCC 2008.
ISCUG Keynote May 2008 Acknowledgements to the TI-Nokia ESL forum (held Jan 2007) and to James Aldis, TI and OSCI TLM WG Chair 1 SystemC: Untapped Value.
1 of 24 The new way for FPGA & ASIC development © GE-Research.
April 15, 2013 Atul Kwatra Principal Engineer Intel Corporation Hardware/Software Co-design using SystemC/TLM – Challenges & Opportunities ISCUG ’13.
1 COMP427 Embedded Systems Lecture 3. Virtual Platform Prof. Taeweon Suh Computer Science Education Korea University.
DAC50, Designer Track, 156-VB543 Parallel Design Methodology for Video Codec LSI with High-level Synthesis and FPGA-based Platform Kazuya YOKOHARI, Koyo.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
System-on-Chip Design
HDL simulation and Synthesis (Marks16)
VLSI Testing Lecture 5: Logic Simulation
B e h a v i o r a l to R T L Coding
VLSI Testing Lecture 5: Logic Simulation
Vishwani D. Agrawal Department of ECE, Auburn University
RTL Simulator for VChip Emulator
IP – Based Design Methodology
Design Flow System Level
Introduction to cosynthesis Rabi Mahapatra CSCE617
Figure 1 PC Emulation System Display Memory [Embedded SOC Software]
Field Programmable Gate Array
Field Programmable Gate Array
Field Programmable Gate Array
* 312 Foundations II 332 Data Abstractions 311 I 351 Hw/Sw Interface
CoCentirc System Studio (CCSS) by
Hardware Description Languages
All Programmable FPGAs, SoCs, and 3D ICs
VHDL Introduction.
CS 153 Logic Design Lab Professor Ian G. Harris
Digital Designs – What does it take
Presentation transcript:

Synchron’08 Jean-François LE TALLEC INRIA SOP lab, AOSTE INRIA SOP lab, EPI AOSTE ScaleoChip Company SoC Conception Methodology

2 System on Chip & conception Early experiment & result Next

System on Chip 3 What’s a SoC ? Piece of software IP software for modularity IP software

System on Chip 4 What’s a SoC ? Piece of software & hardware IP software for modularity IP hardware for fast execution IP software IP hardware

System on Chip 5 What’s a SoC ? Piece of software & hardware & interconnect IP software for modularity IP hardware for fast execution interconnect IP software IP hardware

System on Chip 6 What’s a SoC ? Piece of software & hardware & interconnect IP software for modularity IP hardware for fast execution interconnect IP software Chip System IP hardware

SoC conception 7 full design software Spec Final product Usual methodology up to now:

SoC conception 8 full design software Spec FPGA pre-design software ScaleoChip methodology: Real design Final product  Speed up SoC conception  More tolerant to bug Spec Usual methodology up to now:

Designing problems 9 Problems up to now Hardware needed to test software Interconnect Dimensioning HW/SW partitioning

Designing problems 10 Problems up to now Hardware needed to test software Interconnect Dimensioning HW/SW partitioning Potential solution Physical one : ScaleoChip Virtual one : virtual platform ARM SoC designer (SystemC inside) Virtutech Vast Coware Cofluent

SystemC 11 C++ library Aiming to describe HW & SW Different level of description PV to RTL Simulation & event based wait on event or on time Hierarchical description modules, ports, signals Process type sc_method sc_thread

Early experiments 12 Encoding of a realistic case study of an IP component : Proprietary Flash Controller from Verilog to SystemC (our running example) Cortex M3 AHB2APB Bridge Flash Controller Flash A Flash B AHB Bus

Early experiments 13 Several steps replace Verilog version by SystemC-RTL rewritting verify behavior preservation plug in a larger system description for RTL simulation

Early experiments 14 Several steps replace Verilog version by SystemC-RTL rewritting verify behavior preservation plug in a larger system description for RTL simulation Results Time consuming Behavior can be maintained Simulation consumes 11% more than original one

Early experiments 15 Several steps replace Verilog version by SystemC-RTL rewritting verify behavior preservation plug in a larger system description for RTL simulation Results Time consuming Behavior can be maintained Simulation consumes 11% more than original one => Don’t really scale up

Some other results 16 SystemC scheduler Parallelism emulation method re-activation during delta-cycle til stabilization => event partially ordered may be more efficient Assume static cycle will stabilize Known at simulation time if scenario is well chosen

Next 17 Flash Controller control oriented three different interfaces kind of synchronous behavior

Next 18 Flash Controller control oriented three different interfaces kind of synchronous behavior Rise level of description (abstraction) Two options : SystemC-TLM Multi-clock Esterel  Models control part in Esterel  See what could be TLM programming in Esterel

SystemC vs Esterel 19 Event driven + physical time Input / Sensitivity list Wait() Parallelism emulation Can describe different level of abstraction PV to RTL Simulation based approach Activity stabilization (delta cycle) Clock driven + logical time Input / Interface Await() Parallelism Can describe different level of abstraction (maybe …) Esterel multi-clock ? Synthesis based approach Static cycle must be avoided

Q&A | Q&!A 20 Thanks.

21

22

23

Convert sc_thread into sc_method + clock 24 thread << event loop wait(event) body1 wait(time) body2 end loop method1 << event << ready_to_restart do body1 emit event_start_count end do clock (min_time_resolution) method2 << event_start_count&clock do when event_start_count count time clock period emit event_time_elapsed end do method3 << event_time_elapsed do body2 emit event_time_elapsed end do

SystemC module representation 25 Here state are methods that potentially emit signal when terminating and then activate other methods

I/O esterel language 26 esterel c/c++ SystemC Verilog VHDL FSM Bliff ?

Esterel method representation 27 Each method can be translate by a state running in parallel with the others and waiting on it sensitivity list to emit signal Loop await event1 emit refresh End loop Loop await event2 emit refresh End loop Loop await refresh if cond then emit event3 End loop