1 |
Equivalence Checking for High-Assurance Behavioral SynthesisHao, Kecheng 10 June 2013 (has links)
The rapidly increasing complexities of hardware designs are forcing design methodologies and tools to move to the Electronic System Level (ESL), a higher abstraction level with better productivity than the state-of-the-art Register Transfer Level (RTL). Behavioral synthesis, which automatically synthesizes ESL behavioral specifications to RTL implementations, plays a central role in this transition. However, since behavioral synthesis is a complex and error-prone translation process, the lack of designers' confidence in its correctness becomes a major barrier to its wide adoption. Therefore, techniques for establishing equivalence between an ESL specification and its synthesized RTL implementation are critical to bring behavioral synthesis into practice.
The major research challenge to equivalence checking for behavioral synthesis is the significant semantic gap between ESL and RTL. The semantics of ESL involve untimed, sequential execution; however, the semantics of RTL involve timed, concurrent execution. We propose a sequential equivalence checking (SEC) framework for certifying a behavioral synthesis flow, which exploits information on successive intermediate design representations produced by the synthesis flow to bridge the semantic gap. In particular, the intermediate design representation after scheduling and pipelining transformations permits effective correspondence of internal operations between this design representation and the synthesized RTL implementation, enabling scalable, compositional equivalence checking. Certifications of loop and function pipelining transformations are possible by a combination of theorem proving and SEC through exploiting pipeline generation information from the synthesis flow (e.g., the iteration interval of a generated pipeline). The complexity brought by bubbles in function pipelines is creatively reduced by symbolically encoding all possible bubble insertions in one pipelined design representation. The result of this dissertation is a robust, practical, and scalable framework for certifying RTL designs synthesized from ESL specifications. We have validated the robustness, practicality, and scalability of our approach on industrial-scale ESL designs that result in tens of thousands of lines of RTL implementations.
|
2 |
Computing Research in Academia: Classifications, Keywords, Perceptions, and ConnectionsKim, Sung Han 01 May 2016 (has links)
The Association for Computing Machinery (ACM) recognizes five computing disciplines: Computer Science (CS), Computer Engineering (CE), Information Technology (IT), Information Systems (IS), and Software Engineering (SE). Founded in 1947 the ACM is the world's largest society for computing educators, researchers, and professionals. While Computer Science has been a degree program since 1962, the other four are relatively new. This research focuses on understanding the graduate research in four of the five ACM disciplines (CS, CE, IT, and IS) using a large body of thesis and dissertation metadata. SE is not found in the metadata and graduate work in SE is not included. IS is no longer officially found in the metadata so its representative ProQuest replacement, Information Science although not an ACM recognized discipline is used based on the commonality of the associated ProQuest Classification code. The research is performed using co-word and graph analysis of author-supplied Classifications, Departments, and keywords. Similarities and differences between the disciplines are identified. Whether the computing discipline is the primary or the secondary focus of the research makes a large difference in the connections it makes with other academic disciplines. It was found that the Departments from which computing research originates varies widely but the majority come from computing-related Departments. Finally, gaps are apparent from the practitioners' views of the computing disciplines versus the public's view.
|
3 |
Smart card fault attacks on public key and elliptic curve cryptographyLing, Jie January 2014 (has links)
Indiana University-Purdue University Indianapolis (IUPUI) / Blömmer, Otto, and Seifert presented a fault attack on elliptic curve scalar multiplication called the Sign Change Attack, which causes a fault that changes the sign of the accumulation point. As the use of a sign bit for an extended integer is highly unlikely, this appears to be a highly selective manipulation of the key stream. In this thesis we describe two plausible fault attacks on a smart card implementation of elliptic curve cryptography. King and Wang designed a new attack called counter fault attack by attacking the scalar multiple of discrete-log cryptosystem. They then successfully generalize this approach to a family of attacks. By implementing King and Wang's scheme on RSA, we successfully attacked RSA keys for a variety of sizes. Further, we generalized the attack model to an attack on any implementation that uses NAF and wNAF key.
|
Page generated in 0.1245 seconds