Digital Signal Processing Reference
In-Depth Information
processing capability, since users desire nowadays the equivalent of a portable
supercomputer. Therefore, the fine tuning of these requirements is fundamental to
produce the best possible product, which consequently will obtain a wider market.
The convergence of functionalities to a single product enlarges the application
software layer over the hardware platform, increasing the range of heterogeneous
code that the processing element should handle. The clear examples of such
convergence with mixed behavior are iPhone and Android phones. Aiming to
balance manufacturing costs and to avoid overloading of the original hardware
platform with extra processing capabilities, way beyond the original hardware
design scope, there is a natural lifecycle that guides the functionality execution
scheme in the platform. Here, the functionality lifecycle is divided into three phases:
introduction, growth and maturity. Commonly, during the introduction phase, which
reflects the time when a novel functionality is launched in the market, due to doubts
about the consumer acceptance, the logical behavior of the product is described
using well known high level software languages like C
,Javaand.NET.This
execution strategy avoids costs, since the target processing element, usually a
general-purpose processor (GPP), is the very same of (or very close to) the previous
product. After market consolidation the growth and maturity phase start. At this
time, the functionality is used in a wide range of products, and its execution tends to
be closer to the hardware to achieve better energy efficiency, speedup, and to avoid
overloading in the general purpose processor.
Generally, two methods are used to approach the required functionality of a
product to the underlying hardware, aiming to explore the benefits of a joint
development. The first technique evaluates small applications parts, which possibly
have huge impact in the whole application execution. For example, this used to
be the scenario of embedded systems some time ago, or of some very specialized
applications in general-purpose processors. After the profiling and evaluation phase,
chosen code parts are moved to specialized hardwired instructions that will extend
the processor instruction set architecture (ISA) and assist a delimited range of
applications. MMX, SSE and 3DNow! are successful ISA extensions that have been
created aiming to support certain application domains, in those cases, multimedia
processing.
A second technique uses a more radical approach to close the gap between the
hardware and the required functionality. Its entire logic behavior is implemented in
hardware, aiming to build an application specific integrated circuit (ASIC). ASIC
development can be considered a better design solution than ISA extensions, since
it provides better energy efficiency and performance.
Due to several reasons the current scenario of the electronics market is changing,
since over 1.5 billion of embedded devices were shipped in 2011 [ 20 ] showing
an increasing by 11% in comparison with 2010. Besides the already explained
drawbacks regarding the traditional product manufacturing, such designs need to
worry about battery life, size and, for critical applications, reliability. Aiming
to achieve their hard requirements, system-on-a-chip (SoC) is largely used in
the embedded domain. The main proposal of a SoC design is to integrate in a
single die the processing element (in most cases a GPP is employed), memory,
++
Search WWH ::




Custom Search