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