Data-Flow

Top PDF Data-Flow:

Optimizing construction of scheduled data flow graph for on-line testability

Optimizing construction of scheduled data flow graph for on-line testability

2.2 Scheduling for Improved Testability in Behavioural Synthesis New strategies have appeared in the behavioural synthesis, to take into account testability at the same time as the surface and / or performance [10, 11, 12, 13]. In this way, testability problems can be avoided or resolved by the most appropriate decisions for the architecture definition. The scheduling technique is time constrained which minimizes the number of resources (operations) and the number of registers based on a cost function. This improves the life time of primary input and primary output variables, reduces the life times of intermediate variables and hence improves the controllability and observability [10]. The testability of the register transfer level (RTL) structure generated by this schedule is therefore improved. Particularly, in the context of on-line testability, each functional unit (FU) of a data path is tested at least once within their idle-time. A given scheduled data flow graph is utilized to estimate the number of FUs and their idle periods in which certain testing operations are scheduled [11]. Testing time is reduced by minimizing the number of types of operations assigned to each module needed to synthesize a given scheduled data flow graph (SDFG), and by creating sufficient idle time [12]. The time constrained scheduling and resource constrained scheduling take any behavioural description represented as a data flow graph as input and generate a data path composed of resources like modules, registers and multiplexers [13].
En savoir plus

10 En savoir plus

Formal verification of a synchronous data-flow compiler : from Signal to C

Formal verification of a synchronous data-flow compiler : from Signal to C

6.3.1 Definition of S DVG Graphs can be used to describe many structures in computer science: program control flows, communication processes, computer networks, pointer structure on the heap and many oth- ers. In fact, for most activities in software development, many types of visual notations have been introduced, including U ML , state diagrams, control flows graphs, block diagrams. These notations construct models that can be seen as graphs. This section intends to focus on graphs which represent expressions for computing the variable values in programs. We present basic definitions, including the notion of gated φ -function, and introduce a linear syntax presentation for terms represented as graphs. Finally, we provide the definition of our considered type of graph, synchronous data-flow value-graph. The interested readers can refer to [ 53 ] for more detailed discussion on term graphs and linear syntax presentation for graphs.
En savoir plus

195 En savoir plus

Assessing the Functional Feasibility of Variability-Intensive Data Flow-Oriented Systems

Assessing the Functional Feasibility of Variability-Intensive Data Flow-Oriented Systems

2.1 Case study The case study is focusing on functional validation of some in- strument clusters. By applying various data-flow image processing effects, such as blending, warping and scaling, an instrument cluster system improves driver experience with useful and high quality 2D/3D Human-Machine Interface (HMI). The embedded hardware platforms used to develop these systems are more and more highly configurable, but constrained in terms of architecture and capaci- ties. Furthermore, multiple graphic data-flows variants can meet the client HMI requirements, but they also depend on the plat- form architectures and capacities. We consider this case study as representative of variability-intensive data-flow oriented systems. Different forms of variability, from high-level data-flows to low- level platforms lead to a huge number of possible system solutions, which feasibility is extremely complex and tedious to predetermine early in the development process.
En savoir plus

11 En savoir plus

Translation Validation for Synchronous Data-Flow Specification in the SIGNAL Compiler

Translation Validation for Synchronous Data-Flow Specification in the SIGNAL Compiler

The Language Signal [ 3 , 7 ] is a synchronous data-flow language that allows the specification of multi-clocked systems. Signal handles unbounded sequences of typed values (x(t)) t∈N , called signals, denoted by x. Each signal is implicitly indexed by a logical clock indicating the set of instants at which the signal is present, noted Cx. At a given instant, a signal may be present where it holds a value, or absent where it holds no value (denoted by ⊥). Given two signals, they are synchronous iff they have the same clock. In Signal, a process (written P or Q) consists of the synchronous composition, noted |, of equations over signals x, y, z, written x := y op z or x := op(y, z), where op is an operator. Naturally, equations and processes are concurrent.
En savoir plus

