Computer Architecture
SungKyunKwan University Hee Yong Youn
1
Computer Architecture
Spring 2018
Course Project
Objective
The purpose of the project is to provide the students with an opportunity for materializing the concepts
learned in the lecture by applying them to an actual problem. Understanding on the relation between
high level language, instruction set architecture, compilation, and assembly will become more clear
through the project, which is a key factor in designing a digital computer system. The technique
evaluating the performance of a code through analytical method and computer simulation using a
simulator is also learned. The objective is achieved by solving a pilot problem with a high level
language, compiling the program into MIPS assembly code, and then simulating it using SPIM
simulator. The project is carried by two-person team (or single person for just in case), and in-class
presentation will be made for the selected teams.
Target Problem
In this project a shortest tour is found starting from City-1 and finally returning to it, while visiting
other cities only once. The coordinates of the cities are
City-1(0 ,0), City -2(2,6), City -3(8,4), City -4(7,2), City -5(1,6), City -6(4,9), City -7(3,2).
You need to find the tour in terms of the sequence of the cities visited and the traveling distance.
Organization
The project is organized in three phases.
Phase I: In this phase, the program is coded using a high level language. In the report show the
algorithm adopted, flow chart, source code, and the output. As the output, present the path and the
distance traveled.
Phase II: Manually compile the program into MIPS assembly. The report includes the list of the
assembly code, and the estimated execution time in terms of instruction count. In the assembly
program, put the instruction by which the number of instructions executed can be counted when the
program is run.
Phase III: Simulation using SPIM simulator. Report the simulation output. Compare the predicted
execution time obtained in Phase II and measured execution time.
Schedule: Phase I (April 18), II (May 21), and III (June 11)
Grading: Phase I (30%), II (30%), and III (40%)
Remarks
The report must be typed and printed using word processor, and it should be as precise as
possible for identifying the rationale of the decision you made.
All the notations and format follow the textbook for the sake of uniformity.
The design of previous phases can be changed in the subsequent phase, but the modification
SungKyunKwan University Hee Yong Youn
2
must be clearly identified and justified.
In each phase, submit the reports of the previous phases together.
Along with the hard copy of the final report, submit softcopy of all the source codes and
reports.
For the final presentation, use PPT slide of one page. Show the name of team members,
adopted algorithm, estimated execution time, simulation result. Each team will be given about
2 minutes, and each member is required to spend equal time of oral presentation. Submit the
slide to the TA by June 8 (Fri) 24:00 pm.
You will get better grade when the solution allows
1. shorter tour
2. faster assembly code
3. correct estimation of the execution time