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.

Slides:



Advertisements
Similar presentations
Embedded System, A Brief Introduction
Advertisements

TOPIC : SYNTHESIS DESIGN FLOW Module 4.3 Verilog Synthesis.
CMSC 611: Advanced Computer Architecture
ECOE 560 Design Methodologies and Tools for Software/Hardware Systems Spring 2004 Serdar Taşıran.
Give qualifications of instructors: DAP
Programming Languages Marjan Sirjani 2 2. Language Design Issues Design to Run efficiently : early languages Easy to write correctly : new languages.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics High-level synthesis. Architectures for low power. GALS design.
FPGA-Based System Design: Chapter 6 Copyright  2004 Prentice Hall PTR Register-transfer Design n Basics of register-transfer design: –data paths and controllers.
Copyright © 2012 Pearson Education, Inc. Publishing as Prentice Hall A.1.
Software Requirements Engineering
CS 151 Digital Systems Design Lecture 37 Register Transfer Level
Chapter 1: An Overview of Computers and Programming Languages J ava P rogramming: From Problem Analysis to Program Design, From Problem Analysis to Program.
1 HW/SW Partitioning Embedded Systems Design. 2 Hardware/Software Codesign “Exploration of the system design space formed by combinations of hardware.
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. slide 1 CS 125 Introduction to Computers and Object- Oriented Programming.
Mahapatra-Texas A&M-Fall'001 cosynthesis Introduction to cosynthesis Rabi Mahapatra CPSC498.
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. slide 1 CS 125 Introduction to Computers and Object- Oriented Programming.
Copyright 2004 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Second Edition Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix.
Copyright Arshi Khan1 System Programming Instructor Arshi Khan.
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
1  Staunstrup and Wolf Ed. “Hardware Software codesign: principles and practice”, Kluwer Publication, 1997  Gajski, Vahid, Narayan and Gong, “Specification,
(1) Modeling Digital Systems © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
Chapter 1 An Overview of Computers and Programming Languages.
Design methodology.
1 Chapter 2. The System-on-a-Chip Design Process Canonical SoC Design System design flow The Specification Problem System design.
An Introduction Chapter Chapter 1 Introduction2 Computer Systems  Programmable machines  Hardware + Software (program) HardwareProgram.
1 VERILOG Fundamentals Workshop סמסטר א ' תשע " ה מרצה : משה דורון הפקולטה להנדסה Workshop Objectives: Gain basic understanding of the essential concepts.
HW/SW/FW Allocation – Page 1 of 14CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Allocation of Hardware, Software, and Firmware.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Chap. 1 Overview of Digital Design with Verilog. 2 Overview of Digital Design with Verilog HDL Evolution of computer aided digital circuit design Emergence.
Database Design - Lecture 2
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 {
Principles Of Digital Design Chapter 1 Introduction Design Representation Levels of Abstraction Design Tasks and Design Processes CAD Tools.
Intro to Architecture – Page 1 of 22CSCI 4717 – Computer Architecture CSCI 4717/5717 Computer Architecture Topic: Introduction Reading: Chapter 1.
1 Chapter 6 Co-synthesis Techniques. 2 Cosynthesis Methodical approach to system implementations using automated synthesis-oriented techniques Methodology.
1 Operating System Overview. 2 Today’s Objectives Explain the main purpose of operating systems and describe milestones of OS evolution Explain fundamental.
Copyright 2001 Prentice-Hall, Inc. Essentials of Systems Analysis and Design Joseph S. Valacich Joey F. George Jeffrey A. Hoffer Appendix A Object-Oriented.
Section 10: Advanced Topics 1 M. Balakrishnan Dept. of Comp. Sci. & Engg. I.I.T. Delhi.
High Performance Embedded Computing © 2007 Elsevier Chapter 1, part 2: Embedded Computing High Performance Embedded Computing Wayne Wolf.
CSE 494: Electronic Design Automation Lecture 2 VLSI Design, Physical Design Automation, Design Styles.
Welcome CSC 480/580 – Digital Logic & Computer Design Term: Winter 2002 Instructor: William T Krieger.
Hardware/Software Co-design Design of Hardware/Software Systems A Class Presentation for VLSI Course by : Akbar Sharifi Based on the work presented in.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Basics of register-transfer design: –data paths and controllers; –ASM charts. Pipelining.
- 1 - EE898_HW/SW Partitioning Hardware/software partitioning  Functionality to be implemented in software or in hardware? No need to consider special.
Chapter 0 deSiGn conCepTs EKT 221 / 4 DIGITAL ELECTRONICS II.
Electrical and Computer Engineering University of Cyprus LAB 1: VHDL.
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.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Computer Simulation of Networks ECE/CSC 777: Telecommunications Network Design Fall, 2013, Rudra Dutta.
Introduction to ASIC flow and Verilog HDL
Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Basics of register-transfer design: –data paths and controllers; –ASM.
System-on-Chip Design Hao Zheng Comp Sci & Eng U of South Florida 1.
Copyright ©: Nahrstedt, Angrave, Abdelzaher1 Operating System Overview Tarek Abdelzaher Lawrence Angrave Vikram Adve.
System-on-Chip Design Homework Solutions
Hardware/Software Co-Design of Complex Embedded System NIKOLAOS S. VOROS, LUIS SANCHES, ALEJANDRO ALONSO, ALEXIOS N. BIRBAS, MICHAEL BIRBAS, AHMED JERRAYA.
Chapter 1 An Overview of Computers and Programming Languages.
Embedded Real-Time Systems
System-on-Chip Design
Combinational Logic Design
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE
System Design and Modeling
Hierarchical Architecture
Design Flow System Level
Hardware Description Languages
T Computer Architecture, Autumn 2005
Appendix A Object-Oriented Analysis and Design
HIGH LEVEL SYNTHESIS.
Paper by D.L Parnas And D.P.Siewiorek Prepared by Xi Chen May 16,2003
Appendix A Object-Oriented Analysis and Design
Presentation transcript:

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 Modeling Methodologies l HW and SW Synthesis Methodologies l Industry Approaches to HW/SW Codesign l Hardware/Software Codesign Research l Summary

2 Copyright  2001 Pao-Ann Hsiung SW HW Unified HW/SW Representation l Unified Representation – m A representation of a system that can be used to describe its functionality independent of its implementation in hardware or software m Allows hardware/software partitioning to be delayed until trade-offs can be made m Typically used at a high-level in the design process l Provides a simulation environment after partitioning is done, for both hardware and software designers to use to communicate l Supports cross-fertilization between hardware and software domains

3 Copyright  2001 Pao-Ann Hsiung SW HW Current Abstraction Mechanisms in Hardware Systems Abstraction The level of detail contained within the system model l A system can be modeled at m System Level, m Algorithm or Instruction Set Level, m Register-Transfer Level (RTL), m Logic or Gate Level, m Circuit or Schematic Level. l A model can describe a system in the m Behavioral domain, m Structural domain, m Physical domain.

4 Copyright  2001 Pao-Ann Hsiung SW HW Abstractions in Modeling: Hardware Systems LevelBehaviorStructurePhysical PMS (System) Communicating Processes Processors Memories Switches (PMS) Cabinets, Cables Instruction Set (Algorithm) Register- Transfer Logic Circuit Input-OutputMemory, Ports Processors Board Floorplan Register Transfers ALUs, Regs, Muxes, Bus ICs Macro Cells Logic Equns.Gates, Flip-flopsStd. cell layout Network Equns.Trans., Connections Transistor layout [McFarland90] Start here Work to here © IEEE 1990

5 Copyright  2001 Pao-Ann Hsiung SW HW Current Abstraction Mechanisms for Software Systems Virtual machine A software layer very close to the hardware that hides the hardware’s details and provides an abstract and portable view to the application programmer Attributes m Developer can treat it as the real machine m A convenient set of instructions can be used by developer to model system m Certain design decisions are hidden from the programmer m Operating systems are often viewed as virtual machines

6 Copyright  2001 Pao-Ann Hsiung SW HW Abstractions for Software Systems Virtual Machine Hierarchy Application Programs Utility Programs Operating System Monitor Machine Language Microcode Logic Devices

7 Copyright  2001 Pao-Ann Hsiung SW HW Abstract Hardware-Software Model Uses a unified representation of system to allow early performance analysis Abstract HW/SW Model General Performance Evaluation of Design Alternatives Evaluation of HW/SW Trade-offs Identification of Bottlenecks

8 Copyright  2001 Pao-Ann Hsiung SW HW Examples of Unified HW/SW Representations Systems can be modeled at a high level as: l Data/control flow diagrams l Concurrent processes l Finite state machines l Object-oriented representations l Petri Nets

9 Copyright  2001 Pao-Ann Hsiung SW HW Unified Representations (Cont.) l Data/control flow graphs m Graphs contain nodes corresponding to operations in either hardware or software m Often used in high-level hardware synthesis m Can easily model data flow, control steps, and concurrent operations because of its graphical nature Example: X 4 Y Control Step 1 Control Step 2 Control Step 3

10 Copyright  2001 Pao-Ann Hsiung SW HW Unified Representations (Cont.) l Concurrent processes m Interactive processes executing concurrently with other processes in the system-level specification m Enable hardware and software modeling l Finite state machines m Provide a mathematical foundation for verifying system correctness, simulation, hardware/software partitioning, and synthesis m Multiple FSMs that communicate can be used to model reactive real-time systems

11 Copyright  2001 Pao-Ann Hsiung SW HW Unified Representations (Cont.) l Object-oriented representations: m Use techniques previously applied to software to manage complexity and change in hardware modeling m Use C++ to describe hardware and display OO characteristics m Use OO concepts such as q Data abstraction q Information hiding q Inheritance m Use building block approach to gain OO benefits q Higher component reuse q Lower design cost q Faster system design process q Increased reliability

12 Copyright  2001 Pao-Ann Hsiung SW HW Unified Representations (Cont.) Object-oriented representation Example: 3 Levels of abstraction: Register Read Write ALU Processor Add Sub AND Shift Mult Div Load Store

13 Copyright  2001 Pao-Ann Hsiung SW HW Unified Representations (Cont.) l Petri Nets: a system model consisting of places, tokens, transitions, arcs, and a marking m Places - equivalent to conditions and hold tokens m Tokens - represent information flow through system m Transitions - associated with events, a “firing” of a transition indicates that some event has occurred m Marking - a particular placement of tokens within places of a Petri net, representing the state of the net Example: Token Transition Input Places Output Place