Teaching and Learning Support For Computer Architecture and Organization Courses Design On Computer Engineering and Computer Science For Undergraduate A Review
Teaching and Learning Support For Computer Architecture and Organization Courses Design On Computer Engineering and Computer Science For Undergraduate A Review
Abstract—Understanding computer system hardware is basic technique, the mechanism of the I/O. Computer Organization
for the undergraduate student which study in the computer area. while studying part associated with the operational units of
System user always needs a faster, cheap and reliable process computer and the relationship between the components of a
which is conducted by it computer system self. To fulfill that computer system, for example, control signals, interfaces,
process is required how a computer works from their design and memory technology. From that situation, there is too much
how they operate. That course is conducted by Computer difference between CS and CE for their body of knowledge
Architecture and Organization (CAO) course. Two computer about how they learn about CAO. CE has 60 core hours [3] but
undergraduate area which studies CAO is Computer CS has 16 core hours to study CAO [4]. So it will give a huge
Engineering (CE) and Computer Science (CS). To support great
impact to what kind and deep of course that given to the
learning at CAO both CE and CS needs to not just study which
student.
has a material course but they had to practically study computer
architecture and design by the simulator. Why simulator is To support great learning achievement, the course needs a
chosen, because to create computer such as CPU, RAM etc. needs simulator to help the student learn about CAO. Some university
big systems that can manufacture them. Nowadays too much using a low-cost microcontroller as tools for teaching
freely available simulator that can be downloaded and used Computer Architecture and Organization[5]. But it is still
anytime, but not all simulators meet study requirements and lacking for designing computer system competencies because
didn’t meet the CAO Learning Outcome. CS and CE have an we using an already built system. Some university also using
international curriculum that given by ACM Computing
VHDL with the help of an FPGA to design a Multicore
Curricula. So this paper is discussed what kind of simulator that
meets Computing Curricula requirement to implement at
CPU[6]. But this approach assumes that the students already
learning process which helps the instructor to choose simulator have the basic knowledge so it can be done at one semester. So,
that can be able to grasp knowledge that delivered to the student. this approach can be implemented in Master/Magister level but
is difficult in Bachelor/Undergraduate level. At the
Keywords—Computer Organization and Architecture; undergraduate level, visualization of different architectures
Computer Engineering; Computer Science; Simulator; enhances the learning process among students by using
simulators [7].
I. INTRODUCTION
Nowadays, there are many freely available simulators that
Computer System plays an integral role in all engineering can save time resource, ease of use, and have the capacity to
profession. Users always demanding a fast, powerful but cheap learn the basic concept of computer architecture. The basic for
at its cost[1]. Based on users demand, system designer needs to the students is totally different in CE and CS because different
understand processor component (ACM, Computer course was given, for example Digital System (DS) course [3]
Engineering Curricula 2016 2015), design, operation and their [4]. DS is the basic of CAO and their comprehension is totally
impact on overall performance of computer systems [1]. different. So in this research would learn about the requirement
Advancement in computer system hardware and Software to of students, to review the provided simulator and perform
satisfy the user, but it will difficult to meet user demands [2]. suitable instructional design to be given to the students. So we
Nowadays advancement in Faculty of Computer Science, can choose which simulator that meets the requirement to study
Computer Architecture and Organization (CAO) for an CAO both CE and CS.
undergraduate student is basic of all departments inside of the
II. COMPUTER ARCHITECTURE AND ORGANIZATION COURSES
faculty. Two of several departments who meet an advance of
CAO is Computer Science (CS) and Computer Engineering For an undergraduate student, there is too many differences
(CE) [3] [4]. At CAO, Computer Architecture study attributes - between Computer Engineering (CE) and Computer Science
attributes of a computer system related to a programmer. For (CS). Computer Architecture and Organization (CAO) all have
example a set of instructions, arithmetic used, addressing been proposed at Computing Curricula for CS at 2013 and for
CE at 2016. Their learning outcome is different too. Their discuss about memory devices and systems. The most
differences will be explained in this section and course material important device is a magnetic disk, RAID until optical
was given based on the book of William Stalling [8]. memory.
A. CAO For CE 8) I/O Interfacing and Communications (7 hours); the
Computer Engineering has 60 core hours for Computer third key of computer element is I/O modules. Each I/O
Architecture and Organization Course based on Computing module interfaces to the system bus, central switch or controls
Curricula for Computer Engineering 2015 [3], which is: more than one peripheral devices. I/O modules contain logic
1) History and Overview (1 hour); this chapter is to to performing communication function between peripheral and
introduce the first computer that has been developed and their bus.
development until present. From the vacuum tube technology 9) Peripheral Subsystems (7 hours); a wide variety of
until Ultra Large Scale Integration Computer. Integrated peripheral can be conducted by various method operation from
Circuit, embedded system, a microprocessor that has been the processor to control range devices. This chapter will
developing until their clock speed. conduct the peripheral data transfer. Sometimes peripheral
2) Relevant tools, standards, and/or engineering data transfer rate is much slower than the memory of a
constraints (1 hour); this chapter is focused on knowing and processor. On another hand, it can be faster. The different
measurement factor system attributes. How to do desirable data format in peripheral that attached to the computer is
benchmark strategy until Ahmdal and Little Law. discussed too.
3) Instruction Set Architecture (10 hours); this chapter is 10) Multicore Architecture (6 hours); this chapter
to learn about one boundary where the computer designer and provides an overview multicore systems. First with analyzing
programmer can view the machine instruction set. Functional hardware performance factor that brings development to a
processor requirement to implement processor machine multicore computer rather than the software challenges to
instruction set. The focus is to know how that instruction does. improve multicore systems. After learning multicore
Examining the type of operand and operator that specified by organization, it discussed how to examine three examples of
machine instruction set. Two big issues that discussed here, multicore product from Intel, ARM, and mainframes.
first how operand specified the address, and second how to 11) Distributed System Architecture (3 hours); last
organize the bits of instruction gained to define operand chapter, beginning with an overview of superscalar
addresses and that operation. approaches that contrasting with superpipelining. Second key
4) Measuring Performance (3 hours); this chapter is design issues that associated with superscalar implementation
extended from the previous meeting. This chapter is focused are their architecture. This chapter is discussed about most
in how to benchmark the systems based a common prominent approaches to the parallel organization about cache
measurement method.. A common processor measurement is coherence, multithreaded processor, and chip multiprocessor.
a rate at how long the instruction executed expressed as Afer that, the last is describing clusters which consist multiple
Millions of Instruction Per Second (MIPS). That measurement independent computers that organized.
has proven inadequate to evaluating processors performance At Computer Engineering, the Learning Outcomes (LO) [3]
based on their architecture. of CAO are:
5) Computer Arithmetic (3 hours); this chapter is started 1) Explain the differences between computer architecture
with an overview of Arithmetic and Logic Unit (ALU). This and computer organization.
chapter is focused on learning complex ALU aspect and his 2) Visualize the main components of the computer.
arithmetic. 3) Explain the reasons and strategies for each different
6) Processor Organization (10 hours); this chapter computer architecture with their strengths and weaknesses.
introduced and discussed processor organization from the 4) Identify many techniques to achieve high-performance
basic organization until high-level organization. Started with computing such as parallel and distributed architectures.
summary processor organization, register as a processor 5) Describe how computer engineering uses or benefits
internal memory then analyze it. This chapter also discussed from computer architecture and organization.
about pipelining, the example is pipeline that used in x86 and B. CAO For CS
ARM. It sets the stage for the discussion of RISC and Computer Science has 16 core hours for Computer
superscalar architecture. Architecture and Organization Course based on Computing
7) Memory System Organization and Architecture (9 Curricula for Computer Science 2013 [4], which is:
hours); this chapter is to learn about internal and external 1) Digital Logic and Digital System (3 hours); different
memory. First examining key of computer memories from CE, first it is discussed about understanding the basic
characteristics and a cache memory which is an essential concept and terminology of number systems. Explaining the
element of all modern computer systems. It also learn about technique for converting between digital and binary and
ROM, DRAM, and SRAM memories. Then it is discussing explain the rationale that why hexadecimal notation is being
their error control technique that used to enhance memory used.
reliability. External memory is being examined too. Then it
Proc. EECSI 2017, Yogyakarta, Indonesia, 19-21 September 2017
d) Visualize the five state of the process inside it uses the panel, not monitor like a modern computer. The
Operating System layer. block diagram of the computer system is also invisible
e) Visualize the memory management done (cache because it only shows the GUI for the user who looks at the
memory for example) in a computer system. physical appearance of the computer. Can’t see the circuit
2) CE Student: For CE students, we can see from the detail of the computer
computing curricula that they need the full concept of CAO. c) CAO for CE using ENIAC: History and Overview
So we choose both Logisim and CPU-OS Simulator because d) CAO for CS using ENIAC: NA
what can’t be done in CPU-OS Simulator can be done in
Logisim. Logisim has some features that don't exist within
CPU-OS Simulator which is:
a) Designing and building a logic circuit from gates
such as AND gate, OR gate, etc.
b) Ability to simulate and visualize digital signal at each
cycle of the clock (rising edge and falling edge).
c) Visualize connecting multiple object or component
via wiring.
d) Insert and debugging the code in its “true” machine
code form.
3) Course Design for CS 2013 and CE 2016: It is must be
considered that the simulator must be usable to make the
students can easily visualize what they learn inside the Fig. 2 ENIAC User Interface [10]
classroom.
2) VVM: The Visible Virtual Machine. This simulator
IV. RESULT AND DISCUSSION used to simulate the fetch-execute cycle of the computer
After discussing requirement analysis about differences system based on Von Neumann Machine. This simulator
teaching material between CS and CE, then in this chapter, we provides an environment that integrated for development the
will discuss the depth of each chapter that learned and about simplest computer architecture [11].
the detailed characteristic of which simulator that selected. In
this chapter will be an analysis of the suitability of the
simulator device with each course either from CS or CE. Each
simulator has its own advantages and disadvantages. In this
chapter, we will analyze the suitability between simulator
devices with each course from CS and CE.
Because each simulator has its own advantages and
disadvantages, this causes the analysis which is performed will
get different results. Here we will present the results of our
analysis. This causes the analysis performed will get different
results. We will present in the form Pros, Cons, CAO for CE
and CAO for CS. Pros are a simulator that has an advantage at Fig. 3 VVM User Interface [11]
CAO teaching and Cons is their disadvantage at teaching
material. CAO for CE is teaching material that accommodated
by the simulator for Computer Engineering. CAO for CS is a) VVM Pros: Have GUI. Can see the content of the
teaching material that accommodated by the simulator for Accumulator Registers, Program Counter Register, RAM
Computer Science. Here we will present the results of the (address & data). The user can manually input the program.
analysis that we do. Can see the flow of data inside the Von Neumann Machine
Architecture
1) ENIAC: Electrical Numerical Integrator and Computer. b) VVM Cons: Using machine language, a user who
This simulator simulating the first computer that developed only studies the HLL language must first learn assembly.
[10]. Using a decimal based number. The output is a printer. Can’t see the circuit detail of the computer, can only see the
Input is IBM punch card. big picture of its architecture.
c) CAO for CE using VVM: History and Overview
a) ENIAC Pros: Have Graphical User Interface
d) CAO for CS using VVM: NA
b) ENIAC Cons: Difficult for using and see the result.
3) MARS: a simulator for MIPS assembly language such
The user must first learn how to input the command and data
as how to implement addition and multiplication, for and
because it uses decimal dial, not a keyboard like a modern
computer. The user must learn to how to see the result because while loop, etc in MIPS assembly language [12].
Proc. EECSI 2017, Yogyakarta, Indonesia, 19-21 September 2017
a) MARS Pros: Have GUI. Good for learning machine d) CAO for CS using Logisim: Digital Logic and
language (Instruction Set Architecture) and how to implement Digital System, Machine-Level Representation of Data
it (for loop, while loop, etc). Can see how a data value is 5) SPIM: this simulator runs and executes a MIPS
represented by hexadecimal. Can see the content of the assembly language in 32-bit processor and provides a
general purpose registers debugger and minimal set of operating system services [14].
b) MARS Cons: Using machine language, a user who
only studies the HLL language must first learn assembly. Not
showing the flow of data and the architecture of the machine.
Can’t see the circuit detail of the computer
c) CAO for CE using MARS: Instruction Set
Architecture
d) CAO for CS using MARS: Machine-Level
Representation of Data, Assembly Level Machine
Organization
user can see how HLL be compiled into machine language. [2] R. Hasan and S. Mahmood, "Survey and Evaluation of
Have an interrupt feature. Can see the memory system. Have Simulators Suitable for Teaching for Computer
simulator for operating system (OS) Architecture and Organization," in Proceedings of 2012
b) CPU-OS Cons: Not showing the flow of data and the UKACC International Conference on Control, 2012.
architecture of the machine. Can’t see the circuit detail of the [3] ACM, Association for Computing Machinery, "Computer
computer Engineering Curricula 2016," IEEE, 2015.
c) CAO for CE using CPU-OS: Instruction Set [4] ACM, Association for Computing Machinery, "Computer
Architecture, Measuring Performance, Computer Arithmetic, Science Curricula 2013," IEEE Society, 2013.
Processor Organization, Memory System Organization and
[5] D. C. T. Lo, K. Qian and L. Hong, "The Use of Low-Cost
Architecture
Portable Microcontroller in Teaching Undergraduate
d) CAO for CS using CPU-OS: Machine-Level Computer Architecture and Organization," in IEEE
Representation of Data, Assembly Level Machine Second Integrated STEM Education Conference, 2012.
Organization, Memory System Organization and Architecture
[6] M. Reichenbach, B. Pfundt and D. Fey, "Designing and
V. CONCLUSION AND FUTURE WORK Manufacturing of Real Embedded Multi-Core CPUs: A
Learning process not only to talk and discuss. The Holistic Teaching Approach in Computer Architecture,"
development for the teaching material is also critical to conduct in 10th European Workshop on Microelectronics
an educating CAO. The learning process between CE and CS is Education (EWME), 2014.
totally different, their LO about CAO is different too. [7] O. A. Siddiqui, R. Hasan, S. Mahmood and A. R. Khan,
Therefore in this paper, we presented the important thing about "Simulators as A Teaching Aid for Computer
how using the simulator to support the learning process. The Architecture and Organization," in 4th International
criteria of the selection simulators based on a simulator that can Conference on Intelligent Human-Machine System and
accommodate teaching materials and have the capacity to Cybernetics, 2012.
deliver lectures anywhere and anytime. So we propose when
and what topics at CAO and what simulators are used which is: [8] W. Stallings, Computer Organization and Architecture
1) For CS students: Machine-Level Representation of Data (Designing for Performance), Ninth Edition, Pearson
Education, Inc., 2013.
(CPU-OS Simulator); Assembly Level Machine Organization
(CPU-OS Simulator); Memory System Organization and [9] B. Mustafa, "Modern Computer Architecture Teaching
Architecture (CPU-OS Simulator) and Learning Support: An Experience in Evaluation," in
2) For CE students: Computer Arithmetic (Logisim); International Conference on Information Society (i-
Processor Organization (Logisim); Memory System Society), 2011.
Organization and Architecture (CPU-OS Simulator and [10] T. Zoppke, R. Rojas, "The virtual life of ENIAC:
Logisim); I/O Interfacing and Communication (CPU-OS simulating the operation of the first electronic computer,"
Simulator and Logisim) EEE Annals of the History of Computing, vol. 28, no. 2,
In the future, we hope we can implement the simulator as a pp. 18-25, April-June 2006.
tool to aid teaching CAO to both CS and CE students. Then we [11] C. Bruce, G. Mohay, G. Smith, I. Stoodley and R.
will analyze the benefit of the simulator using some pre and Tweedale, Transforming IT Education: Promoting a
post-test before and after using the simulator. Also, we want to Culture of Excellence, US: Informing Science Press,
see are these simulators are suitable or we should change or 2006.
add other simulator software to meet the demand of Learning
Outcome for CAO body knowledge in CS and CE students. [12] K. Vollmar and P. Sanderson, "MARS: An Education-
Oriented MIPS Assembly Language Simulator," in
AUTHORS AND AFFILIATIONS ACKNOWLEDGMENT Proceedings of the 37th SIGCSE technical symposium on
Thanks to Computer Engineering and Computer Science Computer science education, Houston, Texas, USA,
Departments, Faculty of Computer Science, Brawijaya 2006.
University. This paper is proposed to deliver Computer [13] Timothy Stanley, Vasu Chetty, Matthew Styles, Shin-
Architecture and Organization Courses. Computer Architecture Young Jung, Fabricio Duarte, Tin-Wai Joseph Lee,
and Organization courses have been delivered in Computer Michael Gunter, and Leslie Fife, "Teaching computer
Engineering and Computer Science Departments. architecture through simulation: (a brief evaluation of
CPU simulators)," Journal of Computing Sciences in
REFERENCES
Colleges, vol. 27, no. 4, pp. 37-44, 2012.
[1] A. S. Nayak and M. Vijayalakshmi, "Teaching Computer [14] Kenneth Vollmar and Pete Sanderson, "A MIPS
System Design and Architecture Course – An assembly language simulator designed for education,"
Experience.," in Innovation and Technology in Education Journal of Computing Sciences in Colleges, vol. 21, no.
(MITE), IEEE International Conference in MOOC, 2013. 1, pp. 95-101, 2005.