Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Course Outline and Materials for CSE141: Introduction to Computer Architecture, Study notes of Computer Architecture and Organization

The course structure, meetings, and background knowledge required for cse141: introduction to computer architecture. It covers topics such as boolean algebra, combinational circuits, finite state machines, computer arithmetic, and basic arithmetic circuits. The course also requires basic c or c++ programming knowledge. The coursework includes homeworks, weekly quizzes, a midterm, and a final exam. The laboratory exercises (cse141l) are graded separately.

Typology: Study notes

2009/2010

Uploaded on 03/28/2010

koofers-user-cjy
koofers-user-cjy 🇺🇸

10 documents

1 / 14

Toggle sidebar

Related documents


Partial preview of the text

Download Course Outline and Materials for CSE141: Introduction to Computer Architecture and more Study notes Computer Architecture and Organization in PDF only on Docsity! Page 1 CS 141 Chien 1 September 26, 2002 CSE141 and 141L: Introduction to Computer Architecture Outline – Administrivia – Background (expected knowledge) – Course Overview Announcements – Book: Computer Organization and Design: The Hardware/software Interface (Patterson and Hennessy), 2nd Edition – Reading assignment: P&H Chapter 1 » Light reading, for perspective – Course Information, Syllabus, Lecture Slides, etc. all on the web at http://www-csag.ucsd.edu/teaching/cse141-f02/cse141.html » Also linked from department pages and my home page CS 141 Chien 2 September 26, 2002 Professor Andrew Chien (CSE141 and CSE141L) – 4808 AP&M, x2-2458, achien@cs.ucsd.edu – Office Hrs: (Th12-2pm, and by appointment) Course Secy: Patricia Bladh, ? APM (pbladh@csag.ucsd.edu) Teaching Assistants • Chris Roedel, croedel@cs.ucsd.edu • Erik Vandekieft, evandeki@cs.ucsd.edu • Yuanfang (Floria) Hu, yhu@cs.ucsd.edu • Xiongfei (Eric) Liu, xeliu@cs.ucsd.edu – Office Hours: M1-3, W10-12noon, W3-5, F2-4 » All in APM 2331 CSE141 Tutors • Tim Pevzner, tpevzner@ucsd.edu • tbd Course Staff Page 2 CS 141 Chien 3 September 26, 2002 Communication Electronic mail is a good way to get ahold of us. Webboard group will be linked to the course web page (please read this regularly), particularly close to when assignments are due or exams. Registering for the course mailing list: – Send an email to majordomo@cs.ucsd.edu – Include in the body: subscribe cse141 <your email address> CS 141 Chien 4 September 26, 2002 Course Meetings Lectures – CSE141: TuTh930-1050, CSB001 – CSE141L: Tu11-1150, CSB001 Discussion Section – Th 11-1150, CSB001 (we’re trying to split this and move it) All material in lectures, readings, sections, and homeworks. Overheads and course materials as possible will be made available electronically on web site. – Check often for new information or try TA’s or Course Secretary Page 5 CS 141 Chien 9 September 26, 2002 Combinational Circuits and Finite State Machines Relation of Boolean algebra to circuits Implications of fan-in, fan-out Circuit complexity in terms of gates, delays, etc. State: what it is and how to implement it using gates; does the simple digital logic model apply here? Finite states, transitions, capabilities of such machines, and how to design one, given a problem. CS 141 Chien 10 September 26, 2002 Example: FSM Design Your job is to design a streetlight controller (G, Y, R) for a basic two-street intersection – Show the FSM design – Show an implementation using gates and state elements (FlipFlops) Modify that FSM to support an intersection like that at Torrey Pines and La Jolla Village Drive – Asymmetric street traffic – Left turn arrows – Pedestrian crossing buttons Page 6 CS 141 Chien 11 September 26, 2002 Computer Arithmetic and Basic Arithmetic Circuits Basic number representations (integers -- twos complement, floating point numbers, concepts of limited precision) Adders (basic, ripple carry, faster methods and circuits, subtraction) More complex operations (multiplication, division?) Floating point arithmetic => building blocks for a computer, we’ll focus mostly on the other pieces (stuff that controls how these operations are composed into a computation) CS 141 Chien 12 September 26, 2002 Basic C (or C++) programming knowledge C expressions, types (int, float, char, etc.) C/C++ structs and classes Control structures (while, for, break, goto, etc.) Functions calls General comfort and familiarity with these things. => These language constructs are rather low level, and we’ll show their close correspondence to assembly/machine instructions. => Important to know what they mean (function) so implementations and correspondence make sense. Page 7 CS 141 Chien 13 September 26, 2002 Course Overview The Idea of Computer Architecture Performance and Cost Machine Language: Elements and Utility The Relationship of Higher level languages and Machine Language Implementation of a Machine Language – Basic Processor – Pipelined – Cache Memory Computer Systems (outside the processor) CS 141 Chien 14 September 26, 2002 What should you get out of this course? Appreciation of the basic elements of a computer system – Levels of software (HL language, assembly, hardware) – Elements of the System (processor, cache, memory, I/O, peripherals) Detailed understanding of how programming language features and the relationship of programming constructs to their execution cost Detailed understanding of instruction execution and some basic techniques for high performance Page 10 CS 141 Chien 19 September 26, 2002 Complexity Management Idea is similar to object-oriented programming Large operations which form the interface are the external operations on an “object” Small operations are used to build the larger operations What does all this have to do with computer architecture? Large Operations: Fill Empty Level? Small Operations: Open cover Lift Turn upside down Put in dipstick Read dipstick CS 141 Chien 20 September 26, 2002 Computer Systems Architecture is the Design of Interfaces Interfaces = abstraction and set of operations Computer systems include several levels of interfaces Computer Architects put pieces together to make “Computer Systems” Examples – User interface to MS Word, Lotus 1-2-3, SimCity – Application to Operating System interface, Graphics Toolboxes – Software to hardware interface -- computer instruction sets (we’ll focus here) – Traditionally, computer architecture = instruction set architecture, large operations are basic software instructions, small operations are built directly in hardware Page 11 CS 141 Chien 21 September 26, 2002 Computer Architecture: Instruction Set Architecture Software/Hardware interface, vertical interfaces ISA is critical, as a basis for software portability across machines ISA’s form the notion of processor families: 386--486— Pentium—PII—PIII--PIV, Itanium, Sparc, MIPS, PowerPC—G4, 68000--68020--68040, IBM 360, etc. logic gates, wires, transistors “add” “multiply” “subtract” “read_mem” “write_mem” “jump” CS 141 Chien 22 September 26, 2002 Interfaces are critical for Performance Instruction sets <--> hardware organization Simple Instruction Sets (simple operations) – Very fast operation rate Complicated instruction Sets – Slower operation rate add r2, r3, r4 mul r3,r4,r5 + Operations Abstraction Registers Page 12 CS 141 Chien 23 September 26, 2002 Interfaces are not Flat Jagged interfaces reflect the operations exposed Layers on top must “fill the gaps” themselves Clean high-level interfaces make building atop easy, but may make it hard to get performance. Lower level interfaces, make it hard to make things to work, and may make it hard to optimize performance. Performance is accessible. CS 141 Chien 24 September 26, 2002 Computer SYSTEM Architecture: Horizontal Interfaces Interfacing parts of the computer system: logical operations (protocols) and electrical signals (signalling) Design of interfaces, parts, which shape the SYSTEMs, influencing the performance, cost, and flexibility
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved