Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Kecheng Hao is active.

Publication


Featured researches published by Kecheng Hao.


design, automation, and test in europe | 2010

Optimizing equivalence checking for behavioral synthesis

Kecheng Hao; Fei Xie; Sandip Ray; Jin Yang

Behavioral synthesis is the compilation of an Electronic system-level (ESL) design into an RTL implementation. We present a suite of optimizations for equivalence checking of RTL generated through behavioral synthesis. The optimizations exploit the high-level structure of the ESL description to ameliorate verification complexity. Experiments on representative benchmarks indicate that the optimizations can handle equivalence checking of synthesized designs with tens of thousands of lines of RTL.


automated technology for verification and analysis | 2009

Formal Verification for High-Assurance Behavioral Synthesis

Sandip Ray; Kecheng Hao; Yan Chen; Fei Xie; Jin Yang

We present a framework for certifying hardware designs generated through behavioral synthesis, by using formal verification to certify the associated synthesis transformations. We show how to decompose this certification into two components, which can be respectively handled by the complementary verification techniques, theorem proving and model checking. The approach produces a certified reference flow, composed of transformations distilled from production synthesis tools but represented as transformations on graphs with an associated formal semantics. This tool-independent abstraction disentangles our framework from the inner workings of specific synthesis tools while permitting certification of hardware designs generated from a broad class of behavioral descriptions. We provide experimental results suggesting the scalability on practical designs.


design automation conference | 2012

Equivalence checking for behaviorally synthesized pipelines

Kecheng Hao; Sandip Ray; Fei Xie

Loop pipelining is a critical transformation in behavioral synthesis. It is crucial to producing hardware designs with acceptable latency and throughput. However, it is a complex transformation involving aggressive scheduling strategies for high throughput and careful control generation to eliminate hazards. We present an equivalence checking approach for certifying synthesized hardware designs in the presence of pipelining transformations. Our approach works by (1) constructing a provably correct pipeline reference model from sequential specification, and (2) applying sequential equivalence checking between this reference model and synthesized RTL. We demonstrate the scalability of our approach on several synthesized designs from a commercial synthesis tool.


design automation conference | 2013

Handling design and implementation optimizations in equivalence checking for behavioral synthesis

Zhenkun Yang; Kecheng Hao; Sandip Ray; Fei Xie

Behavioral synthesis involves generating hardware design via compilation of its Electronic System Level (ESL) description to an RTL implementation. Equivalence checking is critical to ensure that the synthesized RTL conforms to its ESL specification. Such equivalence checking must effectively handle design and implementation optimizations. We identify two key optimizations that complicate equivalence checking for behavioral synthesis: (1) operation gating, and (2) global variables. We develop a sequential equivalence checking (SEC) framework to compare ESL designs with RTL in the presence of these optimizations. Our approach can handle designs with more than 32K LoC RTL synthesized from practical ESL designs. Furthermore, our evaluation found a bug in a commercial tool, underlining both the importance of SEC and the effectiveness of our approach.


design, automation, and test in europe | 2014

Equivalence checking for function pipelining in behavioral synthesis

Kecheng Hao; Sandip Ray; Fei Xie

Function pipelining is a key transformation in behavioral synthesis. However, synthesizing the complex pipeline logic is an error-prone process. Sequential equivalence checking (SEC) support is highly desired to provide confidence in the correctness of synthesized pipelines. However, SEC for function pipelining is challenging due to the significant difference between the behavioral specification and synthesized RTL. Furthermore, function pipelines include hardware logic for dynamically inserting “bubbles” (pipeline stalls), which bring additional difficulties in equivalence checking. We develop an SEC framework for behaviorally synthesized function pipelines by (1) building a reference pipeline model with a certified function pipelining transformation, which faithfully captures bubble insertion; and (2) checking the equivalence between the reference model and synthesized RTL. We demonstrate the scalability of our approach on industry-strength designs synthesized by a commercial tool.


design, automation, and test in europe | 2009

Componentizing hardware/software interface design

Kecheng Hao; Fei Xie

