Remember This from Week 3? DFA: 4 Bar Position
|
|
- Lucas McDonald
- 5 years ago
- Views:
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
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 informationIntroduction 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 informationComputer 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 informationIntroduction 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 informationENCE 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 informationGreat 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 informationIntroduction 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 informationCourse 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 informationDigital 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 informationABSTRACTION 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 informationIntroduction 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 informationCourse 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 informationIntroduction 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 informationLecture 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 informationChris 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 informationIntroduction 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 informationIntroduction 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 informationComputer 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 information211: 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 informationOverview 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 informationComputer 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 informationComputer 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 informationEvaluation 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 informationOverview 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 informationOverview 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 informationAlgorithm 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 informationMicroarchitecture 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 informationLecture 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 informationAPPENDIX 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 informationA 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 informationLC-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 informationMicroarchitecture 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 informationELEG3923 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 informationCC312: 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 informationMemory 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 informationComputer 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 informationMemory 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 informationHigh 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 informationChapter 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 informationCS/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 informationCISC 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 information1 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 informationChapter 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 informationDec 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 informationECE232: 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 informationChapter 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 informationCSCI-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 informationCache 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 informationThe 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 informationThe 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 informationComponents 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 informationDenison 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 informationAdministrivia. 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 informationChapter-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 informationCache 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 informationMicroprocessors 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 informationGiving 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 informationBasic 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 informationThe 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 informationCache 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 informationSlide 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 informationAgenda 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 informationNational 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 informationMemory 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 informationLecture (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 informationSome 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 informationSample. 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 informationFinal 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 informationMeasure, 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 informationCache 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 informationGOPALAN 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 informationCache 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 informationCache 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.
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 informationAnnotated 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 informationNumber 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 informationAlgorithm 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 informationdata 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 informationCC411: 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 informationE40M. 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 information9/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 informationPharmacy 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 information2. 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 informationECE232: 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 informationChapter One. Introduction to Computer System
Principles of Programming-I / 131101 Prepared by: Dr. Bahjat Qazzaz -------------------------------------------------------------------------------------------- Chapter One Introduction to Computer System
More informationCourse 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 informationComputer 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 informationBASIC 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 informationNumber 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 informationAlternate 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 informationFixed-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 informationSECTION -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 informationWeek 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 informationComputer 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 informationComputer 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 informationCPU 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 informationToday 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 informationCOMPUTER 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 informationCS133 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 informationToday. 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