Oyunchimeg Shagdar

Manabu Tsukada

Masatoshi Kakiuchi

Thouraya Toukabri

Thierry Ernst
email: thierry.ernst@inria.fr

Experimentation Towards IPv6 over IEEE 802.11p with ITS Station Architecture

Keywords: Cooperative ITS, ITS Station Architecture, IPv6, IEEE 802.11p, experimentation

The goal of Cooperative Intelligent Transportation Systems (ITS) is to enhance road safety, traffic efficiency, and comfort of road users based on Vehicle-to-Vehicle, Vehicle-to-Roadside, and Vehicle-to-Central communications over diverse media such as DSRC, Wi-Fi, 3G, WiMAX, and LTE. IPv6 is the most promising technology that enables a convergence of such different communications over diverse media. This paper is about investigating the issues regarding IP-communications over DSRC band. The investigation is made through field test experiments using communication devices equipped with hardware interfaces for different media as well as an IPv6 stack. Based on our field test results, we discuss the issues and some potential solutions towards achieving sufficient perfomance of IPv6 communications over DSRC band.

I. INTRODUCTION

Road safety, fleet control, Geo-localization, infotainment and other applications are new road services that need not only new control technologies for vehicles and the infrastructure (sensors capacity, high image processing, complex data handling...) but also efficient data transmission between vehicles and the infrastructure. A new vision of Intelligent Transportation Systems (ITS) is born: Cooperative ITS. The idea is based on conceiving and deploying a transportation system in which the roadside infrastructure, vehicles, and remote entities cooperate to enhance road safety, traffic efficiency and comfort of road users (drivers, passengers, pedestrians, fret carriers). With this new revolutionary concept of Cooperative ITS, the pure fiction of communicating vehicles is becoming a reality in which suitable communication forms, architectures and techniques are deployed to combine in an efficient way the internal control function of the vehicle with its external communication function.

In situations where the exchange of information has to transit through the Internet and considering today's Internet predomination in mostly all communication systems, Internetbased communication scenarios are crucial for vehicular communications in order to keep the whole system up to date with the new technological achievements in favor of the ubiquitous Internet. IPv6 takes its place within these new ITS communication architectures, thanks to its advantages like extended address space, mobility support and ease of configuration, in boosting new Internet and ITS usages [START_REF] Ernst | The information technology era of the vehicular industry[END_REF]. While a much effort has been made to improve the capability of IPv6 including enhanced mobility management and embedded security, the cooperative ITS brings even higher challenges due to the underlying diverse communications media. This motivates our research and development activities that are to establish a cooperative ITS system enabling Vehicle-to-Vehicle (V2V), Vehicle-to-Roadside (V2R), and Vehicle-to-Central (V2C) communications using DSRC, 3G, and Wi-Fi media.

The IEEE 802.11p [2] is defined for ITS communications for safe and comfort driving support and it operates over DSRC band (5.9 GHz). IEEE 802.11p based communications for safe driving support has been taking much attention from academic and industrial sectors. Safe driving applications, including inter-vehicle collision avoidance, have strict requirements especially in terms of transmission delay. Adding to the delay requirement, because such applications often do not require Internet connection, the majority of the ongoing research on ITS over IEEE 802.11p targets non-IP communications [START_REF] Biswas | Vehicle-to-vehicle wireless communication protocols for enhancing highway traffic safety[END_REF], [START_REF] Hassan | Effect of Retransmissions on the Performance of the IEEE 802.11 MAC Protocol for DSRC[END_REF]. Thus, not much work has been done to answer the question "how IEEE 802.11p radio performance affects IPv6 communications?". This is an important and essential issue towards enabling cooperative ITS, since DSRC is one of the core underlying media of cooperative ITS. To this end, we have made extensive field tests to evaluate IEEE 802.11p performance and to analyze its possible impacts on IPv6 communications. In our experimental testings, we use a multimodal communication device, Laguna [START_REF] Laguna | Laguna product family, Product specification[END_REF], which is developed especially for cooperative ITS. This paper introduces some of our experimentations and the insights achieved from the experimentation results.

The paper is structured as follows: Section II describes ITS station reference architecture, IEEE 802.11p access protocol, and introduces some of ITS applications that need IPv6 communications. Section III introduces Laguna multimodal communication device and Section IV presents our experimental results and the achieved insights. Finally, conclusion and perspectives are presented in Section V. In an effort towards harmonization, the European Commission's COMeSafety Specific Support Action issued an European ITS Communication Architecture which has then led to the definition of a uniform communication architecture known as the ITS station reference communication architecture (see Fig. 1) standardized at both the European level within ETSI TC ITS (Technical Committee for Intelligent Transport Systems) and the international level within ISO TC 204 WG16. Both ISO and ETSI architecture specifications [START_REF]Intelligent Transport Systems (ITS); Communications Architecture[END_REF], [START_REF]2010 Intelligent transport systems -Communications access for land mobiles (CALM) -Architecture[END_REF] are based on the same terminology and tend to converge although there are still differences between the two until all standards composing this architecture are revised and aligned. The cross-layer design originally introduced by ISO TC204 WG16 is now clearly represented on the architecture diagram (ITS station management plane), though the cross-layer functions to be offered are still under discussion at the ETSI and ISO standardization level. Such an architecture would be deployed on various types of ITS stations involved in Cooperative ITS communications, but different features would be supported according to the type of ITS station, deployment environment and user needs.

B. Cooperative ITS Applications

Types of ITS stations include the vehicle ITS station, the roadside ITS station, the personal ITS station and central ITS stations. As a result, this ITS station architecture combines all types of communications: V2V and V2R, and V2C. As it can be seen in Fig. 2, vehicles are equipped with the IEEE 802.11p communication interface in order to organize the Vehicular Ad-hoc Network (VANET) between vehicles, and also between vehicles and the roadside. Vehicles can connect to the Internet via the roadside ITS Station dedicated to ITS. On the other hand, the ITS Station may be equipped with communication interfaces (e.g. 2G, 3G, Wi-Fi) that can connect to the general Internet infrastructure.

A Vehicle ITS Station consists of a router (Mobile Router, MR) which is in charge of the communication of the entire ITS Station and hosts that are running applications. With this concept, the ITS Station hosts are free from managing the communication beyond the link where the hosts connect to, since the router is responsible for managing the communication of the entire ITS Station.

The ITS applications running on the hosts are classified into three categories: traffic safety, traffic efficiency and infotainment. The definition of a Basic Set of Applications were defined in ETSI [START_REF]Intelligent transport systems (ITS); vehicular communications; basic set of applications; definitions[END_REF]. Among the applications, some of them highly require message delivery in real-time or message delivery guarantee (e.g. Emergency vehicle warning). In such case, IP may not be used. The non-IP approach puts more importance in the network performance such as delay, packet delivery ratio and so on by omitting the IP header and the processing at the IP layer. On the other hand, IPv6 is used for the other traffic efficiency and infotainment applications that needs connectivity to the Internet, such as "contextual speed limits notification" and "Media downloading".

C. IEEE 802.11p

The IEEE 802.11p [2] is a wireless medium access technology for V2V and V2R communications over the 5.9 GHz band. The IEEE 802.11p basically uses the same PHY as defined in IEEE 802.11a [START_REF]Supplement to IEEE Standard for Information technology -Telecommunications and information exchange between systems -Local and metropolitan area networks[END_REF] but by default, it operates utilizing 10 MHz bands. Binary Phase Shift Keying (BPSK), Quadrature Phase Shift Keying (QPSK), 16-Point Quadrature Amplitude Modulation (16-QAM), and 64-Point Quadrature Amplitude Modulation (64-QAM) modulation schemes are available allowing 27 Mbps data rate at maximum (see Table I). The IEEE 802.11p is adapted by ETSI (European Telecommunications Standards Institute) to European context through ITS-G5 standard [START_REF] Etsi | Intelligent Transport Systems (ITS) European Profile Standard on the Physical and Medium Access Layer of 5GHz ITSs[END_REF]. According to the usages, ITS-G5 divides the band into three sub-bands ITS-G5A, ITS-G5B, and ITS-G5C, where 1 control channel (CC) and 5 service channels (SCs) are defined. The control channel, G5CC, is dedicated to road safety and traffic efficiency applications. It can also be used for ITS service announcements. The service channels G5SC1 and G5SC2 are for road safety and traffic efficiency applications. Finally, the service channels G5SC3, G5SC4, and G5SC5 are dedicated to other ITS user applications. All ITS-G5 stations (STAs) operating on ITS-G5A and ITS-G5B are treated equally disregard whether they are mobile or fixed. For operations in ITS-G5C, a distinction between mobile and fixed STAs is made for spectrum management based on distributed frequency selection (DFS) [START_REF] Etsi | Intelligent Transport Systems (ITS) European Profile Standard on the Physical and Medium Access Layer of 5GHz ITSs[END_REF]. The design also includes complete solutions for vehicle, roadside and central ITS infrastructure development using a powerful embedded computer platform that supports multi-modal wireless communication, including 3G and multi-channel 802.11p, and an IPv6 certified software system that is open and easily manageable by the centralized Laguna ITS Cloud Manager software, making any large scale deployment smooth, while reducing the overall operational costs at the same time.

B. Software Description

The Laguna ITS software stack builds on top of the latest ITSSv6 software distribution, by integrating and consolidating the latest results from other ITS projects such as CVIS, GeoNet, while keeping the platform open for any 3rd party development efforts. The software includes an IPv6 ready networking stack, enhanced by the latest security and mobility features provided by members of the Mobile IPv6 protocol family (MIPv6), i.e., Network Mobility (NEMO) [START_REF] Devarapalli | Network Mobility (NEMO) Basic Support Protocol[END_REF], Multiple Care-Of Address (MCoA) [START_REF] Wakikawa | Multiple Care-of Addresses Registration[END_REF] and secured by IPsec IKEv2 [START_REF] Kaufman | Internet Key Exchange Protocol Version 2 (IKEv2). RFC 5996[END_REF].

