Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Krzysztof Kuchcinski

dblp:78/1283 · DBLP profile ↗
← Back
45ranked-venue papers
10as first author
0since 2021 · last 2015
0000-0001-8941-459XORCID · reported

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 43 · 10 first-authorSoftware engineering, systems software and programming languages · 4 · 1 first-authorArtificial intelligence and machine learning · 1Graphics, computer vision, multimedia, augmented reality and games · 1Applied, interdisciplinary, general and emerging computing · 1

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
3 papers
Parallel and multicore computing · 44% Electronic design automation · 34% Reconfigurable computing and FPGAs · 21%

Topics — the 8 heaviest of 8, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Electronic design automation
high-level synthesis
0.122003
Partial task assignment of task graphs under heterogeneous resource constraints · DAC 2003
Automated transformation of algorithms into register-transfer level implementations · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1994
Parallel and multicore computing › parallel scheduling
communication scheduling
0.012004
A constraints programming approach to communication scheduling on SoPC architectures · FPGA 2004
Reconfigurable computing and FPGAs
FPGA SoC
0.012004
A constraints programming approach to communication scheduling on SoPC architectures · FPGA 2004
Parallel and multicore computing
task allocation
0.012003
Partial task assignment of task graphs under heterogeneous resource constraints · DAC 2003
Electronic design automation › high-level synthesis
scheduling
0.012003
Partial task assignment of task graphs under heterogeneous resource constraints · DAC 2003
Parallel and multicore computing › task scheduling
task graph scheduling
0.012003
Partial task assignment of task graphs under heterogeneous resource constraints · DAC 2003
Electronic design automation › high-level synthesis
register-transfer level synthesis
0.011994
Automated transformation of algorithms into register-transfer level implementations · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1994
Performance modeling and evaluation › petri net modeling
timed petri net
0.011994
Automated transformation of algorithms into register-transfer level implementations · IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 1994

Methods — techniques the papers use, named apart from their topics

