Computer Organization I (Tietokoneen toiminta)

Similar documents
Computer Science. Embedded systems today. Microcontroller MCR

Android App Development for Beginners

Computer Science 141: Computing Hardware Course Information Fall 2012

Course Specifications

CS 1103 Computer Science I Honors. Fall Instructor Muller. Syllabus

Web-based Learning Systems From HTML To MOODLE A Case Study

MASTER OF SCIENCE (M.S.) MAJOR IN COMPUTER SCIENCE

ENEE 302h: Digital Electronics, Fall 2005 Prof. Bruce Jacob

EECS 571 PRINCIPLES OF REAL-TIME COMPUTING Fall 10. Instructor: Kang G. Shin, 4605 CSE, ;

"On-board training tools for long term missions" Experiment Overview. 1. Abstract:

On-Line Data Analytics

A systems engineering laboratory in the context of the Bologna Process

FUZZY EXPERT. Dr. Kasim M. Al-Aubidy. Philadelphia University. Computer Eng. Dept February 2002 University of Damascus-Syria

Embedded Real-Time Systems

FLN Learning Helping your Child succeed

Designing a Computer to Play Nim: A Mini-Capstone Project in Digital Design I

Data Structures and Algorithms

Physics 270: Experimental Physics

Session Six: Software Evaluation Rubric Collaborators: Susan Ferdon and Steve Poast

SYLLABUS- ACCOUNTING 5250: Advanced Auditing (SPRING 2017)

Science Olympiad Competition Model This! Event Guidelines

Form no. (12) Course Specification

On Human Computer Interaction, HCI. Dr. Saif al Zahir Electrical and Computer Engineering Department UBC

MINISTRY OF EDUCATION

Using Moodle in ESOL Writing Classes

Computer Software Evaluation Form

BADM 641 (sec. 7D1) (on-line) Decision Analysis August 16 October 6, 2017 CRN: 83777

Software Development: Programming Paradigms (SCQF level 8)

We are strong in research and particularly noted in software engineering, information security and privacy, and humane gaming.

Circuit Simulators: A Revolutionary E-Learning Platform

Student Information System. Parent Quick Start Guide

Introduction to Mobile Learning Systems and Usability Factors

Appendix L: Online Testing Highlights and Script

ebusiness Technologies Spring 2000 Syllabus

Remote Control Laboratory Via Internet Using Matlab and Simulink

CONCEPT MAPS AS A DEVICE FOR LEARNING DATABASE CONCEPTS

Spring 2015 Online Testing. Program Information and Registration and Technology Survey (RTS) Training Session

IMPROVED MANUFACTURING PROGRAM ALIGNMENT W/ PBOS

CWSEI Teaching Practices Inventory

Microcontroller VU

Project Report Template

Embedded System Design

Rover Races Grades: 3-5 Prep Time: ~45 Minutes Lesson Time: ~105 minutes

Business Analytics and Information Tech COURSE NUMBER: 33:136:494 COURSE TITLE: Data Mining and Business Intelligence

Evaluation of Usage Patterns for Web-based Educational Systems using Web Mining

Evaluation of Usage Patterns for Web-based Educational Systems using Web Mining

Please find below a summary of why we feel Blackboard remains the best long term solution for the Lowell campus:

Pod Assignment Guide

MOODLE 2.0 GLOSSARY TUTORIALS

Integration of ICT in Teaching and Learning

CWIS 23,3. Nikolaos Avouris Human Computer Interaction Group, University of Patras, Patras, Greece

MULTIMEDIA Motion Graphics for Multimedia

AGENDA LEARNING THEORIES LEARNING THEORIES. Advanced Learning Theories 2/22/2016

CS 3516: Computer Networks

Intel-powered Classmate PC. SMART Response* Training Foils. Version 2.0

Faculty Schedule Preference Survey Results

Adding content in Course Support Environments

Preferences...3 Basic Calculator...5 Math/Graphing Tools...5 Help...6 Run System Check...6 Sign Out...8

Table of Contents. Course Delivery Method. Instructor Information. Phone: Office hours: Table of Contents. Course Description

CIS 121 INTRODUCTION TO COMPUTER INFORMATION SYSTEMS - SYLLABUS

Academic Catalog Programs & Courses Manchester Community College

Software Maintenance

Computers in Physics Education

CPMT 1347 Computer System Peripherals COURSE SYLLABUS

Spring 2015 IET4451 Systems Simulation Course Syllabus for Traditional, Hybrid, and Online Classes

Open Source Mobile Learning: Mobile Linux Applications By Lee Chao

Computer Architecture CSC

IAT 888: Metacreation Machines endowed with creative behavior. Philippe Pasquier Office 565 (floor 14)

Education for an Information Age

Xinyu Tang. Education. Research Interests. Honors and Awards. Professional Experience

