Beruflich Dokumente
Kultur Dokumente
Architecture Design
, 1999. 8
http://vada.skku.ac.kr
System
Technology
ExpectedSaving
Architecture
1090%
LogicLevel
2040%
LayoutLevel
1030%
DeviceLevel
1030%
10100times
Embedded System
Characteristics
Limited user programmability
Completely transparent to user, e. g.
automotive engine control
Limited user interface e. g., intelligent
telephones
Programmable through application
specific language e.g., postscript printer
Office Equipment
smart copier, printer, smart typewriter, calculator
point- of- sale equipment, credit- card validator,UPC
code reader, cash register
Embedded System
Trends - I
Microcomponents grow in importance in
IC industry due to their reusability: DSP,
P, C
More embedded systems will require
ASICs
Moral
of 20the70%
story:
u-Pto
are
with
From
in 1992
60-joining
70% in 1996
high- speed highly-complex ASIC in
embedded systems
Embedded System
Trends - II
Embedded systems will require more
application software
Average moves from 16- 64k lines in 1992 to 64k512k in 1996
Requires migration from assembler to C/ C++,
implying requirement for automatic compilation
From 40- 70% of programmers versus ASIC
designers in 1992 to 60- 90% in 1996
Moral of the story: Increase in code- size / codeis causing a migration to C/ C++ from assembly c
Embedded Software
Optimization
Code size becomes an important
objective Software will eventually
become a part of the chip:
Need to generate the best possible code
Can afford longer compilation time
Implementing Digital
Systems
What is an ASIP?
Application- Specific Instruction Processor
Processor architecture tailored not just for
application domain (e. g., DSP,
microcontrollers), but for specific sets of
applications (e. g., audio, engine control)
ASIP characteristics
Greater design cost (processor + compiler)
+ Higher performance, lower power than
commercial cores, more flexibility than ASIC
ASIP Design
Given a set of applications, determine
architecture of ASIP (i. e., configuration of
functional units in datapaths, instruction
set)
To accurately evaluate performance of
processor on a given application need to
compile the application program onto the
processor datapath and simulate object code
However, the architecture of the processor
is a design parameter!
Required Compiler
Optimizations
Machine independent optimizations
Parallelizing transformations (lots of them!)
Common subexpression elimination, Strength
reduction, Code motion
Common Subexpression
Elimination