Changeset 66 for anr


Ignore:
Timestamp:
Feb 2, 2010, 10:03:39 PM (15 years ago)
Author:
coach
Message:

IA: modif UBS

File:
1 edited

Legend:

Unmodified
Added
Removed
  • anr/section-3.1.tex

    r56 r66  
    1111many-core, GPGPU (General Purpose computation on Graphics Unit Processing) and FPGA.
    1212The two first families are dominating the market by taking benefit
    13 of the strength and influence of mass-market leaders (Intel, Nvidia)
     13of the strength and influence of mass-market leaders (Intel, Nvidia).
    1414%such as Intel for many-core CPU and Nvidia for GPGPU.
    1515In this market, FPGA architectures are emerging and very promising.
     
    7373In addition, Xilinx System Generator and SOPC Builder are closed world
    7474since each one imposes their own IPs which are not interchangeable.
    75 We can conclude that the existing commercial or free tools does not
    76 coverthe whole system synthesis process in a full automatic way. Moreover,
     75The existing commercial or free tools does not
     76cover the whole system synthesis process in a full automatic way. Moreover,
    7777they are bound to a particular device family and to IPs library.
    7878
    7979\subsubsection{High Level Synthesis}
    8080High Level Synthesis translates a sequential algorithmic description and a
    81 constraints set (area, power, frequency, ...) to a micro-architecture at
     81set of constraints (area, power, frequency, ...) to a micro-architecture at
    8282Register Transfer Level (RTL).
    8383Several academic and commercial tools are today available. Most common
     
    223223an active research subject.
    224224
    225 \subsubsection{Interfaces}
    226 \newcommand{\ip}{\sc ip}
    227 \newcommand{\dma}{\sc dma}
    228 \newcommand{\soc}{\sc SoC}
    229 \newcommand{\mwmr}{\sc mwmr}
    230 The hardware/software interface has been a difficult task since the advent
    231 of complex systems on chip. After the first Co-design
    232 environments~\cite{Coware,Polis,Ptolemy}, the Hardware Abstraction Layer
    233 has been defined so that software applications can be developed without low
    234 level hardware implementation details.  In~\cite{jerraya}, Yoo and Jerraya
    235 propose an {\sc api} with extension ability instead of a unique hardware
    236 abstraction layer.  System level communication frameworks have been
    237 introduced~\cite{JerrayaPetrot,mwmr}.
    238 \par
    239 A good abstraction of a hardware/software interface has been proposed
    240 in~\cite{Jantsch}: it is composed of a software driver, a {\dma} and and a
    241 bus interface circuit. Automatic wrapping between bus protocols has
    242 generated a lot of papers~\cite{Avnit,smith,Narayan, Alberto}. These works
    243 do not use a {\dma}. In COACH, the hardware/software interface is done at a
    244 higher level and uses burst communication in the bus interface circuit to
    245 improve the communication performances.
    246 \par
    247 There are two important projects related to efficient interface of
    248 data-flow {\ip}s : the work of Park and Diniz~\cite{ Park01} and the the
    249 Lip6 work on {\mwmr}~\cite{mwmr}.  Park and Diniz~\cite{ Park01} proposed
    250 of a generic interface that can be parameterized to connect different
    251 data-flow {\ip}s. This approach does not request the communications to be
    252 statically known and proposes a runtime resolution to solve conflicting
    253 access to the bus. To our knowledge this approach has not been implemented
    254 further since 2003.
    255 \par
    256 {\mwmr}~\cite{mwmr} stands for both a computation model (multi-write,
    257 multi-read {\sc fifo}) inherited from the Khan Process Networks and a bus
    258 interface circuit protocol.  As for the work of Park and Diniz, {\mwmr}
    259 does not make the assumption of a static communication flow.  This implies
    260 simple software driver to write, but introduces additional complexity due
    261 to the mutual exclusion locks necessary to protect the shared memory.
    262 \par
    263 we propose, in COACH, to use recent work on hardware/software
    264 interface~\cite{FR-vlsi}  that  uses a {\em clever} {\dma} responsible for
    265 managing data streams. A assumption is that the behavior of the {\ip}s can
    266 be statically described. A similar choice has been made in the Faust
    267 {\soc}~\cite{FAUST} which includes the {\em smart memory engine} component.
    268 Jantsch and O'Nils already noticed in ~\cite{Jantsch} the huge complexity
    269 of writing this hardware/software interface, in COACH,  automatic
    270 generation of the interface will be achieved, this is one goal of the CITI
    271 contribution to COACH.
    272 
     225%\subsubsection{High Performance Computing}
     226%Accelerating high-performance computing (HPC) applications with field-programmable
     227%gate arrays (FPGAs) can potentially improve performance.
     228%However, using FPGAs presents significant challenges~\cite{hpc06a}.
     229%First, the operating frequency of an FPGA is low compared to a high-end microprocessor.
     230%Second, based on Amdahl law,  HPC/FPGA application performance is unusually sensitive
     231%to the implementation quality~\cite{hpc06b}.
     232%Finally, High-performance computing programmers are a highly sophisticated but scarce
     233%resource. Such programmers are expected to readily use new technology but lack the time
     234%to learn a completely new skill such as logic design~\cite{hpc07a} .
     235%\\
     236%HPC/FPGA hardware is only now emerging and in early commercial stages,
     237%but these techniques have not yet caught up.
     238%Thus, much effort is required to develop design tools that translate high level
     239%language programs to FPGA configurations.
     240
Note: See TracChangeset for help on using the changeset viewer.