BUS Computer Concepts and Applications for Business Fall 2012

Phys4051: Methods of Experimental Physics I

An Introduction to Simio for Beginners

Java Programming. Specialized Certificate

A Practical Approach to Embedded Systems Engineering Workforce Development

ICT A learning and teaching tool By Sushil Upreti SOS Hermann Gmeiner School Sanothimi Sanothimi, Bhaktapur, Nepal

Experience College- and Career-Ready Assessment User Guide

TA Certification Course Additional Information Sheet

Practical Integrated Learning for Machine Element Design

WHAT ARE VIRTUAL MANIPULATIVES?

Course Content Concepts

CS Course Missive

Courses in English. Application Development Technology. Artificial Intelligence. 2017/18 Spring Semester. Database access

Institutionen för datavetenskap. Hardware test equipment utilization measurement

Strategy and Design of ICT Services

Process improvement, The Agile Way! By Ben Linders Published in Methods and Tools, winter

Houghton Mifflin Online Assessment System Walkthrough Guide

Beveridge Primary School. One to one laptop computer program for 2018

AIS KUWAIT. School Improvement Plan (SIP)

From Virtual University to Mobile Learning on the Digital Campus: Experiences from Implementing a Notebook-University

SEBUTHARGA NO. : SH/27/2017 SCOPE OF WORKS, TECHNICAL SPECIFICATIONS & REQUIREMENTS

Education: Integrating Parallel and Distributed Computing in Computer Science Curricula

2013 Annual HEITS Survey (2011/2012 data)

Hongyan Ma. University of California, Los Angeles

PH.D. IN COMPUTER SCIENCE PROGRAM (POST M.S.)

Regan's Resume Last Edit : 31 March 2008

Online Marking of Essay-type Assignments

An International University without an International Office: Experiences in Mainstreaming Internationalisation at the University of Helsinki

Class Numbers: & Personal Financial Management. Sections: RVCC & RVDC. Summer 2008 FIN Fully Online

Spring 2015 Achievement Grades 3 to 8 Social Studies and End of Course U.S. History Parent/Teacher Guide to Online Field Test Electronic Practice

Transcription:

581305-6 Computer Organization I (Tietokoneen toiminta) Teemu Kerola University of Helsinki Department of Computer Science Spring 2010 1 Computer Organization I Course area and goals Course learning methods Study circle course Web course Learning methods used in this course Ttk-91 example computer Titokone simulator TitoTrainer environment Computer Organization I vs. II 2 Lecture 0, Admin, General 1

Learning Goals To understand basic features of a computer system, from the point of view of the executing program To understand, how a computer systems executes the program given to it To understand the storage methods and locations of the program code and data To understand the execution time program presentation To understand the role and basic functionalities of the operating system The goal is learning, not credit units, or passing Start preparing for the course exam now! http://www.cs.helsinki.fi/u/kerola/tito/kurssikuvaukset/2008_8/oppimistavoitteete.pdf 3 What good is it for? Program execution speed is based on machine instructions executed by the processor (CPU), and not in the program presentation in high level language (C, Pascal, Java) Understanding higher level topics is easier, once one first understands what happens at lower levels of the system Why should one compile Java programs (byte code)? What does it mean to compile Java programs? What does it mean to execute Java programs? What does it mean to execute C programs? Why does one need operating systems (OS)? What does the OS do? How is it structured? 4 Lecture 0, Admin, General 2

Topic Dependencies Programming languages Programming Applications Computer Organization I Operating Systems Data Communications Computational Theory Computer architecture Concurrency Control 5 Dependencies Between Courses Compulsory basic and intermediate studies Computer Organization I Advanced studies (in distr syst and data comm) Concurrent Programming Introd. to DataComm. Comp. Org. II Introd. Data Sec. Oper. Systems Distributed Systems Introd. Spes. & Verif. Internet Protocols 6 Lecture 0, Admin, General 3

CO-I (4 op), Credit options Web course based on study circles starting lecture, summary lecture Ordinary course Web lectures, text books, practice problems Titokone, Titotrainer In study circles Homeworks, discussion problems, projects Group meetings (with instructors and others), Web discussions, chats (peer students, instructors) Course exam Makeup exam 1 st final exam after the course exam Final exam Text books [Stal10 ja Tane10] Programming with ttk-91 symbolic assembly language Titokone, TitoTrainer Based on material used in previous course 7 Study circles Group work, team work It is better to study in a team than alone Peer student support Study circles formed in the first group meeting Student centred learning The student has responsibility on learning Instructor facilitate learning Instructors give good environment for learning Different types of team work Solving homework problems independently and then discussing them in study circles Projects Any other co-operative work for this course 8 Lecture 0, Admin, General 4

