Remember This from Week 3? DFA: 4 Bar Position

Size: px
Start display at page:

Download "Remember This from Week 3? DFA: 4 Bar Position"

Transcription

1 Remember This from Week 3? Prediction of forces and torques for each link at a specific position F 12x, F 12y, F 23x, F 23y, F 34x, F 34y, F 14x, F 14y, T drive Profiles of force as function of input position DFA: 4 Bar Position Input linkage geometry θ1 := 0 θ2 := R2 := 4 R3 := 12 R4 := 8 R1 := 15 Input kinematic state ω2 := 20 α2 := 20 Solve for position variables initial guesses θ3 := 0 θ4 := 3 Given R2 cos ( θ2) + R3 cos ( θ3) R4 cos ( θ4) R1 0 R2 sin( θ2) + R3 sin( θ3) R4 sin( θ4) 0 Position := Find( θ3, θ4) Position = Assign position variables θ3 := θ4 :=

2 DFA: 4 Bar Force Solution dynamic force equations: F12x:= 1 F12y := 1 F32x:= 1 F32y := 1 F43x:= 1 F43y := 1 F14x:= 1 F14y := 1 := Fp4x 40 cos 30 Fp4x = := Fp4y 40 sin 30 Fp4y = T3 Tin Given F12x+ F32x m2 ag2x F12y + R2 cos ( θ2) F32y R2 sin ( θ2) + R3 cos ( θ3) F43y R3 sin ( θ3) F43x I3 α3 F14x F14y + F32y m2 ag2y F32x+ F43x m3 ag3x F32y + F43y m3 ag3y F43x+ Fp4x m4 ag4x F43y + Fp4y m4 ag4y F32x I2 α2 + ( 0.5R2 cos ( θ2) m2 ag2y 0.5R2 sin ( θ2) m2 ag2x) + ( 5 cos( θ3) m3 ag3y 5 sin ( θ3) m3 ag3x) ( θ4) ( θ4) T4 R4 cos Fp4y F43y) ( + R4 sin Fp4x F43x) ( I4 α4 + 4 cos ( θ ) m4 ag4y 4 sin ( θ ) m4 ag4x forces := Find( F12x, F12y, F32x, F32y, F43x, F43y, F14x, F14y, Tin) forces = Pick an RE13 Motor for the 4-Bar ω 2 = 20 RPM τ = mnm (peak) Continuous torque is lower Pick the lowest power rating that will do the job: 1.5W, 2W, 3W Is this possible without a gear reducer? 2

3 DC Motor Control The torque of a permanent magnet motor depends on the current through the armature coil. In D.C. motors with field coils, the torque can be changed by changing the armature current or the field current. (Generally the armature current is varied.) How can we control the current? Switch Open or close current flows or it doesn t 3

4 Relays A relay is an electromagnetic switch. The electromagnet is an iron core with wire wrapped around it. A potential across V 1 and V 2 causes the metal armature to move from connecting A to C to connecting B to C. SPDT Single Pole (C) Double Throw (A and B) Solenoids A solenoid (similar to a SPST relay) is a coil of wire in the shape of a cylinder that when carrying a current resembles a bar magnet so that a moveable core is drawn into the coil when the current flows (electromagnetic effect of current in a wire) turning on a switch. Small current switches a large current. 4

5 Transistors Bipolar and FET V + Works like a valve (or switch) V i Gate Source Drain R 1 Output When V i = 0, the gate is closed and current flows from the source to the output. When V i > 0, the gate opens and current flows from the source to the drain. R 2 The amount of current flow depends on the value of V i. (Not the best use for highcurrent applications.) Pulse Width Modulation Pulse Width Modulation (PWM) is used to generate a train of pulses with a fixed frequency. The average voltage generated drives the motor. The duty cycle of the pulses controls the torque of the motor. Microprocessor or logic circuits accomplish torque control in this manner. 5

6 H Bridge V s M MOSFET s dominate bipolars, but operation is the same. Mechatronic Systems Mechanical Structure Actuators Sensors or Transducers Signal Conditioning Signal Conditioning DAC ADC Computer or Digital Processing Element University of Denver - Department of Electrical and Computer Engineering 6

7 Great Realities of Computing Great Reality #1 Int s are not Integers, Float s are not Reals Examples: Is x 2 0? Float s: Yes! Int s: * > (On some machines) 65535L * > (On Alpha) Is (x + y) + z = x + (y + z)? Unsigned & Signed Int s: Yes! Float s: (1e e10) > e10 + (-1e ) --> 0.0 7

8 Computer Arithmetic Does not generate random values Arithmetic operations have important mathematical properties Cannot assume usual properties Due to finiteness of representations Integer operations satisfy ring properties (usually) Commutativity, associativity, distributivity Floating point operations satisfy ordering properties Monotonicity, values of signs Observation Need to understand which abstractions apply in which contexts Important issues for compiler writers and serious application programmers Great Reality #2 You have to know assembly Chances are, you ll never write programs in assembly Compilers are much better & patient at this than you are Understanding assembly is key to machine-level execution model Behavior of programs in presence of bugs High-level language model breaks down Tuning program performance Understanding sources of program inefficiency Implementing system software Compiler has machine code as target Operating systems must manage process state 8

9 Great Reality #3 Memory Matters Memory is not unbounded It must be allocated and managed Many applications are memory dominated Memory referencing bugs are especially pernicious Effects are distant in both time and space Memory performance is not uniform Cache and virtual memory effects can greatly affect program performance Adapting program to characteristics of memory system can lead to major speed improvements Memory Referencing Bug Example main () { long int a[2]; double d = 3.14; a[2] = ; printf("d = %.15g\n", d); exit(0); } Alpha MIPS Sun -g e O

10 Memory Referencing Errors C and C++ do not provide any memory protection Out of bounds array references Invalid pointer values Abuses of malloc/free Can lead to nasty bugs Whether or not bug has any effect depends on system and compiler Action at a distance Corrupted object logically unrelated to one being accessed Effect of bug may be first observed long after it is generated How can I deal with this? Program in Java, Lisp, or ML Understand what possible interactions may occur Use or develop tools to detect referencing errors E.g., Purify Memory Performance Example Implementations of Matrix Multiplication Multiple ways to nest loops /* ijk */ for (i=0; i<n; i++) { for (j=0; j<n; j++) { sum = 0.0; for (k=0; k<n; k++) sum += a[i][k]*b[k][j]; c[i][j] = sum; } } /* jik */ for (j=0; j<n; j++) { for (i=0; i<n; i++) { sum = 0.0; for (k=0; k<n; k++) sum += a[i][k]*b[k][j]; c[i][j] = sum } } 10

11 Matmult Performance (Alpha 21164) Too big for L1 Cache Too big for L2 Cache ijk ikj jik jki kij kji matrix size (n) Blocked matmult perf (Alpha 21164) bijk bikj ijk ikj matrix size (n) 11

12 Great Reality #4 There s more to performance than asymptotic complexity Constant factors matter too! Easily see 10:1 performance range depending on how code written Must optimize at multiple levels: algorithm, data representations, procedures, and loops Must understand system to optimize performance How programs compiled and executed How to measure program performance and identify bottlenecks How to improve performance without destroying code modularity and generality Speed up from Compiler Optimization 6 Speed up O1 O2 O3 O4 O4 + PBO go 124.m88ksim 126.gcc 129.compress 130.li 132.ijpeg 134.perl 147.vortex Average SPEC95Int (running on HP-PA8000) 12

13 Speed up from Compiler Optimization Speed up hydro2d 101.tomcatv 102.swim 103.su2cor 107.mgrid 110.applu 125.turb3d 141.apsi 145.fpppp 146.wave5 Average Spec95fp (Running on HP-PA-8000) O1 O2 O3 O4 O4 + PBO Speed up from Compiler Optimization Speed up gzip 175.vpr 181.mcf 186.crafty 197.parser 252.eon 254.gap 255.vortex 256.bzip2 300.twolf Average Spec2000Int (Runing on HP/Intel Itanium) O2 O3 O3 + PBO 13

14 Great Reality #5 Computers do more than execute programs They need to get data in and out I/O system critical to program reliability and performance They communicate with each other over networks Many system-level issues arise in presence of network Concurrent operations by autonomous processes Coping with unreliable media Cross platform compatibility Complex performance issues Source Program Representation The Source program is - A text file - A sequence of bits, organized in 8-bit chunks called bytes - Each byte represents one text character - Text characters are represented in ASCII format -. Example - # i n c l u d e <sp> All information in a computer system is represented as a bunch of bits. 14

15 Translation Process The C program hello.c must be translated into a sequence of low-level machine language instructions. Example: On Linux, we use the GCC compiler to translate hello.c into object file Unix> gcc o hello hello.c Compiling phases gcc is a driver that calls preprocessor (cpp), compiler (cc1), assembler (as), and the linker (ld). Hello.c cpp Hello.i cc1 Hello.s as print.o Hello.o ld Hello Understanding Compiler Generated Code Optimizing program performance Is switch always more efficient than a sequence of ifthen-else? Why accessing a local variable is faster than accessing an argument passed by reference? Why two functionally equivalent loops have very different running times? Understanding link-time errors Linker is playing an increasingly important role Avoid security holes Buffer overflow bugs/tricks account for many security holes 15

16 Hardware organization Modeled after the Intel Pentium systems PC ALU CPU/Processor Memory Memory Interface I/O bridge Main memory Buses USB controller Graphics adapter I/O bus Disk controller disk I/O devices Hardware organization Processor (CPU) Interprets instructions PC, Registers, ALU Example instructions load, store, add, I/O read/write, jump Main memory Code and data I/O devices Keyboard, mouse, display, disk, network Buses Transfer fixed-sized chunks of bytes 16

17 Running the hello program on PC PC ALU DMA Memory Interface I/O bridge Main memory Types hello Loading hello into memory I/O bus USB controller Graphics adapter Disk controller disk Running the hello program on PC PC Memory Interface ALU Executing hello I/O bridge Main memory Loading hello into memory I/O bus USB controller Graphics adapter Disk controller disk 17

18 Running the hello program on PC PC ALU Memory Interface I/O bridge Main memory Write output string to the display I/O bus USB controller Graphics adapter Disk controller disk Running hello on Atmel µc PC ALU CPU/Processor Memory Memory Interface Flash memory Bus Digital I/O Ports A/D Converter Memory-Mapped I/O UART controller I/O devices 18

19 Caches Matter PC ALU L2 caches L1-cache Memory Interface Front-side bus I/O bridge Main memory Back-side bus Caches: smaller faster storage devices that serve as temporary staging areas for frequently referenced information, managed by hardware Local memory: like caches, but is managed by compilers/programmers Storage Hierarchy Larger, Slower, And Cheaper Storage Devices registers On-chip L1 cache Off-chip L2 cache Main Memory 8 to KB to 64KB 256KB to 4MB 128MB to 16GB Local secondary storage 20GB to 1TB Remote secondary storage 19

20 Storage Hierarchy Main idea: Storage at one level serves as a cache for storage at the next lower level Example: The L1 cache is a cache for the L2 cache The L2 cache is a cache for the main memory The main memory is a cache for the disk The local disk serves as a cache for data stored on the disks of other systems in a networked system. Operating System OS controls the execution of application programs and acts as an interface between users and the computer hardware. Applications Operating System Objectives processor memory I/O Protection: to protect the hardware from misuse Convenience: make a computer easier to use (e.g. WIN) Efficiency: allow more efficient use of hardware resources Abstractions Processes for processor, memory, and I/O Virtual memory for main memory and I/O devices Files for I/O device 20

21 Binary Number System The decimal numbering system (the numbering system we normally use) is base-10 or radix-10. Numbers are represented using ten digits, 0 through 9. The binary numbering system is base-2 or radix-2. Numbers are represented using two digits, 0 and 1. Electronic state is represented by a bit (binary digit), where on = 1 and off = 0. Definitions: Binary Number System A byte is a group of 8 bits. A nibble or nybble is a group of 4 bits. A 2 subscript on the right end of a sequence of binary digits (ones and zeros) indicate that the number is a binary number Ex is decimal is binary 21

22 Binary Number Systems Measures K (kilo), M (mega), G (giga), T (tera), etc. have different meanings depending on the number system you are using. Measure Decimal Binary K kilo 10 3 = = 1024 M mega 10 6 = 1,000, = 1,048,576 G giga 10 9 = 1,000,000, = 1,073,741,824 T tera Rule: Units of bits (b) have decimal measure; units of bytes (B) have binary measure. Decimal to Binary Measure Conversions 1. Convert { Kb, Mb, or Gb } to bits (b). Note: This conversion uses decimal measure. 2. Translate bits (b) to bytes (B). Note: This is a decimal to binary translation. 3. Convert bytes (B) to { KB, MB, or GB }. Note: This conversion uses binary measure. Binary to Decimal Measure Conversions 1. Convert { KB, MB, or GB } to bytes (B). Note: This conversion uses binary measure. 2. Translate bytes (B) to bits (b). Note: This is a binary to decimal translation. 3. Convert bits (b) to { Kb, Mb, or Gb }. Note: This conversion uses decimal measure. 22

23 Positional Numbering Systems We use a positional notation to represent numbers (i.e. the value of a digit in a number is determined by its position in the sequence of digits). In base-10 (decimal) each position to the left (right) of the decimal point or radix point indicates an increased (decreased) power of 10. The Value of Decimal Number The positional (place) value of a digit in a decimal number is (decimal value of the digit) x 10 (place of the digit) The value of a decimal number is the sum of the positional (place) values of the digits. 23

24 Ex rd Place = 10 3 or Thousands Digit 2 nd Place = 10 2 or Hundreds Digit 1 st Place = 10 1 or Tens Digit 0 th Place = 10 0 or Ones Digit -1 Place = 10-1 or Tenths Digit Radix Point or Decimal Point 3275 = 3000 : (3 1000) 200 : (2 100) 70 : (7 10) + 5 : (5 1) 3275 Decimal Value of a Binary Number The positional (place) value of a bit in a binary number is (decimal value of the bit) x 2 (place of the bit) The decimal value of a binary number is the sum of the positional (place) values of the bits. 24

25 Ex. 3 rd Place = 2 3 = 8s Digit 2 nd Place = 2 2 = 4s Digit 1 st Place = 2 1 = 2s Digit 0 th Place = 2 0 = 1s Digit Place = 2-1 or ½ Digit Radix Point or Binary Point = (1 2 3 )+(1 2 2 )+(0 2 1 )+(1 2 0 ) = = 13 Successive Subtraction Method for Decimal to Binary Conversion 1. Subtract the largest possible power of 2 that is not greater than the number; save the difference (subtraction result). 2. Subtract the next largest possible power of 2 that is not greater than the number from the previous result; save the difference. 3. Repeat step #2 until the result is 0 (zero). 4. Put a 1 digit in each place position that corresponds to the exponent of the power of 2 used in each subtraction step; put a 0 digit in the other place positions. 25

26 Successive Division Method for Decimal to Binary Conversion 1. Divide the number by 2; save the remainder and the quotient. 2. Divide the quotient from the previous step by 2; save the remainder and the new quotient. 3. Repeat step #2 until the new quotient is 0 (zero). 4. The binary number is the remainders written down in the reverse order from which they were generated. Converting from Binary to Analog PC ALU CPU/Processor Memory Memory Interface Flash memory Bus Digital I/O Ports A/D Converter Memory-Mapped I/O UART controller I/O devices motortorque = potvalue * calibgain; /* read speed control knob */ 26

27 Converting From Binary to Analog Digital-to-Analog Converter (output) D/A DAC Analog-to-Digital Converter (input) A/D ADC Flash Converter Ramp Converter Successive Approximation Weighted Resistor DAC 27

28 R2R Ladder DAC Analog Output vs Digital Input 28

29 Quantization Error Converting From Binary to Analog Digital-to-Analog Converter (output) D/A DAC Analog-to-Digital Converter (input) A/D ADC Flash Converter Ramp Converter Successive Approximation 29

30 Successive Approximation ADC The ADC Pipeline Camera Sensor Radio World Encoder Transducer Filter Gain A/D Converter World Gas Detector Accelerometer Buffering Amplifier Anti- Aliasing Filter With Sample & Hold Motor Computer Strain Gauge 30

31 Anti-Aliasing Filter The faster we sample a signal, the closer the approximation is to real If we sample too slow, the signal can actually change into a different one Aliasing Example

32 A/D and D/A Resolution Force Sensors can measure 300 g, full scale, at 10 V ADC has +/-10V input How many bits are required to detect 0.1 g? Assume noise is less than 0.1 g Force Sensors Piezo Actuators A/D and D/A Resolution Assume linear sensor unless otherwise specified 300g = 10V and no offset is specified, so 0 g = 0 V 0 300g 0 10 V ADC: -10V to +10V -300g to +300g 600g span 1 quantum = 0.1g need 600g/0.1g or 6000 quanta ADC needs to break span into at least 6000 pieces for 0.1g res: 12 bits = 4096 pieces (2 12 = 4096) 13 bits = 8192 pieces (2 13 = 8192) Force Sensors Piezo Actuators 32

33 Digital Signals Outline: 1. Binary Number System (section of Bolton) 2. Analog to Digital Conversion, Digital to Analog Conversion (chapter 8 in Alciatore & Histand) 33

Introduction to Computer Systems

Introduction to Computer Systems CSCE 230J Computer Organization Introduction to Computer Systems Dr. Steve Goddard goddard@cse.unl.edu http://cse.unl.edu/~goddard/courses/csce230j Giving credit where credit is due Most of slides for

More information

Introduction to Computer Systems

Introduction to Computer Systems CSCE 230J Computer Organization Introduction to Computer Systems Dr. Steve Goddard goddard@cse.unl.edu Giving credit where credit is due Most of slides for this lecture are based on slides created by Drs.

More information

Computer Organization - Overview

Computer Organization - Overview Computer Organization - Overview Hyunyoung Lee CSCE 312 1 Course Overview Topics: Theme Five great realities of computer systems Computer system overview Summary NOTE: Most slides are from the textbook

More information

Introduction to Computer Systems: Semester 1 Computer Architecture

Introduction to Computer Systems: Semester 1 Computer Architecture Introduction to Computer Systems: Semester 1 Computer Architecture Fall 2003 William J. Taffe using modified lecture slides of Randal E. Bryant Topics: Theme Five great realities of computer systems How

More information

ENCE Computer Organization and Architecture. Chapter 1. Software Perspective

ENCE Computer Organization and Architecture. Chapter 1. Software Perspective Computer Organization and Architecture Chapter 1 Software Perspective The Lifetime of a Simple Program A Simple Program # include int main() { printf( hello, world\n ); } The goal of this course

More information

Great Reality #2: You ve Got to Know Assembly Does not generate random values Arithmetic operations have important mathematical properties

Great Reality #2: You ve Got to Know Assembly Does not generate random values Arithmetic operations have important mathematical properties Overview Course Overview Course theme Five realities Computer Systems 1 2 Course Theme: Abstraction Is Good But Don t Forget Reality Most CS courses emphasize abstraction Abstract data types Asymptotic

More information

Introduction Presentation A

Introduction Presentation A CSE 2421/5042: Systems I Low-Level Programming and Computer Organization Introduction Presentation A Read carefully: Bryant Chapter 1 Study: Reek Chapter 2 Skim: Reek Chapter 1 08/22/2018 Gojko Babić Some

More information

Course Overview. Jo, Heeseung

Course Overview. Jo, Heeseung Course Overview Jo, Heeseung Course Theme: Abstraction Is Good But Don't Forget Reality Most CS and CE courses emphasize abstraction Abstract data types Asymptotic analysis These abstractions have limits

More information

Digital Systems. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University

Digital Systems. Jinkyu Jeong Computer Systems Laboratory Sungkyunkwan University Digital Systems Jinkyu Jeong (jinkyu@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu SSE2030: Introduction to Computer Systems, Spring 2018, Jinkyu Jeong (jinkyu@skku.edu)

More information

ABSTRACTION ISN T THE ENTIRE STORY

ABSTRACTION ISN T THE ENTIRE STORY ABSTRACTION ISN T THE ENTIRE STORY CS 045 Computer Organization and Architecture Prof. Donald J. Patterson Adapted from Bryant and O Hallaron, Computer Systems: A Programmer s Perspective, Third Edition

More information

Introduction to Computer Architecture. Meet your Colleagues. Course Theme CISC Michela Taufer September 4, 2008

Introduction to Computer Architecture. Meet your Colleagues. Course Theme CISC Michela Taufer September 4, 2008 CISC 360-010 Introduction to Computer Architecture Michela Taufer September 4, 2008 Topics: Course policies and overview Theme Five great realities of computer systems Powerpoint Lecture Notes for Computer

More information

Course Overview CSCE 312. Instructor: Daniel A. Jiménez. Bryant and O Hallaron, Computer Systems: A Programmer s Perspective, Third Edition

Course Overview CSCE 312. Instructor: Daniel A. Jiménez. Bryant and O Hallaron, Computer Systems: A Programmer s Perspective, Third Edition Course Overview CSCE 312 Instructor: Daniel A. Jiménez 1 Overview Course theme Five realities How the course fits into the CS/ECE curriculum Academic integrity 2 Course Theme: Abstraction Is Good But Don

More information

Introduction to Computer Systems

Introduction to Computer Systems CS-213 Introduction to Computer Systems Yan Chen Topics: Staff, text, and policies Lecture topics and assignments Lab rationale CS 213 F 06 Teaching staff Instructor TA Prof. Yan Chen (Thu 2-4pm, Tech

More information

Lecture 1: Course Overview

Lecture 1: Course Overview Lecture 1: Course Overview Computer Systems Organization (Spring 2017) CSCI-UA 201, Section 3 Instructor: Joanna Klukowska Slides adapted from Randal E. Bryant and David R. O Hallaron (CMU) Mohamed Zahran

More information

Chris Riesbeck, Fall Introduction to Computer Systems

Chris Riesbeck, Fall Introduction to Computer Systems Chris Riesbeck, Fall 2011 Introduction to Computer Systems Welcome to Intro. to Computer Systems Everything you need to know http://www.cs.northwestern.edu/academics/courses/213/ Instructor: Chris Riesbeck

More information

Introduction to Computer Systems

Introduction to Computer Systems Introduction to Computer Systems Today: Welcome to EECS 213 Lecture topics and assignments Next time: Bits & bytes and some Boolean algebra Fabián E. Bustamante, Spring 2010 Welcome to Intro. to Computer

More information

Introduction to Computer Systems

Introduction to Computer Systems Introduction to Computer Systems Today:! Welcome to EECS 213! Lecture topics and assignments Next time:! Bits & bytes! and some Boolean algebra Fabián E. Bustamante, 2007 Welcome to Intro. to Computer

More information

Computer Performance Evaluation: Cycles Per Instruction (CPI)

Computer Performance Evaluation: Cycles Per Instruction (CPI) Computer Performance Evaluation: Cycles Per Instruction (CPI) Most computers run synchronously utilizing a CPU clock running at a constant clock rate: where: Clock rate = 1 / clock cycle A computer machine

More information

211: Computer Architecture Summer 2016

211: Computer Architecture Summer 2016 211: Computer Architecture Summer 2016 Liu Liu Topic: Assembly Programming Storage - Assembly Programming: Recap - Call-chain - Factorial - Storage: - RAM - Caching - Direct - Mapping Rutgers University

More information

Overview of Today s Lecture: Cost & Price, Performance { 1+ Administrative Matters Finish Lecture1 Cost and Price Add/Drop - See me after class

Overview of Today s Lecture: Cost & Price, Performance { 1+ Administrative Matters Finish Lecture1 Cost and Price Add/Drop - See me after class Overview of Today s Lecture: Cost & Price, Performance EE176-SJSU Computer Architecture and Organization Lecture 2 Administrative Matters Finish Lecture1 Cost and Price Add/Drop - See me after class EE176

More information

Computer Architecture and System Software Lecture 02: Overview of Computer Systems & Start of Chapter 2

Computer Architecture and System Software Lecture 02: Overview of Computer Systems & Start of Chapter 2 Computer Architecture and System Software Lecture 02: Overview of Computer Systems & Start of Chapter 2 Instructor: Rob Bergen Applied Computer Science University of Winnipeg Announcements Website is up

More information

Computer Systems. Binary Representation. Binary Representation. Logical Computation: Boolean Algebra

Computer Systems. Binary Representation. Binary Representation. Logical Computation: Boolean Algebra Binary Representation Computer Systems Information is represented as a sequence of binary digits: Bits What the actual bits represent depends on the context: Seminar 3 Numerical value (integer, floating

More information

Evaluation of a High Performance Code Compression Method

Evaluation of a High Performance Code Compression Method Evaluation of a High Performance Code Compression Method Charles Lefurgy, Eva Piccininni, and Trevor Mudge Advanced Computer Architecture Laboratory Electrical Engineering and Computer Science Dept. The

More information

Overview of Computer Organization. Chapter 1 S. Dandamudi

Overview of Computer Organization. Chapter 1 S. Dandamudi Overview of Computer Organization Chapter 1 S. Dandamudi Outline Introduction Basic Terminology and Notation Views of computer systems User s view Programmer s view Advantages of high-level languages Why

More information

Overview of Computer Organization. Outline

Overview of Computer Organization. Outline Overview of Computer Organization Chapter 1 S. Dandamudi Outline Introduction Basic Terminology and Notation Views of computer systems User s view Programmer s view Advantages of high-level languages Why

More information

Algorithm Performance Factors. Memory Performance of Algorithms. Processor-Memory Performance Gap. Moore s Law. Program Model of Memory I

Algorithm Performance Factors. Memory Performance of Algorithms. Processor-Memory Performance Gap. Moore s Law. Program Model of Memory I Memory Performance of Algorithms CSE 32 Data Structures Lecture Algorithm Performance Factors Algorithm choices (asymptotic running time) O(n 2 ) or O(n log n) Data structure choices List or Arrays Language

More information

Microarchitecture Overview. Performance

Microarchitecture Overview. Performance Microarchitecture Overview Prof. Scott Rixner Duncan Hall 3028 rixner@rice.edu January 15, 2007 Performance 4 Make operations faster Process improvements Circuit improvements Use more transistors to make

More information

Lecture 12. Memory Design & Caches, part 2. Christos Kozyrakis Stanford University

Lecture 12. Memory Design & Caches, part 2. Christos Kozyrakis Stanford University Lecture 12 Memory Design & Caches, part 2 Christos Kozyrakis Stanford University http://eeclass.stanford.edu/ee108b 1 Announcements HW3 is due today PA2 is available on-line today Part 1 is due on 2/27

More information

APPENDIX Summary of Benchmarks

APPENDIX Summary of Benchmarks 158 APPENDIX Summary of Benchmarks The experimental results presented throughout this thesis use programs from four benchmark suites: Cyclone benchmarks (available from [Cyc]): programs used to evaluate

More information

A software view. Computer Systems. The Compilation system. How it works. 1. Preprocesser. 1. Preprocessor (cpp)

A software view. Computer Systems. The Compilation system. How it works. 1. Preprocesser. 1. Preprocessor (cpp) A software view User Interface Computer Systems MTSU CSCI 3240 Spring 2016 Dr. Hyrum D. Carroll Materials from CMU and Dr. Butler How it works hello.c #include int main() { printf( hello, world\n

More information

LC-3 Assembly Language

LC-3 Assembly Language Chapter 7 LC-3 Assembly Language CS Reality You ve got to know assembly Chances are, you ll never write program in assembly Compilers are much better & more patient than you are Understanding assembly

More information

Microarchitecture Overview. Performance

Microarchitecture Overview. Performance Microarchitecture Overview Prof. Scott Rixner Duncan Hall 3028 rixner@rice.edu January 18, 2005 Performance 4 Make operations faster Process improvements Circuit improvements Use more transistors to make

More information

ELEG3923 Microprocessor Ch.0 & Ch.1 Introduction to Microcontroller

ELEG3923 Microprocessor Ch.0 & Ch.1 Introduction to Microcontroller Department of Electrical Engineering University of Arkansas ELEG3923 Microprocessor Ch. & Ch. Introduction to Microcontroller Dr. Jingxian Wu wuj@uark.edu OUTLINE 2 What is microcontroller? (Ch..) 85 Microcontroller

More information

CC312: Computer Organization

CC312: Computer Organization CC312: Computer Organization 1 Chapter 1 Introduction Chapter 1 Objectives Know the difference between computer organization and computer architecture. Understand units of measure common to computer systems.

More information

Memory Hierarchy. Computer Systems Organization (Spring 2017) CSCI-UA 201, Section 3. Instructor: Joanna Klukowska

Memory Hierarchy. Computer Systems Organization (Spring 2017) CSCI-UA 201, Section 3. Instructor: Joanna Klukowska Memory Hierarchy Computer Systems Organization (Spring 2017) CSCI-UA 201, Section 3 Instructor: Joanna Klukowska Slides adapted from Randal E. Bryant and David R. O Hallaron (CMU) Mohamed Zahran (NYU)

More information

Computer Systems. Communication (networks, radio links) Meatware (people, users don t forget them)

Computer Systems. Communication (networks, radio links) Meatware (people, users don t forget them) Computers are useful machines, but they are generally useless by themselves. Computers are usually part of a system a computer system includes: Hardware (machines) Software (programs, applications) Communication

More information

Memory Hierarchy. Cache Memory Organization and Access. General Cache Concept. Example Memory Hierarchy Smaller, faster,

Memory Hierarchy. Cache Memory Organization and Access. General Cache Concept. Example Memory Hierarchy Smaller, faster, Memory Hierarchy Computer Systems Organization (Spring 2017) CSCI-UA 201, Section 3 Cache Memory Organization and Access Instructor: Joanna Klukowska Slides adapted from Randal E. Bryant and David R. O

More information

High Performance Computing Lecture 1. Matthew Jacob Indian Institute of Science

High Performance Computing Lecture 1. Matthew Jacob Indian Institute of Science High Performance Computing Lecture 1 Matthew Jacob Indian Institute of Science Agenda 1. Program execution: Compilation, Object files, Function call and return, Address space, Data & its representation

More information

Chapter 1 Microprocessor architecture ECE 3120 Dr. Mohamed Mahmoud http://iweb.tntech.edu/mmahmoud/ mmahmoud@tntech.edu Outline 1.1 Computer hardware organization 1.1.1 Number System 1.1.2 Computer hardware

More information

CS/EE 260. Digital Computers Organization and Logical Design

CS/EE 260. Digital Computers Organization and Logical Design CS/EE 260. Digital Computers Organization and Logical Design David M. Zar Computer Science and Engineering Department Washington University dzar@cse.wustl.edu http://www.cse.wustl.edu/~dzar/class/260 Digital

More information

CISC 360. Cache Memories Nov 25, 2008

CISC 360. Cache Memories Nov 25, 2008 CISC 36 Topics Cache Memories Nov 25, 28 Generic cache memory organization Direct mapped caches Set associative caches Impact of caches on performance Cache Memories Cache memories are small, fast SRAM-based

More information

1 Digital tools. 1.1 Introduction

1 Digital tools. 1.1 Introduction 1 Digital tools 1.1 Introduction In the past few years, enormous advances have been made in the cost, power, and ease of use of microcomputers and associated analog and digital circuits. It is now possible,

More information

Chapter 9: A Closer Look at System Hardware

Chapter 9: A Closer Look at System Hardware Chapter 9: A Closer Look at System Hardware CS10001 Computer Literacy Chapter 9: A Closer Look at System Hardware 1 Topics Discussed Digital Data and Switches Manual Electrical Digital Data Representation

More information

Dec Hex Bin ORG ; ZERO. Introduction To Computing

Dec Hex Bin ORG ; ZERO. Introduction To Computing Dec Hex Bin 0 0 00000000 ORG ; ZERO Introduction To Computing OBJECTIVES this chapter enables the student to: Convert any number from base 2, base 10, or base 16 to any of the other two bases. Add and

More information

ECE232: Hardware Organization and Design

ECE232: Hardware Organization and Design ECE232: Hardware Organization and Design Lecture 2: Hardware/Software Interface Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Overview Basic computer components How does a microprocessor

More information

Chapter 9: A Closer Look at System Hardware 4

Chapter 9: A Closer Look at System Hardware 4 Chapter 9: A Closer Look at System Hardware CS10001 Computer Literacy Topics Discussed Digital Data and Switches Manual Electrical Digital Data Representation Decimal to Binary (Numbers) Characters and

More information

CSCI-UA.0201 Computer Systems Organization Memory Hierarchy

CSCI-UA.0201 Computer Systems Organization Memory Hierarchy CSCI-UA.0201 Computer Systems Organization Memory Hierarchy Mohamed Zahran (aka Z) mzahran@cs.nyu.edu http://www.mzahran.com Programmer s Wish List Memory Private Infinitely large Infinitely fast Non-volatile

More information

Cache Memories October 8, 2007

Cache Memories October 8, 2007 15-213 Topics Cache Memories October 8, 27 Generic cache memory organization Direct mapped caches Set associative caches Impact of caches on performance The memory mountain class12.ppt Cache Memories Cache

More information

The Von Neumann Computer Model

The Von Neumann Computer Model The Von Neumann Computer Model Partitioning of the computing engine into components: Central Processing Unit (CPU): Control Unit (instruction decode, sequencing of operations), Datapath (registers, arithmetic

More information

The Memory Hierarchy 10/25/16

The Memory Hierarchy 10/25/16 The Memory Hierarchy 10/25/16 Transition First half of course: hardware focus How the hardware is constructed How the hardware works How to interact with hardware Second half: performance and software

More information

Components of a Computer System

Components of a Computer System Hardware Outline 1. Hardware Outline 2. What is a Computer?/Components of a Computer System 3. Hardware That Computers Typically Have 4. Hardware Components 5. Central Processing Unit (CPU) 6. Central

More information

Denison University. Cache Memories. CS-281: Introduction to Computer Systems. Instructor: Thomas C. Bressoud

Denison University. Cache Memories. CS-281: Introduction to Computer Systems. Instructor: Thomas C. Bressoud Cache Memories CS-281: Introduction to Computer Systems Instructor: Thomas C. Bressoud 1 Random-Access Memory (RAM) Key features RAM is traditionally packaged as a chip. Basic storage unit is normally

More information

Administrivia. CMSC 411 Computer Systems Architecture Lecture 14 Instruction Level Parallelism (cont.) Control Dependencies

Administrivia. CMSC 411 Computer Systems Architecture Lecture 14 Instruction Level Parallelism (cont.) Control Dependencies Administrivia CMSC 411 Computer Systems Architecture Lecture 14 Instruction Level Parallelism (cont.) HW #3, on memory hierarchy, due Tuesday Continue reading Chapter 3 of H&P Alan Sussman als@cs.umd.edu

More information

Chapter-5 Memory Hierarchy Design

Chapter-5 Memory Hierarchy Design Chapter-5 Memory Hierarchy Design Unlimited amount of fast memory - Economical solution is memory hierarchy - Locality - Cost performance Principle of locality - most programs do not access all code or

More information

Cache Memories. EL2010 Organisasi dan Arsitektur Sistem Komputer Sekolah Teknik Elektro dan Informatika ITB 2010

Cache Memories. EL2010 Organisasi dan Arsitektur Sistem Komputer Sekolah Teknik Elektro dan Informatika ITB 2010 Cache Memories EL21 Organisasi dan Arsitektur Sistem Komputer Sekolah Teknik Elektro dan Informatika ITB 21 Topics Generic cache memory organization Direct mapped caches Set associative caches Impact of

More information

Microprocessors I MICROCOMPUTERS AND MICROPROCESSORS

Microprocessors I MICROCOMPUTERS AND MICROPROCESSORS Microprocessors I Outline of the Lecture Microcomputers and Microprocessors Evolution of Intel 80x86 Family Microprocessors Binary and Hexadecimal Number Systems MICROCOMPUTERS AND MICROPROCESSORS There

More information

Giving credit where credit is due

Giving credit where credit is due CSCE 23J Computer Organization Cache Memories Dr. Steve Goddard goddard@cse.unl.edu http://cse.unl.edu/~goddard/courses/csce23j Giving credit where credit is due Most of slides for this lecture are based

More information

Basic Concepts COE 205. Computer Organization and Assembly Language Dr. Aiman El-Maleh

Basic Concepts COE 205. Computer Organization and Assembly Language Dr. Aiman El-Maleh Basic Concepts COE 205 Computer Organization and Assembly Language Dr. Aiman El-Maleh College of Computer Sciences and Engineering King Fahd University of Petroleum and Minerals [Adapted from slides of

More information

The x86 Microprocessors. Introduction. The 80x86 Microprocessors. 1.1 Assembly Language

The x86 Microprocessors. Introduction. The 80x86 Microprocessors. 1.1 Assembly Language The x86 Microprocessors Introduction 1.1 Assembly Language Numbering and Coding Systems Human beings use the decimal system (base 10) Decimal digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 Computer systems use the

More information

Cache Memories. Topics. Next time. Generic cache memory organization Direct mapped caches Set associative caches Impact of caches on performance

Cache Memories. Topics. Next time. Generic cache memory organization Direct mapped caches Set associative caches Impact of caches on performance Cache Memories Topics Generic cache memory organization Direct mapped caches Set associative caches Impact of caches on performance Next time Dynamic memory allocation and memory bugs Fabián E. Bustamante,

More information

Slide Set 1. for ENEL 339 Fall 2014 Lecture Section 02. Steve Norman, PhD, PEng

Slide Set 1. for ENEL 339 Fall 2014 Lecture Section 02. Steve Norman, PhD, PEng Slide Set 1 for ENEL 339 Fall 2014 Lecture Section 02 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary Fall Term, 2014 ENEL 353 F14 Section

More information

Agenda Cache memory organization and operation Chapter 6 Performance impact of caches Cache Memories

Agenda Cache memory organization and operation Chapter 6 Performance impact of caches Cache Memories Agenda Chapter 6 Cache Memories Cache memory organization and operation Performance impact of caches The memory mountain Rearranging loops to improve spatial locality Using blocking to improve temporal

More information

National 5 Computing Science Software Design & Development

National 5 Computing Science Software Design & Development National 5 Computing Science Software Design & Development 1 Stages of Development 2 Analysis 3 Design 4 Implementation 5 Testing 6 Documentation 7 Evaluation 8 Maintenance 9 Data Types & Structures 10

More information

Memory Hierarchy. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

Memory Hierarchy. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University Memory Hierarchy Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Time (ns) The CPU-Memory Gap The gap widens between DRAM, disk, and CPU speeds

More information

Lecture (01) Digital Systems and Binary Numbers By: Dr. Ahmed ElShafee

Lecture (01) Digital Systems and Binary Numbers By: Dr. Ahmed ElShafee ١ Lecture (01) Digital Systems and Binary Numbers By: Dr. Ahmed ElShafee Digital systems Digital systems are used in communication, business transactions, traffic control, spacecraft guidance, medical

More information

Some Basic Concepts EL6483. Spring EL6483 Some Basic Concepts Spring / 22

Some Basic Concepts EL6483. Spring EL6483 Some Basic Concepts Spring / 22 Some Basic Concepts EL6483 Spring 2016 EL6483 Some Basic Concepts Spring 2016 1 / 22 Embedded systems Embedded systems are rather ubiquitous these days (and increasing rapidly). By some estimates, there

More information

Sample. Pearson BTEC Levels 4 Higher Nationals in Engineering (RQF) Unit 15: Automation, Robotics and Programmable Logic Controllers (PLCs)

Sample. Pearson BTEC Levels 4 Higher Nationals in Engineering (RQF) Unit 15: Automation, Robotics and Programmable Logic Controllers (PLCs) Pearson BTEC Levels 4 Higher Nationals in Engineering (RQF) Unit 15: Automation, Robotics and Programmable Logic Controllers (PLCs) Unit Workbook 1 in a series of 4 for this unit Learning Outcome 1 Design

More information

Final Labs and Tutors

Final Labs and Tutors ICT106 Fundamentals of Computer Systems - Topic 2 REPRESENTATION AND STORAGE OF INFORMATION Reading: Linux Assembly Programming Language, Ch 2.4-2.9 and 3.6-3.8 Final Labs and Tutors Venue and time South

More information

Measure, Report, and Summarize Make intelligent choices See through the marketing hype Key to understanding effects of underlying architecture

Measure, Report, and Summarize Make intelligent choices See through the marketing hype Key to understanding effects of underlying architecture Chapter 2 Note: The slides being presented represent a mix. Some are created by Mark Franklin, Washington University in St. Louis, Dept. of CSE. Many are taken from the Patterson & Hennessy book, Computer

More information

Cache Memories. Cache Memories Oct. 10, Inserting an L1 Cache Between the CPU and Main Memory. General Org of a Cache Memory

Cache Memories. Cache Memories Oct. 10, Inserting an L1 Cache Between the CPU and Main Memory. General Org of a Cache Memory 5-23 The course that gies CMU its Zip! Topics Cache Memories Oct., 22! Generic cache memory organization! Direct mapped caches! Set associatie caches! Impact of caches on performance Cache Memories Cache

More information

GOPALAN COLLEGE OF ENGINEERING AND MANAGEMENT Department of Mechanical Engineering COURSE PLAN

GOPALAN COLLEGE OF ENGINEERING AND MANAGEMENT Department of Mechanical Engineering COURSE PLAN Appendix - C GOPALAN COLLEGE OF ENGINEERING AND MANAGEMENT Department of Mechanical Engineering Academic Year: 2017 Semester: EVEN COURSE PLAN Semester: VI SubjectCode&Name:10ME65 Mechatronics & Microprocessor

More information

Cache memories are small, fast SRAM based memories managed automatically in hardware.

Cache memories are small, fast SRAM based memories managed automatically in hardware. Cache Memories Cache memories are small, fast SRAM based memories managed automatically in hardware. Hold frequently accessed blocks of main memory CPU looks first for data in caches (e.g., L1, L2, and

More information

Cache memories The course that gives CMU its Zip! Cache Memories Oct 11, General organization of a cache memory

Cache memories The course that gives CMU its Zip! Cache Memories Oct 11, General organization of a cache memory 5-23 The course that gies CMU its Zip! Cache Memories Oct, 2 Topics Generic cache memory organization Direct mapped caches Set associatie caches Impact of caches on performance Cache memories Cache memories

More information

ν Hold frequently accessed blocks of main memory 2 CISC 360, Fa09 Cache is an array of sets. Each set contains one or more lines.

ν Hold frequently accessed blocks of main memory 2 CISC 360, Fa09 Cache is an array of sets. Each set contains one or more lines. Topics CISC 36 Cache Memories Dec, 29 ν Generic cache memory organization ν Direct mapped caches ν Set associatie caches ν Impact of caches on performance Cache Memories Cache memories are small, fast

More information

Annotated Memory References: A Mechanism for Informed Cache Management

Annotated Memory References: A Mechanism for Informed Cache Management Annotated Memory References: A Mechanism for Informed Cache Management Alvin R. Lebeck, David R. Raymond, Chia-Lin Yang Mithuna S. Thottethodi Department of Computer Science, Duke University http://www.cs.duke.edu/ari/ice

More information

Number Systems for Computers. Outline of Introduction. Binary, Octal and Hexadecimal numbers. Issues for Binary Representation of Numbers

Number Systems for Computers. Outline of Introduction. Binary, Octal and Hexadecimal numbers. Issues for Binary Representation of Numbers Outline of Introduction Administrivia What is computer architecture? What do computers do? Representing high level things in binary Data objects: integers, decimals, characters, etc. Memory locations (We

More information

Algorithm Performance Factors. Memory Performance of Algorithms. Processor-Memory Performance Gap. Moore s Law. Program Model of Memory II

Algorithm Performance Factors. Memory Performance of Algorithms. Processor-Memory Performance Gap. Moore s Law. Program Model of Memory II Memory Performance of Algorithms CSE 32 Data Structures Lecture Algorithm Performance Factors Algorithm choices (asymptotic running time) O(n 2 ) or O(n log n) Data structure choices List or Arrays Language

More information

data within a computer system are stored in one of 2 physical states (hence the use of binary digits)

data within a computer system are stored in one of 2 physical states (hence the use of binary digits) Binary Digits (bits) data within a computer system are stored in one of 2 physical states (hence the use of binary digits) 0V and 5V charge / NO charge on a transistor gate ferrite core magnetised clockwise

More information

CC411: Introduction To Microprocessors

CC411: Introduction To Microprocessors CC411: Introduction To Microprocessors OBJECTIVES this chapter enables the student to: Use number { base 2, base 10, or base 16 }. Add and subtract binary/hex numbers. Represent any binary number in 2

More information

E40M. Binary Numbers, Codes. M. Horowitz, J. Plummer, R. Howe 1

E40M. Binary Numbers, Codes. M. Horowitz, J. Plummer, R. Howe 1 E40M Binary Numbers, Codes M. Horowitz, J. Plummer, R. Howe 1 Reading Chapter 5 in the reader A&L 5.6 M. Horowitz, J. Plummer, R. Howe 2 Useless Box Lab Project #2 Adding a computer to the Useless Box

More information

9/3/2015. Data Representation II. 2.4 Signed Integer Representation. 2.4 Signed Integer Representation

9/3/2015. Data Representation II. 2.4 Signed Integer Representation. 2.4 Signed Integer Representation Data Representation II CMSC 313 Sections 01, 02 The conversions we have so far presented have involved only unsigned numbers. To represent signed integers, computer systems allocate the high-order bit

More information

Pharmacy college.. Assist.Prof. Dr. Abdullah A. Abdullah

Pharmacy college.. Assist.Prof. Dr. Abdullah A. Abdullah The kinds of memory:- 1. RAM(Random Access Memory):- The main memory in the computer, it s the location where data and programs are stored (temporally). RAM is volatile means that the data is only there

More information

2. Define Instruction Set Architecture. What are its two main characteristics? Be precise!

2. Define Instruction Set Architecture. What are its two main characteristics? Be precise! Chapter 1: Computer Abstractions and Technology 1. Assume two processors, a CISC processor and a RISC processor. In order to run a particular program, the CISC processor must execute 10 million instructions

More information

ECE232: Hardware Organization and Design

ECE232: Hardware Organization and Design ECE232: Hardware Organization and Design Lecture 4: MIPS Instructions Adapted from Computer Organization and Design, Patterson & Hennessy, UCB From Last Time Two values enter from the left (A and B) Need

More information

Chapter One. Introduction to Computer System

Chapter One. Introduction to Computer System Principles of Programming-I / 131101 Prepared by: Dr. Bahjat Qazzaz -------------------------------------------------------------------------------------------- Chapter One Introduction to Computer System

More information

Course Overview. CSCI 224 / ECE 317: Computer Architecture. Instructors: Prof. Jason Fritts. Slides adapted from Bryant & O Hallaron s slides

Course Overview. CSCI 224 / ECE 317: Computer Architecture. Instructors: Prof. Jason Fritts. Slides adapted from Bryant & O Hallaron s slides Course Overview CSCI 224 / ECE 317: Computer Architecture Instructors: Prof. Jason Fritts Slides adapted from Bryant & O Hallaron s slides 1 Overview Course theme Five realities Logistics 2 Course Theme:

More information

Computer Systems Organization

Computer Systems Organization Computer Systems Organization 1 Outline 2 A software view User Interface 3 How it works 4 The gcc compilation system 5 The gcc compilation system hello.c (source code) Pre-processor (cpp) hello.i (modified

More information

BASIC COMPUTER ORGANIZATION. Operating System Concepts 8 th Edition

BASIC COMPUTER ORGANIZATION. Operating System Concepts 8 th Edition BASIC COMPUTER ORGANIZATION Silberschatz, Galvin and Gagne 2009 Topics CPU Structure Registers Memory Hierarchy (L1/L2/L3/RAM) Machine Language Assembly Language Running Process 3.2 Silberschatz, Galvin

More information

Number System (Different Ways To Say How Many) Fall 2016

Number System (Different Ways To Say How Many) Fall 2016 Number System (Different Ways To Say How Many) Fall 2016 Introduction to Information and Communication Technologies CSD 102 Email: mehwish.fatima@ciitlahore.edu.pk Website: https://sites.google.com/a/ciitlahore.edu.pk/ict/

More information

Alternate definition: Instruction Set Architecture (ISA) What is Computer Architecture? Computer Organization. Computer structure: Von Neumann model

Alternate definition: Instruction Set Architecture (ISA) What is Computer Architecture? Computer Organization. Computer structure: Von Neumann model What is Computer Architecture? Structure: static arrangement of the parts Organization: dynamic interaction of the parts and their control Implementation: design of specific building blocks Performance:

More information

Fixed-Point Math and Other Optimizations

Fixed-Point Math and Other Optimizations Fixed-Point Math and Other Optimizations Embedded Systems 8-1 Fixed Point Math Why and How Floating point is too slow and integers truncate the data Floating point subroutines: slower than native, overhead

More information

SECTION -I Q.1 A Define & Explain following Opamp parameters with their measurement techniques.

SECTION -I Q.1 A Define & Explain following Opamp parameters with their measurement techniques. [Total No. of Questions: 12] [Total No. of Printed Pages: 3] UNIVERSITY OF PUNE [4363]-10 T. E. (Electronics/electronics and Telecommunication Engg) Analog Integrated Circuit Design and Application (2003

More information

Week 1 Introduction to Programming

Week 1 Introduction to Programming CME111 Programming Languages I Week 1 Introduction to Programming Assist. Prof. Dr. Caner ÖZCAN Introduction Course Web Site: www.canerozcan.net Office Hours: Tuesday 13:00-15:00 Wednesday 15:30-17:00

More information

Computer Memory. Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1

Computer Memory. Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1 Computer Memory Data Structures and Algorithms CSE 373 SP 18 - KASEY CHAMPION 1 Warm Up public int sum1(int n, int m, int[][] table) { int output = 0; for (int i = 0; i < n; i++) { for (int j = 0; j

More information

Computer System Overview

Computer System Overview Computer System Overview Operating Systems 2005/S2 1 What are the objectives of an Operating System? 2 What are the objectives of an Operating System? convenience & abstraction the OS should facilitate

More information

CPU Performance Evaluation: Cycles Per Instruction (CPI) Most computers run synchronously utilizing a CPU clock running at a constant clock rate:

CPU Performance Evaluation: Cycles Per Instruction (CPI) Most computers run synchronously utilizing a CPU clock running at a constant clock rate: CPI CPU Performance Evaluation: Cycles Per Instruction (CPI) Most computers run synchronously utilizing a CPU clock running at a constant clock rate: Clock cycle where: Clock rate = 1 / clock cycle f =

More information

Today Cache memory organization and operation Performance impact of caches

Today Cache memory organization and operation Performance impact of caches Cache Memories 1 Today Cache memory organization and operation Performance impact of caches The memory mountain Rearranging loops to improve spatial locality Using blocking to improve temporal locality

More information

COMPUTER ORGANIZATION AND ARCHITECTURE

COMPUTER ORGANIZATION AND ARCHITECTURE Page 1 1. Which register store the address of next instruction to be executed? A) PC B) AC C) SP D) NONE 2. How many bits are required to address the 128 words of memory? A) 7 B) 8 C) 9 D) NONE 3. is the

More information

CS133 C Programming. Instructor: Jialiang Lu Office: Information Center 703

CS133 C Programming. Instructor: Jialiang Lu   Office: Information Center 703 CS133 C Programming Instructor: Jialiang Lu Email: jialiang.lu@sjtu.edu.cn Office: Information Center 703 1 Course Information: Course Page: http://wirelesslab.sjtu.edu.cn/~jlu/teaching/cp2014/ Assignments

More information

Today. Cache Memories. General Cache Concept. General Cache Organization (S, E, B) Cache Memories. Example Memory Hierarchy Smaller, faster,

Today. Cache Memories. General Cache Concept. General Cache Organization (S, E, B) Cache Memories. Example Memory Hierarchy Smaller, faster, Today Cache Memories CSci 2021: Machine Architecture and Organization November 7th-9th, 2016 Your instructor: Stephen McCamant Cache memory organization and operation Performance impact of caches The memory

More information