simulated annealing · 0.0constraint programming · 0.0clustering · 0.0iterative transformation · 0.0correctness-preserving transformation · 0.0
YearPublicationVenuePosition
2015 Application-set driven exploration for custom processor architectures
abstract
Custom architectures are often adopted as more efficient alternatives to general purpose processors in terms of performance and power. However, the design of such architectures requires experts both in hardware and the application domain. In this paper we propose a method for speeding up the design space exploration. Our method, based on Pareto points, identifies sets of solutions in terms of scalar units and vector units of certain length, fulfilling the throughput constraints for each application in a given set. Architectures can then be selected by combining these solutions, as starting points for a more thorough, model-based evaluation.
Mehmet Ali Arslan, Flavius Gruian, Krzysztof Kuchcinski
ASAP3
2013 Instruction Selection and Scheduling for DSP Kernels on Custom Architectures
abstract
As custom architectures become more and more common for DSP applications, instruction selection and scheduling for such applications and architectures become important topics. In this paper, we explore the effects of defining the problem of finding an optimal instruction selection and scheduling as a constraint satisfaction problem (CSP). We incorporate methods based on sub-graph isomorphism and global constraints designed for scheduling. We experiment using several media applications on a custom architecture, a generic VLIW architecture and a RISC architecture, all three with several cores. Our results show that defining the problem with constraints gives flexibility in modeling, while state-of-the-art constraint solvers enable optimal solutions for large problems, hinting a new method for code generation.
Mehmet Ali Arslan, Krzysztof Kuchcinski
DSD2
2012 Constraint Programming Approach to Reconfigurable Processor Extension Generation and Application Compilation
abstract
In this article, we present a constraint programming approach for solving hard design problems present when automatically designing specialized processor extensions. Specifically, we discuss our approach for automatic selection and synthesis of processor extensions as well as efficient application compilation for these newly generated extensions. The discussed approach is implemented in our integrated design framework, IFPEC , built using Constraint Programming (CP). In our framework, custom instructions, implemented as processor extensions, are defined as computational patterns and represented as graphs. This, along with the graph representation of an application, provides a way to use our CP framework equipped with subgraph isomorphism and connected component constraints for identification of processor extensions as well as their selection, application scheduling, binding, and routing. All design steps assume architectures composed of runtime reconfigurable cells, implementing selected extensions, tightly connected to a processor. An advantage of our approach is the possibility of combining different heterogeneous constraints to represent and solve all our design problems. Moreover, the flexibility and expressiveness of the CP framework makes it possible to solve simultaneously extension selection, application scheduling, and binding and improve the quality of the generated results. The article is largely illustrated with experimental results.
Kevin J. M. Martin, Christophe Wolinski, Krzysztof Kuchcinski, Antoine Floch, François Charot
ACM Trans. Reconfigurable Technol. Syst.3
2010 Combined scheduling and instruction selection for processors with reconfigurable cell fabric
abstract
This paper presents a new method, based on constraint programming, for modeling and solving scheduling and instruction selection for processors extended with a functionally reconfigurable cell fabric. Our method models parallel reconfigurable architectures, the selection of application specific computational patterns and application scheduling. It takes also into account architectural constraints. The method provides efficient design space exploration that selects existing processor instructions and new instructions implementing computational patterns on a reconfigurable cell fabric. All instructions are scheduled enabling parallel instruction execution. Our method can be used directly for VLIW architectures by relaxing constraints concerning cell-processor data transfers. MediaBench and MiBench benchmarks have been used for evaluation and we obtained optimal results in many cases.
Antoine Floch, Christophe Wolinski, Krzysztof Kuchcinski
ASAP3
2009 Constraint-Driven Instructions Selection and Application Scheduling in the DURASE system
abstract
This paper presents a new constraint-driven method for computational pattern selection, mapping and application scheduling using reconfigurable processor extensions. The presented method is a part of DURASE system (Generic Environment for Design and Utilization of Reconfigurable Application-Specific Processors Extensions). The selected processor extensions are implemented as specialized processor instructions. They correspond to computational patterns identified as most frequently occurring or other interesting patterns in the application graph. Our methods can handle both time-constrained and resource-constrained scheduling. Experimental results obtained for the Media-Bench and Mi-Bench benchmarks show that the presented method ensures high speed-ups in application execution.
Kevin J. M. Martin, Christophe Wolinski, Krzysztof Kuchcinski, Antoine Floch, François Charot
ASAP3
2009 Architecture-Driven Synthesis of Reconfigurable Cells
abstract
In this paper, we present a novel method for merging sets of computational patterns into a reconfigurable cell respecting design constraints and optimizing specific design aspects. Each cell can then be used in a run-time reconfigurable processor extension. Our method uses constraint programming to define the pattern merging problem and therefore can easily include design constraints and optimize different design aspects. Experiments carried out on Media-Bench test suite indicate 50% average reduction of cell area without increasing critical path.
Christophe Wolinski, Krzysztof Kuchcinski, Erwan Raffin, François Charot
DSD2
2009 Automatic design of application-specific reconfigurable processor extensions with UPaK synthesis kernel
abstract
This article presents a new tool for automatic design of application-specific reconfigurable processor extensions based on UPaK (Abstract U nified Pa tterns Based Synthesis K ernel for Hardware and Software Systems). We introduce a complete design flow that identifies new instructions, selects specific instructions and schedules a considered application on the newly created reconfigurable architecture. The identified extensions are implemented as specialized sequential or parallel instructions. These instructions are executed on a reconfigurable unit implementing all merged patterns. Our method uses specially developed algorithms for subgraph isomorphism that are implemented as graph matching constraints. These constraints together with separate algorithms are able to efficiently identify computational patterns and carry out application mapping and scheduling. Our methods can handle both time-constrained and resource-constrained scheduling. Experimental results show that the presented method provides high coverage of application graphs with small number of patterns and ensures high application execution speedup both for sequential and parallel application execution with reconfigurable processor extensions implementing selected patterns.
Christophe Wolinski, Krzysztof Kuchcinski, Erwan Raffin
ACM Trans. Design Autom. Electr. Syst.2
2008 Load-balancing methods for parallel and distributed constraint solving
abstract
Program parallelization and distribution becomes increasingly important when new multi-core architectures and cheaper cluster technology provide ways to improve performance. Using declarative languages, such as constraint programming, can make the transition to parallelism easier for the programmer. In this paper, we address parallel and distributed search in constraint programming (CP) by proposing several load-balancing methods. We show how these methods improve the execution-time scalability of constraint programs. Scalability is the greatest challenge of parallelism and it is particularly an issue in constraint programming, where load-balancing is difficult. We address this problem by proposing CP-specific load-balancing methods and evaluating them on a cluster by using benchmark problems. Our experimental results show that the methods behave differently well depending on the type of problem and the type of search. This gives the programmer the opportunity to optimize the performance for a particular problem.
Carl Christian Rolf, Krzysztof Kuchcinski
CLUSTER2
2008 Automatic Selection of Application-Specific Reconfigurable Processor Extensions
abstract
This paper presents a new method for automatic selection of application-specific processor extensions and shows how applications are scheduled on these new reconfigurable architectures. The extensions are implemented as specialized sequential or parallel instructions. They correspond to identified most frequently occurring computational patterns or other interesting patterns and are finally selected during mapping and scheduling. Our methods can handle both time-constrained and resource-constrained scheduling. Experimental results show that the presented method provides high coverage of application graphs with small number of patterns and ensures high application execution speed-up both for sequential and parallel application execution with processor extensions implementing selected patterns.
Christophe Wolinski, Krzysztof Kuchcinski
DATE2
2008 Communication Network Reconfiguration Overhead Optimization in Programmable Processor Array Architectures
abstract
In this paper, we introduce a constraint programming-based approach for optimization of routing and reconfiguration overhead for a class of reconfigurable processor array architectures called weakly programmable. For a given set of different algorithms the execution of which is supposed to be switched upon request at run-time, we provide static solutions for optimal routing of data between processors as well as for minimization of the routing area and the reconfiguration overhead when switching between the execution of these algorithms. In fact, applying the switching can be accomplished in just a few clock cycles. Our experiments confirm that our method can minimize routing overhead and reduce reconfiguration time significantly.
Christophe Wolinski, Krzysztof Kuchcinski, Jürgen Teich, Frank Hannig
DSD2
2008 Optimization of Routing and Reconfiguration Overhead in Programmable Processor Array Architectures
abstract
In this paper, we present a constraint programming-based approach for optimization of routing and reconfiguration overhead for a class of reconfigurable processor array architectures called weakly programmable. For a given set of different algorithms the execution of which is supposed to be switched upon request at run-time, we provide static solutions for optimal routing of data between processor elements as well as for minimization of the routing area and the reconfiguration overhead when switching between the execution of these algorithms. Our experiments confirm that our method can minimize routing overhead and reduce reconfiguration time significantly.
Christophe Wolinski, Krzysztof Kuchcinski, Jürgen Teich, Frank Hannig
FCCM2
2008 Area and reconfiguration time minimization of the communication network in regular 2D reconfigurable architectures
abstract
In this paper, we introduce a constraint programming-based approach for the optimization of area and of reconfiguration time for communication networks for a class of regular 2D reconfigurable processor array architectures. For a given set of different algorithms the execution of which is supposed to be switched upon request at run-time, we provide static solutions for the optimal routing of data between processors. Here, we support also multi-casting data transfers for the first time. The routing found by our method minimizes the area or the reconfiguration time of the communication network, when switching between the execution of these algorithms. In fact, when switching, the communication network reconfiguration can be executed in just a few clock cycles. Moreover the communication network area can be minimized significantly (62% in average).
Christophe Wolinski, Krzysztof Kuchcinski, Jürgen Teich, Frank Hannig
FPL2
2008 State-copying and Recomputation in Parallel Constraint Programming with Global Constraints
abstract
In this paper we discuss parallelization and distribution of problems modeled in a constraint programming (CP) framework. We focus on parallelization of depth-first search methods, since search is the most time-consuming task in CP. The current hardware development is moving towards multi-core processors and the cost of building distributed systems is shrinking. Hence, parallelization and distribution of constraint solvers is of increasing interest when trying to improve performance. One of the most important issues that arises in parallel computing is load-balancing, which requires a trade-off between processor load and communication. In this paper we present how reduced communication, at the cost of increased computation, can improve performance. Our experiments include global constraints, which are more powerful than binary constraints, but significantly more expensive to recompute in the average case. Our results show that recomputing data, rather than copying it, is sometimes faster even for problems that use global constraints. Given that copying is sometimes the better choice, we also present a method for combining copying and recomputation to create an even more powerful model of communication.
Carl Christian Rolf, Krzysztof Kuchcinski
PDP2
2007 Identification of Application Specific Instructions Based on Sub-Graph Isomorphism Constraints
abstract
This paper presents a new method for computational patterns identification that forms basis for application specific instruction selection. The new algorithm is radically different from previous proposed methods. It is based on graph isomorphism constraint and constraint programming that makes it very flexible and provides opportunity to mix graph isomorphism constraints, other constraints and heuristic search for patterns in one formal environment. This algorithm takes into account graph structure and frequency of occurrence of patterns in application graphs. We have extensively evaluated our algorithm on MediaBench benchmarks. The experimental results indicate very good performance of our algorithm. It provides very high coverage for most graphs with a small number of identified computational patterns in a short amount of time.
Christophe Wolinski, Krzysztof Kuchcinski
ASAP2
2007 Graph Matching Constraints for Synthesis with Complex Components
abstract
In this paper we present a new method for high-level synthesis that enhances design flexibility, specialization and performance primarily conceived for programmable hardware. New programmable hardware devices often provide fast dedicated components that perform complex computations. Arbitrary complex computations can be efficiently extracted from the CDFG using our new graph matching constraint to produce final implementations that better suit the design to the targeted architecture. Our algorithm also reduces possible syntactic variances detecting semantically equivalent structures in the graph. This new graph matching constraint was integrated in our own Constraint Programming solver engine together with other constraints to naturally model the heterogeneous features present in the synthesis problem. The use of complex functional modules is taken into account in the optimization process during binding and scheduling yielding significantly shorter schedules and gains in terms of area and performance. We demonstrate our technique on a variety of HLS benchmarks and show that efficient design space exploration can be accomplished using this technique.
Ana Fuentes Martinez, Krzysztof Kuchcinski
DSD2
2006 Performance Improvement for H.264 Video Encoding using ILP Embedded Processor
abstract
In this paper, we examine the impact of instruction level parallelism (ILP) on the full H.264 video encoding application and give quantitative performance measures of a superscalar architecture. Most research efforts have concentrated on the data intensive parts, such as kernels but these are taking less time from the entire execution as encoders are using new, more efficient algorithms. This important fact cannot be neglected since new video encoding standards have been proposed and the amount of other than data intensive computations has increased significantly. We observed significant improvement for the entire application when using superscalar architecture with out-of-order execution scheme. Tradeoffs in superscalar performance are also evaluated with combinations of measurements from simplescalar simulator
Ali R. Iranpour, Krzysztof Kuchcinski
DSD2
2005 Java to Hardware Compilation for non Data Flow Applications
abstract
Java has proven to be a powerful language for software development. In this paper we show that it is also suitable for hardware compilation, making it an attractive language for embedded system development. Our compilation technique, which is presented here, is based on separating different aspects of the program and use dedicated and specialised optimisations and code generators for each aspect. In this paper we focus on efficient implementation of random memory accesses, i.e. reference intensive tasks, such as graph traversal. We show that for these tasks the hardware generated by our compiler is up to 1.8 times faster than a software implementation. We also show how recursive algorithms can be mapped to hardware using our tool.
Per Andersson, Krzysztof Kuchcinski
DSD2
2005 A Constraints Programming Approach for Fabric Cell Synthesis
abstract
This paper presents a novel method to generate optimized architecture of hardware processes implemented on "system on a programmable chip" (SoPC). The hardware processes are the applications tailored "cells" in the processor-coupled polymorphous fabric (Ch. Wolinski et al., 2003, Ch. Wolinski et al., 2002) implemented on the reconfigurable SoPC platform. In order to obtain optimized high performance pipelined architecture each process implementing repetitive conditional behavior with possible inter-iteration dependencies is scheduled under hardware resource constraints using "fabric cell synthesis tool" (FAST). The scheduling problem is defined and solved using constraints programming approach. This approach makes it possible to obtain optimal solutions in terms of execution time and number of registers for a number of real cases. Our method is illustrated using a simple example and a part of the "CORDIC" application (S.F. Hsiao et al., 1991). The final design is implemented on a reconfigurable platform that shows feasibility of our approach. Optimal schedules are achieved for both discussed applications.
Christophe Wolinski, Krzysztof Kuchcinski
DSD2
2004 Time-Energy Design Space Exploration for Multi-Layer Memory Architectures
abstract
This paper presents an exploration algorithm which examines execution time and energy consumption of a given application, while considering a parameterized memory architecture. The input to our algorithm is an application given as an annotated task graph and a specification of a multi-layer memory architecture. The algorithm produces Pareto trade-off points representing different multi-objective execution options for the whole application. Different metrics are used to estimate parameters for application-level Pareto points obtained by merging all Pareto diagrams of the tasks composing the application. We estimate application execution time although the final scheduling is not yet known. The algorithm makes it possible to trade off the quality of the results and its runtime depending on the used metrics and the number of levels in the hierarchical composition of the tasks' Pareto points. We have evaluated our algorithm on a medical image processing application and randomly generated task graphs. We have shown that our algorithm can explore huge design space and obtain (near) optimal results in terms of Pareto diagram quality.
Radoslaw Szymanek, Francky Catthoor, Krzysztof Kuchcinski
DATE3
2004 Evaluation of SIMD Architecture Enhancement in Embedded Processors for MPEG-4
abstract
This paper presents our studies on the effects of using SIMD processor extension developed to enhance the processor performance for streaming applications. Our approach was evaluated using MPEG-4 encoding application as benchmark. Although MPEG-4 consists of many different operations, we concentrated on the sum of absolute differences (SAD), a major part of the motion estimation. The SAD was chosen because it is one of the most frequently used operations in MPEG-4 encoding. It is estimated to consume between 40%-80% of the total video encoding time when implemented on a general purpose processor. We have performed an extensive evaluation of our architecture extension. This evaluation showed that it is possible to achieve high performance with acceptable power consumption. We obtained about two times performance improvement for MPEG-4 encoding with roughly the same power consumption.
Ali R. Iranpour, Krzysztof Kuchcinski
DSD2
2004 A Constraints Programming Approach to Communication Scheduling on SoPC Architectures
abstract
This paper presents a method to obtain an optimized static schedule of CSP-like communications between a collection of concurrent hardware processes implemented on "system on a programmable chip" (SoPC). The hardware processes are the applications tailored "cells" in the processor-coupled polymorphous fabric (Wolinski et al., 2003 and Wolinski et al., 2002) implemented on the Altera Excalibur Arm SoPC platform. In our global approach, a static communications schedule is adopted to reduce hardware overhead due to inter-cells message transfer synchronization and to speed-up application execution. The scheduling problem is defined and solved using constraints programming approach. This approach makes it possible to obtain optimal communication schedules in a number of real cases. It makes also possible to easily generate pipelined schedules that improve significantly performance of the final implementation. Our method is illustrated with a fabric-based implementation of the K-means clustering algorithm. An optimal communication scheduled is achieved for this application.
Christophe Wolinski, Krzysztof Kuchcinski, Maya B. Gokhale
DSD2
2004 A constraints programming approach to communication scheduling on SoPC architectures
abstract
This paper presents a novel approach to scheduling communications among concurrent hardware processes mapped onto a "System on a Programmable Chip." Point-to-point, broadcast and multi-cast ommunication types are supported. The algorithm has been prototyped on the Processor-Coupled Polymorphous Fabric for the Altera Excalibur Arm architecture. The communication schedule problem has been specified using Constraints Programming. The advantages of our method are the following: Application of a general constraint solver makes it possible to express many different sorts of constraints in a uniform manner. All imposed constraints are handled by the solver concurrently which increases the chances of obtaining optimal results. The scheduler guarantees that loops periods are the same for each iteration so the smaller controllers can be generated. The method has been illustrated with a Fabric-based implementation of the K-means clustering algorithm for which an optimal communication schedule has been achieved.
Christophe Wolinski, Krzysztof Kuchcinski, Maya B. Gokhale
FPGA2
2003 Partial task assignment of task graphs under heterogeneous resource constraints
abstract
This paper presents a novel partial assignment technique (PAT) that decides which tasks should be assigned to the same resource without explicitly defining assignment of these tasks to a particular resource. Our method simplifies the assignment and scheduling steps while imposing a small or no penalty on the final solution quality. This technique is specially suited for problems which have different resources constraints. Our method does not cluster tasks into a new task, as typical clustering techniques do, but specifies which tasks need to be executed on the same processor.Our experiments have shown that PAT, which may produce non linear groups of tasks, gives better results than linear clustering when multi-resource constraints are present. Linear clustering was proved to be optimal comparing to all other clusterings for problems with timing constraints only. In this paper, we show that, if used for multi-resource synthesis problem, as it is often used nowadays, linear clustering will produce inferior solutions.
Radoslaw Szymanek, Krzysztof Kuchcinski
DAC2
2003 Uncertainty-based scheduling: energy-efficient ordering for tasks with variable execution time
abstract
Energy consumption reduction is today an important design issue for all kinds of digital systems. Offering both flexibility and efficient energy management, variable speed processor architectures are prefered for low energy consumption even in hard real-time systems. For this type of systems, the main approach consists in trading speed for lower energy while meeting all deadlines. For tasks with varying execution time, speed scheduling is most efficient if performed at run-time. This paper presents a new ordering technique for such tasks, that reduces the energy consumption resulting from the run-time speed scheduling. Without affecting the real-time behavior, our Uncertainty-Based Scheduling (UBS) is a low complexity but energy-efficient method that can be applied on top of already existent real-time scheduling techniques, such as EDF. These claims are backed up by extensive simulation results accompanied by measurements on a platform based on an Intel 180200 XScale processor.
Flavius Gruian, Krzysztof Kuchcinski
ISLPED2
2003 Global approach to assignment and scheduling of complex behaviors based on HCDG and constraint programming
Krzysztof Kuchcinski, Christophe Wolinski
J. Syst. Archit.1
2003 Constraints-driven scheduling and resource assignment
abstract
This paper describes a new method for modeling and solving different scheduling and resource assignment problems that are common in high-level synthesis (HLS) and system-level synthesis. It addresses assignment of resources for operations and tasks as well as their static, off-line scheduling. Different heterogeneous constraints are considered for these problems. These constraints can be grouped into two classes: problem-specific constraints and design-oriented constraints. They are uniformly modeled, in our approach, by finite domain (FD) constraints and solved using related constrained programming (CP) techniques. This provides a way to improve quality of final solutions. We have developed in Java a constraint solver engine, JaCoP ( Ja va Co nstraint P rogramming), to evaluate this approach. This solver and a related framework make it possible to model different resource assignment and scheduling problems, and handle them uniformly. The JaCoP prototype system has been extensively evaluated on a number of HLS and system-level synthesis benchmarks. We have been able to obtain optimal results together with related proofs of optimality for all HLS scheduling benchmarks and for all explored design styles (except one functional pipeline design). Many system-level benchmarks can also be solved optimally. For large randomly generated task graphs, we have used heuristic search methods and obtained results that are 1--3% worse than lower bounds or optimal results. These experiments have proved the feasibility of the presented approach.
Krzysztof Kuchcinski
ACM Trans. Design Autom. Electr. Syst.1
2002 Integrating a Computational Model and a Run Time System for Image Processing on a UAV
abstract
Recently substantial research has been devoted to Unmanned Aerial Vehicles (UAVs). One of a UAV's most demanding subsystem is vision. The vision subsystem must dynamically combine different algorithms as the UAVs goal and surrounding change. To fully utilize the available hardware, a run time system must be able to vary the quality and the size of regions the algorithms are applied to, as the number of image processing tasks changes. To allow this the run time system and the underlying computational model must be integrated. In this paper we present a computational model suitable for integration with a run time system. The computational model is called Image Processing Data Flow Graph (IP-DFG). IP-DFG has been developed for modeling of complex image processing algorithms. IP-DFG is based on data flow graphs, but has been extended with hierarchy and new rules for token consumption, which makes the computational model more flexible and more suitable for human interaction. In this paper we also show that IP-DFGs are suitable for modelling expressions, including data dependent decisions and iterations, which are common in complex image processing algorithms.
Per Andersson, Krzysztof Kuchcinski, Klas Nordberg, Patrick Doherty 0001
DSD2
2001 LEneS: task scheduling for low-energy systems using variable supply voltage processors
abstract
The work presented in this paper addresses minimization of the energy consumption of a system during system-level design. The paper focuses on scheduling techniques for architectures containing variable supply voltage processors, running dependent tasks. We introduce our new approach for Low-Energy Scheduling (LEneS) and compare it to two other scheduling methods. LEneS is based on a list-scheduling heuristic with dynamic recalculation of priorities, and assumes a given allocation and assignment of tasks to processors. Our approach minimizes the energy by choosing the best combination of supply voltages for each task running on its processor. The set of experiments we present shows that, using the LEneS approach, we can achieve up to 28% energy savings for the tightest deadlines, and up to 77% energy savings when these deadlines are relaxed by 50%.
Flavius Gruian, Krzysztof Kuchcinski
ASP-DAC2
2001 Synthesis of Conditional Behaviors Using Hierarchical Conditional Dependency Graphs and Constraint Logic Programming
abstract
This paper presents a new high-level synthesis (HLS) approach which addresses the problem of synthesis of conditional behaviors. In proposed methodology, the conditional behaviors are represented by Hierarchical Conditional Dependence Graphs (HCDG) and synthesized using derived Constraints Logic Programming (CLP) models. Our synthesis methods exploit multicycle operations and chaining as well as conditional resource sharing and speculative execution at the same time. These techniques are essential in HLS and the experiments carried out using the developed prototype system showed good performance of the synthesized designs and proved the feasibility of the presented approach.
Krzysztof Kuchcinski, Christophe Wolinski
DSD1
2001 Constraints-driven design space exploration for distributed embedded systems
Krzysztof Kuchcinski
J. Syst. Archit.1
2000 The WITAS Unmanned Aerial Vehicle Project
Patrik Dohrty, Gösta H. Granlund, Krzysztof Kuchcinski, Erik Sandewall, Klas Nordberg, Erik Skarman, Johan Wiklund
ECAI3
1999 Integrated Resource Assignment and Scheduling of Task Graphs Using Finite Domain Constraints
abstract
This paper presents an approach to modeling of task graphs using finite domain constraints. The synthesis of such models into an architecture consisting of microprocessors, ASICs and communication devices, is then defined as an optimization problem and it is solved using constraint solving techniques. The presented approach offers an elegant and powerful modeling technique for different architecture features as well as heterogeneous constraints. The extensive experimental results prove the feasibility of this approach.
Krzysztof Kuchcinski
DATE1
1998 Scheduling of Conditional Process Graphs for the Synthesis of Embedded Systems
abstract
We present an approach to process scheduling based on an abstract graph representation which captures both data-flow and the flow of control. Target architectures consist of several processors, ASICs and shared buses. We have developed a heuristic which generates a schedule table so that the worst case delay is minimized. Several experiments demonstrate the efficiency of the approach.
Petru Eles, Krzysztof Kuchcinski, Zebo Peng, Alex Doboli, Paul Pop
DATE2
1997 Post-synthesis back-annotation of timing information in behavioral VHDL
Petru Eles, Krzysztof Kuchcinski, Zebo Peng, Alex Doboli
J. Syst. Archit.2
1997 Design of hardware and software systems
Krzysztof Kuchcinski
J. Syst. Archit.1
1996 Synthesis of systems specified as interacting VHDL processes
Petru Eles, Krzysztof Kuchcinski, Zebo Peng
Integr.2
1995 An Efficient and Economic Partitioning Approach for Testability
abstract
This paper presents an RT level partitioning approach for sequential circuits described as data path and control part. The data path of a circuit is partitioned at some hard-to-test points detected by an RT level testability analysis algorithm. These points are then made directly accessible by DFT techniques. The control part is also modified to control the circuit in normal mode and test mode. In the normal mode, the circuit is controlled to perform its function, while in the test mode, all partitions are controlled independently. As a result, test quality is improved by independent test generation and test application for every partition. The partitioning complexity is reduced by the use of testability analysis results and the area overhead is lower than that of full scan designs for most benchmarks we used. Experiments show results of the approach as compared with no scan, partial scan and full scan schemes.
Xinli Gu, Krzysztof Kuchcinski, Zebo Peng
ITC2
1994 Automated transformation of algorithms into register-transfer level implementations
abstract
This paper describes a high-level synthesis system, called CAMAD, for transforming algorithms into hardware implementation structures at register-transfer level. The algorithms are used to specify the behaviors of the hardware to be designed. They are first translated into a formal representation model which is based on timed Petri nets and consists of separate but related descriptions of control and data path. The formal model is used as an intermediate design representation and supports an iterative transformation approach to high-level synthesis. The basic idea is that once the behavioral specification is translated into the initial design representation, it can be viewed as a primitive implementation. Correctness-preserving transformations are then used to successively transform the initial design into an efficient implementation. Selection of transformations is guided by an optimization strategy which makes design decisions concerning operation scheduling, data path allocation, and control allocation simultaneously. The integration of these several synthesis subtasks has resulted in a better chance to reach the globally optimal solution. Experimental results show that our approach produces improved register-transfer designs, especially in the cases when the designed hardware consists of data paths and control logics that are tightly coupled.>
Zebo Peng, Krzysztof Kuchcinski
IEEE Trans. Comput. Aided Des. Integr. Circuits Syst.2
1993 System level modelling and analysis of complex digital systems
Krzysztof Kuchcinski
Microprocess. Microprogramming1
1992 An approach to testability analysis and improvement for VLSI systems
Xinli Gu, Krzysztof Kuchcinski, Zebo Peng
Microprocess. Microprogramming2
1991 Testability measure with reconvergent fanout analysis and its applications
Xinli Gu, Krzysztof Kuchcinski, Zebo Peng
Microprocessing and Microprogramming2
1990 Testability analysis in a VLSI high-level synthesis system
Krzysztof Kuchcinski, Zebo Peng
Microprocessing and Microprogramming1
1988 Parallelism extraction from sequential programs for VLSI applications
Krzysztof Kuchcinski, Zebo Peng
Microprocess. Microprogramming1
1987 Microprogramming implementation of timed Petri nets
Krzysztof Kuchcinski, Zebo Peng
Integr.1
1986 Synthesis of control structures from Petri net descriptions
Zebo Peng, Krzysztof Kuchcinski
Microprocessing and Microprogramming2