Creation of Study Circles Possibly the largest problem in study circle courses Jack promised, but did not do and he was not accessible. And then Mary did most of it. This is not right! Boohoo! Study circles are formed in the 1st group meeting Goals should be similar Easy in real life: you will finish it or Think about your goals before the 1st group meeting Do I want to make the extra project? Do I want to learn a lot, or just pass the course? Discuss and agree on common goals before agreeing on forming a study circle Finally, sign the Study Circle Contract Email the lecturer the names of students in your study circle Keep up with your agreement Inform the study circle immediately, if you will not continue Get quickly rid of students who do not work as agreed on http://www.cs.helsinki.fi/u/kerola/tito/k2010/opintopiiri_sopimuse.html 9 Web course Significant part of the course is in web Web lectures, practice problems, TitoTrainer problems Information, slide copies, problems, results Web course distance learning Starting lecture and final lecture in lecture hall Weekly group meetings at the CS dept Other study circle meetings at the CS dept Some learning modules can be done remotely via web 10 Lecture 0, Admin, General 5

Web lectures Self study material in web, just for learning Like a lecture, but own pace Like a book, but with sound and animations No bookkeeping on material use No direct credit for course grade Lectures 1-4 also in English Lectures 5-11 only in Finnish Material production Teemu Kerola 2004-2005 Macromedia Authorware software Use https://www.cs.helsinki.fi/i/kerola/tito/verkkoluennot/lu01e/lu01e.htm Browser plug-in in Windows CS dept, home Windows-server in Linux environments at CS dept 11 Summary and discussion lectures Only in Finnish, sorry! Summary of topics for previous week Group discussions on some topics 12 Lecture 0, Admin, General 6

Practice Problems Practice problems Self evaluation Do it only after you think you know the material Do I understand it now? Check only some part of the material, no guarantees! Use of it does not directly affect your grade No bookkeeping on material use No credit toward course grade https://www.cs.helsinki.fi/i/kerola/tito/kertaus/pract.html 13 Homework problems Just like normal homework problems Learning happens when you solve the problems and discuss them Study topic area first before trying out the problems Work on the problems independently before discussing them Reading a complete solution or giving one to peer student is wasting a good problem! Affect your grade You get homework points (hwp) for completed problems Only for those present in practice sessions (group meetings) http://www.cs.helsinki.fi/u/kerola/tito/k2010/harjoitukset/lh1e.html 14 Lecture 0, Admin, General 7

Practice Session Students are split into tables Each table should have for each problem at least one student who has solved it Discuss all homeworks in tables There are no common presentations for all You may assume that each student has familiarized themselves to the problems and at least tried to solve them Assistant helps when needed Model solutions are available later in the meeting Including extra discussion items Everybody is present until the end In the English speaking practice session all students may end up in an English speaking table Some of the tables may still be in Finnish 15 Ttk-91 Example Computer Auvo Häkkinen, 1991 Tietokoneen toiminta kurssi 1991 (CO-I 1991) Simple computer architecture Specification level just perfect for this course Simple (symbolic) assembly language Easy to learn, not too many machine instructions Good for the course goals Goals Understand, what type of code the processor uses Understand, how the system executes programs 16 Lecture 0, Admin, General 8

Titokone Java program, that simulates the ttk-91 computer and its operating system Works the same way as a real hardware implementation of a ttk-91 architecture and its operating system Original design and implementation Software development project Koski, Spring 2004 Contains Ttk-91 symbolic assembly language assembler (compiler) Ttk-91 emulator, that can execute assembled ttk-91 programs Integrated software debugger Animator that visualizes ttk-91 instruction execution Graphical user interface http://www.cs.helsinki.fi/u/kerola/tito/titokone/asennus/asennuse.html http://www.cs.helsinki.fi/u/kerola/tito/titokone/kayttoohje/manual.html 17 TitoTrainer http://db.cs.helsinki.fi/titotrainer2/ Software built on top of Titokone Implement ttk-91 programs or parts of them Same programs run also directly in Titokone Program correctness is checked automatically Affects your grade You get points toward your grade for completed problems A few problems as homeworks More problems in project pr1 18 Lecture 0, Admin, General 9

Project pr1 (12 pp) Solve as many TitoTrainer problems as you can Solve some problems each week Problems at the same level as in homeworks? Grading 1 pp, when 22 problems solved Includes problems solved as homeworks 7 pp, when 40 problems solved 12 pp, when 50 problems solved http://www.cs.helsinki.fi/u/kerola/tito/k2010/projektit/proj1e.html 19 Project pr2 (16 pp) Come up with a new practice problems In two parts, each with one practice problem (8 pp) Goal is deeper understanding on some topics Other course components may be needed as background knowledge Web lectures, text books, homeworks, discussion problems Grading Instructor evaluates based on the report and functionality You get project points (pp, e.g. 8 pp) in three parts Basic points (2 pp) for just completing the project Grade (0-6 pp) depending on the quality of work Participation points (max ±2 pp) based on you participation Study circle determines this part! http://www.cs.helsinki.fi/u/kerola/tito/k2010/projektit/proj2e.html 20 Lecture 0, Admin, General 10

