4 research outputs found
Synthesis of Embedded Software using Dataflow Schedule Graphs
In the design and implementation of digital signal processing (DSP) systems,
dataflow is recognized as a natural model for specifying applications, and
dataflow enables useful model-based methodologies for analysis, synthesis, and
optimization of implementations. A wide range of embedded signal processing
applications can be designed efficiently using the high level abstractions that
are provided by dataflow programming models. In addition to their use in
parallelizing computations for faster execution, dataflow graphs have
additional advantages that stem from their modularity and formal foundation.
An important problem in the development of dataflow-based design tools is the
automated synthesis of software from dataflow representations.
In this thesis, we develop new software synthesis techniques for dataflow based
design and implementation of signal processing systems. An important task in
software synthesis from dataflow graphs is that of {\em scheduling}. Scheduling
refers to the assignment of actors to processing resources and the ordering of
actors that share the same resource. Scheduling typically involves very complex
design spaces, and has a significant impact on most relevant implementation
metrics, including latency, throughput, energy consumption, and memory
requirements. In this thesis, we integrate a model-based representation,
called the {\em dataflow schedule graph} ({\em DSG}), into the software
synthesis process. The DSG approach allows designers to model a schedule for a
dataflow graph as a separate dataflow graph, thereby providing a formal,
abstract (platform- and language-independent) representation for the schedule.
While we demonstrate this DSG-integrated software synthesis capability by
translating DSGs into OpenCL implementations, the use of a model-based schedule
representation makes the approach readily retargetable to other implementation
languages. We also investigate a number of optimization techniques to improve
the efficiency of software that is synthesized from DSGs.
Through experimental evaluation of the generated software, we demonstrate the
correctness and efficiency of our new techniques for dataflow-based
software synthesis and optimization
HIERARCHICAL MAPPING TECHNIQUES FOR SIGNAL PROCESSING SYSTEMS ON PARALLEL PLATFORMS
Dataflow models are widely used for expressing the functionality of digital signal processing (DSP) applications due to their useful features, such as providing formal mechanisms for description of application functionality, imposing minimal data-dependency constraints in specifications, and exposing task and data level parallelism effectively. Due to the increased complexity of dynamics in modern DSP applications, dataflow-based design methodologies require significant enhancements in modeling and scheduling techniques to provide for efficient and flexible handling of dynamic behavior. To address this problem, in this thesis, we propose an innovative framework for mode- and dynamic-parameter-based modeling and scheduling. We apply, in a systematically integrated way, the structured mode-based dataflow modeling capability of dynamic behavior together with the features of dynamic parameter reconfiguration and quasi-static scheduling.
Moreover, in our proposed framework, we present a new design method called parameterized multidimensional design hierarchy mapping (PMDHM), which is targeted to the flexible, multi-level reconfigurability, and intensive real-time processing requirements of emerging dynamic DSP systems. The proposed approach allows designers to systematically represent and transform multi-level specifications of signal processing applications from a common, dataflow-based application-level model. In addition, we propose a new technique for mapping optimization that helps designers derive efficient, platform-specific parameters for application-to-architecture mapping. These parameters help to maximize system performance on state-of-the-art parallel platforms for embedded signal processing.
To further enhance the scalability of our design representations and implementation techniques, we present a formal method for analysis and mapping of parameterized DSP flowgraph structures, called topological patterns, into efficient implementations. The approach handles an important class of parameterized schedule structures in a form that is intuitive for representation and efficient for implementation.
We demonstrate our methods with case studies in the fields of wireless communication and computer vision. Experimental results from these case studies show that our approaches can be used to derive optimized implementations on parallel platforms, and enhance trade-off analysis during design space exploration. Furthermore, their basis in formal modeling and analysis techniques promotes the applicability of our proposed approaches to diverse signal processing applications and architectures
A Model-based Schedule Representation for Heterogeneous Mapping of Dataflow Graphs
Abstract—Dataflow-based application specifications are widely used in model-based design methodologies for signal processing systems. In this paper, we develop a new model called the dataflow schedule graph (DSG) for representing a broad class of dataflow graph schedules. The DSG provides a graphical representation of schedules based on dataflow semantics. In conventional approaches, applications are represented using dataflow graphs, whereas schedules for the graphs are represented using specialized notations, such as various kinds of sequences or looping constructs. In contrast, the DSG approach employs dataflow graphs for representing both application models and schedules that are derived from them. Our DSG approach provides a precise, formal framework for unambiguously representing, analyzing, manipulating, and interchanging schedules. We develop detailed formulations of the DSG representation, and present examples and experimental results that demonstrate the utility of DSGs in the context of heterogeneous signal processing system design. Keywords-dataflow graphs, heterogeneous computing, models of computation, scheduling. I