Building highly optimized embedded systems demands hardware/software (HW/SW) co-design. A key challenge in co-design is the design of HW/SW interfaces, which is often a design bottleneck. We propose a novel approach to HW/SW interface design based on the concept of bridge component. Bridge components fill the HW/SW semantic gap by propagating events across the HW/SW boundary and raise the abstraction level for designing HW/SW interfaces by abstracting processors, buses, embedded OS, etc. of embedded system platforms. Bridge components are specified in platform-specific bridge specification languages (BSLs) and compiled by the BSL compilers for simulation and deployment.We have applied our approach to two different embedded system platforms. Case studies have shown that bridge components greatly simplify component-based co-design of embedded systems and system simulation speed can be improved three orders of magnitude by simulating bridge components on the transaction level.


design automation conference | 2014

Scalable Certification Framework for Behavioral Synthesis Front-End

Zhenkun Yang; Kecheng Hao; Kai Cong; Li Lei; Sandip Ray; Fei Xie

Behavioral synthesis entails application of a sequence of transformations to compile a high-level description of a hardware design (e.g., in C/C++/SystemC) into a register-transfer level (RTL) implementation. In this paper, we present a scalable equivalence checking framework to validate the correctness of compiler transformations employed by behavioral synthesis front-end. Our approach makes use of dual-rail symbolic simulation of the input and output of a transformation, together with identification and inductive verification of their loop structures. We have evaluated our framework on transformations applied by an open source behavioral synthesis tool to designs from the CHStone benchmark. Our tool can automatically validate more than 75 percent of the total of 1008 compiler transformations applied, taking an average time of 1.5 seconds per transformation.


international conference on computer design | 2013

Equivalence checking for compiler transformations in behavioral synthesis

Zhenkun Yang; Kecheng Hao; Kai Cong; Sandip Ray; Fei Xie

Behavioral synthesis entails application of a sequence of transformations to compile a high-level description of a hardware design (e.g., in C/C++/SystemC) into a Register-Transfer Level (RTL) implementation. We present a scalable equivalence checking framework to validate the correctness of compiler transformations employed by behavioral synthesis. Our approach is based on dual-rail symbolic simulation of the input and output design representations of a transformation. We have evaluated our framework on transformations applied to several designs by an open source behavioral synthesis tool, and we present initial results demonstrating the approach.


digital systems design | 2007

Component-Based Hardware/Software Co-Simulation

Ping Hang Cheung; Kecheng Hao; Fei Xie

Developing highly efficient and reliable embedded systems demands hardware/software (HW/SW) co-design and, therefore, co-simulation. In order to be highly configurable, embedded systems are increasingly component-based in both hardware and software. In this paper, we present a novel approach to hardware/software co-simulation of component-based embedded systems. Our approach features a component model which unifies hardware and software component models with the concept of bridge component. Bridge components raise the level of abstraction for designing HW/SW interfaces. Their specifications are used to configure the co-simulators. Our approach has been applied to co-simulation of sensor system instances included in the TinyOS distribution. The case studies have demonstrated that our approach is readily applicable to real-world embedded systems and reduces co-simulation complexities.


meeting of the association for computational linguistics | 2014

Using ACL2 to Verify Loop Pipelining in Behavioral Synthesis

Disha Puri; Sandip Ray; Kecheng Hao; Fei Xie

Behavioral synthesis involves compiling an Electronic System-Level (ESL) design into its Register-Transfer Level (RTL) implementation. Loop pipelining is one of the most critical and complex transformations employed in behavioral synthesis. Certifying the loop pipelining algorithm is challenging because there is a huge semantic gap between the input sequential design and the output pipelined implementation making it infeasible to verify their equivalence with automated sequential equivalence checking techniques. We discuss our ongoing effort using ACL2 to certify loop pipelining transformation. The completion of the proof is work in progress. However, some of the insights developed so far may already be of value to the ACL2 community. In particular, we discuss the key invariant we formalized, which is very different from that used in most pipeline proofs. We discuss the needs for this invariant, its formalization in ACL2, and our envisioned proof using the invariant. We also discuss some trade-offs, challenges, and insights developed in course of the project.

Collaboration


Dive into the Kecheng Hao's collaboration.

Top Co-Authors

Avatar

Fei Xie

Portland State University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Zhenkun Yang

Portland State University

View shared research outputs
Top Co-Authors

Avatar

Kai Cong

Portland State University

View shared research outputs
Top Co-Authors

Avatar

Disha Puri

Portland State University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Li Lei

Portland State University

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Yan Chen

Portland State University

View shared research outputs
Researchain Logo
Decentralizing Knowledge