A design flow based on modular refinement
Author(s)Dave, Nirav H.; Ng, Man Cheuk; Pellauer, Michael; Mithal, Arvind
MetadataShow full item record
We propose a practical methodology based on modular refinement to design complex systems. The methodology relies on modules with latency-insensitive interfaces so that the refinements can change the timing contract of a module without affecting the overall functional correctness of the system. Such refinements can exacerbate the unit testing problem for modules whose specifications admit a set of output behaviors for the same input (non-determinism), or modules whose input behavior may be affected by past outputs (feedback). We avoid the difficult problem of generating appropriate unit tests for such modules by using system-level tests as unit tests to verify the correctness of refined modules. We illustrate our methodology by showing how one might develop a microprocessor with an in-order pipeline. We then develop a superscalar pipeline using the in-order pipeline as the starting point. Our methodology leverages the effort of design exploration to reduce the effort of specifying interface contracts and unit testing.
DepartmentMassachusetts Institute of Technology. Computer Science and Artificial Intelligence Laboratory; Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science
Proceedings of the 8th IEEE/ACM International Conference on Formal Methods and Models for Codesign (MEMOCODE 2010)
Institute of Electrical and Electronics Engineers
Dave, Nirav et al. “A Design Flow Based on Modular Refinement.” in Proceedings of the 8th IEEE/ACM International Conference on Formal Methods and Models for Codesign (MEMOCODE 2010), 26-28 July 2010, Grenoble, Switzerland. IEEE, 2010. 11–20. Web. ©2010 IEEE.
Final published version
INSPEC Accession Number: 11499847