16 En savoir plus

An experiment with reactive data-flow tasking in active robot vision

An experiment with reactive data-flow tasking in active robot vision

• Second, they are synchronous: the equations involve values of the different quantities at the same logical instant. Classical programming methods are not so well adapted in specifying and pro- gramming such algorithms; asynchronous imperative languages require the ex- plicit management of low level aspects of the implementation (like the sequencing of computations imposed by data dependencies), and of the temporal aspects (e.g., down-samplings on a flow of data, multi-rate parallel computations), for which there is no well-founded support or model. Therefore, we use the synchronous data flow language S IGNAL , providing the adequate high level of abstraction for declarative specification, as well as a coherent and powerful model of time. Visual Servoing Control. The control of the camera is performed in a control servo loop where a vision system is included as a specific sensor dedicated to a task. In order to present the kind of equations that are programmed, we describe a general and simple control law for the positioning with respect to a static object, as given in [11]:
En savoir plus

34 En savoir plus

Formal verification of automatically generated C-code from polychronous data-flow equations

Formal verification of automatically generated C-code from polychronous data-flow equations

Keywords—Formal verification, Translation validation, Vali- dated compiler, Code generator, Synchronous programs. I. I NTRODUCTION Adhering to the synchronous paradigm, synchronous data- flow languages such as L USTRE [10] or S IGNAL [8] have been introduced and successfully used to design and implement em- bedded software architectures and critical real-time systems. For critical application high-assurance systems, reliability in code generated from these tools is tantamount: generated code shall behave as prescribed by the semantics of the source spec- ification (e.g. program proofs, model checking, traceability and qualification, etc). However, and before code can be generated, the compilation of high-level, synchronous, specification is a complex process that involves many analysis and program transformation stages. Some transformations may introduce additional informations or constraints, to refine the meaning of the original specification and/or remove or specialize the behavior of the source specification, like static scheduling. Thus, and even if compliant with a ”five-nines” (99.999%) reliability, large-scale use of high-TRL compilers for large specifications may improbably yet not uncertainly yield bugs. One, nonetheless, expects the formally verified behavior of the source specification to be preserved in the code automatically generated from it and naturally requires it to be formally checked as well.
En savoir plus

10 En savoir plus

Translation Validation for Synchronous Data-flow Specification in the SIGNAL Compiler

Translation Validation for Synchronous Data-flow Specification in the SIGNAL Compiler

The present paper provides a verification framework to prove the value- equivalence of variables and applies this approach to the synchronous data-flow compiler Signal. With the simplicity of the graph normalization, we believe that translation validation of synchronous data-flow value-graph for the industrial compiler Signal is feasible and efficient. Moreover, the normalization process can always be extended by adding new rewrite rules. That makes the translation validation of Sdvg scalable and flexible.

23 En savoir plus

Application of Data Flow Computation to the Shaded Image Problem

Application of Data Flow Computation to the Shaded Image Problem

The Data Flow Machine would generate a set of streams where each stream is the sequence of intensity values for each pixel in a given column of the image array.. [r]

28 En savoir plus

Implementation of Turing machines with the Scufl data-flow language

Implementation of Turing machines with the Scufl data-flow language

ulate. Moreover, a direct consequence of this result is that it is not possible to determine whether a Scufl workflow will complete or not. Beyond those theoretical considerations, we pre- sented an example of a development of a complex work- flow exhibiting strong control requirements with a sim- ple data flow oriented language. It exemplifies the use of specific patterns (in particular sub-workflows and self-looping) to solve expressiveness problems such as the definition of global variables. Thus, in spite of its simplicity, Scufl seems to be sufficiently expressive to describe complex applications. Adopting more com- plex languages including a whole set of control con- struct does not seem to be mandatory.
En savoir plus

7 En savoir plus

Optimization of Data Flow Computations using Canonical TED Representation

Optimization of Data Flow Computations using Canonical TED Representation

