[go: up one dir, main page]

0% found this document useful (0 votes)
11 views22 pages

Hardware - Software Design Issues

The document discusses hardware/software co-design, emphasizing the integration of hardware and software development processes to optimize embedded systems. It highlights various design challenges such as low power consumption, system-on-chip issues, and the need for efficient software synthesis. Additionally, it addresses the importance of formal methods for specification, modeling, and verification in the design flow.

Uploaded by

Anik Biswas
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views22 pages

Hardware - Software Design Issues

The document discusses hardware/software co-design, emphasizing the integration of hardware and software development processes to optimize embedded systems. It highlights various design challenges such as low power consumption, system-on-chip issues, and the need for efficient software synthesis. Additionally, it addresses the importance of formal methods for specification, modeling, and verification in the design flow.

Uploaded by

Anik Biswas
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 22

Hardware/Software Co-design

1 of 52
September, 2001
“Traditional” Design Flow

Informal Specification,
Requirements

Software Hardware
model model

Simulation
Testin
Scheduling, Hardware
Software
g
Generation Synthesis

Software Communication Hardware


blocks Synthesis blocks

Prototyping

Product Fabrication

Hard w are/Soft w are 2 of 52


Codesign
September, 2001
Petru Eles
Hw/Sw Co-Design Flow

System
Simulation

specification
Hardw/Softw
Partitioning

Partitioned
model

System Level
Scheduling

Part. model, Hardw./


Softw.
Cosimulation
Schedule
Communication
Synthesis

Software Hardw./ Hardware


model Softw. model
Cosimulation

Software Hardware
Generation

Lower Levels
Synthesis
Software Hardw./ Hardware
blocks Softw. blocks
Cosimulation
Emulation,

Prototyping
Product Fabrication

Hard w are/Soft w are 3 of 52


Codesign
September, 2001
Petru Eles
Some Issues

■ Distributed Systems & System on chip


■ Processor design & Reconfigurable systems
■ Compiling (software synthesis)
■ Low power
■ IP-based design (reuse)
■ System specification
■ Formal methods
■ Verification and testing
■ Real-time Systems

Hard w are/Soft w are Codesign 4 of 52


Petru Eles September, 2001
Distributed Real-Time Systems

Classical real-time research

■ Covers only a limited part of the design flow


■ Assumptions are often unrealistic

❚ Task models are too simple

❚ The underlying architecture is assumed fixed and is not considered


as part of the global design/optimization problem;
The same for the communication infrastructure.

❚ Emphasis on the “worst case”.

❚ --------------

Hard w are/Soft w are Codesign 5 of 52


Petru Eles September, 2001
System on Chip

❚ Analog and digital on the same chip

❚ Problems related to
Processor Cache DMA Memory
interconnections are becoming

❚ dominant.
Timing closure.
In t erconnection
Net w ork
❚ Bus-based architectures will be

Recon- replaced by “networks on


AD/DA fig urabl e Peripheral
logic ❚ chip”.
Customized cashes and memories.

❚ Testability!

❚ ----------------
-

Hard w are/Soft w are Codesign 6 of 52


Petru Eles September, 2001
Processor Design

Partitioning across the horizontal line, as opposed to ...... see next slide

---------
---------
---------
---------
---------

---------
---------
--------- Software
---------
--------- Profiling,
Instruction set
Analysis Hardware
(ASIP)

---------
---------
--------- A main issue:
---------
--------- compilers and programming environments!

Hard w are/Soft w are Codesign 7 of 52


Petru Eles September, 2001
Processor Design (cont’d)
Partitioning across the vertical line

---------------
---------------
---------------
---------------
---------------
---------------
---------------
---------------

Partitionin
&mappin
g
g
Soft w are Soft w are Soft w are Hard w Hard w
(Processor) (Processor) (Processor) are are
(ASIC) (ASIC)

Hard w are/Soft w are Codesign 8 of 52


Petru Eles September, 2001
Parameterized Platforms

Application
development
(on ref. chip)

Detailed
Processor Cache DMA Memo ry Bridge str uc t ural
model

System bus Parameter


optimization
Peripheral bus (sim. &
estim.)
Recon-
Peripheral Ne w
fig urabl e
System
logic generation
P roduct

Hard w are/Soft w are Codesign 9 of 52


Petru Eles September, 2001
Software Synthesis

What makes software synthesis for embedded systems different?

■ The need of highly optimized code in order to make use of


the particular features of the underlying architecture.
■ Large compilation times can be tolerated.
■ Time constraints have to be considered during
compilation.
■ Scheduling aspects:
❚ at instruction level;
❚ at task level.

■ The need of performant easy-to-use retargetable


compilers.

Hard w are/Soft w are Codesign 10 of 52


Petru Eles September, 2001
Software Synthesis (cont’d)

What makes it a Hardware/Software problem?

■ The hardware support has to be considered during software generation.

■ Efficient retargetable compilers are important tools for concurrent


development of software and of the underlying hardware
(for example ASIPs).

■ Hardware Specification is an important aspect of retargetable