IV. EXPERIMENTATION

We conducted field tests using an Access Router (AR, Roadside Unit) and a Mobile Router (MR, Vehicle), which are equipped with Laguna multimodal communication device. The experiments are carried out on appx. 1.6 km line of sight straight road at Satory, Versailles test site. Fig. 5 shows a snapshot of the fields tests and Fig. 6 illustrates the road scenario and the positioning of the AR. As Fig. 6 shows, the vehicle runs from the start point to the end point at a given speed and communicates with the AR which is fixed at 400 meters from the start point. Assuming a traffic efficiency application, such as contextual speed limit notification, the AR is set up to periodically broadcast packets. The packet reception performance is then measured at the MR. In the test, we paid more attention on the impacts of the receiving signal quality (RSSI), the data rate, the distance between the MR and the AR, and the speed of the vehicle. The parameters settings is shown in Table III. Using the Iperf1 tool, the AR could generate IPv6 link-local multicast packets that contain UDP frame with 200 Bytes of message. To get results of packet delivery ratio (PDR) and RSSI, we dumped packets from a monitor interface which has the

A. Results

Fig. 7 shows PDR performance for the case when the vehicle's speed is 20 km/h. As it can be seen in Fig. 7(a), the PDR performance sharply degrades when RSSI is below appx.

-70, -80, -85 dBm for 27, 12, 3 Mbps data rate, respectively. An interesting point to be observed is that the larger the data rate, the more the PDR deviates from the average value. This characteristic is even clearer in Fig. 7(b), which shows the relation between PDR and the distance. The insights we achieved from the results are as follows: There is no doubt that in order to achieve stable communications, especially if the vehicle(s) is far from the AR, a use of a low data rate is required. However, when the vehicle is close to the AR, a high data rate can be used with a support of a technique that takes advantage of e.g., path diversity. The latter is maybe preferable for applications e.g., in which moving vehicles need to download a large amount of data preferably in a short amount of time.

Fig. 8 shows PDR performance for different speed of the vehicle. Although the impact of the speed is not as drastic as that of data rate, we can obverse, especially in Fig. 8(a) (where data rate is fixed to 3 Mbps), the random performance degradation for higher speed. Apparently the reason behind is the doppler shift. However, the impact of the doppler shift is more difficult to see if a higher data rate is used (Fig. 8(b)). Conceivably, this is because the data rate has a dominant impact compared to the doppler shift.

B. Discussion and Future Work

Enabling a sufficient communications quality, especially in terms of throughput, has always been the main objective of communications technologies. Additionally, in IPv6 communications, due to the control overhead and increased latency, frequent handovers are often not desirable. As our results show, it is possible to maintain stable communications between a MR and an AR for longer than one kilometer of distance in line of sight scenario using a combination of a high power and a low data rate. Moreover, such a combination of power and data rate is yet preferred for highly mobile scenarios (vehicles are running at a high speed). However such a setting of power and data rate might be undesirable for throughput improvement, since low data rate directly results in low throughput and high transmission power results in a large amount of interference, which can hamper the total throughput of the network. Therefore, in our future work, we will make further investigations targeting more challenging radio and networking scenarios. Then based on our investigations, we intend to design intelligent power, data rate, and handover algorithms for IPv6 communications over IEEE 802.11p.

V. CONCLUSIONS

IPv6 is at the heart of enabling convergence of V2V, V2I, and V2C over diverse communications media including DSRC, 3G, WiMAX, and Wi-Fi for cooperative ITS. With a motivation of developing cooperative ITS, we have been conducting field tests to study the radio performances of wireless media and their impacts on the performance of IPv6 communication. This paper introduces some of the experimentations on IEEE 802.11p using a multimodal communication device, Laguna. The results reveal that a use of low data rate is referred for stable and long-range communications. If the application requires communications at high data rate, some efforts need to be made to improve the performance of communications taken at high data rates. The results also show that communications can be negatively affected by the doppler shift but the impact is less drastic compared to that of data rate if the relative speed is up to 80 km/h. Our future work includes additional field tests targeting more challenging road scenarios including tunnels, and designing intelligent power, rate, and handover algorithms for seamless IPv6 communications by taking account the application requirements and the road scenario.

  II. PRELIMINARIES A. ITS Station Reference Architecture ISO TC204 WG16, known as CALM (Communications Access for Land Mobiles) is working for ten years on a communication architecture supporting a variety of media types (infrared, microwave, 2G/3G, ...), a variety of networking protocols (IPv6, FAST) for a variety of Cooperative ITS needs (communication profiles) and access network load. Such an interface management component requires input from various layers and is thus a cross-layer function. With such a cross layer function combined with IPv6 mobility support functions (NEMO, MCoA) [6], continuous Internet connectivity can be maintained over transient communication interfaces (i.e. not breaking ongoing communications after vertical handover from e.g. IEEE 802.11p to 3G) or transient access points (from one roadside ITS station supporting IEEE 802.11p to another one). This architecture has been developed, validated and demonstrated in the CVIS project for a number of Cooperative ITS applications.

Fig. 1 .

 1 Fig. 1. ITS station reference architecture

Fig. 2 .

 2 Fig. 2. ITS station reference architecture

  III. SYSTEM DESCRIPTIONWe carried our research based on real world experimental testings using a multimodal communication device, Laguna[START_REF] Laguna | Laguna product family, Product specification[END_REF]. Laguna is an all-in-one solution conceived for the design, integration and testing of communication protocols and solutions compliant with the latest development of vehicle and infrastructure communications worldwide. Laguna natively supports ITS communication architectures and standards developed by the joint efforts of ISO, CEN, ETSI and the IEEE. It aims at delivering services for hassle free implementation of experimental V2V, V2R and V2C communication scenarios, and as such, is an invaluable tool for test site development. The Laguna platform complies with the latest standardized ITS Station Architecture, which builds on top of the ISO CALM standards family. The platform delivers reference ITS architecture functionalities for personal, vehicle, roadside and central ITS sub-systems. A. Hardware Description Laguna multimodal communication device has integrated GPS receiver, two IEEE 802.11p ETSI G5 communication modules, which enables simultaneous communication on up to 2 DSRC channels. The device can also be equipped with a 3G communication module and with IEEE 802.11 a/b/g/n modules. Fig. 4 shows the RSU and vehicle rooftop antennas. DESCRIPTION OF LAGUNA LGN-00-11 OBU/RSU Laguna is a multimodal communication device, software development and verification platform representing the state-of-the-art of ITS communications technology. Laguna is an all-in-one solution specializing in the design, integration and testing of communication protocols and solutions compliant with the latest development of vehicle and infrastructure communications worldwide. Laguna natively supports ITS communication architectures and standards developed by the joint efforts of ISO, CEN, ETSI and the IEEE. It aims to deliver services for hassle free implementation of experimental V2V, V2I and I2I communication scenarios, and as such, is an invaluable tool for test site development. The Laguna platform complies with the latest standardized ITS Station Architecture, which builds on top of the family of the ISO CALM standards. The platform delivers reference ITS architecture functionalities for personal, vehicle, roadside and central ITS sub-systems.

Figure 1 .Fig. 3 .

 13 Figure 1. Laguna LGN-00-11 OBU/RSU Fig. 3. Laguna multimodal communication device

Figure 2 .Figure 3 .

 23 Figure 2. -Combined vehicle rooftop antenna

Figure 4 .Fig. 4 .

 44 Figure 4. -Roadside Stick Antenna H-Plane and E-Plane Radiation Patterns (b) RSU antenna Fig. 4. Vehicle rooftop and RSU antennas

  Fig. 5. A snapshot of the experimental testing

Fig. 6 .

 6 Fig. 6. Road scenario

Fig. 7 .

 7 Fig. 7. Impact of RSSI, distance, and data rate (velocity: 20 km/h)

Fig. 8 .

 8 Fig. 8. The impact of vehicle's speed

TABLE I MODULATION

 I AND DATA RATE FOR A 10 MHZ CHANNEL

	Modulation	Coding rate	Data rate [Mbps]
	BPSK	1/2	3
	BPSK	3/4	4.5
	QPSK	1/2	6
	QPSK	3/4	9
	16-QAM	1/2	12
	16-QAM	3/4	18
	64-QAM	1/2	24
	64-QAM	3/4	27

http://iperf.sourceforge.net

ACKNOWLEDGMENT

The authors would like to thank all the partners in the ITSSv6 project. Especially, we thanks the developers of Laguna in SZTAKI for their technical support. We also thanks the Score@F project members and the IMARA team members for their support and help during the experimentations in INRIA and LIVIC.


Brian Carr

Ira P Goldstein

published or not. The documents may come


Sébastien Ménigot

Jean-Marc Girault

ANALYSIS AND MODELLING OF THE OPTIMAL COMMAND FOR A ULTRASOUND PULSE INVERSION IMAGING SYSTEM

Keywords: Modelling, optimal command, optimization, pulse inversion, ultrasound imaging

Over the past twenty years, in ultrasound imaging, contrast and resolution were improved by using the nonlinearties of the medium. One of the most common techniques which used this properties is the pulse inversion imaging. The optimization of this imaging system that we proposed has consisted in finding the optimal command. However, the properties which enable to make an optimal command was not known and that is why we seek the best optimal command by exciting the system by random sequences. In this study, we proposed two steps in our analysis: an analysis and a modelling stage. The proposed model took into account the nonlinearity of the optimal command and enabled to describe the optimal command by using some parameters. If the synthetic model was used in the pulse inversion imaging system, the contrast can reach the same performances.

