An Algebraic Framework for Data Abstraction in Hardware Description

The aim of this work is to extend a standard treatment of data types to a foundation for hardware synthesis. Hardware synthesis exposes several problems not typically considered in software oriented theories. These include architectural constraints in the use of type instances, parallelism in the use of multiple instances, and consolidation of distinct types in a common process. Since we are concerned with the question of incorporating (more) concrete implementations of (more) abstract types found in higher levels of specification, our foundation must address these aspects of description. The paper begins with a condensed example of a stack based processor operating on a standard memory. This specification is compared to a target description in which both the stack and the memory are implemented by a single memory process. The remainder of the paper formalizes issues raised in the example.

[1]  K. Mani Chandy,et al.  Current trends in programming methodology , 1977 .

[2]  Mitchell Wand,et al.  Final Algebra Semantics and Data Type Extensions , 1979, J. Comput. Syst. Sci..

[3]  Jan A. Bergstra,et al.  Initial and Final Algebra Semantics for Data Type Specifications: Two Characterization Theorems , 1983, SIAM J. Comput..

[4]  Samuel N. Kamin Final Data Types and Their Specification , 1983, TOPL.

[5]  Steven D. Johnson Synthesis of digital designs from recursion equations , 1983 .

[6]  Steven D. Johnson Applicative programming and digital design , 1984, POPL '84.

[7]  Hartmut Ehrig,et al.  Fundamentals of Algebraic Specification 1: Equations and Initial Semantics , 1985 .

[8]  George J. Milne,et al.  CIRCAL and the representation of communication, concurrency, and time , 1985, TOPL.

[9]  John C. Reynolds,et al.  Algebraic Methods in Semantics , 1985 .

[10]  José Meseguer,et al.  Initiality, induction, and computability , 1986 .

[11]  Alice C. Parker,et al.  Tutorial on high-level synthesis , 1988, DAC '88.

[12]  J. V. Tucker,et al.  Program correctness over abstract data types, with error-state semantics , 1988, CWI monographs.

[13]  Steven D. Johnson,et al.  A Tactical Framework for Hardware Design , 1988 .

[14]  Raul Camposano Behavior-Preserving Transformations for High-Level Synthesis , 1989, Hardware Specification, Verification and Synthesis.

[15]  Steven D. Johnson Manipulating Logical Organization with System Factorizations , 1989, Hardware Specification, Verification and Synthesis.

[16]  Ganesh Gopalakrishnan,et al.  Specification-driven design of custom hardware in HOP , 1989 .

[17]  Graham Birtwistle,et al.  Current Trends in Hardware Verification and Automated Theorem Proving , 1989, Springer New York.