For project submission and automatic grading, we are running a dedicated server at http://sys.snu.ac.kr. If you want to access the sys server outside of the SNU campus, please send a mail to the instructor.
Project #4: Optimzing Program for a Pipelined Y86-64 Processor
In this project, you will learn how to optimize the performance of a program on a pipelined Y86-64 processor. Our target is the pipelined Y86-64 processor implementation called PIPE-Stall that does not support data forwarding. You need to optimize the bmp_diag() function written in Project #3 so that you can get the most out of the PIPE-Stall processor.
- Project specification and skeleton code available here
- Due date: 11:59PM, June 16.
Project #3: Drawing diagonal lines in an image
In this project, you will implement a basic image processing program using the x86-64 assembly language. An image file in the BMP format will be given as an input to your program. This assignment aims at introducing various primitive instructions provided by the x86-64 assembly language. In addition, you will learn the basic structure of the BMP image file.
- Project specification and skeleton code available here
- Due date: 11:59PM, May 19.
Project #2: TinyFP (8-bit floating point) Representation
The goal of this project is to get familiar with the floating-point representation by implementing a simplified 8-bit floating-point representation.
- Project specification and skeleton code available here
- Due date: 11:59PM, April 14.
Project #1: Converting Fixed-Point to Floating-Point
The purpose of this project is to understand the fixed-point representation. Another goal is to make your Linux development environment ready and to get familiar with our sys server for project submission.
- Project specification and skeleton code available here
- Due date: 11:59PM, March 31.