INTRODUCTION

Over the past twenty years, improvements in sensitivity of ultrasound imaging systems have provided more accuracy of contrast and resolution in medical applications [START_REF] Frinking | Ultrasound Contrast Imaging: Current and New Potential Methods[END_REF] as well as in nondestructive testing [START_REF] Blitz | Ultrasonic Methods of Nondestructive Testing[END_REF]. The use of ultrasound imaging was revolutionized when the nonlinear interaction between the ultrasonic wave and the medium was taken into account. However, obtaining an ideal method has been limited. Good separation of the harmonic components requires a limited pulse bandwidth [START_REF] Averkiou | Tissue Harmonic Imaging[END_REF], which reduces the axial resolution as in second harmonic imaging [START_REF] Burns | Instrumentation for Contrast Echocardiography[END_REF].

Several imaging methods have been proposed to improve contrast and/or resolution. Some techniques have been only based on post-processings, such as second harmonic imaging [START_REF] Burns | Instrumentation for Contrast Echocardiography[END_REF], subharmonic imaging [START_REF] Forsberg | Subharmonic Imaging of Contrast Agents[END_REF], super harmonic imaging [START_REF] Bouakaz | Super Harmonic Imaging: A New Imaging Technique for Improved Contrast Detection[END_REF] or attenuation correction [START_REF] Tang | Attenuation Correction in Ultrasound Contrast Agent Imaging: Elementary Theory and Preliminary Experimental Evaluation[END_REF]. Other imaging methods are based on post-processings with encoding which can enable to increase the contrast while ensuring a good axial resolution: the pulse inversion imaging [START_REF] Simpson | Pulse Inversion Doppler: A New Method for Detecting Nonlinear Echoes from Microbubble Contrast Agents[END_REF], power modulation [START_REF] Brock-Fisher | Means for Increasing Sensitivity in Non-linear Ultrasound Imaging Systems[END_REF], contrast pulse sequencing [START_REF] Phillips | Contrast-Agent Detection and Quantification[END_REF], pulse subtraction [START_REF] Borsboom | Pulse Subtraction Time Delay Imaging Method for Ultrasound Contrast Agent Detection[END_REF] and harmonic chirp imaging [START_REF] Borsboom | Harmonic Chirp Imaging Method for Ultrasound Contrast Agent[END_REF]. The one of the most commonly used is the pulse inversion imaging, that is reason why this study focused on this system in simulation.

For optimally using the pulse inversion imaging, the transmitted pulse must be correctly chosen. The problem is to find the optimal command x ⋆ (t) of the pulse inversion imaging system which provides the best contrast C:

x ⋆ (t) = arg max x(t) (C (x(t))) , (1)
Nowadays, although any method can solve satisfactorily and optimally this problem, several techniques have been shown that it was important to find the optimal command to maximize the contrast. The first solution is an analytic solution developped by Reddy and Szeri [START_REF] Reddy | Optimal Pulse-Inversion Imaging for Microsphere Contrast Agents[END_REF]. Unfortunately, the problem solution requires (i) inaccessible a priori knowledge of the medium and the transducer and (ii) hard solver implementation. The second solution carried on regardless the previous difficulties to transform the shape optimization in a suboptimal parametric optimization, e.g. the transmit frequency [START_REF] Ménigot | Transmit Frequency Optimization for Ultrasound Constrast Agent Response[END_REF]. Another original solution could be a method based on the Monte-Carlo method whose the main drawback is the large number of tests to reach the optimal command. For example, to find the optimal command which maximized the contrast, the random process needed more one million tests. However, the random process works without inaccessible a priori knowledge to find an optimal solution, that is reason why this study used the solution of this method.

In this paper, we proposed to find the properties of this optimal command in order to build an excitation controlled with a low number of parameters transforming the shape optimization problem into a parametric optimization problem. The first aim of this study was to analyze the optimal command of a pulse inversion imaging system. Secondly, we modelized the optimal command from analysis information to describe a new optimized excitation scheme.

OPTIMAL COMMAND ANALYSIS

Pulse Inversion Imaging System

The analysis was applied to the optimal command of the pulse inversion imaging system for a medical application, i.e. ultrasound contrast imaging. In this context, the optimal command maximized the contrast C described by the contrast-totissue ratio (CTR). It is defined as the ratio of the energy E b backscattered by the area of the medium perfused by ultrasound contrast agents and the energy E t backscattered by the area of the non-perfused medium [START_REF] Phukpattaranont | Post-Beamforming Second-Order Volterra Filter for Pulse-Echo Ultrasonic Imaging[END_REF].

The simulation model of the pulse inversion imaging system [START_REF] Simpson | Pulse Inversion Doppler: A New Method for Detecting Nonlinear Echoes from Microbubble Contrast Agents[END_REF] followed the same process as an in-vivo setup.

The optimal command x 1 (t) and the same signal in opposite phase x 2 (t) were generated digitally by Matlab (Mathworks, Natick, MA, USA). The transmitted power was equal to the power of a 400 kPa Gaussian-modulated sinusoidal pulse by adjusting the amplitude of the optimal command. They were filtered by the transfer function of the ultrasound transducer; centred at 3 MHz with a fractional bandwidth of 90% at -3 dB. Note that to take into account imperfections in our simulation, a white noise ε(t) was added to x 1 (t). The signal to noise ratio (SNR) was chosen at 50 dB.

The pulses were then sent in a contrast agent and a tissue model. Firstly, the free simulation program BUBBLESIM [START_REF] Hoff | Acoustic Characterization of Contrast Agents for Medical Ultrasound Imaging[END_REF] was used to calculate the oscillation and scattered echo for a contrast agent microbubble by digitally solving a modified version of the Rayleigh-Plesset equation. The ultrasound contrast agent simulated had properties of encapsulated microbubbles of SonoVue (Bracco Research SpA, Geneva, Switzerland). A 1 nm phospholipid monolayer [START_REF] Chetty | P1F-4 High Speed Optical Observations and Simulation Results of Lipid Based Microbubbles at Low Insonation Pressures[END_REF] with a shear modulus of 46 MPa [START_REF] Vos | Method for Microbubble Characterization Using Primary Radiation Force[END_REF] imprisons 2.5 µm ball [START_REF] Greis | Technology Overview: SonoVue (Bracco, Milan)[END_REF] of sulfur hexafluoride gas (SF 6 ) [START_REF] Greis | Technology Overview: SonoVue (Bracco, Milan)[END_REF]. Secondly, the tissue responses were simulated by fat globules with a density of 928 kg/m 3 [START_REF] Szabo | Diagnostic Ultrasound Imaging: Inside Out[END_REF]. The computation of their response was based on the Rayleigh backscattering [START_REF] Rayleigh | The Theory of Sound[END_REF] for a small fat ball of 10 µm; this size was chosen to approximate the small size of fat cells.

The echo y 1 (t) of the pulse x 1 (t) and the echo y 2 (t)of the pulse x 2 (t) were filtered by the transfer function of the same ultrasound transducer. The sum z(t) of the two echoes y 1 (t) and y 2 (t) formed a radiofrequency line of the image and extract the even harmonic components. Finally, the CTR was measured on the sum z(t). The Fig. 1a shows the optimal command x 1 (t) of the pulse inversion imaging system after random optimization process. The optimal command was asymmetric. Firstly, the positive peak was greater than the negative peak. Secondly, the length of the first arch was different to the length of the second arch. The compression was thus more different to the dilatation for the pulse x 1 (t) and conversely for x 2 (t). Since the nonlinear behavior of the microbubble was sensitive to the phase, the even harmonic components of the microbubble response may be improved as well as the CTR. Note that in this case, the CTR reached 31.62 dB.

Temporal and Frequential Analysis

The Fig. 1b shows the spectrum of the optimal command x 1 (t). The spectrum revealed harmonic components, in particulary the fourth and the fifth harmonics, whereas the second harmonic was missing. These harmonics components must be responsible to the asymmetry shown in the Fig. 1a.

To summarize our analysis, the optimal command was nonlinear. This result is very important since it is the first time that it has been mentionned. The model of the optimal command must take into account frequential multicomponents by including harmonic components.

OPTIMAL COMMAND MODELLING

The aim of the model was to identify the properties of the optimal command by using parameters Ξ. The modelling minimized the mean square error (MSE) between the optimal command x 1 (t) and the synthetic signal x(t) (Fig. 2):

Ξ ⋆ = arg min Ξ (MSE) = arg min Ξ T t=0 [x 1 (t) -x(t)] 2 (2)
where Ξ ⋆ are the optimal parameters and T the length of the signals. Then the synthetic signal x(t) was sent to the pulse inversion imaging in order to verify the good performances of our model in particularly for the CTR.

Model Pulse Inversion

Imaging System CTR x(t) x(t) Fig. 2. Block diagram of the optimal command modelling.

From the previous analysis, the optimal command must be modelized by taking into account nonlinearities. The model parameters Ξ must expressed the harmonic components. Moreover, since the contrast agent behavior can have subharmonic components [START_REF] Forsberg | Subharmonic Imaging of Contrast Agents[END_REF], we proposed to add this properties by including half-whole harmonic components. The modelling signal x(t) could be written in a base of Gaussian-modulated sinusoidal pulse as follows:

