Changeset 103


Ignore:
Timestamp:
Feb 8, 2010, 8:59:54 AM (14 years ago)
Author:
coach
Message:

pc

File:
1 edited

Legend:

Unmodified
Added
Removed
  • anr/section-3.1.tex

    r93 r103  
    5151\subsubsection{System Synthesis}
    5252Today, several solutions for system design are proposed and commercialized.
    53 The most common are those provided by Altera and Xilinx to promote their
    54 FPGA devices.
     53The existing commercial or free tools does not
     54cover the whole system synthesis process in a full automatic way. Moreover,
     55they are bound to a particular device family and to IPs library.
     56The most commonly used are provided by Altera and Xilinx to promote their
     57FPGA devices. These two representative tools used to synthesize SoC on FPGA
     58are introduced below.
    5559\\
    5660The Xilinx System Generator for DSP~\cite{system-generateur-for-dsp} is a
     
    6165Language (HDL) code mapped to Xilinx pre-optimized algorithms.
    6266However, this tool targets only DSP based algorithms, Xilinx FPGAs and
    63 cannot handle complete SoC. Thus, it is not really a system synthesis tool.
     67cannot handle a complete SoC. Thus, it is not really a system synthesis tool.
    6468\\
    6569In the opposite, SOPC Builder~\cite{spoc-builder} allows to describe a
     
    6973Nevertheless, SOPC Builder does not provide any facilities to synthesize
    7074coprocessors. System Designer must provide the synthesizable description
    71 with the feasible bus interface.
     75with the feasible bus interface. Design Space Exploration is thus limited
     76and SystemC simulation is not possible neither at transactional nor at Cycle
     77accurate level.
    7278\\
    7379In addition, Xilinx System Generator and SOPC Builder are closed world
    7480since each one imposes their own IPs which are not interchangeable.
    75 The existing commercial or free tools does not
    76 cover the whole system synthesis process in a full automatic way. Moreover,
    77 they are bound to a particular device family and to IPs library.
    7881
    7982\subsubsection{High Level Synthesis}
     
    8790maturity, their usage is restrained by:
    8891\begin{itemize}
    89 \item They do not respect accurately the frequency constraint when they target an FPGA device.
    90 Their error is about 10 percent. This is annoying when the generated component is integrated
    91 in a SoC since it will slow down the hole system.
    92 \item These tools take into account only one or few constraints simultaneously while realistic
    93 designs are multi-constrained.
    94 Moreover, low power consumption constraint is mandatory for embedded systems.
    95 However, it is not yet well handled by common synthesis tools.
    96 \item The parallelism is extracted from initial algorithm. To get more parallelism or to reduce
    97 the amout of required memory, the user must re-write it while there is techniques as polyedric
    98 transformations to increase the intrinsec parallelism.
    99 \item Despite they have the same input language (C/C++), they are sensitive to the style in
    100 which the algorithm is written. Consequently, engineering work is required to swap from
    101 a tool to another.
    10292\item The HLS tools are not integrated into an architecture and system exploration tool.
    10393Thus, a designer who needs to accelerate a software part of the system, must adapt it manually
    10494to the HLS input dialect and performs engineering work to exploit the synthesis result
    10595at the system level.
     96\item HLS tools take into account only one or few constraints simultaneously while realistic
     97designs are multi-constrained.
     98Moreover, low power consumption constraint is mandatory for embedded systems.
     99However, it is not yet well handled or not handle at all by the synthesis tools already available.
     100\item The parallelism is extracted from initial algorithmic specification. To get more parallelism or to reduce
     101the amount of required memory in the SoC, the user must re-write the algorithmic specification while there is
     102techniques as polyedric transformations to increase the intrinsic parallelism.
     103\item While they support limited loop transformations like loop unrolling and loop pipelining, current HLS tools
     104do not provide support for design space exploration neither through automatic loop transformations nor through
     105memory mapping.
     106\item Despite they have the same input language (C/C++), they are sensitive to the style in
     107which the algorithm is written. Consequently, engineering work is required to swap from
     108a tool to another.
     109\item They do not respect accurately the frequency constraint when they target an FPGA device.
     110Their error is about 10 percent. This is annoying when the generated component is integrated
     111in a SoC since it will slow down the hole system.
    106112\end{itemize}
    107113Regarding these limitations, it is necessary to create a new tool generation reducing the gap
    108 between the specification of an heterogenous system and its hardware implementation.
     114between the specification of an heterogeneous system and its hardware implementation.
     115%FIXME == {Ajouter ref livre + D&T}
    109116
    110117\subsubsection{Application Specific Instruction Processors}
     
    112119ASIP (Application-Specific Instruction-Set Processor) are programmable
    113120processors in which both the instruction and the micro architecture have
    114 been tailored to a given application domain (eg. video processing), or to a
     121been tailored to a given application domain (e.g. video processing), or to a
    115122specific application.  This specialization usually offers a good compromise
    116 between performance (w.r.t a pure software implementation on an embeded
     123between performance (w.r.t a pure software implementation on an embedded
    117124CPU) and flexibility (w.r.t an application specific hardware co-processor).
    118125In spite of their obvious advantages, using/designing ASIPs remains a
Note: See TracChangeset for help on using the changeset viewer.