Computer Architecture
Faculteit | Science and Engineering |
Jaar | 2021/22 |
Vakcode | WBCS010-05 |
Vaknaam | Computer Architecture |
Niveau(s) | propedeuse |
Voertaal | Engels |
Periode | semester I b |
ECTS | 5 |
Rooster | rooster.rug.nl |
Uitgebreide vaknaam | Computer Architecture | ||||||||||||||||
Leerdoelen | At the end of the course, the student is able to: 1) Discuss the main concepts, design techniques, issues, and solutions across the abstraction layers of modern computer architectures; 2) Apply the acquired knowledge in order to solve basic design problems in computer architecture; 3) Describe the basic concepts of structured information storage and the techniques to get the information in and out of the computer. |
||||||||||||||||
Omschrijving | In this course we start with binary representation, transistors, logic gates & digital circuits, latches & memory circuits, and Finite State Machines. We cover the von Neumann model of computing, and then use all these tools to understand thoroughly the Instruction Set Architecture of a simple computer, the LC-3. At the same time, we will also be learning assembly language programming of the LC-3. This course comprises two parallel tracks: i) Machine Organization, which will be developed in lecture; and ii) Assembly Language Programming, which you will learn in lab. Machine Organization topics (Lectures): ● Microprocessors and their Instruction Set Architectures ● Overview of Assembly Language programming ● The binary representation of information: numbers, text, images, states, instructions ● Mathematical logic and Boolean algebra; transistors and simple logic gates ● Combinational Logic circuit design ● Storage circuits and memory ● Finite State Machines ● The von Neumann model of computing ● The data paths implementing the ISA of the LC-3 processor ● Basic Input/Output (polling); memory mapping ● I/O by Interrupt ● Making the leap from assembly to Higher Level Languages Assembly Language Programming topics (Labs): ● The LC-3 instruction Set ● Use of conditional & unconditional branches to create basic control structures ● Basic I/O ● Representing and manipulating character data ● Representing and manipulating numeric data (integer data type) |
||||||||||||||||
Uren per week | |||||||||||||||||
Onderwijsvorm | Hoorcollege (LC), Opdracht (ASM) | ||||||||||||||||
Toetsvorm |
Opdracht (AST), Schriftelijk tentamen (WE)
((The final course grade is calculated by the formula g = max(e, 0.6*e + 0.4*a), iff e >= 5.0; g=e otherwise, where g: final grade, e: written exam grade, a: assignments grade. A minimum of 5.0 (before rounding) on the written exam (e) is required to pass the course. Please find more information in the remarks section.)) |
||||||||||||||||
Vaksoort | bachelor | ||||||||||||||||
Coördinator | prof. dr. ir. G. Gaydadjiev | ||||||||||||||||
Docent(en) | prof. dr. ir. G. Gaydadjiev , A. Shahbahrami, PhD. | ||||||||||||||||
Verplichte literatuur |
|
||||||||||||||||
Entreevoorwaarden | Assumed prior knowledge: Imperative Programming (WBCS003-05): basic programming concepts Introduction to Computing Science (WBCS005-05): Turing machine, data representation Introduction to Logic (WBCS030-05): Boolean algebra, normal forms |
||||||||||||||||
Opmerkingen | Final course grades (g) are rounded up to the next .5 point, except from grades in the [5.0,5.5) interval that are rounded down. With respect to the assignments grade (a), the overall assignment grade is calculated as a weighted sum of each assignment result. All CS bachelor courses have limited enrollment: - CS students can always enter each course, regardless of whether the course is mandatory for them or not. - A maximum of only 20 places per course is available for non-CS students. These places are filled on a first-come-first-served basis, with priority given to students with a strong CS-related background (e.g., CS exchange students, AI students, etc.). These students need to meet the course prerequisite requirements as mentioned on Ocasys. -Six weeks before the course starts, the 20 students that can join are selected and added to the course. If you enroll after this date, you will be placed on the waiting list. For more info about the enrollment procedure, see https://student.portal.rug.nl/infonet/studenten/fse/programmes/bsc-cs/general/vakintekening-procedure#cap |
||||||||||||||||
Opgenomen in |
|