x(t) = G(t) • M k=1 α 1,k cos (2πkf 0 t + θ 1,k ) + N k=1 α 2,k cos 2π k - 1 2 f 0 t + θ 2,k , (3)
where t is the time, G(t) the same Gaussian function used for the random signal, f 0 the optimal frequency, M the number of whole harmonic components, α 1,1 , . . . , α 1,M the whole harmonic amplitudes, θ 1,1 , . . . , θ 1,M the phases for whole harmonic components, N the number of half-whole harmonic components, α 2,1 , . . . , α 2,N the half-whole harmonic amplitudes and θ 2,1 , . . . , θ 2,N the phases for half-whole harmonic components. Consequently, the model order was written according M and N such as (M, N ). Note that in the case where N is equal to 0, the half-whole harmonic components α 2 and θ 2 were not taken into account.

The modelling required to seek the optimal parameters:

Ξ ⋆ = [f ⋆ 0 ,α ⋆ 1,1 , . . . , α ⋆ 1,M , α ⋆ 2,1 , . . . , α ⋆ 2,M , θ ⋆ 1,1 , . . . , θ ⋆ 1,M , θ ⋆ 2,1 , . . . , θ ⋆ 2,M ]. (4)
The optimization frequency was led by an iterative process. Indeed, it was not possible to write the optimization frequency in an algebraic expression unlike for the coefficients α and the phases θ. For each iteration i of the frequency optimization, the coefficients α and the phases θ was optimized by an algebraic process.

Amplitude and Phase Optimization

This step optimized the amplitudes and the phases for a frequency f 0 . In this case, the problem could be written in an algebraic expression by using the trigonometric identity cos (a + b) = cos a cos bsin a sin b:

x = Ψϑ, (5)
where the optimal command was

x T = [x(1), . . . , x(T )],
the amplitudes and phases were collected together such as:

ϑ T = [α 1,1 cos θ 1,1 , -α 1,1 sin θ 1,1 , . . . , α 1,M cos θ 1,M , -α 1,M sin θ 1,M , α 2,1 cos θ 2,1 , -α 2,1 sin θ 2,1 , . . . , α 2,N cos θ 2,N , -α 2,N sin θ 2,N ].
Finally, the base of Gaussian-modulated sinusoidal pulse were written on a matrix form:

Ψ T = (Ψ 1 , Ψ 2 , . . . , Ψ T ) ,
where

Ψ t = [G(t) cos (2πf 0 t) , G(t) • sin (2πf 0 t) , . . . , G(t) • cos (2πM f 0 t) , G(t) • sin (2πM f 0 t) , G(t) • cos (πf 0 t) , G(t) • sin (πf 0 t) , . . . , G(t) • cos (2π (N -1/2) f 0 t) , G(t) • sin (2π (N -1/2) f 0 t)]
Finally the coefficients was found by least squares method:

ϑ = (Ψ T Ψ) -1 Ψ T x (6)
Note here that a vector is in bold, a matrix was in bold and underlined.

Frequency Optimization

The frequency optimization was led by an iterative process, because it was not possible to write the problem on an algebraic form. The optimal frequency f ⋆ 0 was thus sought by a Newton-Raphson algorithm by minimizing the MSE such as:

f i+1 = f i - MSE(f i ) MSE ′ (f i ) , ( 7
)
where i is the iteration and MSE ′ (f i ) the derivative of the MSE when f 0 = f i . However, the analytic MSE was not accessible. The algorithm was thus presented in a discrete form [START_REF] Widrow | Adaptive Signal Processing[END_REF]:

f i+1 = f i - MSE(f i ) (f i -f i-1 ) MSE(f i ) -MSE(f i-1 ) (8)
Note that for each iteration i, there is the amplitude and phase optimization.

Results

Fig. 3 shows the MSE for different orders M and different orders N . For each MSE, the parameters Ξ were optimal. The MSE decreased when the order M and N increased. The optimal command could be approach by using harmonic and subharmonic components. More precisely, the case without subharmonic imaging (i.e. N = 0) did not enable to reach the minimum of MSE. This result confirmed our hypothesis on subharmonic components.

N = 0 N = 1 N = 2 N = 4 N = 6 N = 8 N = 10
Fig. 3. MSE according the order M of whole harmonic components and the order N of half-whole harmonic components. Fig. 4 shows the CTR obtained when the command was modelized with different orders M and different orders N . For each CTR, the parameters Ξ were optimal. The CTR increased when the order M and N increased. This result confirmed the previous result with the MSE. Moreover, when the model used only a linear signal (i.e. the model (1,0)), the CTR reached 30.3 dB. A linear pulse did not enable to maximize the CTR in the pulse inversion imaging system. The best solution was obtained for the model [START_REF] Simpson | Pulse Inversion Doppler: A New Method for Detecting Nonlinear Echoes from Microbubble Contrast Agents[END_REF][START_REF] Blitz | Ultrasonic Methods of Nondestructive Testing[END_REF] where the CTR reached 31.58 dB close to the 31.62 dB obtained with the optimal command solved by Monte-Carlo method. As an illustration, the synthetic signal was compared to the optimal command in Fig. 1. The synthetic signal was close and the main error may come with the error of high harmonic components.

Fig. 5 shows the MSE during the iterative optimization of the frequency for the model [START_REF] Simpson | Pulse Inversion Doppler: A New Method for Detecting Nonlinear Echoes from Microbubble Contrast Agents[END_REF][START_REF] Blitz | Ultrasonic Methods of Nondestructive Testing[END_REF]. To prove the good performances, the empirical MSE was measured empirically for the frequency f 0 between 0.5 and 2 MHz. The MSE had an only minimum. This result confirmed the use of a local optimization algorithm like the Newton-Raphson algorithm. When the iterative optimization was applied, the MSE reached the minimum after around 70 iterations.

Fig. 6 shows the amplitudes α and the phases θ according to the order of the harmonic components for the model [START_REF] Simpson | Pulse Inversion Doppler: A New Method for Detecting Nonlinear Echoes from Microbubble Contrast Agents[END_REF][START_REF] Blitz | Ultrasonic Methods of Nondestructive Testing[END_REF]. Note that the optimal frequency was 0.77 MHz. The amplitude coefficients showed that the harmonic components were

N = 0 N = 1 N = 2 N = 4 N = 6 N = 8 N = 10
Fig. 4. CTR according the order M of whole harmonic components and the order N of half-whole harmonic components when the synthetic signal was sent in the pulse inversion imaging system. important and confirmed that the optimal command was nonlinear. Moreover, the phase was different for each component. Indeed, our model was able to take into account the phase of each components unlike in the case of a Volterra model.

DISCUSSION AND CONCLUSIONS

Contrast in pulse inversion imaging was optimized by a nonlinear command. The analysis of the optimal command led us to take into account a pulse with many components. More precisely, by using the knowledge of the microbubble behavior, the optimal command was modelized with harmonic and subharmonic components. However, to give more freedom, the resulting model was described by the frequency f 0 of the fundamental, the amplitude and the phase for each components. The advantage of our model was to take into account the phase for each components.

Our model showed us that it was necessary to include har- Fig. 6. Amplitudes coefficient α and phase θ for the case of the model [START_REF] Simpson | Pulse Inversion Doppler: A New Method for Detecting Nonlinear Echoes from Microbubble Contrast Agents[END_REF][START_REF] Blitz | Ultrasonic Methods of Nondestructive Testing[END_REF]. The optimal frequency was 0.77 MHZ monic components to reach the best contrast. Usually, a linear input signal was sent to the pulse inversion imaging system without reaching a high contrast. The model was the first step to understand the properties of the optimal command. The modelling signal enabled to reach closer performances of the optimal command.

To conclude, the model described the optimal command with some parameters. This description may help us to seek automatically the optimal command by transforming the shape optimization in a parameter optimization.

Fig. 1 .

 1 Fig. 1. (a) Optimal command of the pulse inversion imaging and the synthetic signal modelized with orders (8,2) and (b) their respective spectra.

Fig. 5 .

 5 Fig. 5. MSE during the iterative optimization of the frequency for the case of the model (8,2).


Chiraz Trabelsi

Samy Meftali

Jean-Luc Dekeyser

Semi-distributed control for FPGA-based reconfigurable systems

Due to the growing complexity of the applications targeted by FPGA-based reconfigurable systems, the control design of such systems is becoming one of the main hurdles faced by designers. In this paper, we propose a semi-distributed control model based on the separation between different control concerns (monitoring, decision-making and reconfiguration) and on formalism-oriented design in order to decrease the design complexity of the control, and facilitate design verification, reuse and scalability. This model is composed of distributed controllers handling each the self-adaptivity of a reconfigurable region of the system, and a coordinator that coordinates their reconfiguration decisions in order to respect global system constraints. Implementations on FPGA showed that our semi-distributed control model is more flexible, reusable and scalable than the centralized one, at the cost of a slight increase in required hardware resources.

I. INTRODUCTION

