| 
    
   | 
  
  
  
    
          
    | 	
         Disclaimer -- Permission to make digital/hard copy of all
	      or part of any of the following publications and technical
	      reports for personal or classroom use is granted without fee
	      provided that copies are not made or distributed for profit or
	      commercial advantage. To copy otherwise, to republish, to post on
	      servers, or to redistribute to lists requires prior specific
	      permission. 
	   
      |  
    
    
    
    
         
        dac04_profiler
     |  
     
    Lukai Cai, Andreas Gerstlauer, Daniel D. Gajski, 
    "Retargetable 
    Profiling for Rapid, Early System-Level Design Space Exploration," 
    Proceedings of the Design Automation Conference, 
    San Diego, CA, June 2004.    
    
    Fast and accurate estimation is critical for exploration of any design
    space in general. As we move to higher levels of abstraction, estimation of
    complete system designs at each level of abstraction is needed. Estimation
    should provide a variety of useful metrics relevant to design tasks in
    different domains and at each stage in the design process.
         
    In this paper, we
    present such a system-level estimation approach based on a novel combination
    of dynamic profiling and static retargeting. Co-estimation of complete
    system implementations is fast while accurately reflecting even dynamic
    effects. Furthermore, retargetable profiling is supported at multiple levels
    of abstraction, providing multiple design quality metrics at each level.
    Experimental results show the applicability of the approach for efficient
    design space exploration. 
       
      |  
    
    
    
         
        aspdac04_codegen
     |  
     
    Haobo Yu, Rainer Dömer, Daniel D. Gajski, 
    "Embedded 
    Software Generation from System Level Design Languages," 
    Proceedings of the Asia and South Pacific Design Automation Conference, 
    Yokohama, Japan, January 2004.    
    
    To meet the challenge of increasing design complexity, designers are turning
    to system level design languages (SLDLs) to model systems at a higher level
    of abstraction. This paper presents a method of automatically generating
    embedded software from system specification written in SLDL. Several
    refinement steps and intermediate models are introduced in our software
    generation flow. We demonstrate the effectiveness of the proposed method by
    a tool which can generate efficient ANSI C code from system models written
    in SLDL. 
       
      |  
    
    
    
         
        aspdac04_cr
     |  
     
    Dongwan Shin, Samar Abdi, Daniel D. Gajski, 
    "Automatic 
    Generation of Bus Functional Models from Transaction level Models," 
    Proceedings of the Asia and South Pacific Design Automation Conference, 
    Yokohama, Japan, January 2004.    
    
    This paper presents methodology and algorithms for generating bus
    functional models from transaction level models in system level design.
    Transaction level models are often used by designers for prototyping the bus
    functional architecture of the system. Being at a higher level of
    abstraction gives transaction level models the unique advantage of high
    simulation speed. This means that the designer can explore several bus
    functional architectures before choosing the optimal one. However, the
    process of converting a transaction level model to a bus functional model is
    not trivial. A manual conversion would not only be time consuming but also
    error prone. A bus functional model should also accurately represent the
    corresponding transaction level model. We present algorithms for automating
    this refinement process. Experimantal results presented using a tool based
    on these algorithms show their usefulness and feasibility.
       
      |  
    
    
    
         
        aspdac04_mem
     |  
     
    Lucai Cai, Haobo Yu, Daniel D. Gajski, 
    "A 
    Novel Memory Size Model for Variable-Mapping In System Level Design," 
    Proceedings of the Asia and South Pacific Design Automation Conference, 
    Yokohama, Japan, January 2004.    
    
    It is predicted that 70% of the chip area will be occupied by memories in
    future system-onchips. The minimization of on-chip memory hence becomes
    increasingly important for cost, performance and energy consumption. This
    paper proposes a novel memory size model for algorithms which map the
    variables of a system behavior to memories of a system architecture. To our
    knowledge, it is the first memory estimation approach that analyzes the
    variable lifetime for the system behavior, which consists of
    hierarchically-modelled and concurrently-executed processes and contains
    variables with different sizes. Experimental results show that significant
    improvements can be achieved. 
       
      |  
    
    
    
         
        codes03_RTOS
     |  
     
    Haobo Yu, Andreas Gerstlauer, Daniel Gajski, 
    "RTOS 
    Scheduling in Transaction Level Models," 
    Proceedings of the International Conference on Hardware/Software
    Codesign & System Synthesis, 
    Newport Beach, CA, October 2003.    
    
    Raising the level of abstraction in system design promises to enable
    faster exploration of the design space at early stages. While scheduling
    decision for embedded software has great impact on system performance, it s
    much desired that the designer can select the right scheduling algorithm at
    high abstraction levels so as to save him from the error-prone and time
    consuming task of tuning code delays or task priority assignments at the
    final stage of system design. In this paper we tackle this problem by
    introducing a RTOS model and an approach to refine any unscheduled
    transaction level model (TLM) to a TLM with RTOS scheduling support. The
    refinement process provides a useful tool to the system designer to quickly
    evaluate different dynamic scheduling algorithms and make the optimal choice
    at the early stage of system design. 
       
      |  
    
    
    
         
        codes03_tlm
     |  
     
    Lucai Cai and Daniel Gajski, 
    "Transaction 
    Level Modeling: An Overview," 
    Proceedings of the International Conference on Hardware/Software
    Codesign & System Synthesis, 
    Newport Beach, CA, October 2003.    
    
    Recently, the transaction-level modeling has been widely referred to in
    system-level design community. However, the transaction-level models (TLMs)
    are not well defined and the usage of TLMs in the existing design domains,
    namely modeling, validation, refinement, exploration, and synthesis, is not
    well coordinated. This paper introduces a TLM taxonomy and compares the
    benefits of TLMs use. 
       
      |     
    
    
         
        dac03_sccr
     |  
     
    Samar Abdi, Dongwan Shin, Daniel D. Gajski, 
    "Automatic 
    Communication Refinement for System Level Design," 
    Proceedings of the Design Automation Conference, 
    Anaheim, CA, June 2003.
    
    This paper presents a methodology and algorithms for automatic communication 
    refinement. The communication refinement task in system-level synthesis transforms
    abstract data-transfer between components to its actual bus level implementation. 
    The input model of the communication refinement is a set of concurrently executing 
    components, communicating with each other through abstract communication channels.
    The refined model reflects the actual communication architecture. Choosing a good 
    communication architecture in system level designs requires sufficient exploration 
    through evaluation of various architectures. However, this would not be possible 
    with manually refining the system model for each communication architecture. 
    For one, manual refinement is tedious and error-prone. Secondly, it wastes 
    substantial amount of precious designer time. We solve this problem with
    automatic model refinement. We also present a set of experimental results to
    demonstrate how the proposed approach works on a typical system level design.
       
      |  
    
    
    
         
         
        date03_rtos
     |  
     
    Andreas Gerstlauer, Haobo Yu, Daniel D. Gajski, 
    "RTOS 
    Modeling for System-Level Design," 
    Proceedings of Design, Automation & Test in Europe, 
    Munich, Germany, March 2003.
    
    System level synthesis is widely seen as the solution for closing
    the productivity gap in system design. High level system models
    are used in system level design for early design exploration.
    While real time operating systems (RTOS) are an increasingly
    important component in system design, specific RTOS implementations
    can not be used directly in high level models. On the other hand,
    existing system level design languages (SLDL) lack support for 
    RTOS modeling.
    In this paper we propose a RTOS model built on top
    of existing SLDLs which, by providing the
    key features typically available in any RTOS,
    allows the designer to model the dynamic behavior of multi-tasking
    systems at higher abstraction levels to be incorporated into
    existing design flows. Experimental result shows that
    our RTOS model is easy to use and efficient while being able to provide
    accurate results.    
       
      |  
    
    
    
         
         
        isss02_semantics
     |  
     
    Andreas Gerstlauer and Daniel D. Gajski, 
    "System-Level 
    Abstraction Semantics," 
    Proceedings of International Symposium on System Synthesis, 
    Kyoto, Japan, October 2002.
    
    Raising the level of abstraction is widely seen as the solution for     
    closing the productivity gap in system design.     
    They key for the success of this approach, however, are well-defined     
    abstraction levels and models.     
    In this paper, we present such system level semantics to cover the     
    system design process.     
    We define properties and features of each model. Formalization of     
    the flow enables design automation for synthesis and verification to     
    achieve the required productivity gains. Through customization,     
    the semantics allow creation of specific design methodologies.     
    We applied the concepts to system languages SystemC and SpecC.     
    Using the example of a JPEG encoder, we will demonstrate the     
    feasibility and effectiveness of the approach.     
       
      |  
    
    
    
         
        isss02_msg
     |  
     
    Junyu Peng and Daniel D. Gajski, 
    "Optimal 
    Message-Passing for Data Coherency in Distributed Architecture," 
    Proceedings of International Symposium on System Synthesis, 
    Kyoto, Japan, October 2002.
    
    Message-passing mechanism is commonly used to preserve data coherency
    in distributed systems.  This paper presents an algorithm for
    insertion of minimal message-passing in system-level design to
    guarantee data coherency.  The target architecture is a
    multi-component heterogeneous system, where some components have local
    memory (or they are memory components by themselves.  The algorithm
    enables 
    automatic insertion of message-passing during system-level design to
    relieve designers from tedious and error-prone manual work. The
    optimal solution given by the algorithm also ensures the quality of
    automatic insertion. Experiments show that the
    automatic approach achieves a productivity gain of 200x over manual
    refinement.    
       
      |  
    
    
    
         
         
        isss02_SpecC
     |  
     
    W. Mueller, R. Dömer, A. Gerstlauer, 
    "The 
    Formal Execution Semantics of SpecC," 
    Proceedings of International Symposium on System Synthesis, 
    Kyoto, Japan, October 2002.
    
    We present a rigorous but transparent semantics definition of the SpecC
    language that covers the execution of SpecC behaviors and their
    interaction with the kernel process. The semantics include
    wait, waitfor, par, pipe,
    and try statements
    as they are introduced in SpecC. We present our definition in
    form of distributed Abstract State Machine (ASM) rules strictly following
    the lines of the SpecC Language Reference Manual.
    We mainly see our formal semantics in three application areas.
    First, it is a concise, unambiguous description
    for documentation and standardization.
    Second, it applies as a high-level, pseudo code-oriented specification
    for the implementation of a SpecC simulator.
    Finally, it is a first step for
    SpecC synthesis in order to identify similar concepts with other languages
    like VHDL and SystemC for the definition of common patterns and language
    subsets.
       
      |  
    
    
    
         
        iecon02
     |  
     
    Slim Ben Saoud, Daniel D. Gajski, Andreas Gerstlauer, 
    "Co-design 
    of Emulators for Power electric Processes Using SpecC Methodology," 
    Proceedings 28th Annual Conference of the IEEE Industrial Electronics Society, 
    Sevilla, Spain, November 2002.
    
    Emulation of CMS systems is an interesting
    approach to complete the validation of new digital control unit
    and to perform the diagnosis tasks. However to be efficient, the
    emulator have to run in real time in order to reproduce exactly
    the physical process functioning.
     
    This paper describes the design of an Autonomous Emulator
    employing the system-level design methodology developed at
    CECS-UC Irvine (SpecC methodology). Starting from the
    abstract executable specification written in SpecC language, the
    emulator is gradually refined and mapped to a final
    communication model. This model can then be used with
    backend tools for implementation and manufacturing.
       
      |  
    
    
    
         
        isic02
     |  
     
    Slim Ben Saoud, Daniel D. Gajski, Andreas Gerstlauer, 
    "Co-design 
    of Embedded Controllers for Power Electronics and Electric Systems," 
    Proceedings International Symposium on Intelligent Control, 
    Vancouver, Canada, October 2002.
    
    Today, control algorithms are being more and more sophisticated due to
    the customer and governments demands. Then, their real-time implementation
    becomes a difficult task and nedds more and more specific hardware systems
    with dedicated processors and usually systems-on-chip (SOCs).
     
    With the ever-increasing complexity and time-to-market pressures in the
    design of these specific control systems, a well-defined design methodology
    is more than even necessary.
     
    In this paper, we present a seamless approach for the design of control
    systems for power electronics and electric drivers. We discuss the case of
    a DC system control and describe in detail different stages undergone.
    Generalization to other systems can be done easily using the same steps
    and transformations.
       
      |  
    
    
    
         
        smc02_control
     |  
     
    Slim Ben Saoud, Daniel D. Gajski, Andreas Gerstlauer, 
    "Seamless 
    approach for the design of control systems for Power Electronics and Electric Drives," 
    Proceedings International Conference on Systems, Man and Cybernetics, 
    Hammamet, Tunisia, October 2002.
    
    Today, the shortest time-to-market in the
    electric drives industries is being a pressing
    requirement, consequently development time of new
    algorithms and new control systems and debugging them
    must be minimized. This requirement can be satisfied
    only by using a well-defined System-level design
    methodology and by reducing the migration time
    between the algorithm development language and the
    hardware specification language.
     
    In this paper, we propose to apply the SpecC
    methodology to the the design of control systems for
    power electronics and electric drives. We first begin
    with an executable specification model of the control
    device. Then, we describe the different steps and
    transformations used to convert this model to a
    communication model, which can be then transformed
    to an implementation model ready for manufacturing.
       
      |  
    
    
    
         
        smc02_ctrlalg
     |  
     
    Slim Ben Saoud, Daniel D. Gajski, Rainer Dömer, 
    "Specification 
    and Validation of New Control Algorithms for Electric Drives Using SpecC Language," 
    Proceedings International Conference on Systems, Man and Cybernetics, 
    Hammamet, Tunisia, October 2002.
    
    In the traditional way, developers of new
    control algorithms validate their studies by simulation
    using standard language (C, C++, MATLAB, etc.).
    Therefore, designers of the
    control devices have to
    translate this specification from the original language
    (standard language) to the co-design methodology
    language. This introduces a time/schedule delay.
         
    In this work, we propose to use the SpecC language to
    specify the whole motor drive system that includes
    control algorithms, I/O modules and Process to control.
    In contrast to other languages, the SpecC allows to
    specify the system functionality in a clear and precise
    manner and the obtained specification, used for
    simulation, will serves, without the need for tedious
    rewrites, as the input to the synthesis and exploration
    stages in the SpecC design methodology.
       
      |  
    
    
    
         
        edp02
     |  
     
    R. Dömer, A. Gerstlauer, D. Gajski, 
    "SpecC Methodology for High-Level Modeling," 
    9th IEEE/DATC Electronic Design Processes Workshop, 
    Monterey, April 2002.
    
    The key for managing the complexity of embedded system design is a
    well-defined methodology supported by a
    clearly structured system-level design language. The SpecC methodology
    described in this paper is based on the
    SpecC language and consists of a set of well-defined and unambiguous design
    models and a set of well-defined
    transformations that refine one model to the next. Given these models and
    transformations, the generic SpecC
    methodology can be customized to produce a system design framework that can
    be easily integrated with a given
    design flow and environment.
     
    This paper describes four SpecC models at different levels of abstraction,
    namely at the specification, architecture,
    communication and implementation level. It also defines the refinement
    transformations between them, namely
    architecture exploration, communication synthesis, and software and hardware
    implementation. Both, the models
    and the transformations, are sufficiently formalized to allow automatic
    model refinement, synthesis, and verification.
       
      |  
    
    
    
         
        esc02_309
     |  
     
    Rainer Dömer, 
    "The SpecC System-Level Design Language and Methodology, Part 1," 
    Embedded Systems Conference, 
    San Francisco, March 2002.
    
    A well-defined design methodology supported by a system-level design
    language (SLDL) is the key for
    managing the complexity of the design flow, especially at the system level.
    Only with well-defined and
    unambiguous models and transformations can we achieve productivity gains
    through synthesis, verification
    and tool interoperability. This paper presents the SpecC system design
    methodology. It shows how, through
    gradual, stepwise refinement, a design is taken from specification down to
    implementation. Finally, it
    introduces a design example of industrial-strength that has been implemented
    following the methodology,
    including the results and productivity gains achieved.
     
    This is the first paper in a two-part series. This part introduces the
    SpecC model and the SpecC language.
       
      |  
    
    
    
         
        esc02_349
     |  
     
    R. Dömer, A. Gerstlauer, P. Kritzinger, M. Olivarez, 
    "The SpecC System-Level Design Language and Methodology, Part 2," 
    Embedded Systems Conference, 
    San Francisco, March 2002.
    
    A well-defined design methodology supported by a system-level design
    language (SLDL) is the key for
    managing the complexity of the design flow, especially at the system level.
    Only with well-defined and
    unambiguous models and transformations can we achieve productivity gains
    through synthesis, verification
    and tool interoperability. This paper presents the SpecC system design
    methodology. It shows how, through
    gradual, stepwise refinement, a design is taken from specification down to
    implementation. Finally, it
    introduces a design example of industrial-strength that has been implemented
    following the methodology,
    including the results and productivity gains achieved.
     
    This is the second paper in a two-part series. This part covers the SpecC
    methodology and its application to
    an industrial design example, a GSM vocoder.
       
      |  
    
    
    
         
         
        sasimi00
     |  
     
    A. Gerstlauer, S. Zhao, D. Gajski, A. Horak, 
    "SpecC System-Level Design Methodology Applied to the Design of a GSM Vocoder," 
    Proceedings of the Ninth Workshop on Synthesis and System Integration
    of Mixed Technologies, 
    Kyoto, Japan, April 2000.
    
    In this paper we describe the steps and transformations of the 
    SpecC system-level design methodology applied to the example of 
    designing and implementing a voice 
    encoding/decoding system with 
    the purpose of demonstrating this 
    design methodology on an industrial size example. 
    Starting with the system specification, the design is gradually 
    refined down to an optimal hardware/software implementation. 
    The results show 
    that the well-defined models, steps and transformations of the SpecC 
    methodology lead to a significant productivity gain. 
       
      |  
    
    
    
         
         
        aspdac00_IP
     |  
     
    Rainer Dömer and Daniel D. Gajski, 
    "Reuse and Protection of Intellectual Property in the SpecC System," 
    Proceedings of the Asia and South Pacific Design Automation Conference, 
    Yokohama, Japan, January 2000.
    
    In system-level design, the key to cope with the complexities involved with
    System-on-Chip (SOC) designs, is the reuse of Intellectual Property (IP).
    With the increasing demand for IP, the mechanism to protect an IP component
    from being copied, modified, or reverse-engineered, becomes very important.
    This paper describes how reuse and protection of IP is supported
    by the SpecC language and the SpecC design environment.
       
      |  
    
    
    
         
        aspdac00_reuse
     |  
     
    Nong Fang, Viraphol Chaiyakul, Daniel D. Gajski, 
    "Usage-Based Characterization of Complex Functional Blocks for Reuse
          in Behavioral Synthesis," 
    Proceedings of the Asia and South Pacific Design Automation Conference, 
    Yokohama, Japan, January 2000.
    
    This paper presents a novel usage-based characterization method to capture
    pre-designed complex functional blocks for automatic reuse in behavioral
    synthesis. We identify attributes necessary for reuse of such complex
    components and illustrate how the attributes are
    captured into a design database. A complex component MTX_MULT8X8, which
    computes product of two 8x8 matrices, is captured with the
    proposed method, and its reuse in behavioral synthesis is demonstrated with
    design of a DCT example. Feasibility of the method for capturing various
    components is demonstrated as well.
       
      |  
    
     
   |