DFG with constant multipliers; (c) TED after introducing shift variable L; (d) Final DFG with shifters, corresponding to the expression F = ((a + b) << 2 − b) << 1 − a. tion and resource binding. The right part of the figure shows the actual TDS optimization flow. It transforms the data flow graph extracted from the initial specification into an opti- mized DFG using a host of TED-based decomposition and DFG optimization techniques, and passes the modified DFG to a high-level synthesis tool. Currently, an academic syn- thesis tool, GAUT [12], is used for front-end parsing and for the final high level synthesis, but any of the existing HLS tools can be used for this purpose (provided that compatible format interfaces are available).
En savoir plus

9 En savoir plus

Data-flow Explicit Futures

Data-flow Explicit Futures

Abstract : A future is a place-holder for a value being computed, and we generally say that a future is resolved when the associated value is computed. In existing languages futures are either implicit, if there is no syntactic or typing distinction between futures and non-future values, or explicit when futures are typed by a parametric type and dedicated functions exist for manipulating futures. One contribution of this article is to advocate a new form of future, named data-flow explicit futures, with specific typing rules that do not use classical parametric types. The new futures allow at the same time code reuse and the possibility for recursive functions to return futures like with implicit futures, and let the programmer declare which values are futures and where synchronisation occurs, like with explicit futures. We prove that the obtained programming model is as expressive as implicit futures but exhibits a different behaviour compared to explicit futures. The second and main contribution of this article is an exhaustive overview and precise comparison of the semantics of futures in existing program- ming languages. We show that, when classifying future implementations, the most distinctive aspect is the nature of the synchronisation not the explicitness of the future declaration.
En savoir plus

43 En savoir plus

BPDF: Boolean Parametric Data Flow

BPDF: Boolean Parametric Data Flow

Project-Teams SPADES Research Report n° 8333 — July 2013 — 21 pages Abstract: Dataflow programming models are well-suited to program many-core streaming appli- cations. However, many streaming applications have a dynamic behavior. To capture this behavior, parametric dataflow models have been introduced over the years. Still, such models do not allow the topology of the dataflow graph to change at runtime, a feature that is also required to program modern streaming applications. To overcome these restrictions, we propose a new model of com- putation, the Boolean Parametric Data Flow (BPDF) model which combines integer parameters (to express dynamic rates) and boolean parameters (to express the activation and deactivation of communication channels). High dynamicity is provided by integer parameters which can change at each basic iteration and boolean parameters which can even change within the iteration. The major challenge with such dynamic models is to guarantee liveness and boundedness. We present static analyses which ensure statically the liveness and the boundedness of BDPF graphs. We also introduce a scheduling methodology to implement BPDF graphs on highly parallel plat- forms. Finally, we demonstrate our approach using a video decoder case study.
En savoir plus

25 En savoir plus

Modeling and scheduling embedded real-time systems using Synchronous Data Flow Graphs

Modeling and scheduling embedded real-time systems using Synchronous Data Flow Graphs

Chapter 8 Conclusion and Perspectives Conclusion In recent decades, electronic embedded systems have revolutionized our societies in daily lives. The increase in the application demands and the fast improvement in platform architectures led to more and more complex embedded systems. In order to ensure the optimal use of resources, several applications from different computing domains are simultaneously executed on the same platform. Advanced Driver Assistance Systems (ADAS) [117, 66] are typical examples of these applications. Their purpose is to assist drivers in making safety-related decisions, provide signals in possibly dangerous driving situations, and execute counteractive measures. These applications gather best-effort jobs (e.g. image processing for analyzing complex scenes) and critical real-time tasks (e.g. emergency braking). Therefore, this type of applications require a research effort in order to be efficiently modeled and executed. In this thesis, our study was focused on modeling and scheduling critical real-time systems using data flow formalisms.
En savoir plus

192 En savoir plus

Accelerated Data-Flow Analysis

Accelerated Data-Flow Analysis