Thanks to their ability to be reconfigured an arbitrary number of times, FPGAs offer a high flexibility for modern embedded systems design. Partial Dynamic Reconfiguration (PDR), supported by several FPGAs, offers more flexibility by allowing portions of the FPGA to be reconfigured at runtime, in order to load different functionalities and adapt to runtime changes, while the rest remains operating [START_REF] Lysaght | Invited paper: Enhanced architectures, design methodologies and cad tools for dynamic reconfiguration of xilinx fpgas[END_REF]. The progress in FPGA technologies has enabled to embed a growing number of computing resources on one chip targeting increasingly sophisticated applications. However, this has led to a growing design complexity since design tools do not evolve at the same pace as hardware technology, resulting in a productivity gap. One of the most complex design tasks for reconfigurable SoC (RSoC) is the control design, since it has to handle different aspects related to runtime adaptivity. In this context, autonomy, modularity and formalism-oriented design can be viewed as an effective combination to deal with the growing RSoC design complexity. In this paper, we propose a semi-distributed control model for FPGA-based reconfigurable systems. This model divides the control problem between autonomous controllers handling each the self-adaptivity of a reconfigurable region of the system through three major tasks: monitoring, decision-making and reconfiguration using three different modules. In order to respect global system constraints and correlations between reconfigurable regions, the controllers' reconfiguration decisions are coordinated by a coordinator before launching reconfigurations. This twolayer decision-making is well adapted to single-FPGA, as well as multi-FPGA systems by implementing the coordinator on a master FPGA. The semi-distributed control is also well adapted to higher hierarchy control architectures by organizing the controllers into clusters coordinated by local coordinators and implemented either on the same FPGA or on different FP-GAs. The proposed semi-distributed decision-making model is based on the mode-automata formalism, which allows to abstract the control problem and gives clear control semantics decreasing design complexity. Such a splitting of the control problem offers a high design flexibility facilitating reuse and scalability.

Implementation results showed that our semi-distributed control model is more flexible, reusable and scalable than the centralized one, at the cost of a slight increase in required hardware resources. The rest of this paper is organized as follows. Section 2 gives a summary of the related works. Section 3 illustrates the proposed control model. In section 4, an example of the control implementation for a video processing application is presented. The last section concludes this paper and gives some future works.

II. RELATED WORKS

Distributed control for FPGA-based systems adaptivity has been proposed by several works. In [START_REF] Toscher | An adaptive fpga-based mechatronic control system supporting partial reconfiguration of controller functionalities[END_REF], a hardware controller was allocated to each reconfigurable region in order to control the tasks it runs throughout the application execution. However, reconfiguration decisions were only dependent on a task graph, and the correlation between regions was not treated. In [START_REF] Schuck | An interface for a decentralized 2d reconfiguration on xilinx virtex-fpgas for organic computing[END_REF], the distributed control was used for the reconfiguration of an organic computing system. However, this work focused more on the distributed access to the configuration port (ICAP), allowing to accelerate the reconfiguration process compared to the centralized access, without giving details about the used control components (monitoring, decisions, etc). In [START_REF] Gamrat | Aether: Self-adaptive networked entities: Autonomous computing elements for future pervasive applications and technologies[END_REF] [START_REF] Philippe | A self-reconfigurable fpgabased platform for prototyping future pervasive systems[END_REF], the authors propose a general model of networked entities, handling each computing, monitoring, control and communication. Nevertheless, the decision of reconfiguring such entities is done in a centralized way. Distributed control was also used for multi-FPGA systems, which have started to gain interest and have been investigated in several works. However, only one controller was used per FPGA [START_REF] Akoglu | Fpga based distributed self healing architecture for reusable systems[END_REF] [7], which implies a high design complexity of controllers, and no formalism was proposed to model the control system.

To master design complexity, formal control models are important since they enable shorter design cycle by improving coord_decision i (mode i j ) = refusal controller_decision i (monitoring_data i , loaded_mode i , coord_inprogress, coord_suggestion i , coord_decision i ) = (controller i_request , controller i_response , load_mode i ) * condition i (mode i j ) / send_decison(mode i j ) <=> [ condition i_request (mode i j )= true / controller i_request = mode i j or condition i_acceptance (mode i j )= true / controller i_response = acceptance or condition i_refusal (mode i j )= true / controller i_response = refusal ] condition i (mode i j ) / send_decision (mode i j ) coord_decision i (mode i j ) = authorization / load _mode i = mode i j loaded_mode i = mode i 1 loaded_mode i = mode i 2 loaded_mode i = mode i 2 coord_decision i (mode i j ) = refusal condition i (mode i j ) / send_decision (mode i j ) coord_decision i (mode i j ) = authorization / load _modei = modei j Mode i M i coord_decision i (mode i j ) = refusal condition i (mode i j ) / send_decision (mode i j ) coord_decision i (mode i j ) = authorization / load _modei = modei j Fig. 2: The controller mode-automaton design reuse as well as offering formal verification. Modeautomata formalism [START_REF] Maraninchi | Mode-automata: a new domain-specific construct for the development of safe critical systems[END_REF], on which is based the semi-distributed decision-making in our control model, is a simplified version of State charts [START_REF] Harel | Statecharts: A visual formalism for complex systems[END_REF] in syntax. It has been adopted as a specification language for control oriented reactive systems [START_REF] Borde | Mode-based reconfiguration of critical software component architectures[END_REF]. It has also been used to model control for FPGA-based reconfigurable systems [START_REF] Guillet | Modeling and formal control of partial dynamic reconfiguration[END_REF]. However, the proposed models targeted a centralized controller.

III. SEMI-DISTRIBUTED CONTROL MODEL

The main objective of the control model proposed in this paper is to solve design problems related to design complexity, verification, reuse and scalability. In order to achieve this objective, the proposed control model combines three main points: autonomy, modularity and formalism.

A. Autonomous modular distributed controllers for selfadaptivity

Each distributed controller is composed of three modules handling monitoring, reconfiguration decision-making and reconfiguration realization for a given reconfigurable region, as shows Figure 1. The monitoring module collects information from the behavior of the controlled region and other external events such as those sent by sensors, for example. The monitoring data is sent to the decision module, which makes reconfiguration decisions accordingly.

Each decision module makes local decisions about whether or not a reconfiguration of the controlled region is required. Due to the local vision of each controller, launching a reconfiguration of its controlled region without checking whether it can coexist with the current configurations of the other regions might result in problems such as safety problems or might not respect the control global constraints such as those related to performance, temperature, energy consumption, etc. Therefore, before launching a reconfiguration that it estimates required according to the monitoring data, the controller has to send a reconfiguration request to the coordinator. If the coordinator authorizes the requested reconfiguration, the decision module notifies the reconfiguration module in order to launch the required configuration.

The role of the reconfiguration module is to apply reconfiguration actions on the controlled region, which consist in loading the required configuration data (bitstream) in the reconfigurable region through a configuration port, such as ICAP for Xilinx FPGAs. After loading the required bitstream, the reconfiguration module notifies the decision module so that it updates its automaton's current mode.

B. Mode-oriented decision-making

The proposed decision-making model is based on the modeautomata formalism [START_REF] Maraninchi | Mode-automata: a new domain-specific construct for the development of safe critical systems[END_REF]. It is composed of the distributed controllers' automata and the coordinator's automaton. These automata communicate through coordination information whenever one of the controllers estimates that a reconfiguration of its controlled region is required. In this case, it sends a reconfiguration request to the coordinator and waits for its decision. If the request implies also the reconfiguration of other regions in order to respect the global system constraints, the coordinator sends reconfiguration suggestions to the concerned controllers. These controllers can accept or refuse those suggestions. After treating the controllers responses, the coordinator gives its decision, which can be either the authorization or the refusal of the requested reconfiguration. The Controller mode-automaton

The decision module of each controller is modeled by a mode-automaton. Figure 2 shows an example of this mode-automaton. Each mode Mode i j corresponds to a given configuration/mode of the controlled region i , where i ∈ [1..n], n is the number of the system's reconfigurable regions, j ∈ [1..M i ] and M i is the number of the modes/configurations of region i . Here, we assume that each reconfigurable region has a set of configuration possibilities predefined at designtime. Inputs and outputs of the mode-automaton are shown in its header. Inputs are monitoring data (monitoring data i ) sent by the monitoring module, a reconfiguration success notification (loaded mode i ) from the reconfiguration module, and coordination information from the coordinator. These information include a notification at the beginning/end of each coordination process (coord inprogress), reconfiguration suggestions (coord suggestion i ), and the coordinator decision at the end of a coordination process (coord decision i ).

Based on monitoring data, the current mode of the controlled region, and on coordination information (coord inprogress and coord decision i ), the controller makes a decision on whether a reconfiguration of the controlled region is required. If yes, it sends a reconfiguration request to the coordinator (controller i request ). During a coordination process, a controller might receive reconfiguration suggestions from the coordination to which it can respond (controller i response ) with acceptance or refusal depending on monitoring data. If the coordinator authorizes a reconfiguration to the controller (coord decision i (mode i j ) = authorization), it sends a reconfiguration command to the reconfiguration module (load mode i ), indicating the mode to be loaded. If the coordinator refuses a reconfiguration (coord decision i (mode i j ) = re f usal), it cannot be launched because it cannot coexist with the current configurations of the other regions, according to the global system constraints as it will be explained later.

The coordinator mode-automaton

The role of the coordinator is to coordinate the reconfiguration decisions of the controllers in order to guarantee that the system configuration respects the global system constraints. For this, a table containing the allowed system configurations is used, according to constraints of safety, performance, consumption, etc. This table is

Fig. 4: Global configurations table (GC)

determined at design time and can be filled manually by the designer or generated from high-level languages such as those based on contract mechanism [START_REF] Delaval | Contracts for modular discrete controller synthesis[END_REF]. We call this table GC (Global Configurations) shown in Figure 4, where each row corresponds to a global configuration, which is a combination of partial configurations of the reconfigurable regions. This table is defined as follows:

GC[i, k] = mode i j i.k ∀i ∈ [1..n], j i.k ∈ [1..M i ] and k ∈ [1.
.K] where, mode i j i.k is the mode of region i corresponding to the global configuration k; n is the number of reconfigurable regions and of controllers; K is the number of the global configuration possibilities, and M i is the number of modes/configurations of region i .

