Program Improvement by Source-to-Source Transformation
Journal of the ACM (JACM)
The denotational semantics of programming languages
Communications of the ACM
An axiomatic basis for computer programming
Communications of the ACM
High speed compilation of efficient object code
Communications of the ACM
A Calculus of Communicating Systems
A Calculus of Communicating Systems
A Discipline of Programming
A Theory of Programming Language Semantics
A Theory of Programming Language Semantics
A technology relative Logic Synthesis and Module Selection system
DAC '81 Proceedings of the 18th Design Automation Conference
Algorithms for multiple-criterion design of microprogrammed control hardware
DAC '81 Proceedings of the 18th Design Automation Conference
A formal method for the specification, analysis, and design of register-transfer level digital logic
DAC '81 Proceedings of the 18th Design Automation Conference
DAC '78 Proceedings of the 15th Design Automation Conference
Automatic design with dependence graphs
DAC '80 Proceedings of the 17th Design Automation Conference
Automated proofs of microprogram correctness
MICRO 9 Proceedings of the 9th annual workshop on Microprogramming
A formal approach to code optimization
Proceedings of a symposium on Compiler optimization
The CMU design automation system: An example of automated data path design
DAC '79 Proceedings of the 16th Design Automation Conference
Automated exploration of the design space for register-transfer (rt) systems.
Automated exploration of the design space for register-transfer (rt) systems.
Power, efficiency, and correctness of transformation systems.
Power, efficiency, and correctness of transformation systems.
Predicate path expressions: a high-level synchronization mechanism
Predicate path expressions: a high-level synchronization mechanism
Fault simulation at the architectural level
ITC'84 Proceedings of the 1984 international test conference on The three faces of test: design, characterization, production
Hi-index | 14.98 |
As part of our research on the Carnegie-Mellon University Design Automation System, we have been investigating methods for proving that the system produces correct designs from correct specifications. We have developed a mathematical model for the behavior of hardware descriptions, which we have used to prove that some of the optimizing transformations used in the design system preserve behavioral equivalence. The model, which is based on regular expressions modified by predicates to show data dependence, goes beyond the usual computational models used in program verification, in that it takes into account the proper sequencing of those "events" which represent interactions with the environment. This paper presents the model, shows how it can be used to represent the behavior of descriptions in an ISP-like hardware description language, and gives an example proof of a transformation.