WebMIPS: a new web-based MIPS simulation environment for computer architecture education (original) (raw)

Design of a Microsoft Version of MIPS Microprocessor Simulator

2008

We describe the implementation of a MIPS Simulator called MIPS-SIM. MIPS-SIM is a GUI, Java-based simulator for the MIPS assembly language. MIPS, the computer architecture is widely used in industry and is the basis of the popular textbook Computer Organization and Design by David Patterson and John Hennessy, used at over 400 universities. The third edition of this text (published by Morgan Kaufmann in 2005) uses standard 32-bit MIPS as the primary teaching ISA. The MIPS-SIM simulator has been implemented for educational purposes with characteristics that are especially useful to undergraduate computer science and engineering students and their instructors who use the above textbook. MIPS-SIM should be useful in courses such as computer organization and architecture, assembly language programming, and compiler writing. MIPS-SIM implements almost the entire MIPS32 assembler-extended instruction set. MIPS-SIM also provides a simple debugger and minimal set of operating system services. We test MIPS-SIM simulator by running several MIPS assembly programs. Results prove the accuracy, correctness, effectiveness and usefulness of MIPS-SIM.

UCO.MIPSIM: PIPELINED COMPUTER SIMULATOR FOR TEACHING PURPOSES

Since pipelining is a very important implementation technique for processors, students in Computer Science need to achieve a good understanding of it. UCO.MIPSIM simulator has been developed to support teaching such concepts. This paper introduces the basics of pipelining and describes UCO.MIPSIM, its main components and its functions. The learning effectiveness of the simulator has been tested by means of the comparison with two learning tools, the traditional paper and pencil and another pipelined computer simulator. In this way, a tool evaluation methodology is also introduced.

Three Simulator Tools For Teaching Computer Architecture

2001

Teaching computer architecture (at any level) is not an easy task. A critical mass of educators has begun using visualizations of different computer architectures based on simulators to enhance learning. Here we present three representative computer simulators for learning which show: (1) a growing consensus for computer simulation as a teaching tool for complex dynamic processes such as computer architecture and (2) one solution to meet the wide spectrum of target populations and didactic goals for teaching computer organization and architecture. The three simulators we describe are: (1) EasyCPU for the Intel 80X86 family of computer architecture, (2) Little Man Computer for a general von Neumann computer architecture and (3) RTLsim a data-path simulator for a MIPs like CPU. We discuss the additional benefits of computer simulators in terms of flexibility, financial support, obsolesence, accessibility, and research. An appendix is provided for more detailed instructions for each si...

Three simulator tools for teaching computer architecture: Little Man computer, and RTLSim

Journal of Educational Resources in Computing, 2001

Teaching computer architecture (at any level) is not an easy task. To enhance learning, a critical mass of educators has begun using simulator visualizations of different computer architectures. Here we present three representative computer architecture simulators for learning which show that there is a growing consensus for computer simulation as a teaching tool for complex dynamic processes, such as underlying computer operations. Simulators also show the wide spectrum of pedagogical goals for teaching computer organization and architecture. Specifically, the three simulators we describe are (1) EasyCPU for the Intel 80x86 family of CPUs; (2) Little Man Computer for a general von Neumann computer architecture; and (3) RTLSim, a data path simulator for a MIPS-like CPU. An appendix is provided for more detailed descriptions of each simulator.

Simulators for courses in advance computer architecture

Facta universitatis - series: Electronics and Energetics, 2005

The usage of simulator in teaching computer architecture courses has proven to be the most acceptable way, especially when the simulators offer rich graphical and visual representation of the architecture. In this paper we present several simulators used to teach ILP (Instruction Level of Parallelism) courses. The simulators cover wide area of concepts such as internal logic organization, datapath, control, memory behavior, register renaming, branch prediction, and overall out of order execution. Special dedicated simulators cover details in internal organization like Tomasulo approach and scoreboard for organization of reservation stations. This innovative approach in laboratory exercises is used for advanced ILP course.

Workshop on Computer Architecture Education

2006

9:05 Keynote, “A systems approach to teaching computer systems, ” Frans Kaashoek, MIT.................... 2 Session 2. Embedded systems, 10:05–10:30 10:05 Experiences with the Blackfin architecture in an embedded systems lab, Michael Benjamin, David Kaeli, and Richard Platcow, Northeastern University........................................................................ 3 Break 10:30–11:00 Session 3. Simulation environments 11:00–12:30 11:00 “PSATSim: An interactive graphical superscalar architecture simulator for power and performance analysis, ” Clint W. Smullen, IV and Tarek M. Taha, Clemson University................. 10 11:25 “An execution-driven simulation tool for teaching cache memories in introductory computer

p88110: A Graphical Simulator for Computer Architecture and Organization Courses

IEEE Transactions on Education, 2000

Studying fundamental computer architecture and organization topics requires a significant amount of practical work if students are to acquire a good grasp of the theoretical concepts presented in classroom lectures or textbooks. The use of simulators is commonly adopted in order to reach this objective. However, as most of the available educational simulators focus on specific topics, different laboratory assignments

Computer Simulator: An Educational Tool for Computer Architecture

American Journal of Applied Sciences, 2006

The great advancement in computer architecture and cache memory design and technology had a considerable influence on the way computer architecture was taught in universities. This requires students to be able to visualize the detailed activities that take place within a computer processor and its interaction with memory system. Computer simulators could effectively be used to enhance the understanding and comprehension of cache memory operation. The main objective of this project was to design and implement a computer simulator that was used as an educational tool. This paper presents design specifications, implementation and the functional and structural components of this simulator. This allows students understand the concepts and theory of the computer hardware topics by constructing and verifying knowledge, testing and comparing several different configurations and memory access. Although there was a large number of computer simulators in the market, this simulator differs in the way it contains a specially designed assembler that feeds the simulator with the binary code. In this context it was a tool that provides a high educational value that, on one hand, helps students learn to write an error-free assembly code and on the other hand comprehend the activities that take place during the execution of the program under different settings. At the front-end of the system there are two parts; the editor and the simulator while at the back-end there are the system specially developed assembler and database.

Procedures based on simulation and hardware for a computer architecture course

Computer Applications in Engineering Education, 2002

In this study, a procedure planning for a Computer Architecture Course that tries to create a balance between simulation and laboratory procedures is presented. For this planning, we use hardware implementation for parts of this subject that require careful dedication because of its complexity: interconnection networks and parallel processing. On the other hand, we use simulation packages for the teaching of pipelined and vectorial processors. ß

Using two Educational Simulator Tools for Computer Architecture Teaching and Learning Support

International Journal of Computer Applications

Simulators are commonly used in any computer architecture course as primary tools for supporting the teaching and learning activity. We have developed two educational simulator tools to support teaching and learning of the MESI cache coherence protocol and dynamic scheduling using Tomasulo's Algorithm. We have used these simulators during the spring semester of the academic year 2016-2017, in the context of the "Advanced Computer Architecture" course offered by the Informatics department of the Technological Educational Institute (T.E.I.) of Athens. In this paper we briefly present these simulators and evaluate their impact on the learning process. The results are presented both qualitatively and quantitatively and are strongly indicate that the use of the two simulators can effectively support the learning process and enhance learning.