The exchanges between the controllers and the coordinator are not continuous in time. They only happen when one of the controllers decides that a reconfiguration of its controlled region is required. This allows to reduce the impact of the communication latency inside the control model on the overall system performance. The coordination algorithm is executed using a three-mode automaton as shows Figure 3. The idle mode corresponds to a coordinator waiting for reconfiguration requests coming from controllers. The TreatRequests and TreatResponses modes correspond to a coordinator that is treating the controllers' reconfiguration requests and responses to reconfiguration suggestions, respectively.

The coordinator starts at the idle mode. Whenever it receives a reconfiguration request ({controller i request } {}), it sends a notification to the controllers indicating that a coordination is in progress (coord inprogress = true), so that they stop sending reconfiguration requests. It moves then to the TreatRequests mode. Due to its local vision of the system, a request sent by a controller concerns only its controlled region, which corresponds here to a cell of the GC table. Note that the number of requests received at the same time depends on the instants reconfiguration decisions are made by controllers, as well as on the communication type between the controllers and the coordinator (through a bus, point-to-point, etc). In this paper, we used a pointto-point communication as will be shown in the case study. This implementation has the advantage of accelerating the coordination process offering the possibility to receive more than one request or response from controllers at the same time. Other communication architectures are still possible here by modifying the communication part of the coordinator without modifying the coordination algorithm.

Once in the TreatRequests mode, the coordinator checks whether the configuration(s) requested by the controller(s) at a given time combined to the current configurations of the regions handled by other controllers exist as a global configuration possibility in the GC table. If no, it checks which other reconfigurations that, combined to the one requested, allow to obtain one or more global configurations that respect the global system constraints. Here, if more than one global configuration satisfies the requested reconfiguration(s), possibilities are ordered according to the control strategy/objective. In the present implementation of the coordinator, we order possibilities in a list according to the number of partial reconfigurations they require, and we give the highest priority to the global configuration that requires less partial reconfigurations in order to minimize reconfiguration time. Different algorithms can also be used here to order configuration possibilities.

In case the first possibility in the ordered list satisfies the requests and doesn't require reconfiguration of other regions (involve others = f alse), the coordinator ends the coordination process (coord inprogress = f alse) and sends directly its decision ( f inal decision = authorization) to the controllers requesting the reconfigurations as shows Figure 3. Otherwise, the coordination process is divided into steps. Each coordination step is related to a possibility of the ordered list. The coordinator begins with sending reconfiguration suggestions to the controllers whose regions have to be reconfigured in order to move to the first possibility. Then it goes to the TreatResponses mode.

If a coordination step ends with positive responses from all the concerned controllers, the coordination process ends with an authorization ( f inal decision = authorization). In this case, the coordinator notifies the controllers (coord inprogress = f alse) and sends its reconfiguration authorization to the controllers requesting the reconfigurations as well as the other concerned controllers, and goes back to the idle mode. Otherwise, the coordinator remains at the TreatResponses mode and considers the next possibility. The coordination ends with a refusal ( f inal decision = re f usal) if all the possibilities have been refused by the controllers. In this case, the coordinator notifies the controllers (coord inprogress = f alse) and sends a reconfiguration refusal to the controllers requesting the reconfigurations. Then it goes back to the idle mode.

Advantages compared to the centralized model

Thanks to the distribution of the control problem between controllers, the proposed control model provides a high design flexibility compared to the centralized control facilitating reuse and scalability. In the case of a centralized decision-making, the decision module of the centralized controller can be modeled by a mode-automaton, where each mode corresponds to a global configuration of the system (a combination of the configurations of the reconfigurable regions). Transitions from a mode to another depend thus on a global vision of the system, using monitoring data as well global constraints (the same as those used by the coordinator in the semi-distributed model). This makes the centralized decision module tightly dependent on the implemented system, which is an obstacle to design reuse. Indeed, when designers want to add other regions to a previous system design, the whole decision model has to be rewritten (both modes and transitions), because each mode has to take into account the new regions. On the other hand, with the semi-distributed decision-making model, adding new regions requires simply adding a controller for each new region. The monitoring and decision modules of the controllers can be easily reused since they depend only on the monitoring data related to the controlled region. The coordination algorithm doesn't change. It has only to increase the number of controllers to be coordinated, and to modify the global constraints checked by the coordinator. This is done simply by modifying the GC table.

IV. CASE STUDY

This case study explains the use of the semi-distributed control for a video scaling application, targeting a single-FPGA system. Then it evaluates its efficiency in terms of design complexity, reuse, scalability and resource overhead compared to the centralized model.

A. The application

The application consists of a classical downscaler composed of two main tasks: a horizontal filter and a vertical filter applied to a sequence of video frames. Each filter is composed of a repetition of an elementary task on a block of the frame. An elementary task of a filter is executed by a hardware accelerator in order to guarantee a high performance. Using data-parallelism, each task can be implemented using a number of hardware accelerators performing in parallel the same elementary task on different frame blocks, which allows to reduce execution time. In our case study, we assume that each hardware accelerator is implemented in a reconfigurable region in order to adapt to runtime changes as we will explain later. The variety of parallelism possibilities of the considered application allows to test the scalability of our control model by varying the number of reconfigurable regions and thus the number of controllers. Using similar accelerators to implement data-parallelism for each filter task allows to reuse the same controller for similar regions, reducing thus the design time of the control model.

In our case study, the objective of the control model is to adapt the downscaler application to changes in performance and power requirements. For this, we assume that both elementary tasks of the horizontal and vertical filters are implemented in three versions of hardware accelerators available in an IP (Intellectual Property) library, and different in terms of performance and power consumption. Switching these versions during runtime allows each reconfigurable region to have three different modes (HFilter mode j /V Filter mode j ), j ∈ [1, 2, 3]. Modes HFilter mode 1 and V Filter mode 1 are the modes giving the highest performance but also the highest consumption for the horizontal and vertical filters respectively. HFilter mode 3 and V Filter mode 3 are the least performing but the least consuming. Our semi-distributed control model allocates a controller to each region in order to control its behavior allowing to switch different modes depending on requirements in terms of performance and power consumption. The role of the coordinator is to verify that the global configuration of the system respects the constraints indicated in the GC table as we explained previously in section III-B, and this by coordinating the reconfigurable decisions made by controllers.

B. Hardware design of the semi-distributed control

Our control model is wholly designed in hardware in order to avoid the execution time overhead of the software implementation. This design follows the control model described in figure 1. The inputs of this model are performance and consumption information. The objective of the control in this case study is to make a trade-off between the performance and the consumption constraints. We define performance requirements, for both filters, as three performance levels given by the user, where level 1 corresponds to the highest performance. As for consumption requirements, we assume that a battery sensor is used in order to give the battery level at each clock cycle. This information is monitored by the monitoring modules of the distributed controllers in order to be taken into account for reconfiguration decisions.

Provided that all reconfigurable regions have three configuration possibilities, each controller uses a decision module modeled by a three-mode automaton. Figure 5 shows the mode-automaton of the controller related to the horizontal filter, through three different control aspects. The controller related to the vertical filter follows the same concepts. As we said previously, the decision-making of each controller depends on a local vision of the system, which decreases its design complexity. This case study shows how the local-vision decisions of the controllers can be coordinated in order to respect global system constraints. The controller's decisions (reconfiguration requests and responses to suggestions) are based on the following rules:

• No request is sent when a coordination process is in progress (coord inprogress = true) • If a request has been refused by the coordinator for mode j (re f used mode j = true), no request is sent for the same mode or it will be refused again. Moving to the requested mode is still possible, at a later coordination process, if the coordinator sends a suggestion to the controller related to the same mode and the coordination process ends with an authorization • Being at H/V Filter mode j1 , a controller decides that a reconfiguration to a less consuming mode H/V Filter mode j2 is required, only if the user requires a lower performance level, or the consumption constraints do not allow to stay at H/V Filter mode j1 , which is the case when the following condition is valid

AB/H j1 < a j1, j2 .FB/H 1 (1)
as shows Figure 5(a), where H j (V j for the vertical filter) is the energy consumption per cycle of the controlled region's mode H/V Filter mode j , AB is the available battery energy at a given clock cycle and FB is the energy of a full battery. This constraint allows to check whether the available energy is under a threshold (determined by a j1, j2 ) that allows to stay at H/V Filter mode j1 , taking as a reference the highest consumption (H 1 ). In Figure 5(a), a 1,2 = 75% and a 2,3 = 75%.75%, which give the thresholds to move from H/V Filter mode 1 to H/V Filter mode 2 and from H/V Filter mode 2 to H/V Filter mode 3 respectively. • In order to move from a H/V Filter mode j2 to a H/V Filter mode j1 that consumes more, it is necessary that the user requires a performance level that is higher than the previous one and that the consumption constraints allow to move to the target mode, which is the case when

AB/H j1 >= (a j1, j2 + b j2, j1 ).FB/H 1 (2)
Note that we add the term b j2, j1 in order to avoid that, once in H/V Filter mode j1 , the consumption constraints in (1) lead the controller to decide to go back to H/V Filter mode j2 so soon, which would lead to an infinite loop. b j2, j1 has to be well chosen in order to avoid this problem. In our case study, we take a b j2, j1 = 5% as shows Figure 5(a). • If the controller receives a reconfiguration suggestion from the coordinator it treats it as follows. If the suggestion requires to move to a less consuming mode, the controller accepts directly. Otherwise, the controller checks the consumption constraints in (2) in order to accept or refuse as shows Figure 5(b). The coordinator's automaton was implemented according to the description in Figure 3. After a reconfiguration is authorized by the coordinator, the decision modules of the concerned controllers notify the reconfiguration modules. Partial reconfigurations can then be launched either in a parallel or a sequential way. Parallel reconfigurations are only possible for systems having more than one configuration port (ICAP for Xilinx FPGAs), such as multi-FPGA systems but not single-FPGA systems because current FPGAs have only one ICAP. Therefore, in our single-FPGA system, the distributed reconfiguration model was implemented in a way that it realizes reconfigurations in a sequential manner. Each reconfiguration module contains a dedicated register indicating which mode is to be loaded in the controlled region. These registers are then read by a processor, which communicates with the ICAP port in order to load the required bitstreams in the reconfigurable regions. When a required configuration is loaded, the processor notifies the reconfiguration module. The reconfiguration module notifies then the decision module, which updates its current mode in the mode-automaton accordingly.

