Changeset 353 for anr/section-1.tex


Ignore:
Timestamp:
Feb 4, 2011, 2:04:42 AM (13 years ago)
Author:
coach
Message:

Presque 40 pages.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • anr/section-1.tex

    r337 r353  
    1 % les objectifs globaux,
    2 The market of digital systems is about 4,600 M\$ today and is estimated to
    3 5,600 M\$ in 2012. However the ever growing application complexity involves
    4 integration of heterogeneous technologies and requires the design of
    5 complex Multi-Processors System on Chip (MPSoC).
    6 \\
    7 During the last decade, the use of ASICs (Application Specific
    8 Integrated Circuits) appeared to be more and more reserved to high volume markets, because
    9 the design and fabrication costs of such components exploded, due to increasing NRE (Non
    10 Recurring-Engineering) costs.
    11 Fortunately, FPGA (Field Programmable Gate Array) components, such as the
    12 Virtex5 family from \xilinx or the Stratix4 family from \altera, can nowadays
    13 implement a complete MPSoC with multiple processors and several dedicated
    14 coprocessors for a few Keuros per device.
    15 \\
    16 Many applications are initially captured
    17 algorithmically in High-Level Languages (HLLs) such as C/C++. This has led to growing interest
    18 in tools that can provide an implementation path directly from HLLs to hardware.
    19 Thus, Electronic System Level (ESL) design methodologies (Virtual Prototyping,
    20 Co-design, High-Level Synthesis...) are now mature and allow the automation of
    21 a system-level design flow. Unfortunately, ESL tool development to date has primarily focused
    22 on the design of hard-wired devices i.e. ASICs and ASSPs (Application Specific Standard Product).
    23 However, the increasing sophistication of FPGAs has accelerated the need for FPGA-based ESL design
    24 methodologies. ESL methodologies hold the promise of streamlining the design approach by accepting
    25 designs written in the C/C++ language and implementing the function directly into FPGA.
    26 We believe that coupling FPGA technologies and ESL methodologies
    27 will allow both SMEs (Small and Medium Enterprise) and major companies to design innovative
    28 devices and to enter new, low and medium volume markets.
    29 Furthermore, today there is an increasing industrial interest into IC
    30 that integrates both hardwired CPU cores or MPSoC and a configurable area (FPGA)
    31 such as the ATOM E600C chip (Intel).
    32 In few a years, one can expect that such chips will become current. Even standard
    33 general purpose CPU cores will contains a configurable area
    34 bringing an explosion in low and medium volume markets.
     1The market of digital systems is about 4,600 M\$ today and is estimated to 5,600 M\$ in 2012. However the ever growing applications complexity involves integration of heterogeneous technologies and requires the design of complex Multi-Processors System on Chip (MPSoC). During the last decade, the use of ASICs (Application Specific Integrated Circuits) appeared to be more and more reserved to high volume markets, because the design and fabrication costs of such components exploded, due to increasing NRE (Non Recurring-Engineering) costs. Fortunately, FPGA (Field Programmable Gate Array) components, such as the Virtex5 family from XILINX or the Stratix4 family from ALTERA, can nowadays implement a complete MPSoC with multiple processors and several dedicated coprocessors for a few Keuros per device.
    352\parlf
    36 The objective of COACH is to provide an integrated design flow for the design of
    37 multi-processors digital systems targeting FPGA devices.
    38 It will be dedicated to system/software designers, and hide as much as possible
    39 the hardware characteristics to the end-user.
    40 COACH will mainly target three kinds of digital systems:
    41 1) embedded and autonomous application such as  personal digital assistants (PDA),
    42    ambient computing components, or wireless sensor networks (WSN);
    43 2) PCI/E extension boards connected to a PC to accelerate a specific application,
    44    it is the domain of High-Performance Computing (HPC) and High-Speed Signal Processing (HSSP);
    45 3) sub-system application for generating an IP to a larger system.
    46 \parlf
    47 %verrous scientifiques et techniques
    48 The COACH environment will integrate several hardware and software technologies:
    49 \begin{description}
    50 \item[Design Space Exploration:]
    51     The COACH environment will allow to describe an application as a process
    52         network i.e. a set of tasks communicating through FIFO channels.
    53         COACH will allow to map the application on a shared-memory, MPSoC architecture.
    54     It will permit to easily explore the design space to help the system designer
    55         to define the proper hardware/software partitioning of the application.
    56     For each point in the design space, metrics such as throughput, latency, power
    57     consumption, silicon area, memory allocation and data locality will be provided.
    58 \item[Hardware Accelerators Synthesis (HAS):]
    59     COACH will allow the automatic generation of hardware accelerators when required.
    60     Hence, High-Level Synthesis (HLS) tools, Application Specific Instruction Processor
    61     (ASIP) design environments and source-level transformation tools (loop transformations
    62     and memory optimization) will be provided.
    63     This will allow further exploration of the micro-architectural design space.
    64     HLS tools are sensitive to the coding style of the input specification and the domain
    65     they target (control vs. data dominated).
    66     The HLS tools of COACH will support a common language and coding style to avoid
    67     re-engineering by the designer.
    68 \item[Platform based design:]
    69     COACH will handle both \altera and \xilinx FPGA devices.
    70     COACH will define architectural templates that can be customized by adding
    71     dedicated coprocessors and ASIPs and by fixing template parameters such as
    72     the number of embedded processors, the number and size of embedded memory banks
    73     or the embedded operating system.
    74     However, the specification of the application will be independent of both the
    75     architectural template and the target FPGA device.
    76     Basically, the following three architectural templates will be provided:
    77     \begin{enumerate}
    78     \item A Neutral architectural template based on the SoCLib IP core library and the
    79       VCI/OCP communication infrastructure.
    80     \item An \altera architectural template based on the \altera IP core library, the
    81       AVALON system bus and the NIOS processor.
    82     \item A \xilinx architectural template based on the \xilinx IP core library,
    83       the \xilinxbus system bus and the \xilinxcpu processor.
    84     \end{enumerate}
    85 \item[Hardware/Software communication middleware:]
    86     COACH will implement an homogeneous HW/SW communication infrastructure and
    87     communication APIs (Application Programming Interface), that will be used for
    88     communications between software tasks running on embedded processors and
    89     dedicated hardware coprocessors.
    90 \item[Interaction with the industrial world:]
    91     COACH will not be a closed framework but it will be opened to the industrial
    92     world by using the IP-XACT format \cite{IP-XACT-08} for describing the components of the
    93     architectural template and by providing the IP-XACT description of the generated MPSoC.
    94     This should facilitate the enhancement of the architectural template with IP and the
    95     integration of the IP produced by COACH in larger design.
    96 \end{description}
    97 %From the end user point of view, the specification of the application will be
    98 %independant from both the architectural template and from the selected FPGA
    99 %family.
    100 \parlf
    101 % le programme de travail
    102 %The COACH project targets fundamental issues related to design methodologies for
    103 %digital systems by providing estimation, exploration and design tools targeting both
    104 %performance and power optimization at all the abstraction levels of the flow (system,
    105 %architecture, algorithm and logic).
    106 To reach this ambitious goal, the project will rely on the experience and the
    107 %complementariness
    108 synergy of the partners in the following domains:
    109 Operating system and communication middleware (\tima, \upmc),
    110 MPSoC architectures (\tima, \ubs, \upmc),
    111 ASIP architectures (\inria),
    112 High Level Synthesis (\tima, \ubs, \upmc), and compilation (\lip),
    113 HPC (\bull, \thales, \lip), tools integration in IP-XACT flow (\mds).
    114 \\
    115 The COACH project does not start from scratch.
    116 It relies
    117 on the Magillem industrial platform for the integration into IP-XACT flows,
    118 on the SoCLib platform~\cite{soclib} for prototyping and operating systems (DNA/OS),
    119 on the GAUT~\cite{gaut08} and UGH~\cite{ugh08} tools for HLS,
    120 on the ROMA~\cite{roma, RAFFIN:2010:INRIA-00539874:1} project for ASIP,
    121 on the SYNTOL~\cite{syntol} and BEE~\cite{bee} tools for source-level analysis and
    122 transformations,
    123 and on the \xilinx and \altera IP core libraries.
    124 Finally it will use the \xilinx and \altera logic and physical synthesis tools
    125 to generate the FPGA configuration bitstreams.
    126 %The main development steps of the COACH project are:
    127 %\begin{enumerate}
    128 %   \item Definition of the end user inputs:
    129 %    The coarse grain parallelism of the application will be described as a communicating
    130 %    task graph, each task being described in C language.
    131 %    Similarly the architectural templates with their parameters and the design constraints
    132 %    will be specified.
    133 %  \item Definition of an internal format for representing task.
    134 %  \item Development of the GCC pluggin for generating the internal format of a
    135 %    C task.
    136 %  \item Adaptation of the existing HAS tools (BEE, SYNTOL, UGH, GAUT) to read and write
    137 %    the internal format. This will allow to swap from one tool to another one, and to
    138 %    chain them if necessary.
    139 %  \item Modification of the DSX tool (Design Space eXplorer) of the SocLib
    140 %    platform to generate the bitstream for the various FPGA families and architectural
    141 %    templates.
    142 %  \item Development of new tools such as ASIP compiler, HPC design environment and
    143 %    dynamic reconfiguration of FPGA devices.
    144 %\end{enumerate}
    145 \parlf
    146 The role of the industrial partners \bull, \thales and \mds is to provide
    147 real use cases to benchmark the COACH design environment and to analyze the designer productivity
    148 improvements.
    149 \parlf
    150 The COACH project will deliver an open and freely distributed infrastructure.
    151 The architectural templates and most of the software tools will be distributed under the
    152 GPL-like license.
    153 The VHDL synthesizable models for the neutral architectural template
    154 will also be freely available for non commercial use.
    155 For industrial exploitation the technology providers are ready to propose commercial licenses,
    156 directly to the end user, or through a third party.
    157 \parlf
     3Many applications are initially captured algorithmically in High-Level Languages (HLLs) such as C/C++. This has led to growing interest in tools that can provide an implementation path directly from HLLs to hardware. Thus, Electronic System Level (ESL) design methodologies (Virtual Prototyping, Co-design, High-Level Synthesis...) are now mature and allow the automation of a system-level design flow. Unfortunately, ESL tool development today has primarily focused on the design of hardwired devices i.e. ASICs and ASSPs (Application Specific Standard Product). However, the increasing sophistication of FPGAs has accelerated the need for FPGA-based ESL design methodologies. ESL methodologies hold the promise of streamlining the design approach by accepting designs written in C/C++ language and implementing the function straight into FPGA. Coupling FPGA technologies and ESL methodologies will allow both Small and Medium Enterprise and major companies to design innovative devices and to enter new, low and medium volume markets. Furthermore, today there is an increasing industrial interest to IC that integrates both hardwired CPU cores or MPSoC and a configurable area (FPGA) such as Intel-ATOM E600C. Probably in few years, such chips will become current and even standard general purpose CPU cores will contains a configurable area making explode the low and medium volume markets of digital systems. COACH’s objective is to provide an integrated design flow for the design of multi-processors digital systems targeting FPGA devices. It will be dedicated to system/software designers, and hide as much as possible the hardware characteristics to the end-user. COACH will mainly target three kinds of digital systems: 1/ Embedded and autonomous application such as personal digital assistants (PDA), ambient computing components, or wireless sensor networks, 2/ PCI-E extension boards connected to a PC to accelerate a specific application, it is the domain of High-Performance Computing (HPC) and High-Speed Signal Processing, 3/ Sub-system application for generating an IP to a larger system. The COACH open-source environment will integrate several hardware and software technologies:
     4%
     5\begin{itemize}
     6\item Design Space Exploration by allowing to describe an application as a process network i.e. a set of tasks communicating through FIFO channels and to map the application on a shared-memory, MPSoC architecture.
     7\item Hardware Accelerators Synthesis by allowing the automatic generation of hardware accelerators when required
     8\item Platform based design: three architectural templates will be provided (free-generic and ALTERA and XILINX’s IPs based).
     9\item Hardware/Software communication middleware by implementing an homogeneous HW/SW communication infrastructure and communication APIs (Application Programming Interface), that will be used for communications between software tasks running on embedded processors and dedicated hardware coprocessors.
     10\item Interaction with the industrial world: the framework will be open to the industrial world by using IP-XACT standard for describing the components of the architectural template and by providing the IP-XACT description of the generated MPSoC.
     11\end{itemize}
     12%
    15813\mustbecompleted{LIST NON A JOUR}
    15914The major FPGA companies (\xilinx and \altera) have expressed their interest for
     
    16419ABOUND Logic, EADS-ASTRIUM.
    16520
     21%% % les objectifs globaux,
     22%% The market of digital systems is about 4,600 M\$ today and is estimated to
     23%% 5,600 M\$ in 2012. However the ever growing application complexity involves
     24%% integration of heterogeneous technologies and requires the design of
     25%% complex Multi-Processors System on Chip (MPSoC).
     26%% \\
     27%% During the last decade, the use of ASICs (Application Specific
     28%% Integrated Circuits) appeared to be more and more reserved to high volume markets, because
     29%% the design and fabrication costs of such components exploded, due to increasing NRE (Non
     30%% Recurring-Engineering) costs.
     31%% Fortunately, FPGA (Field Programmable Gate Array) components, such as the
     32%% Virtex5 family from \xilinx or the Stratix4 family from \altera, can nowadays
     33%% implement a complete MPSoC with multiple processors and several dedicated
     34%% coprocessors for a few Keuros per device.
     35%% \\
     36%% Many applications are initially captured
     37%% algorithmically in High-Level Languages (HLLs) such as C/C++. This has led to growing interest
     38%% in tools that can provide an implementation path directly from HLLs to hardware.
     39%% Thus, Electronic System Level (ESL) design methodologies (Virtual Prototyping,
     40%% Co-design, High-Level Synthesis...) are now mature and allow the automation of
     41%% a system-level design flow. Unfortunately, ESL tool development to date has primarily focused
     42%% on the design of hard-wired devices i.e. ASICs and ASSPs (Application Specific Standard Product).
     43%% However, the increasing sophistication of FPGAs has accelerated the need for FPGA-based ESL design
     44%% methodologies. ESL methodologies hold the promise of streamlining the design approach by accepting
     45%% designs written in the C/C++ language and implementing the function directly into FPGA.
     46%% We believe that coupling FPGA technologies and ESL methodologies
     47%% will allow both SMEs (Small and Medium Enterprise) and major companies to design innovative
     48%% devices and to enter new, low and medium volume markets.
     49%% Furthermore, today there is an increasing industrial interest into IC
     50%% that integrates both hardwired CPU cores or MPSoC and a configurable area (FPGA)
     51%% such as the ATOM E600C chip (Intel).
     52%% In few a years, one can expect that such chips will become current. Even standard
     53%% general purpose CPU cores will contains a configurable area
     54%% bringing an explosion in low and medium volume markets.
     55%% \parlf
     56%% The objective of COACH is to provide an integrated design flow for the design of
     57%% multi-processors digital systems targeting FPGA devices.
     58%% It will be dedicated to system/software designers, and hide as much as possible
     59%% the hardware characteristics to the end-user.
     60%% COACH will mainly target three kinds of digital systems:
     61%% 1) embedded and autonomous application such as  personal digital assistants (PDA),
     62%%    ambient computing components, or wireless sensor networks (WSN);
     63%% 2) PCI/E extension boards connected to a PC to accelerate a specific application,
     64%%    it is the domain of High-Performance Computing (HPC) and High-Speed Signal Processing (HSSP);
     65%% 3) sub-system application for generating an IP to a larger system.
     66%% \parlf
     67%% %verrous scientifiques et techniques
     68%% The COACH environment will integrate several hardware and software technologies:
     69%% \begin{description}
     70%% \item[Design Space Exploration:]
     71%%     The COACH environment will allow to describe an application as a process
     72%%      network i.e. a set of tasks communicating through FIFO channels.
     73%%      COACH will allow to map the application on a shared-memory, MPSoC architecture.
     74%%     It will permit to easily explore the design space to help the system designer
     75%%      to define the proper hardware/software partitioning of the application.
     76%%     For each point in the design space, metrics such as throughput, latency, power
     77%%     consumption, silicon area, memory allocation and data locality will be provided.
     78%% \item[Hardware Accelerators Synthesis (HAS):]
     79%%     COACH will allow the automatic generation of hardware accelerators when required.
     80%%     Hence, High-Level Synthesis (HLS) tools, Application Specific Instruction Processor
     81%%     (ASIP) design environments and source-level transformation tools (loop transformations
     82%%     and memory optimization) will be provided.
     83%%     This will allow further exploration of the micro-architectural design space.
     84%%     HLS tools are sensitive to the coding style of the input specification and the domain
     85%%     they target (control vs. data dominated).
     86%%     The HLS tools of COACH will support a common language and coding style to avoid
     87%%     re-engineering by the designer.
     88%% \item[Platform based design:]
     89%%     COACH will handle both \altera and \xilinx FPGA devices.
     90%%     COACH will define architectural templates that can be customized by adding
     91%%     dedicated coprocessors and ASIPs and by fixing template parameters such as
     92%%     the number of embedded processors, the number and size of embedded memory banks
     93%%     or the embedded operating system.
     94%%     However, the specification of the application will be independent of both the
     95%%     architectural template and the target FPGA device.
     96%%     Basically, the following three architectural templates will be provided:
     97%%     \begin{enumerate}
     98%%     \item A Neutral architectural template based on the SoCLib IP core library and the
     99%%       VCI/OCP communication infrastructure.
     100%%     \item An \altera architectural template based on the \altera IP core library, the
     101%%       AVALON system bus and the NIOS processor.
     102%%     \item A \xilinx architectural template based on the \xilinx IP core library,
     103%%       the \xilinxbus system bus and the \xilinxcpu processor.
     104%%     \end{enumerate}
     105%% \item[Hardware/Software communication middleware:]
     106%%     COACH will implement an homogeneous HW/SW communication infrastructure and
     107%%     communication APIs (Application Programming Interface), that will be used for
     108%%     communications between software tasks running on embedded processors and
     109%%     dedicated hardware coprocessors.
     110%% \item[Interaction with the industrial world:]
     111%%     COACH will not be a closed framework but it will be opened to the industrial
     112%%     world by using the IP-XACT format \cite{IP-XACT-08} for describing the components of the
     113%%     architectural template and by providing the IP-XACT description of the generated MPSoC.
     114%%     This should facilitate the enhancement of the architectural template with IP and the
     115%%     integration of the IP produced by COACH in larger design.
     116%% \end{description}
     117%% %From the end user point of view, the specification of the application will be
     118%% %independant from both the architectural template and from the selected FPGA
     119%% %family.
     120%% \parlf
     121%% % le programme de travail
     122%% %The COACH project targets fundamental issues related to design methodologies for
     123%% %digital systems by providing estimation, exploration and design tools targeting both
     124%% %performance and power optimization at all the abstraction levels of the flow (system,
     125%% %architecture, algorithm and logic).
     126%% To reach this ambitious goal, the project will rely on the experience and the
     127%% %complementariness
     128%% synergy of the partners in the following domains:
     129%% Operating system and communication middleware (\tima, \upmc),
     130%% MPSoC architectures (\tima, \ubs, \upmc),
     131%% ASIP architectures (\inria),
     132%% High Level Synthesis (\tima, \ubs, \upmc), and compilation (\lip),
     133%% HPC (\bull, \thales, \lip), tools integration in IP-XACT flow (\mds).
     134%% \\
     135%% The COACH project does not start from scratch.
     136%% It relies
     137%% on the Magillem industrial platform for the integration into IP-XACT flows,
     138%% on the SoCLib platform~\cite{soclib} for prototyping and operating systems (DNA/OS),
     139%% on the GAUT~\cite{gaut08} and UGH~\cite{ugh08} tools for HLS,
     140%% on the ROMA~\cite{roma, RAFFIN:2010:INRIA-00539874:1} project for ASIP,
     141%% on the SYNTOL~\cite{syntol} and BEE~\cite{bee} tools for source-level analysis and
     142%% transformations,
     143%% and on the \xilinx and \altera IP core libraries.
     144%% Finally it will use the \xilinx and \altera logic and physical synthesis tools
     145%% to generate the FPGA configuration bitstreams.
     146%% %The main development steps of the COACH project are:
     147%% %\begin{enumerate}
     148%% %   \item Definition of the end user inputs:
     149%% %    The coarse grain parallelism of the application will be described as a communicating
     150%% %    task graph, each task being described in C language.
     151%% %    Similarly the architectural templates with their parameters and the design constraints
     152%% %    will be specified.
     153%% %  \item Definition of an internal format for representing task.
     154%% %  \item Development of the GCC pluggin for generating the internal format of a
     155%% %    C task.
     156%% %  \item Adaptation of the existing HAS tools (BEE, SYNTOL, UGH, GAUT) to read and write
     157%% %    the internal format. This will allow to swap from one tool to another one, and to
     158%% %    chain them if necessary.
     159%% %  \item Modification of the DSX tool (Design Space eXplorer) of the SocLib
     160%% %    platform to generate the bitstream for the various FPGA families and architectural
     161%% %    templates.
     162%% %  \item Development of new tools such as ASIP compiler, HPC design environment and
     163%% %    dynamic reconfiguration of FPGA devices.
     164%% %\end{enumerate}
     165%% \parlf
     166%% The role of the industrial partners \bull, \thales and \mds is to provide
     167%% real use cases to benchmark the COACH design environment and to analyze the designer productivity
     168%% improvements.
     169%% \parlf
     170%% The COACH project will deliver an open and freely distributed infrastructure.
     171%% The architectural templates and most of the software tools will be distributed under the
     172%% GPL-like license.
     173%% The VHDL synthesizable models for the neutral architectural template
     174%% will also be freely available for non commercial use.
     175%% For industrial exploitation the technology providers are ready to propose commercial licenses,
     176%% directly to the end user, or through a third party.
     177%% \parlf
     178%% \mustbecompleted{LIST NON A JOUR}
     179%% The major FPGA companies (\xilinx and \altera) have expressed their interest for
     180%% this project.
     181%% Finally, the COACH project is already supported by a large number of SMEs, as demonstrated by the
     182%% "letters of interest" (see Annex B), that have been collected during the preparation of the project :
     183%% ADACSYS, MDS, INPIXAL, CAMKA System, ATEME, ALSIM, SILICOMP-AQL,
     184%% ABOUND Logic, EADS-ASTRIUM.
     185%%
Note: See TracChangeset for help on using the changeset viewer.