An Object-Oriented Educational Tool to Simulate Multilevel Computer Architectures

Abstract We describe a simulator that is a useful supporting tool in all activities involving computer architecture teaching. The system, developed using an object-oriented approach, integrates in a single tool different architecture models, such as CISC and RISC architecture types, and different computer levels, such as microprogramming and instruction set levels. The system allows the user to define the computer architecture at the instruction set level and then to switch automatically to the lower level of the corresponding micro-architecture. The simulation process consists of a loop, in which two strictly correlated phases are executed: the definition phase, in which the user defines the architecture through a choice of hardware components, and a test phase, in which the user tests the designed architecture in order to verify the result of the design activity of the previous phase. Once the processor design has been completed through this simulation process, the tool allows the user to save and use a stand-alone simulator of the target computer architecture. The definition and simulation activities of the computer architecture are supported by a graphical user interface for an effective, easy-to-use teaching environment.

[1]  Richard R. Eckert,et al.  A Microprogrammed Computer Simulator , 1987, IEEE Transactions on Education.

[2]  Robert A. Campbell Introducing computer concepts by simulating a simple computer , 1996, SGCS.

[3]  Luqi Software evolution through rapid prototyping , 1989, Computer.

[4]  Henk Neefs,et al.  ESCAPE: environment for the simulation of computer architectures for the purpose of education , 1998, WCAE '98.

[5]  Murat M. Tanik,et al.  Rapid Prototyping in Software Development , 1989 .

[6]  Filippo Tangorra,et al.  Prolog simulation of computer architecture in laboratory activities , 1992 .

[7]  Filippo Tangorra The role of the computer architecture simulator in the laboratory , 1990, SGCS.

[8]  Roland N. Ibbett,et al.  Computer architecture visualisation techniques , 1999, Microprocess. Microsystems.

[9]  R. Mark Meyer CANLOGS: a logic gate simulator for all seasons , 1996, SIGCSE '96.

[10]  Dale Skrien,et al.  A multilevel simulator at the register transfer level for use in an introductory machine organization class , 1991, SIGCSE '91.

[11]  William A. Wulf,et al.  Object-oriented techniques in hardware design , 1994, Computer.

[12]  G. Michael Schneider,et al.  MSIM: an improved microcode simulator , 1995, SGCS.

[13]  Ad Verschueren An object oriented design and simulation system for VLSI , 1990 .

[14]  Scott A. Mahlke,et al.  IMPACT: An Architectural Framework for Multiple-Instruction-Issue Processors , 1998, 25 Years ISCA: Retrospectives and Reprints.

[15]  Andrew S. Tanenbaum,et al.  Structured computer organization; (2nd ed.) , 1984 .

[16]  A. Clements,et al.  Selecting a processor for teaching computer architecture , 1999, Microprocess. Microsystems.