C. Design reusability and scalability

In order to evaluate the efficiency of our control model compared to the centralized one in terms of design reusability and scalability, we designed the semi-distributed and centralized control models for different numbers of controlled coord_suggestion=mode 2 / accept(mode 2 ) coord_suggestion=mode 2 and (AB / H2 >= ((75% . 75%) + 5% ) . FB / H1) / accept(mode 2 ) coord_suggestion=mode 1 and (AB / H1 >= (75% + 5%) . FB / H1) /accept(mode 1 ) coord_suggestion=mode 3 / accept(mode 3 ) coord_suggestion=mode 2 and (AB / H2 < ((75% . 75%) + 5% ) . FB / H1) / refuse(mode 2 ) HFilter_mode 1 coord_inprogress=false and refused_mode1= false and performance_level=1 and (AB / H1 >= (75% + 5%) . FB / H1) / request(mode1) coord_inprogress=false and refused_mode3 = false and performance_level=3 or (AB / H2 < 75% . 75% . FB / H1) / request(mode3) coord_inprogress=false and refused_mode2 = false and performance_level=2 or (AB / H1 < 75% . FB / H1) / request(mode2) coord_inprogress=false and refused_mode2 = false and performance_level=2 and (AB / H2 >= ((75% . 75%) + 5% ) . FB / H1) / request(mode2) Fig. 5: Mode-automaton of the HFilter's controller regions (up to n = 10 regions, where n/2 regions implement the horizontal filter and the rest the vertical filter). We started the semi-distributed model design with one controller for each type of filter. Later, we reused these controllers to compose bigger control models. For the coordination scalability, we only modified the number of coordinated controllers given as parameter to the coordinator, as well as the GC table.

The splitting of the control problem between the controllers and the coordinator allowed us to test them separately, which facilitated significantly the design phase. On the other hand, adapting the centralized controller to different numbers of regions was more complicated. The centralized controllers were implemented using one mode-automaton as explained previously. The controller was rewritten each time to adapt to the system implementation, which led to longer design phases.

D. The semi-distributed control through a simulation scenario

Our semi-distributed control model was simulated using ISE 12.4 of Xilinx for different numbers of controllers. In order to explain more the evolution of the semi-distributed decision making at runtime, we will consider a simulation scenario for a control model with 4 controllers and a coordinator. The first two controllers control regions HFilter 1 and HFilter 2 , which implement the horizontal filter. The two others control regions V Filter 1 and V Filter 2 , which implement the vertical filter. In this case study, we suppose that global systems constraints require that all the regions have to implement the same mode number as shows Table I. This choice allows to test both acceptance and refusal in coordination processes by restricting global configuration possibilities. The inputs of the control model are the available battery signal sent by the battery sensor, and the processor commands. These commands allow to send the user required performance level, read reconfiguration registers of the reconfiguration modules and notify them at the end of the reconfigurations. These inputs were simulated using VHDL processes. Here, we suppose that the processor reads the reconfiguration registers after each frame downscaling. Table II represents the characteristics of the simulated system for the studied scenario, in terms of performance (frame/s) and power consumption. These values are used to determine the energy consumption per cycle of the controlled regions, the decrementation step of the battery, and the instants the processor reads the reconfiguration registers.

Figure 6 describes the simulation scenario represented by a chart, where the x axis describes instants when different events occur. These events are related to the current battery level, the performance level required by the user and the coordination processes. The y axis describes the available battery energy with a precision of the thresholds used by the different controllers to make reconfiguration decisions. The chart points are labeled with numbers corresponding to the global configuration at different instants of the simulation.

At t < t 1 , the current global configuration is number 1. The user required performance level is 1. At t = t 1 , the available battery energy (AB) reaches 75% of a fully-charged battery (FB). In this case, all controllers send reconfiguration requests to the coordinator asking to move to H/V Filter mode 2 as we have seen in Figure 5(a). The coordinator notifies the controllers that a coordination process is in progress. Then, it looks for the global configuration(s) that satisfy the received I. Since the current coordination process doesn't involve additional controllers to those that sent the requests, a reconfiguration authorization is sent to the controllers with a notification of the end of the coordination process. The decision modules of the controllers send reconfiguration commands to the reconfiguration modules asking them for loading H/V Filter mode 2 as it was shown in Figure 5(c). Then, when the processor launches its read commands, it finds that the controllers require to move to H/V Filter mode 2 . After loading the required partial configurations, the processor notifies the controllers (loaded(mode 2 ) = true in Figure 5(a)) so that they update the current modes of their modeautomata to be H/V Filter mode 2 . The whole process ends at t = t 1 + p 1 , by modifying the global configuration to 2. Note that p j corresponds to the coordination process number j including the time required to load partial bitstream if the reconfiguration has been authorized. At t = t 2 , the available battery is less than (75%.75%).FB.V 2/V 1. Controllers 3 and 4 send reconfiguration requests to the coordinator related to V Filter mode 3 . The coordinator sends then reconfiguration suggestions (moving to HFilter mode 3 ) to Controller 1 and 2. These controllers accept the suggestions according to Figure 5(b). The coordinator authorizes then the reconfiguration to all the controllers. The whole process ends at t = t 2 + p 2 by modifying the global configuration to 3. Fig. 6: Simulation scenario At t = t 3 , the battery is flat, so it moves to the charging mode. Since the regions implementing the horizontal filter consume less than the other regions, controllers 1 and 2 are the first to reach a battery threshold allowing their regions to move to mode 2 if the performance level required by the user is 2. For this, we simulate the change of the user performance level to 2 at t = t 4 . At t = t 5 , the battery threshold is reached for Controllers 1 and 2 (AB > (75%.75% + 5%).FB.H2/H1). In this case, controllers 1 and 2 send reconfiguration requests to the coordinator in order to move to HFilter mode 2 at t = t 5 . The coordinator suggests V Filter mode 2 to controllers 3 and 4. Since the available battery doesn't allow to move to V Filter mode 2 (AB < (75%.75% + 5%).FB.V 2/V 1), controllers 3 and 4 send a refusal to the coordinator. The coordination process ends at t = t 5 + p 3 with a reconfiguration refusal sent by the coordinator to controllers 1 and 2. Those controllers will not send requests to move to mode 2 anymore because they will be refused. They can wait until the coordinator sends them reconfiguration suggestions to move to mode 2 . At t = t 6 , there is enough battery to move to V Filter mode2. Controllers 3 and 4 send reconfiguration requests to the coordinator. The coordinator sends suggestions to controllers 1 and 2 to move to HFilter mode 2 . These controllers accept, and the whole process ends at t = t 6 + p 4 by modifying the global configuration to 2.

E. Resource and power overheads

After simulating both control models, we synthesized them for Virtex6-xc6vlx240t in order to estimate their overheads in terms of hardware resources. Figure 7 shows that the overhead of the distributed controllers is linear with the number of reconfigurable regions, because as we explained in section IV-C, the controllers are reused to move from a parallelism degree to another. The overhead of controllers is up to 0.57% of slice registers and 1.36% of slice LUTs, which is an acceptable overhead compared to the overhead of reconfigurable regions as presented in works such as [START_REF] Rummele-Werner | A fpga based fast runtime reconfigurable real-time multi-objecttracker[END_REF] and [START_REF] Huang | Scalable fpga-based architecture for dct computation using dynamic partial reconfiguration[END_REF]. The coordinator's overhead is also linear with the number of regions. The main reason to this is that the implemented coordinator uses a pointto-point communication allowing to handle many requests/responses from and to the controllers at the same time, which increases the required resources with the number of distributed controllers. Using different communication types decreases the overhead of the coordinator at a cost of longer coordination processes. However, here also there is an overhead of the communication architecture (overhead of a bus, a NoC, etc.). Up to 10 controlled regions the overhead of the implemented version of the coordinator is acceptable (0.035% of slice registers and 0.29% of slice LUTs).

Table III gives a comparison between the overhead of the semi-distributed and the centralized models. The semidistributed control model has an overhead that is almost twice the centralized model overhead for different numbers of regions. This difference of overhead is mainly due to the resources required for the coordination between controllers as well as to the higher modularity of the semi-distributed control. However, the overhead of the semi-distributed model (up to 2499 slice LUTs) is quite acceptable for large FPGAs such as Virtex-6 used here, and the even larger Virtex-7 [START_REF] Xilinx | 7 series fpgas overview, advance product specification[END_REF]. The power overhead of the semi-distributed model is also almost twice the centralized model overhead for different numbers of regions for a frequency of 100Mhz as shows Figure 8. Up to 10 regions this overhead does not exceed 5mW, which is considered as an acceptable consumption compared to the consumption of reconfigurable regions.

V. CONCLUSION

