The increasing use of embedded software, often implemented on a core p
rocessor in a single-chip system, is a clear trend in the telecommunic
ations, multimedia, and consumer electronics industries. A companion p
aper in this issue [1] presents a survey of application and architectu
re trends for embedded systems in these growth markets. However, the l
ack of suitable design technology remains a significant obstacle in th
e development of such systems. One of the key requirements is more eff
icient software compilation technology. Especially in the case of fixe
d-point digital signal processor (DSP) cores, it is often cited that c
ommercially available compilers are unable to take full advantage of t
he architectural features of the processor. Moreover, due to the short
er lifetimes and the architectural specialization of many processor co
res, processor designers are often compelled to neglect the issue of c
ompiler support. This situation has resulted in an increased research
activity in the area of design tool support for embedded processors. T
his paper discusses design technology issues for embedded systems usin
g processor cores, with a focus on software compilation tools. Archite
ctural characteristics of contemporary processor cores are reviewed an
d tool requirements are formulated. This is followed by a comprehensiv
e survey of both existing and new software compilation techniques that
are considered important in the context of embedded processors.