Professional Documents
Culture Documents
SW
Hardware-Software Codesign
Trong-Yen Lee
HW
SW
HW
DESIGN
SYSTEM
DEF.
FUNCTION
DESIGN
HW & SW
CODESIGN
Primarily
hardware
VIRTUAL PROTOTYPE
HW &
SW
PART.
HW
FAB
INTEG.
& TEST
SW
DESIGN
SW
CODE
HW & SW
Partitioning
& Codesign
2
HW
SW
Hardware-Software Codesign
Man-Woman Marriage
HW
Course Goals
SW
HW
Outline
SW
HW
SW
Introduction
Summary
HW
Codesign Definition
and Key Concepts
SW
Codesign
Key concepts
Concurrent: hardware and software developed at the
same time on parallel paths
Integrated: interaction between hardware and software
developments to produce designs that meet
performance criteria and functional specifications
HW
SW
HW
SW
HW
Categorizing
Hardware/Software Systems
SW
Application Domain
Embedded systems
Manufacturing control
Consumer electronics
Vehicles
Telecommunications
Defense Systems
Instruction Set Architectures
Reconfigurable Systems
Degree of programmability
Access to programming
Levels of programming
Implementation Features
Discrete vs. integrated components
Fabrication technologies
10
HW
Categories of Codesign
Problems
SW
Codesign of ISAs
Application-specific instruction set processors (ASIPs)
Compiler and hardware optimization and trade-offs
11
HW
SW
Scheduling
Operation scheduling in hardware
Instruction scheduling in compilers
Process scheduling in operating systems
HW
Embedded Systems
SW
Embedded Systems
Application-specific systems which contain hardware and
software tailored for a particular task and are generally part of
a larger system (e.g., industrial controllers)
Characteristics
13
HW
Embedded Systems:
Specific Trends
SW
Cost
Reliability
Design time
14
HW
SW
Embedded Systems:
Examples
Cellular communications
15
HW
SW
Embedded Systems:
Complexity Issues
16
HW
Techniques to Support
Complexity Management
SW
Description languages
Simulation
Standards
Design methodology management framework
17
HW
SW
HWCI
Testing
HW Development
Fabric.
System
Concepts
Sys/HW
Require.
Analysis
Sys/SW
Require.
Analysis
Hardware
Require.
Analysis
Prelim.
Design
Detailed
Design
System
Integ. and
test
Software
Require.
Analysis
Prelim.
Design
Detailed
Design
SW Development
IEEE 1991
Operation.
Testing and
Eval.
Coding,
Unit test.,
Integ. test CSCI
Testing
[Franke91]
18
HW
SW
Current Hardware/Software
Design Process
19
HW
SW
Incorrect Assumptions in
Current Hardware/Software
Design Process
20
HW
SW
HW Development
Fabric.
System
Concepts
Sys/HW
Require.
Analysis
Sys/SW
Require.
Analysis
Hardware
Require.
Analysis
Prelim.
Design
Detailed
Design
Prelim.
Design
Detailed
Design
SW Development
IEEE 1991
Operation.
System
Integ. and Testing and
Evaluation
test
Coding,
Unit test.,
Integ. test CSCI
Testing
[Franke91]
21
HW
SW
22
HW
SW
Validation Methodology
23
Cross-fertilization Between
Hardware and Software
Design
HW
SW
24
Cross-fertilization Between
Hardware and Software
Design (cont.)
HW
SW
VLSI
DESIGN
SOFTWARE
ENGINEERING
Graphics-driven design
25
Cross-fertilization Between
Hardware and Software
Design (cont.)
HW
SW
SOFTWARE
ENGINEERING
VLSI
DESIGN
26
HW
SW
FSMdirected graphs
Another
HW/SW
partition
System
Description
(Functional)
Concurrent processes
Programming languages
HW/SW
Partitioning
Unified representation
(Data/control flow)
SW
Software
Synthesis
HW
Interface
Synthesis
System
Integration
Hardware
Synthesis
27
HW
Conventional Codesign
Methodology
SW
Analysis of Constraints
and Requirements
System Specs..
HW/SW
Partitioning
Hardware Descript.
HW Synth. and
Configuration
Configuration
Modules
Software Descript.
Interface Synthesis
Hardware
Components
Software Gen.
& Parameterization
HW/SW
Interfaces
Software
Modules
HW/SW Integration
and Cosimulation
Integrated
System
System Evaluation
IEEE 1994
Design Verification
[Rozenblit94]
28
HW
Codesign Features
SW
HW
State of Codesign
Technology
SW
Possible solutions:
Extend existing hardware/software languages to the
use of heterogeneous paradigms
Extend formal verification techniques to the HW/SW
domain
30
HW
SW
Experience
Relative
Prog.
Cost / Instr.
2
Folklore
1
25
50
75
100