In this paper, we propose a semi-distributed control model aiming to decrease the complexity and enhance the reusability and scalability of the control design. This control model is well adapted to both single-FPGA and multi-FPGA systems. It is composed of distributed controllers controlling each the runtime adaptivity of a region of the system, and a coordinator for the controllers reconfiguration decisions. The semi-distributed decision-making model is based on the mode-automata formalism allowing to decrease its design complexity and facilitate its reuse. Implementation on FPGA showed that our decentralized control model is more flexible, reusable and scalable than the centralized one, at the cost of a slight increase in required hardware resources. As future works, we plan to integrate our control model in a whole reconfigurable system in order to evaluate more its efficiency. Our control model can also be used in a Model-Driven Engineering based SoC design flow in order to generate automatically its code, taking advantage of the high abstraction offered by the control formalism.

Fig. 1 :

 1 Fig. 1: Overview of the proposed control model

Fig. 3 :

 3 Fig. 3: The coordinator mode-automaton

  coord_response (mode 2 ) = refusal / refused_mode 2 = true coord_response (mode 1 ) = refusal / refused_mode 1 = true coord_response (mode 3 ) = refusal / refused_mode 3 = true coord_response (mode 2 ) = refusal / refused_mode 2 = true coord_response (mode 1 ) = authorization / load(mode 1 ) coord_response (mode 3 ) = authorization / load(mode 3 ) loaded (mode 2 ) = true loaded (mode 1 ) = true loaded (mode 2 ) = true loaded (mode 1 ) = true loaded (mode 3 ) = true loaded (mode 2 ) = true loaded (mode 3 ) = true loaded (mode 2 ) = true Controller's reconfiguration requests Treating the coordinator's suggestions Treating the coorinator's reponse coord_inprogress=false and refused_mode3 = false and performance_level=3 / request(mode3) coord_suggestion=mode 3 / accept(mode 3 ) coord_suggestion=mode 1 and (AB / H1 < (75% + 5%) . FB / H1) / refuse(mode1) coord_suggestion=mode 2 and (AB / H1 < (75% + 5%) . FB / H1) )/ refuse(mode 1 ) coord_suggestion=mode 1 and (AB / H1 >= (75% + 5%) . FB / H1) ) / accept(mode 1 ) coord_response (mode 3 ) = refusal / refused_mode 3 = true coord_response (mode 1 ) = refusal / refused_mode 1 = true coord_inprogress=false and refused_mode1= false and performance_level=1 and (AB / H1 >= (75% + 5%) . FB / H1)

1

 1 HFilter mode1 HFilter mode2 HFilter mode3Region 2 HFilter mode1 HFilter mode2 HFilter mode3 Region 3 V Filter mode1 V Filter mode2 V Filter mode3 Region 4 V Filter mode1 V Filter mode2 V Filter mode3

Fig. 7 :Fig. 8 :

 78 Fig. 7: Resource overhead variation of the semi-distributed model with the number of controlled regions

TABLE I :

 I GC table for the 4-region system

	Global configuration	1	2	3
	Consumption of H/VFilter (mW) 60/70 40/50 20/30
	Performance (frames/s)	10	8	5

TABLE II :

 II Power consumption and performance for different configurations of the 4-region system requests. Here, only one global configuration satisfies the requests, which corresponds to column 2 of Table

TABLE III :

 III Synthesis details of the semi-distributed and centralized control models


Richard Michel

Valentina Peschetola

Baptiste Bedessem

Jocelyn Etienne

Davide Ambrosi

Alain Duperray

Claude Verdier

A Duperray#

Keywords: Traction forces, regularization, migration, displacement field

Inverse problems for the determination of traction forces by cells on a substrate: a comparison of two methods 1 Introduction

Traction forces exerted by cells on soft elastic substrates are important for characterizing the types of mechanisms used for cell migration. Classical tools for the determination of traction forces include the knowledge of the displacement field thanks to fluorescent beads embedded into the substrate [START_REF] Dembo | Stresses at the cellto-substrate interface during locomotion of fibroblasts[END_REF]. Then, from the discrete beads displacements, an inverse problem is solved to obtain the stress field. Two currently used methods in the literature are the well-known Fourier Transform Traction Cytometry (FTTC) method [START_REF] Butler | Traction fields, moments, and strain energy that cells exert on their surroundings[END_REF] and the adjoint method (AM) [START_REF]Cellular traction as an inverse problem[END_REF][START_REF] Duperray | Traction patterns of tumor cells[END_REF], which are compared here.

A real case is presented where the displacement field is known from cancer cell migration study [START_REF] Peschetola | Traction forces exerted by cancer cells migrating on gels[END_REF].

The two methods allow the recovery of the traction stresses and their results are compared. Similar results are seen as long as an adequate projection technique is used (zero force imposed outside the cell). It is found that the AM allows a finer resolution of the traction forces, in particular at the cell edge. This is a strong incentive to use this method for the investigation of cancer cell migration on soft substrates [START_REF] Peschetola | Traction forces exerted by cancer cells migrating on gels[END_REF].

Methods

Experiments

The experimental methods have been described previously [START_REF] Dembo | Stresses at the cellto-substrate interface during locomotion of fibroblasts[END_REF][START_REF] Duperray | Traction patterns of tumor cells[END_REF]: substrates are gels, made of Polyacrylamide and bis-acrylamide in water possessing known elastic properties (E=10 kPa, as measured by indentation with an Atomic Force Microscope, using ν=0.5) which give the Lamé coefficients. Gels are functionalized using sulfosanpah and collagen, following a classical protocol [START_REF] Dembo | Stresses at the cellto-substrate interface during locomotion of fibroblasts[END_REF]. Fluorescent beads (0.2 µm) are embedded into the gel. Cells (cancer cell line, RT112 from invasive bladder cancer) are seeded on the gels and left overnight to spread. Experiments require images from cells (green fluorescence using actin-GFP transfected RT112 cells) and red fluorescent images of beads at the same time. Finally the initial position of beads is determined by detaching cells at the end of the experiment (using distilled water). Displacements are obtained by taking the difference between the present and initial position.

Adjoint method (AM)

The AM [START_REF]Cellular traction as an inverse problem[END_REF][START_REF] Duperray | Traction patterns of tumor cells[END_REF] formulates the inverse problem as a constrained minimization of the distance ||u-u 0 || between the measured displacements u 0 and predicted ones u under penalization of traction stress magnitude ||T|| (Tikhonov regularization).

The optimal solution gives the displacement and the stress field T simultaneously and is characterized as the solution of a coupled system of two Lamé's Partial Differential Equations (PDEs) [START_REF]Cellular traction as an inverse problem[END_REF][START_REF] Duperray | Traction patterns of tumor cells[END_REF][START_REF] Peschetola | Traction forces exerted by cancer cells migrating on gels[END_REF]. The first one is the direct problem and the second is the adjoint problem. The PDEs are solved using finite elements method with piecewise linear basis functions (P 1 ) on an unstructured triangular mesh ('Triangle' software) to compute u and T. The AM does not need any approximations of the experimental displacement field since bead positions coincide with meshpoints; furthermore it insures zero traction forces outside the cell (mathematical constraint). The control of the stability of solutions is done by minimizing the Tikhonov functional ||u-u 0 || 2 +ε||T|| 2 where ε is the regularization parameter. This parameter is determined using the L-curve technique [START_REF] Peschetola | Traction forces exerted by cancer cells migrating on gels[END_REF], as well as a simultaneous inspection of the stress vector field (see Figure 1). Handling of the AM is not difficult and computations are fast.

Fourier Transform Traction Cytometry (FTTC)

The FTTC method [START_REF] Butler | Traction fields, moments, and strain energy that cells exert on their surroundings[END_REF][START_REF] Sabass | High resolution traction force microscopy based on experimental and computational advances[END_REF] defines the inverse problem as the expression in Fourier space of the *Corresponding author. Email: claude.verdier@ujf-grenoble.fr integral form of the Boussinesq-Cerruti solution of the elastic half-space. This method is easy to implement and leads to fast computations. It needs interpolating the experimental displacements on a given structured rectangular grid (piecewise constant functions P 0 ). This step introduces an additional error which increases the difficulties because of the inverse nature of the problem. Another problematic aspect of the FTTC method is that it does not insure that the stress field is zero around the cell. Therefore we include a projection technique insuring this condition. Finally we also use a Tikhonov regularization technique [START_REF] Peschetola | Traction forces exerted by cancer cells migrating on gels[END_REF][START_REF] Sabass | High resolution traction force microscopy based on experimental and computational advances[END_REF].

Results and Discussion

The results are presented below, for a cell migrating on a gel, during the phase where it pulls at the front to move to the lower left part in Fig. 1. Stress vectors are shown in Fig. 1, whereas stress iso-contours are depicted in Fig. 2, using AM and FTTC method. Clearly there is a qualitative agreement between the two methods; however we note discrepancies in finer details:

-slightly different locations of maximum stresses (Fig. 2, cell lower right part), -different vector directions (Fig. 1, cell lower right), -better resolution of AM method (filopods, Fig. 1a). Thus the AM seems to provide better results due to more accurate mesh and contour descriptions. Indeed, P 1 approximation used with AM (as compared to P 0 for FTTC) improves the accuracy, as seen with filopods or cell edges in Fig. 1. This is important since adhesion sites are precisely located at cell borders [START_REF] Peschetola | Traction forces exerted by cancer cells migrating on gels[END_REF].

Conclusions

The results show the advantage of the AM, although the FTTC method, with the improvement of a projection technique, yields acceptable results. The AM provides a better resolution, and is fast to simulate. In this respect it provides a suitable framework for the calculation of cell tractions.

Figure 1

 1 Comparison of stress vectors obtained using (a) AM (b) FTTC method

Figure 2

 2 Stress iso-contours obtained using (a) AM (b) FTTC method

Acknowledgments

This work was funded by the EC (MRTN-CT-2004-503661) and franco-italian University. Microscopy was performed at IAB microscopy facility. Equipment was funded by the ARC (France) and the Nanobio program.