Univ of Helsinki Moodle Common Shared discussion groups A discussion group to coordinate doing homeworks (and other studies) together Study Circle Groups Own closed discussion group Wiki? What else? https://moodle.helsinki.fi/ 21 Completing a web course based on study circles Study weekly topics read Self study with web lectures hear think Learn the basics well from lectures Read the text book the same topics, with different approach Deepen your knowledge with summary lectures Check your learning with self evaluation do discuss evaluate Do practice problems, homeworks, TitoTrainer problems do Participate in study circle Discuss homeworks Weekly group meeting Continue projects Study circle meet face-to-face or in the web Take course exam read do discuss think discuss evaluate read 22 Lecture 0, Admin, General 11

Evaluation Self evaluation Practice problem after each topic Do not affect your grade Homeworks and TitoTrainer problems every week Do I understand or not? What is there still to learn and how do I do it?? Affect your grade Course exam Gives a fixed time goal for learning Covers all topics given in course description Topics learned in independent study as well as in study circle work using various learning methods Evaluates learning Most of the grade based on this Must reach certain level (50%) to pass the course 23 Good work is awarded Diligence and knowledge is awarded Course component maximum grade points Grading Homeworks minimum requirement 1 p Projects TitoTrainer problems (pr1: 12 pp) Make Practice problems (pr1: 16 pp) (super-diligent participation +4p) minimum requirement 1 p Course exam, make-up exam minimum requirement 20 p Total minimum requirement 30 p 6 p 14 p (16 p) 40 p 60 p 24 Lecture 0, Admin, General 12

Learning material Lectures Lecture notes pdf s Web lectures and 1-4 in English (in web) Text books Stallings: Computer Org. and Architecture, 9th Ed., 2010 Tanenbaum: Structured Computer Organization, 5th Ed, 2010 Practice problems (in web) Titokone simulator (in web) TitoTrainer (in web) Homeworks and projects (in web) Moodle Schedule page (in web) Course exam (results in web) 25 WWW Information Course home page Course schedule Everything is found linked to here http://www.cs.helsinki.fi/u/kerola/tito/ http://www.cs.helsinki.fi/u/kerola/tito/k2010/aikataulue.html Part of material is in CS departmental Intranet Web lectures (Authorware) Practice problems Course statistics (hwp, pp, exam points) Everyone need CS dept id s Those minoring in CS must first have the UNIX-id (so called cc-id) from the University IT department, obtained from your own department 26 Lecture 0, Admin, General 13

Course contents Lecture 0: Course contents, structure, and organization Web lecture 1: System structure Web lecture 2: Ttk-91 and the simulator for it Web lecture 3: Assembly language programming Summary lecture (in Finnish) Web lecture 4: Assembly language subroutine implementation Web lecture 5: CPU and bus (in Finnish) Web lecture 6: Data presentation (in Finnish) Summary lecture (in Finnish) Web lecture 7: Error recovery and internal memory (in Finnish) Web lecture 8: Program implementation in the system (in Finnish) Summary lecture (in Finnish) Web lecture 9: External memory, I/O (in Finnish) Web lecture 10: Compilation, linking and loading (in Finnish) Summary lecture (in Finnish) Web lecture 11: Interpretation and emulation (in Finnish) Lecture 12: Summary 27 CO-I vs. CO-II Memory CPU Bus Cntrl Disk CO-I: CO-II: What happens in the system? What does OS do?? How is CPU and memory implemented? How does the clock pulse cause execution? 28 Lecture 0, Admin, General 14

CO-II Processor Implementation Hierarchy (2) Machine lang. architecture ADD R1, R2 Modules Adder, register, ALU Logical gates AND, OR, NOR Circuit design Power consumption, timing, wiring Implementation device Tubes, transistors, microcircuits AND 1 0 0CO-I 29 Program Execution Level Comp. Org. I A := B + C; high level language MOV AX, B ADD AX, C MOV A, AX machine lang. Comp. Org. II Logical circuits (at gate level) 30 Lecture 0, Admin, General 15

Motto It is not good exercise, if you do not sweat However, this is not a marathon! Altogether some 12 h / week (?) + exam preparation + exam Before: Total some 80 h / 2 sw course (2 work weeks) Now: Total some 107 t / 4 cu course 5 yrs / 300 cu = 1 yr / 60 cu = 1600 h / 60 cu = 26.67 h / 1 cu = 107 h / 4 cu 31 Lecture 0, Admin, General 16