HARD - hardware simulation in education

  • Authors:
  • Ivan Tomek

  • Affiliations:
  • Acadia University, Wolfville, Nova Scotia, Canada

  • Venue:
  • SIGCSE '81 Proceedings of the twelfth SIGCSE technical symposium on Computer science education
  • Year:
  • 1981

Quantified Score

Hi-index 0.00

Visualization

Abstract

Introduction to digital circuits and computer organization is usually a required course in computer science curricula. The subject is often taught as a textbook course although experience shows that students enormously benefit from simple laboratory experiments and enjoy them. Another form of contact with basic physical realities is via computer simulation of hardware. The use of simulation can not only replace experiments if necessary but also add insight into aspects of the function of hardware not easily observable in the lab, such as the effect of delays and noise and allow the study of phenomena that cannot be observed such as data transfer between registers hidden inside a component. Exposure to simulation also introduces students to one major application of computers - simulation - which is often some-what neglected in computer science curricula. Moreover, simulation is becoming an essential component of design and student's perspective of the design process is incomplete without some experience with it. Three main reasons why hardware simulation is not usually used in introductory hardware courses are the orientation of typical hardware simulation languages towards the professional designer and the resulting structure poorly suited for education, the scarcity of easily available, inexpensive, and portable languages, and the lack of coverage of the subject in most textbooks on hardware. A hardware simulation language called HARD developed at Acadia University is an attempt to remedy the above mentioned problems. It is designed specifically for education. It includes features typically required in a computer organization course, namely simulation at the gate and RTL levels, and simulation of delays and noise. The syntax is quite flexible in that there are practically no reserved words. The language is not based on any programming language so that no previous experience with computers is necessary. The structure of circuit descriptions is natural and English-like. The translator and simulator are interactive. The language allows modular descriptions and their connections into multi-level hierarchies as required by the problem. The system is very portable since it is written in Pascal with a minimal use of non-standard features. The language is not as complete as a professional design tool since its intended use is in education. It is, however, expected that new features will be added to it in the future in response to the feedback from the system's users.