Our contribution. In this paper, we extend acceleration techniques to data-flow analysis and we apply these ideas to interval analysis. Acceleration techniques for (concrete) reachability set computations may be equivalently formalized “se- mantically” in terms of control-flow path languages [LS05] or “syntactically” in terms of control-flow graph unfoldings [BFLS05]. We extend these concepts to the MFP solution in a generic data-flow analysis framework, and we establish several links between the resulting notions. It turns out that, for data-flow anal- ysis, the resulting “syntactic” notion, based on graph flattenings, is more general that the resulting “semantic” notion, based on restricted regular expressions. We then propose a generic flattening-based semi-algorithm for computing the MFP solution. This semi-algorithm may be viewed as a generic template for applying acceleration-based techniques to constraint solving.
En savoir plus

21 En savoir plus

Acceleration in Convex Data-Flow Analysis

Acceleration in Convex Data-Flow Analysis

Abstract. In abstract interpretation-based data-flow analysis, widening opera- tors are usually used in order to speed up the iterative computation of the mini- mum fix-point solution (MFP). However, the use of widenings may lead to loss of precision in the analysis. Acceleration is an alternative to widening that has mainly been developed for symbolic verification of infinite-state systems. In- tuitively, acceleration consists in computing the exact effect of some control- flow cycle in order to speed up reachability analysis. This paper investigates acceleration in convex data-flow analysis of systems with real-valued variables where guards are convex polyhedra and assignments are translations. In partic- ular, we present a simple and algorithmically efficient characterization of MFP- acceleration for cycles with a unique initial location. We also show that the MFP- solution is a computable algebraic polyhedron for systems with two variables.
En savoir plus

23 En savoir plus

Formal Verification of Synchronous Data-flow Program Transformations Toward Certified Compilers

Formal Verification of Synchronous Data-flow Program Transformations Toward Certified Compilers

The remainder of this paper is organized as follows. Sec- tion 2 introduces the Signal language. Section 3 presents the abstraction that represents the clock constraints in terms of first-order logic formulas. The definition and properties of SDGs are detailed in Section 4. In Section 5, we consider the definitions of correct transformation on clocks and SDGs which formally prove the conformance between the original specification and its compiled counterpart w.r.t the clock se- mantic and the data dependence. It also addresses the ap- plication of the verification process to the Signal compiler, and its integration into the Polychrony toolset [32]. Section 6 presents some related works, concludes our work and out- lines future directions.
En savoir plus

18 En savoir plus

Separating Control and Data Flow: Methodology and Automotive System Case Study

Separating Control and Data Flow: Methodology and Automotive System Case Study

The idea consists in introducing the concept of running modes into Scade models to facilitate the specification of the mainly regular systems and to give a more readable design methodolo[r]

36 En savoir plus

Constrained and phased scheduling of synchronous data flow graphs for StreamIt language

Constrained and phased scheduling of synchronous data flow graphs for StreamIt language

The following data has been collected: number of nodes, number of node executions per steady state, schedule size and buffer size for pseudo single appearance and [r]

109 En savoir plus

Tracking Data-Flow with Open Closure Types

Tracking Data-Flow with Open Closure Types

This paper introduces open closure types, that is, function types that are deco- rated with type contexts. They are used to track data-flow from the environment into the function closure. A simply-typed lambda calculus is used to study the pro- perties of the type theory of open closure types. A distinctive feature of this type theory is that an open closure type of a function can vary in different type contexts. To present an application of the type theory, it is shown that a type derivation es- tablishes a simple non-interference property in the sense of information-flow theory. A publicly available prototype implementation of the system can be used to expe- riment with type derivations for example programs.
En savoir plus

28 En savoir plus

Data flow models for fault-tolerant computation

Data flow models for fault-tolerant computation

Property 4-2: A rCq schema will always produce congruent histories at fault- free outputs in a bounded amount of time whenever all restoring buffers and associated time-o[r]

83 En savoir plus

Show all 9173 documents...