compiling.

Hard w are/Soft w are Codesign 11 of 52


Petru Eles September, 2001
Low Power

consume
energy
❚ Trade-offs: flexibility, power,
performance, time to market.

d
GP proc.
high
❚ There is an obvious trend
magnitud
order of

ASIP towards software

❚ implementation.
Because of power/performance,
e

med.
FPGA part of the functionality is imple-
magnitud
order of

mented with ASIC/FPGA/ASIP.


This makes the difference!
low ASIC
e

low med. high flexibility

Hard w are/Soft w are Codesign 12 of 52


Petru Eles September, 2001
Low Power (cont’d)

■ Power optimization at circuit and gate level Power


■ optimization at system level
❚ Dynamic power management
- shutdown of idle resources
- variable supply voltage

❚ Mapping and scheduling with power optimization

❚ Code generation for low power

❚ Customized cache memory (to reduce memory access and bus


traffic)

❚ Information encoding

Hard w are/Soft w are Codesign 13 of 52


Petru Eles September, 2001
Specification/Modeling/
Verification
Embedded systems are inherently heterogeneous

discrete
Specification imperative FSMs dataflow event

partitioning
Refinement
compiling softw. synth HLS LS

Lower level SW SW
processor processor ASIC glue logic
of abstraction model model

Hard w are/Soft w are Codesign 14 of 52


Petru Eles September, 2001
Specification/Modeling/Verification (cont’d)

■ A formal model (possibly more) has to be part of a design methodology.

■ Allows unambiguous specification and analysis of the design.

■ The effect of transformations on the design is well-defined.

■ It is possible to formally reason about correctness.

Complexity!

Hard w are/Soft w are Codesign 15 of 52


Petru Eles September, 2001
Specification Languages

■ A single specification language can be used for the whole system; does
not necessarily mean that we have a homogeneous specification:

■ Several languages can be used for system specification


❚ specific languages for the hardware and software part;

❚ different languages can be used, depending on the selected model


of computation or because of other reasons.

❚ How to perform (co)simulation?

Hard w are/Soft w are Codesign 16 of 52


Petru Eles September, 2001
Specification Languages (cont’d)

■ General purpose languages (Ada, C, C++, SystemC, Java, UML, Matlab)


■ Hardware description languages (VHDL, Verilog)

■ Synchronous languages (FSM based): Esterel, Lustre, Signal,


StateCharts.
■ Networks of communicating processes: CSP, Lotos, SDL.
■ Data-flow languages: Silage
■ Functional programming languages: Haskell, SML.
■ Algebraic notations: VDM, Z, B.

■ Will we get the System Specification Language?


■ Will multi-language specification become (remain) the standard?
Hard w are/Soft w are Codesign 17 of 52
Petru Eles September, 2001
Verification and Testing
System
specificatio n

Ref_step 1

System-level synthesis
model 1

(looks for errors in specification&design)


D E S I G N VALI DAT I O N
formal verification & simulation
Ref_step 2

model 2

Ref_step n

model_h model_s
system
synthesis

architecture

Soft w are synthesis


Ref_step_h 1 Ref_step_s 1

model_h 1 model_s 1
Hard w

Ref_step_h m Ref_step_s k
are

model_h m model_s k

Fabrication
PRODUCT TESTING
looks for: design errors
PRODUCT fabrication defects
physical failures

Hard w are/Soft w are 18 of 52


Codesign
September, 2001
Petru Eles
Final Remarks

■ The real issue here is design of embedded systems


❚ Start from the specification at high abstraction level

❚ Consider complex trade-offs

❚ Concentrate on early design steps

❚ Hardware architecture and software are jointly


developed

❚ Keep a global view and master heterogeneity

■ Important progress has been achieved on certain particular aspects.

■ Some progress towards a methodology and supporting tools.


Hard w are/Soft w are Codesign 19 of 52
Petru Eles September, 2001
■ Software Performance Estimation by Static Analysis

❚ Program path analysis

❚ Microarchitecture modeling
- Cache memory
- Pipeline architecture
- Branch prediction

Hard w are/Soft w are 46 of 52


Codesign Petru Eles September, 2001
■ System-Level Power/Energy Optimization
❚ Main issues in system-level power/energy
optimization
- System modeling
- Hardware and software implementation
- Dynamic power management
- Computing, memory, communication
❚ Dynamic power management
-Modeling issues
-Predictive, adaptive, and stochastic techniques
❚ Power estimation and low power software
generation
❚ Low power/energy scheduling for real-time
systems
- Variable voltage systems
Hard w-are/Soft w are
Static and dynamic approaches 48 of 52
Codesign Petru Eles September, 2001
- Energy efficient priority-based scheduling
■ Hardware/Software Codesign Environments

❚ The Cosyma System

❚ The Cosmos Environment

❚ The SpecSyn Environment

❚ Synthesis of Distributed Embedded


Systems

❚ The POLIS Environment

❚ The CoWare Environment

Hard w are/Soft w are Codesign 22 of 52


Petru Eles September, 2001

You might also like