Skip Navigation

The Computer Journal 2002 45(1):2-11; doi:10.1093/comjnl/45.1.2
© 2002 by British Computer Society
This Article
Right arrow Full Text (PDF)
Right arrow Alert me when this article is cited
Right arrow Alert me if a correction is posted
Services
Right arrow Email this article to a friend
Right arrow Similar articles in this journal
Right arrow Similar articles in ISI Web of Science
Right arrow Alert me to new issues of the journal
Right arrow Add to My Personal Archive
Right arrow Download to citation manager
Right arrow Search for citing articles in:
ISI Web of Science (2)
Right arrowRequest Permissions
Google Scholar
Right arrow Articles by Barringer, H.
Right arrow Articles by Williams, A.
Right arrow Search for Related Content
Social Bookmarking
 Add to CiteULike   Add to Connotea   Add to Del.icio.us  
What's this?

Rainbow: Development, Simulation and Analysis Tools for Asynchronous Micropipeline Hardware Design

Howard Barringer1, Donal Fellows1, Graham Gough1 and Alan Williams1

1 Department of Computer Science, University of Manchester, UK Email: rainbow@cs.man.ac.uk

Recently, there has been considerable interest in asynchronous design techniques, particularly at the chip level. New compositional approaches, such as Sutherland's micropipeline design philosophy, have greatly assisted development. However, sophisticated CAD systems for such specialized asynchronous systems are not yet widely available, hampering the development of asynchronous design. The Rainbow asynchronous design framework is based upon a high-level multi-view design representation for micropipelines. The system contains a collection of formally based design representation and support tools. The Green sub-language supports textual/schematic static dataflow descriptions. Yellow is an imperative, control-flow parallel language, with an Ada-like rendezvous. Tables allow concise definition of combined functional and dataflow control blocks. The sub-languages have common sets of data expressions, functions and types. The formal semantics for the Rainbow sub-languages is defined via a specialized process term language called APA, producing a compact, direct semantic representation with little unnecessary encoding. APA has micropipeline primitives, uses rich structured actions and anextended Ada-like rendezvous as its atomic communication. These features enable the semantics to be defined at a suitable high level of abstraction, i.e. micropipelines. The semantic representation acts as a basis for formal analysis tools, with the aim of extending their tractability. The Rainbow design system contains textual and graphical editors for design entry, and compilation and simulation tools, supporting animation of schematics. State generation tools provide an interface to external formal analysis systems. Rainbow currently incorporates a novel on-the-fly CTL* model checker. The MARBLE asynchronous bus design from the AMULET3 microprocessor is used as an example.


Add to CiteULike CiteULike   Add to Connotea Connotea   Add to Del.icio.us Del.icio.us    What's this?




Disclaimer:
Please note that abstracts for content published before 1996 were created through digital scanning and may therefore not exactly replicate the text of the original print issues. All efforts have been made to ensure accuracy, but the Publisher will not be held responsible for any remaining inaccuracies. If you require any further clarification, please contact our Customer Services Department.