<XML><RECORDS><RECORD><REFERENCE_TYPE>3</REFERENCE_TYPE><REFNUM>7058</REFNUM><AUTHORS><AUTHOR>O'Donnell,J.T.</AUTHOR></AUTHORS><YEAR>1995</YEAR><TITLE>From transistors to computer architecture: Teaching functional circuit specification in Hydra</TITLE><PLACE_PUBLISHED>Symposium on Functional Programming Languages in Education (FPLE'95), LNCS 1022 </PLACE_PUBLISHED><PUBLISHER>LNCS, Springer</PUBLISHER><PAGES>195-214</PAGES><LABEL>O'Donnell:1995:7058</LABEL><KEYWORDS><KEYWORD>hardware description language</KEYWORD></KEYWORDS<ABSTRACT>Hydra is a set of methods and software tools for carrying out digital circuit design using Haskell. It has been used successfully for three years in the third-year course on Computer Architecture at the University of Glasgow, with plans to extend its use to the advanced fourth-year course. Some of its innovative features are: Signal type classes; support for CMOS and NMOS design; a large family of higher order combining forms; a set of tools for simulation; a language for expressing control algorithms; and automated tools for deriving control circuits from control algorithms. The system contains a rich library of circuits, ranging from low level implementations of logic gates using pass transistors to complete processor designs. The chief benefit of using functional circuit specification to teach computer architecture is that a complete computer system design can be presented, at all levels of abstraction, with no details omitted, giving students a genuine understanding of how computers work.</ABSTRACT></RECORD></RECORDS></XML>