Tietokoneen toiminta (4 op), Kevät 2007
Computer Organization I (4 cr), Spring 2007
This page will be updated whenever necessary, i.e. fairly often. Check back at least once a week during the course. The contents of the course may change a little, even at a late stage. There is plenty of new course material and I am quite sure that there are still some mistakes or inconsistencies remaining there. I appreaciate all feedback concerning the course material. Thank you.
27.1.2007 Many TitoTrainer problems have been found to have bugs in them. Sorry about that. The Finnish schedule lists the problems that have been fixed. If your answer did not work and you truly thought it was correct, maybe it was!
16.1.2007 There will be separate opening lecture in English on Friday 19.1.2007 at 12-14 (B119). This lecture will cover the same topics as the Finnish language opening lecture on 15.1.2007.
12.1.2006 The English practice session 3 (Fri 14-16) seems to be full. However, all English speakers should still plan to participate that practise session (study circle meeting). So, sign up to group 99 (queue), and just come to the Friday meeting. Also, there will be second course (make-up) exam about 1 month after the 1st one. You can participate in either one, or both. You need to sign up to the make-up exam the same way yout sign up to final exams.
There are pretty many instructions, but you should read and follow them to pass the course. The 15 minutes used reading the instructions will save at least 60 minutes of your time later on. Please read all instructions, especially this schedule and the study circle guide. Thank you.
The CSMoodle password for this course is (will be): "".
Note: CSMoodle has (temporary) feature, that it (in vain) doubts our certificate. Just click OK every time.
The group meetings begin on the 1st week of the course (week 3, 15-19.1.2007). Study circles are formed in that meeting. There is tentatively one English speaking study circle group meeting time reserved. Please be there at that 1st study circle group meeting 15-19.1.2007. If you do not belong to to any study circle after the first week, you should contact your instructor immeadiately. Students not belonging to any study circle will be removed from the course roster after week 4 (26.1.2007).
If you cancel you participation for this course, it is polite ro inform your own study circle about it, so that no unnecessary strain in caused to them. You can contact them via email, phone or CSMoodle. If a student is not heard for a while (2-3 days?), study circle may deem that student lost and act accordingly. Study circles should not wait for vanished members too long, because the course is only 6 weeks long.
Notice 1: All students must have an account for the Computer Science Department's Linux and Windows systems.
Minoring students must first get a UNIX account, or cc account, from the IT Department. A micro-computer account will not do. You can apply for a UNIX account from your own major subject department. After that, you can apply for a CS Dept. account by a freely formulated e-mail to tktl-luvat (AT) cs.helsinki.fi. Please give your cc account name in this e-mail. (See instructions at http://www.cs.helsinki.fi/compfac/ohjeet/Luvat/uusi.html#sivuainelupa). The account is usually activated the day after processing the application.
Notice 2: In order to be recognized in the course bookkeeping, all students must have registered for this course through the ILMO system at the department. If you have not registered yet, please do so now. Thank you.
Notice 3: Students must have a CSMoodle account to be able to work in a study circle. It is the same as your CS Dept account id. Thank you. Do not forget to sign up for this course in CSMoodle (password "suoRitin") and ask your instructor to enter you in your own study circle in CSMoodle.
Goals
The main goal of the course is to understand the focal features of a computer system from the aspect of the executable program; how is the computer system organized and how does it execute a program? The focus is on running one program at the machine-language level.
The goal is to understand how the processor works at the machine-language level. We will consider how the processor works at the machine-language level from both a general viewpoint and in practice, with the help of a simple sample machine (ttk-91) that has been developed for teaching purposes. The sample machine has been implemented as a simulator and it will be programmed with a (symbolic) machine language.
The goal is to understand the role of the operating system in executing a program.
This goal is described in more detail in the course description.Study Circle Course and Web Course
The course will be realised through study circles. This means that, instead of so-called normal exercise sessions, the students are divided into smaller teams (study circles) where they complete normal exercises as well as larger projects together. The idea behind study circles is that people learn better when they learn together. When students explain things to each other, they learn themselves and/or discover gaps in their own knowledge. Study circles have one compulsory meeting every week with their instructors, and they can meet at other times if they want to. There will be more advice available in the newsgroups, chat rooms and one-on-one web discussions on Moodle.
This course is a web course. This means that it includes the use a considerable amount of online material, and the systematic use of online communication inside the course. To name an example, most of the lectures at this course are covered by self-access online lectures, and revision exercises that are suitable for self-evaluation are attached to each lecture. The exercises will help students form an idea of how they have mastered the material. The course also includes discussion assignments, which will be held in the Moodle newsgroups.
Though this is an web course, it cannot be completed purely as a distance course. Most of the learning process should happen during individual work and teamwork, but it is still necessary to be present at campus at some points in the course.
The course work is carried out in study circles. Some ordinary lectures are included: the initial lecture, the final lecture, and the special, optional lectures held during the course. Most of the course material is presented as online lectures, adapted for self-access. The education is designed to happen through online lectures, study circle work, solving exercises, discussions and completing projects.
The course includes an extra study circle project that reflects (what was done, discovered, experienced) the course exam and the whole of the course. If a study circle does not want to complete this project, students may do it individually or as teamwork with some members of the study circle. It is possible to get a good grade for this course even without completing this project. On the other hand, reflecting over the issues that have been presented is recognized as a good way to learn.
Textbook and simulation environment for machine-language programming
I recommend that you buy Stallings' book ([Stal06] or [Stal03]) as a remedial text, though it is not absolutely necessary. It is hardly worth it to buy Tanenbaum's book ([Tane06] or [Tane99]) just for this course.
- [Stal06], chapters 1-2, 3-3.1, 4.1, 5-5.2, 6-6.1, 7-7.5, 8-8.2, 9-9.2, 10
- [Tane06], chapters 4.2, 7.3-7.4
- The machine language simulator TITOKONE for the sample computer ttk-91.
- A general overview of the ttk-91 computer and its organization: online lectures lu02e, lu03e, and lu04e
General Information
- Please see the course homepage http://www.cs.helsinki.fi/teemu.kerola/tito/index.html for general matters in connection with the course (i.e. other than matters specifically related to this semester's course)
- If you want a fast response from the lecturer (e.g. the webpage does not open etc), please use e-mail. Matters concerning all students in this course will be published on this page and/or in the general newsgroup on CSMoodle.
Instruction Schedule
The instruction schedule contains the times when the person in charge of the course or the instructor will be present in person.
Lectures |
15.1.2007 |
Mon 10-12 (B123) | Teemu Kerola |
15.2.2007 | Thu 12-14 (B123) | Teemu Kerola | |
Group meetings |
15.1.-23.2.2007 (NOTE: starting at 1st week!) |
1. Tue 14-16 (C222 ) |
Jaakko Sorri |
4. Tue 16-18 (B119) | Jaakko Sorri | ||
2. Fri 12-14 (CK111) | Jaakko Sorri | ||
3. Fri 14-16 (CK111) in English |
Jaakko Sorri | ||
Online guidance | 15.1.-23.2.2007 |
CSMoodle Common Discussion Forum |
Kerola, Sorri, Apiola |
Exam Make-up exam |
1.3.2007 ??? |
Exams K2007 | Teemu Kerola |
Evaluation
We want to achieve an evaluation system, where (a) study circle is rewarded for completing the unit, (b) those working much more in study circle will get better grade ja (c) those working much less will see it in their grade.
Most of the grade is based on the exam.
There are more than 60 p available, and 30 p are needed to pass. Normal grade levels are: 1 (30 p), 2 (35 p), 3 (40 p), 4 (45 p) ja 5 (50 p). These can be changed if needed.
Grading is composed on the following components:
- Study circle exercises and discussion assignments: 12 p, minum requirement 0 p
- you get 1 p toward your grade with 10%, and 12 p for 90% of the maximum htp's (home work points)
- Study circle projects: 16 p (22 p, if the extra project is included), minimum requirement 0 p
- TitoTrainer programming assignments: 8 p, minimum requirement 0 p
- Course exam (and make-up exam) max 24 p, minimum requirement 12 p
- you get 1 p toward your grade with each point from the exam
Please see the page on study circles for more details on the grading of study circles.
The bookkeeping shows all course work recorded so far. If you find any mistakes or you do not want your name to show up, please contact the person in charge of the course. Passive, inactive students will be removed. If you are still an active member in this course, but your name is missing from the bookkeeping, please contact the person in charge of the course. In addition to the bookkeeping list, we have also a points list, that shows the points gained toward your grade from various course sections. Discussion problems kt1-kt5 are shown as homeworks LH7-LH11. Projects pr1-pr2 are shown as HT1-HT2. Points from TitoTrainer problems are shown in the exam column KOE 2.
Results and course exam grading guide lines (in Finnish) are shown in web for a few weeks after course grading is completed.
Torrent VCG "streamed" lectures
The initial and final (normal) lectures will be stored into the university Torrent VCG ( Video Conference to Streaming Gateway) server, from which they can be viewed in real time (?) or later on in Windows environments. You need proper codecs which have been already installed into the departmental PC's but for your home machines you may need to install them your self.
The lectures will work at departmental systems with the following browsers and attachments:
- Internet Explorer: QuickTime, RealPlayer, MediaPlayer
- Firefox: QuickTime, RealPlayer
- The easiest to use is probably the RealPlayer, which is downloadable directly from the university.
Support Lectures
Support lectures are for weekly general counceling. There is no specific topic, but answers for questions given by the students. During the Fall 2005 course the support lectures had very low attendance.
This semester (Spring 2006) there is only one support lecture, during the first week. The policy may be changed if needed.
Support lecture attendance is strictly voluntary and there is no attendance bookkeeping.
Web Lectures
Only the first 4 web lectures are in English. Sorry.
To follow an online lecture, you need a plug-in (Macromedia Authorware Web Player) for your browser. It is a standard feature in the department's Windows computers for students. (You cannot install it yourself on the department's computers; neither can you install any other browser plug-ins.) This plug-in only exists for the Windows environment and it works best in the Internet Explorer. Sorry. You can test the plug-in here. The system gives certain relevant warnings when starting the plug-in, but as far as I can see, it is safe to use.
On Computer Science Department computers, students can also follow the online lecture from a Linux environment through the Windows 2003 Terminal Server. The server enables the use of Windows environment and programs, even from Linux computers. You can access the server from department Linux computers simply with the command “windows”. This opens a login box to the Windows system. Login with your usual CS Department username and password. The Authorware plug-in is already installed into the IE on this server. If you want more control over remote access software, you can use the rdesktop (http://www.rdesktop.org) program with the command "/usr/local/bin/rdesktop winserver".
If you have any problems with the Authorware Web Player plug-in, please report them to the person in charge of the course.
There is a User's Manual and a FAQ (mostly in Finnish, sorry) for the use of the online lectures. They are available on the web and accessible from the online lectures, as well.
Web-lectures are also accessible from their common contents page (only in Finnish, sorry).
Titokone and TitoTrainer
We get acquanted with (symbolic) machine language programming with the ttk-91 computer and its (symbolic) assembly language, designed by Auvo Häkkinen especially for educational use [Häkk98]. We have Titokone simulator environment for assembly language development, running and animation. We learn to use Titokone with programming assignments.
As a new course component in Spring 2007 we have TitoTrainer, with which we can automatically check correctness of ttk-91 programs. TitoTrainer keeps track of completed assignments and you points towards your grade from them. TitoTrainer has still beginner's problems. They are listed on web page Features and Problems. Please be patient and report new features and problems to the instructor. Thank you.
Titokone was implemented by Koski software design project in Spring 2004. TitoTrainer was implemented by Kohahdus software design project in Autumn 2006, utilizing earlier prototype designed by Koskelo software design project in Autumn 2004.
Study Circles
There are more detailed guidelines for study circles on a separate page.
Group meetings
The study circles meet at least once a week, with an instructor, at the group meeting. Study circles are formed in the first group meeting. usually the group meetings are used to go through that week's homeworks and to check on project work. It also possibel to ask the group meeting assistant anything about the course, concerning both contents or logistics.
CSMoodle
CSMoodle is department's own Moodle installation. It is a general learning platform for web-learning, but for this course it is used mostly for implementing dicussion groups.
A general Moodle manual is found in english from Moodle pages. (E.g., Documentation / "Student Guide for Moodle" by Ray Lawrence).
Contents and schedule
The rest of the schedule page information (exact schedule and references) will be only on the Finnish Schedule Page. Please read it from there. The text given in English is colored green.