Results 1 - 10
of
194
Hardware-software co-design of embedded systems
- PROCEEDINGS OF THE IEEE
, 1994
"... This paper surveys the design of embedded computer systems, which use software running on programmable computers to im-plement system functions. Creating an embedded computer system which meets its performance, cost, and design time goals is a hardware-software co-design problewhe design of the hard ..."
Abstract
-
Cited by 145 (5 self)
- Add to MetaCart
This paper surveys the design of embedded computer systems, which use software running on programmable computers to im-plement system functions. Creating an embedded computer system which meets its performance, cost, and design time goals is a hardware-software co-design problewhe design of the hard-ware and software components influence each other. This paper emphasizes a historical approach to show the relationships be-tween well-understood design problems and the as-yet unsolved problems in co-design. We describe the relationship between hard-ware and sofhvare architecture in the early stages of embedded system design. We describe analysis techniques for hardware and software relevant to the architectural choices required for hard-ware-software co-design. We also describe design and synthesis techniques for co-design and related problems.
System-Level Power Optimization: Techniques and Tools
- ACM TRANSACTIONS ON DESIGN AUTOMATION OF ELECTRONIC SYSTEMS
, 2000
"... ..."
Background Memory Area Estimation for Multi-dimensional Signal Processing Systems
- IEEE Trans. on VLSI Systems
, 1995
"... Memory cost is responsible for a large amount of the chip and/or board area of customized video and image processing system realizations. In this paper, we present a novel technique -- founded on data-flow analysis -- which allows to address the problem of background memory size evaluation for a giv ..."
Abstract
-
Cited by 40 (17 self)
- Add to MetaCart
Memory cost is responsible for a large amount of the chip and/or board area of customized video and image processing system realizations. In this paper, we present a novel technique -- founded on data-flow analysis -- which allows to address the problem of background memory size evaluation for a given non-procedural algorithm specification, operating on multi-dimensional signals with affine indices. Most of the target applications are characterized by a huge number of signals, so a new polyhedral data-flow model operating on groups of scalar signals is proposed. These groups are obtained by a novel analytical partitioning technique, allowing to select a desired granularity, depending on the application complexity. The method incorporates a way to trade-off memory size with computational and controller complexity. 1 Introduction Speech, image and video processing applications involve a large amount of multi-dimensional signals which lead to large memory units. These result in significa...
High-Level Synthesis Techniques for Reducing the Activity of Functional Units
, 1995
"... Decisions taken at the earliest steps of the design process may have a significant impact on the characteristics of the final implementation. This paper illustrates how power consumption issues can be tackled during high-level synthesis (high-level transformations, scheduling and binding). Several t ..."
Abstract
-
Cited by 28 (1 self)
- Add to MetaCart
Decisions taken at the earliest steps of the design process may have a significant impact on the characteristics of the final implementation. This paper illustrates how power consumption issues can be tackled during high-level synthesis (high-level transformations, scheduling and binding). Several techniques pursuing low power are proposed and the potential benefits evaluated. The common idea behind these techniques is to reduce the activity of the functional units (e.g. adders, multipliers) by minimizing the changes of their input operands. Preliminary evaluations obtained from switch-level simulations show that significant improvements can be achieved. 1 Introduction Power consumption can be taken into account at different levels [5]: technological, topological, architectural and algorithmic level. High-level synthesis (HLS) comprises techniques at the architectural and algorithmic level. Traditionally, HLS has been applied to obtain small and fast designs. But little has been done ...
SHILPA: A High-Level Synthesis System for Self-Timed Circuits
- In Proc. International Conf. Computer-Aided Design (ICCAD
, 1992
"... SHILPA is system for the high-level synthesis of self-timed circuits. It takes behavioral descriptions in a process+functional language called hopCP and produces a netlist for the Actel FPGA, supported by the VIE Wlogic tools. hopCP descriptions are initially translated into an intermediate-form bas ..."
Abstract
-
Cited by 27 (4 self)
- Add to MetaCart
SHILPA is system for the high-level synthesis of self-timed circuits. It takes behavioral descriptions in a process+functional language called hopCP and produces a netlist for the Actel FPGA, supported by the VIE Wlogic tools. hopCP descriptions are initially translated into an intermediate-form based on hyper-graphs called HFG. SHILPA then applies action re-finement, which is a technique for transforming HFGs into asynchronous hardware by a series of graph-based transformation rules. Action refinement is character-ized by incremental resource allocation and control decomposition. The major contributions of the pro-posed work are: (i) the source language hopCP which is equipped with shared variables, broadcast channels, and barrier synchronization, that are constructs well suited for system-level hardware specification; (ti) use of flow analysis techniques to optimize resource alloca-tion, to implement guarded commands eficiently, and ensure that shared variables are used ‘safely ” (poten-tially concurrent reads and writes are detected); (iii) a self-timed macromodule libra y for Actel FPGA imple-mentation. 1
SpecSyn: An Environment Supporting the Specify-Explore-Refine Paradigm for Hardware/Software System Design
- IEEE Transactions on VLSI Systems
, 1998
"... System-level design issues are gaining increasing attention, as behavioral synthesis tools and methodologies mature. We present the SpecSyn system-level design environment, which supports the new specify-explore-refine (SER) design paradigm. This three-step approach to design includes precise specif ..."
Abstract
-
Cited by 26 (13 self)
- Add to MetaCart
System-level design issues are gaining increasing attention, as behavioral synthesis tools and methodologies mature. We present the SpecSyn system-level design environment, which supports the new specify-explore-refine (SER) design paradigm. This three-step approach to design includes precise specification of system functionality, rapid exploration of numerous systemlevel design options, and refinement of the specification into one reflecting the chosen option. A system-level design option consists of an allocation of system components, such as standard and custom processors, memories, and buses, and a partitioning of functionality among those components. After refinement, the functionality assigned to each component can then be synthesized to hardware or compiled to software. We describe the issues and approaches for each part of the SpecSyn environment. The new paradigm and environment are expected to lead to a more than ten times reduction in design time, and our experiments support...
Interface Optimization for Concurrent Systems under Timing Constraints
- IEEE Transactions on Very Large Scale Integration
, 1993
"... The scope of most high-level synthesis efforts to date has been at the level of a single behavioral model represented as a control/data-flow graph. The communication between concurrently executing processes and its requirements in terms of timing and resources have largely been neglected. This restr ..."
Abstract
-
Cited by 23 (1 self)
- Add to MetaCart
The scope of most high-level synthesis efforts to date has been at the level of a single behavioral model represented as a control/data-flow graph. The communication between concurrently executing processes and its requirements in terms of timing and resources have largely been neglected. This restriction limits the applicability of most existing approaches for complex system designs. This paper describes a methodology for the synthesis of interfaces in concurrent systems under detailed timing constraints. We model inter-process communication using blocking and nonblocking messages. We show how the relationship between messages over time can be abstracted as a constraint graph that can be extracted and used during synthesis. We describe a novel technique called interface matching that minimizes the interface cost by scheduling each process with respect to timing information of other processes communicating with it. By scheduling the completion of operations, some blocking communicatio...
Behavioral Synthesis Methodology for HDL-Based Specification and Validation
- In Proc. of the Design Automation Conference
, 1995
"... This paper describes a HDL synthesis based design methodology that supports user adoption of behavioral-level synthesis into normal design practices. The use of these techniques increases understanding of the HDL descriptions before synthesis, and makes the comparison of pre- and post-synthesis desi ..."
Abstract
-
Cited by 22 (1 self)
- Add to MetaCart
This paper describes a HDL synthesis based design methodology that supports user adoption of behavioral-level synthesis into normal design practices. The use of these techniques increases understanding of the HDL descriptions before synthesis, and makes the comparison of pre- and post-synthesis design behavior through simulation much more direct. This increases user confidence that the specification does what the user wants, i.e. that the synthesized design matches the specification in the ways that are important to the user. At the same time, the methodology gives the user a powerful set of tools to specify complex interface timing, while preserving a user's ability to delegate decision-making authority to software in those cases where the user does not wish to restrict the options available to the synthesis algorithms. 1.0 Overview This paper describes a synthesis methodology that uses high-level synthesis (HLS) of behavioral hardware-description language (HDL) descriptions. HLS h...
Incorporating Speculative Execution into Scheduling of Control-flow Intensive Behavioral Descriptions
"... Speculative execution refers to the execution of parts of a computation before the execution of the conditional operations that decide
..."
Abstract
-
Cited by 22 (2 self)
- Add to MetaCart
Speculative execution refers to the execution of parts of a computation before the execution of the conditional operations that decide

