hwsw-codesign.pdf
-
Upload
michaelchandrasekar -
Category
Documents
-
view
22 -
download
0
description
Transcript of hwsw-codesign.pdf
1
HW/SW CodesignIAY0070
SyllabusBooks
HW/SW Codesign definitionMyths
Codesign introductionKalle Tammemäe, Dept. of CE
TTÜ-ATI © K. Tammemäe
Goals
The couse is intended for Master levelstudents to educate them as futuredesigners of heterogeneous (hardware/software) digital systems.
2
TTÜ-ATI © K. Tammemäe
Contents
Hardware and software mixed system design topics: specification, design space exploration, design quality and cost estimation, partitioning source description into different implementation domains, target code generation, interface synthesis and coverification. Partitioning algorithms. Specification refinement. Coverification methods for heterogeneous systems. System design methodology. Commercial and academic codesign packages.
TTÜ-ATI © K. Tammemäe
Course structure
32 hours lectures52 hours individual work2.5 CU / 4 ECTS
EssayPresentationLabs 16 hoursFinal examination
30%
30%
10%
30%
3
TTÜ-ATI © K. Tammemäe
Syllabusspecification,design space exploration,design quality and cost estimation,partitioning source description into different implementation domains,target code generation,interface synthesis and coverification,partitioning algorithms,specification refinement,coverification methods for heterogeneous systems,system design methodology,commercial and academic codesign packages.
TTÜ-ATI © K. Tammemäe
Textbooks
Axel Jantsch, “Modelling Embedded Systems and SOC’s. Concurrency and Time in Models of Computation”, MK, 2004, VB-95792Vahid, Frank. Embedded system design : a unified hardware/software introduction, Wiley, 2002, VB-96179Wolf, Wayne. Computers as components : principles of embedded computing system design, MK, 2001, 004.4/W-81
4
TTÜ-ATI © K. Tammemäe
Books“Readings in Hardware / Software Codesign”, edited by Giovanni DeMicheli, Morgan Kaufmann (MK), 2001A.S.Berger, “Embedded Systems Design. An Introductionto Processes, Tools, & Techniques”, CMPBooks, 2002“Hardware/Software Co-Design”, edited by Giovanni De Micheli, Maragiovanna Sami, KAP, 1996 Sanjaya Kumar, “The Codesign of Embedded Systems. A Unified Hardware/ Software Representation” KluwerAcademic Publishers (KAP), 1995, 304 pp. VB-73838 Daniel D. Gajski, Frank Vahid, Sanjiv Narayan, Jie Gong, “Specification and Design of Embedded Systems”, Prentice Hall, 1994, 468 pp, VB-73833
TTÜ-ATI © K. Tammemäe
Introduction
Definition: HW/SW Codesign means meeting the system-level objectives by exploiting the synergism of hardware and software through their concurrent design.Mixture of three disciplines: System level modelling, HW design, SW designAreas of research interest:
HW/SW partitioningModelling HW/SW systemsEvaluation of HW/SW trade-offsExploration the cross fertilization techniques
5
TTÜ-ATI © K. Tammemäe
Myths
Independent development of SW and HW is possibleHW inadequacies can be corrected in SW (later or during servicing phase)SW does not consume power nor require chip resources (SW as an ultimate free lunch)
TTÜ-ATI © K. Tammemäe
Design cost
7
TTÜ-ATI © K. Tammemäe
Unified view
From system description to HW/SW system
TTÜ-ATI © K. Tammemäe
Performance evaluation
Performance models are used in the early stages of design process to analyze systems in terms of throughput and utilization metrics, also to identify bottlenecks within a system
Petri net model (timed, stochastic)Queuing modelMixed modelsEtc.
8
TTÜ-ATI © K. Tammemäe
Evaluation metrics
Metrics from parallel systemsExecution time, speedup, efficiency, overhead ration, utilization, redundancy
Cost functions (S of communication overhead, HW/SW size, bus utilization, processor utilization)Operator sensitivity metric for SW performanceModule sensitivity metric for reliabilityPrice = f(Chip area, SW development)Power
Software procedureHardware module
TTÜ-ATI © K. Tammemäe
Design alternatives
ApplicationGeneral computer system (PC)Embedded system (printer, mobile phone, handheld, etc.)Distributed system (GSM, GPRS, ISDN, etc.)
LocalizationSoC (System on Chip)Accelerator board (graphics board)Multichip system
standardized bus/networkdedicated busmixed
etc.
9
TTÜ-ATI © K. Tammemäe
HW/SW trade-offDecision regarding the allocation of functions into HW and SW that attempt to satisfy a set of objectives.No free lunch!Cross fertilization: applying the SW engineering concepts to HW design and vice versa.
TTÜ-ATI © K. Tammemäe
HW/SW developmentData/control flow concepts are prevalent in both domains
SW development models: waterfall, iterative inhancement, spiral...Abstraction: functional (procedural) and data abstraction
10
TTÜ-ATI © K. Tammemäe
Embedded system design path
Target: embedded system
TTÜ-ATI © K. Tammemäe
Codesign path
11
TTÜ-ATI © K. Tammemäe
Design path alternatives
TTÜ-ATI © K. Tammemäe
Breaking the wall
SW designers have to know HW semanticsHW designers have to know SW semantics
12
TTÜ-ATI © K. Tammemäe
Codesign systems
Research: CADLab, SIR/CASTLE (Germany), Chinook, COSMOS, COSYMA, CoWare, DICE, COMET, LYCOS (Denmark), POLIS, Ptolemy, Riley, TOSCA, AKKA, CODES, VIOOL, COOL, etc., etc.
Commercial: ArchGen (Synergy System Design, Inc.), Mentor Graphics, Synthesia→Cadence, Codesign Automation →Synopsys, Celoxica, CoWare, etc.
TTÜ-ATI © K. Tammemäe
Limitations
Limitations of commercial systems so far:Typically manual partitioningFixed application domain (carefully very specialized)Incremental evaluation is supported weakly (no abstract models)Focusing mainly on performanceModel continuity is not supported during design refirement
1
TTÜ-ATI © K. Tammemäe
HSCO Modeling
Conceptual modelsMethods and methodologyAutomation of abstraction
TTÜ-ATI © K. Tammemäe
Conceptual modelsA model is a simplification of another entity, whichcan be a physical thing or another model. Themodel contains exactly those charactereristics and properties of the modeled entity that are relevantfor a given task. A model is minimal with therespect to a task if it does not contain any othercharacteristics than those relevant to the task.[A. Jantsch, Modelling embedded systems …, 2004]
Y-modelX-modelDesign cubeRugby model
2
TTÜ-ATI © K. Tammemäe
System and model
SYSTEM
MODEL
Inputs Outputs
u(t) y=f(u)
TTÜ-ATI © K. Tammemäe
Classification of systems
Systems
Static Dynamic
Time-varying Time-invariant
Linear Nonlinear
Continuous state Discrete state
Continuous time Discrete time
Event driven Time driven
Deterministic Stochastic Nondeterministic
3
TTÜ-ATI © K. Tammemäe
Y-model
Authors: D.D. Gajski, R.H. Kuhn, IEEE Computer, Dec. 1983Limitations: No representation for time, communication and data abstraction.
TTÜ-ATI © K. Tammemäe
Y model transformations
4
TTÜ-ATI © K. Tammemäe
X-model
X-model extends the Y-model by including additional axis for testing, still preserving the limitations of Y-model.
Behavioraldomain
Testing domain
Physical domain
Structural domain
TTÜ-ATI © K. Tammemäe
Design cube
W. Ecker, M. Hofmeister, S. März-Rössel, EURO-DAC 1992Limited to HDL language, no ability to represent physicalimplementations.
5
TTÜ-ATI © K. Tammemäe
Rugby model
Axel Jants, Shashi Kumar, Ahmed Hemani: Royal Institute of Technology, Electrum, ESDlab, 1999.
TTÜ-ATI © K. Tammemäe
Ways to handle complexity
Complexity
Domains Hierarchy Abstraction
Analyticalapproach
Horizontalapproach
Verticalapproach
A domain is an aspect which can logically beanalyzed independently from other aspectsRugby domains: Time, Computation, Communication, Data
6
TTÜ-ATI © K. Tammemäe
Rugby: Separation ofcomputation and communication
FSM – computation withoutcommunicationPetri net – communication withoutcomputation
Process can be divided into process core, capturing computation and processs shell, capturing communicaton.
TTÜ-ATI © K. Tammemäe
Rugby: Computation
Derived from Y-Chart's behavioural domain (only outside observable behaviour).Focuses on the way the results are computed independent from the exact data types involved and from the exact timing behaviour of the system.
7
TTÜ-ATI © K. Tammemäe
Rugby: Communication
Relatively new dimension, joins parts of structural and physical domains of Y-chart.The topology level is only concerned with the presence or absence of connections between design elements.
TTÜ-ATI © K. Tammemäe
Rugby: Data
For the modeling of mixed HW/SW systems it is desirable to treat data and data types as an independent aspect.
8
TTÜ-ATI © K. Tammemäe
Rugby: Time
Time is of the utmost concern if the system contains concurrent activities.Time is not bound to particular kinds of computation.
TTÜ-ATI © K. Tammemäe
Rugby: Design manipulation
There are no tools to describe and execute methodologies!There is no systematic and well understood relation betweenthe three levels: Instance Manipulation, Synthesis Algorithms, and Methodology.
9
TTÜ-ATI © K. Tammemäe
Design methodology
Design methodology can be defined bygiving the order refinements from higherto lower abstraction levels.Design phases:
Requirements definitionSpecificationDesignImplementation
Design phases and abstraction levels are interrelated (there is ‘common practice’)
TTÜ-ATI © K. Tammemäe
Rygby: models inNetwork Terminal design
Physical time
bitsTopologyLogic blocksSynthesizedNetlist
ClockedSymbols/bits
TopologyAlgorithm/FSM
VHDL model
Processor cycle time
Processor data types
Parameter passing
Instruction set
Assembler
CausalitySymbols/numbers
Parameter passing
AlgorithmC model
CausalitySymbolsInter-process communication
Algorithm/FSM
System model
Performance constraints
ATM cell definition
Interface constraints
Functional constraints
Require-ments
TimeDataCommuni-cation
Compu-tation
Abstraction