You Can Do That. Unit 16. Motivation. Computer Organization. Computer Organization Design of a Simple Processor. Now that you have some understanding

Size: px
Start display at page:

Download "You Can Do That. Unit 16. Motivation. Computer Organization. Computer Organization Design of a Simple Processor. Now that you have some understanding"

Transcription

1 .. ou Can Do That Unit Computer Organization Design of a imple Clou & Distribute Computing (CyberPhysical, bases, Mining,etc.) Applications (AI, Robotics, Graphics, Mobile) ystems & Networking (Embee ystems, Networks) Architecture ( & Embee HW) Where we will hea now Devices & Integrate Circuits (emiconuctors & Fabrication) HW W cripting & Interfaces C / C++ / Java Assembly / Machine Coe Logic Gates Transistors Networke Applications Applications O / / I/O Libraries Functional Units (Registers, Aers, Mues) Voltage / Currents.. Motivation Now that you have some unerstaning Of how harware is esigne an works Of how software can be use to control harware We will look at how to improve efficiency of computer systems an software so that we can start to unerstan why HW companies create the structures they o (multicore processors) we can begin to intelligently take avantage of the capabilities the HW gives us we can start to unerstan why W companies eal with some of the issues they o (efficiencies, etc.) Computer Organization Three primary sets of components I/O (everything else) Tell us where things live? Running coe Compile program (not running) Circuitry to eecute coe ource coe file variables for the piels being isplaye on your screen

2 Input / Output.. performs reas an writes to communicate with I/O evices just as it oes with memory I/O evices have locations (i.e. ) that contain ata that the processor can access These registers are assigne unique just like memory FE may signify a white ot at a particular location This coul just as easily be the comman an ata register from the LCD shiel Or the PT/DDR registers. Vieo Interface 8 FE 8 FE A D C WRITE a = he in ACII FF Keyboar Interface Primary Components insie a processor Registers Circuitry Connects to memory an I/O via aress, ata, an control buses (bus= ) Bus Ar Arithmetic an Logic Unit ().7 Registers.8 Eecutes arithmetic operations like aition an subtraction along with logical operations (, etc.) UB, in Ar ome are for general use by software Registers provie storage locations within the processor (to avoi having to rea/write slow memory) Others are require for specific purposes to ensure proper operation of the harware UB, in R-R Ar

3 .9. General Purpose Registers What if we in t have registers? Registers available to software instructions for use by the Instructions use these registers as inputs ( locations) an puts ( locations) UB, in R-R Ar Eample w/o registers: F = (X+) (X*) Requires an ADD instruction, MULtiply instruction, an UBtract Instruction w/o registers ADD: Loa X an from memory, store result to memory MUL: Loa X an again from mem., store result to memory UB: Loa results from ADD an MUL an store result to memory 9 memory accesses UB, in R-R Ar X F.. What if we have registers? Other Registers Eample w/ registers: F = (X+) (X*) Loa X an into registers ADD: R + R an store result in MUL: R * R an store result in UB: an store result in R tore R back to memory total memory access UB, in R-R X Ar X F ome bookkeeping information is neee to make the processor operate correctly Eample: Program Counter () Recall that the processor must fetch instructions from memory before ecoing an eecuting them register hols the aress of the net instruction to fetch UB, in R-R Ar

4 .. Fetching an Instruction Fetching an Instruction To fetch an instruction contains the aress of the instruction The value in the is place on the aress bus an the memory is tol to rea The is incremente, an the process is repeate for the net instruction To fetch an instruction contains the aress of the instruction The value in the is place on the aress bus an the memory is tol to rea The is incremente, an the process is repeate for the net instruction UB, in R-R = Ar = Ar = inst. machine coe = Rea inst. inst. inst. inst. inst. FF UB, in R-R = Ar = Ar = inst. machine coe = Rea inst. inst. inst. inst. inst. FF.. Circuitry Circuitry circuitry is use to the instruction an then generate the necessary signals to complete its eecution s the registers to be use as source an estination locations (using ) Assume is machine coe for an ADD instruction of = R + R Logic will select the registers (R an R) tell the to a select the estination register () UB, in R-R Ar inst. inst. inst. inst. inst. FF ADD ADD in R-R Ar inst. inst. inst. inst. FF

5 .7.8 What hall We Do? DEIGN OF A IMPLE INTRUCTION ET AND PROCE Let's esign a simple processor to unerstan the entire flow from writing software to esigning the harware This may not be the most avance processor but the goal is to give you a fully working eample from software to harware.9. Instruction ets Defines the software of the processor an memory system Instruction set is the the HW processor can unerstan an the W is compose with Usually the compiler is the one that translates the software Most assembly/machine instructions fall into one of three categories (to an from memory) (branch, subrine call, etc.) Instruction et Architecture (IA) approaches = instruction set computer vocabulary More work per instruction, slower clock cycle = instruction set computer mall, basic, but vocabulary Less work per instruction, faster clock cycle Usually a simple an small set of instructions with regular format facilitates builing faster processors

6 .. The Instruction et () The Instruction et () To start we will efine the instruction set Let's make this a simple calculator-like processor that can perform at least the following operations: Goal is to evaluate simple arithmetic epressions: (7+-)& Let's use -bit ata values (i.e. all ata operans will be -bits) To keep the number of bits neee to coe an instruction to a minimum, let's use an architecture where the register is always one ADD 7means: UB means: Let's assume the put of this computer is just LED's to isplay a -bit binary number We'll provie some aitional instructions to help us perform the calculations: That leaves us with total instructions How many bits o we nee for the opcoe of our instructions? If we want to store ata/constants in our instructions (e.g. ADD 7, UB ) how many aitional bits o we nee in our instruction? Instructions nee opcoe + ata bits = -bits Let's roun up to 8-bits for each instruction Computer ystem Output LEDs (Display = 7 = ) Opcoe Unu Constant (-bits) se (-bits) Chosen Instruction Format.. Compilation Defining the Machine Coe Consier the following "high-level" coe (7 - + ) & "Compile" it to an appropriate instruction sequence (i.e assembly) Assemblyrefers to the human reaable synta of each instruction Now we nee to convert to binary Instruction et ummary ADD k (ACC += k) UB k (ACC -= k) AND k (ACC &= k) LOAD k (ACC = k) CLR (ACC = ) OUT (OUT = ACC) Machine coerefers to the representation of each instruction. We first nee to efine the actual opcoes so we can translate the assembly you wrote on the previous slie into binary for the harware to eecute Before we o that, let's consier the harware esign as this will help us choose appropriate opcoes

7 .. Arithmetic an Logic Units Let's use the we esigne in a previous unit We will esign what is insie this block. X X F F F EE9 R R We just mae up these coe assignments an the various operations. Remember, we efinitely nee to support UB, an CLR (R=). F[:] Op./Result R = X + R = X - R = X R = -X R = X & Unuse R = Unuse X X F F F I I = F F' -to-, -bit wie mu I I = F F -to-, -bit wie mu Complete -to-, -bit wie mu I I = F' F A A A A B B B B X X Ci=F C -bit Binary Aer C F[:] Op. F[:] Op. R = X + R = X & R = X - Unuse R = X R = EE9 R = -X Unuse -to-, -bit wie mu I I = F EE9 R R.7.8 = F F = F F' = F' F Ci = F = F Logic R F[:] Ci X+ X- X -X X & unuse unuse F FF F FF F FF F FF F FF Ci Defining the Machine Coe Format Using the esign can you suggest opcoes for the various instructions? The accumulator (ACC) will be connecte to the result of the But shoul the ACC be connecte to the X or input of the? Important: We achieve Loa by passing through the to the ACC, so we nee the constant to come in on X (so cannot) Instruction et ummary ADD k (ACC += k) UB k (ACC -= k) AND k (ACC &= k) LOAD k (ACC = k) CLR (ACC = ) OUT (OUT = ACC) F[:] Op./Result R = X + R = X - R = X + = R = -X R = X & Unuse R = Unuse Instruc. OODE Op./Result

8 .9. Assembler path Now translate the assembly you foun from a few slies back to machine coe an show it as he igits per instruction The "high-level" coe was (7 - + ) & "Compile" it to an appropriate instruction sequence (i.e assembly) CLR = ADD 7 = UB = ADD = AND = Instruc. OODE Op./Result ADD ACC = ACC + C OUT OUT = ACC LOAD ACC = C UB ACC = ACC -C AND ACC = ACC & C - Unuse CLR ACC = - Unuse Opcoe Unu Constant (-bits) se (-bits) Chosen Instruction Format Now let's consier the processor ata path -bit Counter Q A Q A A A REET CLR Q A I D I D 8 I I D D D X X F F F EE9 ACC[:] OUT[:] R D Q D Q R D Q D Q LEDs.. ample Eecution of UB A Problem -bit Counter Q A Q A A A REET Q A CLR 8 D D D D D I I I I or Write assembly for: ((7 & ) + ( & )) F F F X X EE9 R R D D ACC[:] Q Q D D OUT[:] Q Q LEDs

9 .. A olution Upate Assembly Let's moify our processor as follows: A for temporary storage: Coul a more but we'll keep it simple A new instruction to save the to a register: AVE R ( ) Upate instructions to be able to specify a rather than just a constant ADD R (ACC = ACC + R) UB R (ACC = ACC - R) AND RX (ACC = ACC & R) LOAD R (ACC = R) Upate the instruction format to use the leftover bit to inicate whether the operan is a constant or shoul come from a register Opcoe (-bits) Opcoe (-bits) Constant (-bits) Unuse (-bits) New Instruction Format Write assembly for: ( (7 & ) + ( & ) ) New assembly & machine coe Instruc. OODE Op./Result ADD ACC = ACC + C/R OUT OUT = ACC LOAD ACC = X UB ACC = ACC -C/R AND ACC = ACC & C/R - Unuse CLR ACC = AVE R Opcoe (-bits) Opcoe (-bits) R = ACC C/R C/R Constant (-bits) Unuse Reg (-bits) / New Instruction Format.. Upate path More Practice (On Own Time) -bit Counter Q A Q A A A REET CLR Q A 8 D D D D D I I I I Write assembly for: ( (&) + (&) - (&) + (8&)) Try to use as few instructions as you can R_LD R_LD ACC[:] -to-, -bit wie mu Registers R[:] D[:] Q[:] I R I D[:] Q[:] R R[:] X X F F F EE9 R R D Q D Q ACC[:] D D OUT[:] Q Q LEDs Opcoe (-bits) Opcoe (-bits) C/R C/R Constant (-bits) Unuse Reg (-bits) / New Instruction Format

10 .7 D[:] Q[:] D[:] Q[:] Registers ACC[:] R_LD R_LD -bit Counter CLR Q Q D D D D D A A A A 8 I I I I REET Q A I I -to-, -bit wie mu I I -to-, -bit wie mu R R I LEDs R[:] R[:] R_LD I R_LD X X EE9 R R F F F D D Q Q ACC[:] D D Q Q OUT[:] D D Q Q OUT[:] I ADD 7.8 D[:] Q[:] D[:] Q[:] Registers ACC[:] R_LD R_LD -bit Counter CLR Q Q D D D D D A A A A 8 I I I I REET Q A I I -to-, -bit wie mu I I -to-, -bit wie mu R R I LEDs R[:] R[:] R_LD I R_LD X X EE9 R R F F F D D Q Q ACC[:] D D Q Q OUT[:] D D Q Q OUT[:] I ADD R.9 D[:] Q[:] D[:] Q[:] Registers ACC[:] R_LD R_LD -bit Counter CLR Q Q D D D D D A A A A 8 I I I I REET Q A I I -to-, -bit wie mu I I -to-, -bit wie mu R R I LEDs R[:] R[:] R_LD I R_LD X X EE9 R R F F F D D Q Q ACC[:] D D Q Q OUT[:] D D Q Q OUT[:] I AVE R

16.1. Unit 16. Computer Organization Design of a Simple Processor

16.1. Unit 16. Computer Organization Design of a Simple Processor 6. Unit 6 Computer Organization Design of a Simple Processor HW SW 6.2 You Can Do That Cloud & Distributed Computing (CyberPhysical, Databases, Data Mining,etc.) Applications (AI, Robotics, Graphics, Mobile)

More information

Unit 15. Building Wide Muxes. Building Wide Muxes. Common Hardware Components WIDE MUXES

Unit 15. Building Wide Muxes. Building Wide Muxes. Common Hardware Components WIDE MUXES 5. 5.2 Unit 5 Common Harware Components WIE MUXE 5.3 5.4 Builing Wie Muxes Builing Wie Muxes o far muxesonly have single bit inputs I is only -bit I is only -bit What if we still want to select between

More information

Computer Organization

Computer Organization Computer Organization Douglas Comer Computer Science Department Purue University 250 N. University Street West Lafayette, IN 47907-2066 http://www.cs.purue.eu/people/comer Copyright 2006. All rights reserve.

More information

EE 109 Unit 12 Computer Organization

EE 109 Unit 12 Computer Organization 1 EE 19 Unit 12 Computer Organization 2 Review of some key concepts from the first half of the semester A BRIEF SUMMARY 3 A Few Big Ideas 1 Setting and clearing bits in a register tells the hardware what

More information

EE 109 Unit 12 Computer Organization. A Few Big Ideas 1. A Few Big Ideas 2 A BRIEF SUMMARY. Clocking or enables are necessary to say

EE 109 Unit 12 Computer Organization. A Few Big Ideas 1. A Few Big Ideas 2 A BRIEF SUMMARY. Clocking or enables are necessary to say EE 9 Unit Computer Organization Review of some key concepts from the first half of the semester and revisit what CECS prepares you to do in the future. A BRIEF SUMMARY A Few Big Ideas bits in a register

More information

Introduction to Digital Logic

Introduction to Digital Logic Introduction to Digital Logic Lecture 5 Simple CPU Overview Instruction Set Software Process Software Program High Level Language Description if (x > ) x = x + y - z; a = b*x; Compiler JLEZ X,SKIP MOVE.W

More information

17.1. Unit 17. Instruction Sets Picoblaze Processor

17.1. Unit 17. Instruction Sets Picoblaze Processor 17.1 Unit 17 Instruction Sets Picoblaze Processor INSTRUCTION SET OVERVIEW 17.2 17.3 Instruction Set Review Defines the software interface of the processor and memory system Instruction set is the vocabulary

More information

Chapter 9 Memory Management

Chapter 9 Memory Management Contents 1. Introuction 2. Computer-System Structures 3. Operating-System Structures 4. Processes 5. Threas 6. CPU Scheuling 7. Process Synchronization 8. Dealocks 9. Memory Management 10.Virtual Memory

More information

Computer Organization

Computer Organization Computer Organization Douglas Comer Computer Science Department Purue University 250 N. University Street West Lafayette, IN 47907-2066 http://www.cs.purue.eu/people/comer Copyright 2006. All rights reserve.

More information

Unit 17. Instruction Set Review INSTRUCTION SET OVERVIEW. Historical Instruction Format Options. Instruction Sets Picoblaze Processor

Unit 17. Instruction Set Review INSTRUCTION SET OVERVIEW. Historical Instruction Format Options. Instruction Sets Picoblaze Processor 17.1 17.2 Unit 17 Instruction Sets Picoblaze Processor INSTRUCTION SET OVERVIEW 17.3 17.4 Instruction Set Review Defines the software interface of the processor and memory system Instruction set is the

More information

C Functions and Pointers. C Pointers. CS270 - Fall Colorado State University. CS270 - Fall Colorado State University

C Functions and Pointers. C Pointers. CS270 - Fall Colorado State University. CS270 - Fall Colorado State University 1 C Pointers C unctions and Pointers 3 2 4 5 6 7 8 our-bit Adder Logical Completeness (Example)! Can implement ANY truth table with combo of AN, OR, NOT gates. Implementing a inite tate Machine (equential

More information

6.823 Computer System Architecture. Problem Set #3 Spring 2002

6.823 Computer System Architecture. Problem Set #3 Spring 2002 6.823 Computer System Architecture Problem Set #3 Spring 2002 Stuents are strongly encourage to collaborate in groups of up to three people. A group shoul han in only one copy of the solution to the problem

More information

ECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017

ECE 550D Fundamentals of Computer Systems and Engineering. Fall 2017 ECE 550D Funamentals of Computer Systems an Engineering Fall 017 Datapaths Prof. John Boar Duke University Slies are erive from work by Profs. Tyler Bletch an Anrew Hilton (Duke) an Amir Roth (Penn) What

More information

Professor Lee, Yong Surk. References 고성능마이크로프로세서구조의개요. Topics Microprocessor & microcontroller

Professor Lee, Yong Surk. References 고성능마이크로프로세서구조의개요. Topics Microprocessor & microcontroller 이강좌는 C & S Technology 사의지원으로제작되었으며 copyright가없으므로비영리적인목적에한하여누구든지복사, 배포가가능합니다. 연구실홈페이지에는고성능마이크로프로세서에관련된많은강좌가있으며누구나무료로다운로드받을수있습니다. Professor Lee, Yong Surk 1973 : B.S., Electrical Eng., Yonsei niv. 1981

More information

11.1. Unit 11. Adders & Arithmetic Circuits

11.1. Unit 11. Adders & Arithmetic Circuits . Unit s & Arithmetic Circuits .2 Learning Outcomes I understand what gates are used to design half and full adders I can build larger arithmetic circuits from smaller building blocks ADDER.3 (+) Register.4

More information

Mark Redekopp, All rights reserved. EE 352 Unit 8. HW Constructs

Mark Redekopp, All rights reserved. EE 352 Unit 8. HW Constructs EE 352 Unit 8 HW Constructs Logic Circuits Combinational logic Perform a specific function (mapping of 2 n input combinations to desired output combinations) No internal state or feedback Given a set of

More information

EFFICIENT ON-LINE TESTING METHOD FOR A FLOATING-POINT ADDER

EFFICIENT ON-LINE TESTING METHOD FOR A FLOATING-POINT ADDER FFICINT ON-LIN TSTING MTHOD FOR A FLOATING-POINT ADDR A. Droz, M. Lobachev Department of Computer Systems, Oessa State Polytechnic University, Oessa, Ukraine Droz@ukr.net, Lobachev@ukr.net Abstract In

More information

MODULE VII. Emerging Technologies

MODULE VII. Emerging Technologies MODULE VII Emerging Technologies Computer Networks an Internets -- Moule 7 1 Spring, 2014 Copyright 2014. All rights reserve. Topics Software Define Networking The Internet Of Things Other trens in networking

More information

COSC 122 Computer Fluency. Computer Organization. Dr. Ramon Lawrence University of British Columbia Okanagan

COSC 122 Computer Fluency. Computer Organization. Dr. Ramon Lawrence University of British Columbia Okanagan COSC 122 Computer Fluency Computer Organization Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca Key Points 1) The standard computer (von Neumann) architecture consists

More information

Indicator i 20. User manual

Indicator i 20. User manual Inicator i 20 WWW.PRECIAMOLEN.COM User manual 04-50-00-1 MU / 10/2012 Contents 1. Forewor... 5 Documentary conventions... 5 Pictograms... 5 Terminology an abbreviations... 5 Aitional ocumentation... 5

More information

Overview. Operating Systems I. Simple Memory Management. Simple Memory Management. Multiprocessing w/fixed Partitions.

Overview. Operating Systems I. Simple Memory Management. Simple Memory Management. Multiprocessing w/fixed Partitions. Overview Operating Systems I Management Provie Services processes files Manage Devices processor memory isk Simple Management One process in memory, using it all each program nees I/O rivers until 96 I/O

More information

Computer Architecture 2/26/01 Lecture #

Computer Architecture 2/26/01 Lecture # Computer Architecture 2/26/01 Lecture #9 16.070 On a previous lecture, we discussed the software development process and in particular, the development of a software architecture Recall the output of the

More information

Compiler Optimisation

Compiler Optimisation Compiler Optimisation Michael O Boyle mob@inf.e.ac.uk Room 1.06 January, 2014 1 Two recommene books for the course Recommene texts Engineering a Compiler Engineering a Compiler by K. D. Cooper an L. Torczon.

More information

Coupling the User Interfaces of a Multiuser Program

Coupling the User Interfaces of a Multiuser Program Coupling the User Interfaces of a Multiuser Program PRASUN DEWAN University of North Carolina at Chapel Hill RAJIV CHOUDHARY Intel Corporation We have evelope a new moel for coupling the user-interfaces

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

PART 2. Organization Of An Operating System

PART 2. Organization Of An Operating System PART 2 Organization Of An Operating System CS 503 - PART 2 1 2010 Services An OS Supplies Support for concurrent execution Facilities for process synchronization Inter-process communication mechanisms

More information

CMSC 430 Introduction to Compilers. Spring Register Allocation

CMSC 430 Introduction to Compilers. Spring Register Allocation CMSC 430 Introuction to Compilers Spring 2016 Register Allocation Introuction Change coe that uses an unoune set of virtual registers to coe that uses a finite set of actual regs For ytecoe targets, can

More information

Politecnico di Torino. Porto Institutional Repository

Politecnico di Torino. Porto Institutional Repository Politecnico i Torino Porto Institutional Repository [Proceeing] Automatic March tests generation for multi-port SRAMs Original Citation: Benso A., Bosio A., i Carlo S., i Natale G., Prinetto P. (26). Automatic

More information

Chapter 5 Proposed models for reconstituting/ adapting three stereoscopes

Chapter 5 Proposed models for reconstituting/ adapting three stereoscopes Chapter 5 Propose moels for reconstituting/ aapting three stereoscopes - 89 - 5. Propose moels for reconstituting/aapting three stereoscopes This chapter offers three contributions in the Stereoscopy area,

More information

EE 457. EE 457 Unit 0. Prerequisites. Course Info Lecture: Prof. Redekopp Class Introduction Basic Hardware Organization

EE 457. EE 457 Unit 0. Prerequisites. Course Info Lecture: Prof. Redekopp Class Introduction Basic Hardware Organization 0.1 0.2 EE 457 EE 457 Unit 0 Class Introduction Basic Hardware Organization Focus on CPU Design Microarchitecture General Digital System Design Focus on Hierarchy Cache Virtual Focus on Computer Arithmetic

More information

CS 101, Mock Computer Architecture

CS 101, Mock Computer Architecture CS 101, Mock Computer Architecture Computer organization and architecture refers to the actual hardware used to construct the computer, and the way that the hardware operates both physically and logically

More information

Table-based division by small integer constants

Table-based division by small integer constants Table-base ivision by small integer constants Florent e Dinechin, Laurent-Stéphane Diier LIP, Université e Lyon (ENS-Lyon/CNRS/INRIA/UCBL) 46, allée Italie, 69364 Lyon Ceex 07 Florent.e.Dinechin@ens-lyon.fr

More information

An In Depth Look at VOLK

An In Depth Look at VOLK An In Depth Look at VOLK The Vector-Optimize Library of Kernels Nathan West U.S. Naval Research Laboratory 26 August 2015 (U) 26 August 2015 1 / 19 A brief look at VOLK organization VOLK is a sub-project

More information

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 2, 2016

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 2, 2016 CS 31: Intro to Systems Digital Logic Kevin Webb Swarthmore College February 2, 2016 Reading Quiz Today Hardware basics Machine memory models Digital signals Logic gates Circuits: Borrow some paper if

More information

Message Transport With The User Datagram Protocol

Message Transport With The User Datagram Protocol Message Transport With The User Datagram Protocol User Datagram Protocol (UDP) Use During startup For VoIP an some vieo applications Accounts for less than 10% of Internet traffic Blocke by some ISPs Computer

More information

Little Man Computer (LMC)

Little Man Computer (LMC) Little Man Computer (LMC) A-level Computing Independent Study Project Part Two The Little Man Computer (LMC) is a simulator which models the basic features of a modern computer. It features a central processing

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

Preamble. Singly linked lists. Collaboration policy and academic integrity. Getting help

Preamble. Singly linked lists. Collaboration policy and academic integrity. Getting help CS2110 Spring 2016 Assignment A. Linke Lists Due on the CMS by: See the CMS 1 Preamble Linke Lists This assignment begins our iscussions of structures. In this assignment, you will implement a structure

More information

ELECTRONIC PHYSICIAN SCALE WB-3000 INSTRUCTION MANUAL

ELECTRONIC PHYSICIAN SCALE WB-3000 INSTRUCTION MANUAL ELECTRONIC PHYSICIAN SCALE WB-3000 INSTRUCTION MANUAL Please keep this manual in a safe place, an make sure it is reaily available whenever necessary. Please use this prouct only after carefully reaing

More information

Computer Architectures. DLX ISA: Pipelined Implementation

Computer Architectures. DLX ISA: Pipelined Implementation Computer Architectures L ISA: Pipelined Implementation 1 The Pipelining Principle Pipelining is nowadays the main basic technique deployed to speed-up a CP. The key idea for pipelining is general, and

More information

Class Notes. Dr.C.N.Zhang. Department of Computer Science. University of Regina. Regina, SK, Canada, S4S 0A2

Class Notes. Dr.C.N.Zhang. Department of Computer Science. University of Regina. Regina, SK, Canada, S4S 0A2 Class Notes CS400 Part VI Dr.C.N.Zhang Department of Computer Science University of Regina Regina, SK, Canada, S4S 0A2 C. N. Zhang, CS400 83 VI. CENTRAL PROCESSING UNIT 1 Set 1.1 Addressing Modes and Formats

More information

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 3, 2015

CS 31: Intro to Systems Digital Logic. Kevin Webb Swarthmore College February 3, 2015 CS 31: Intro to Systems Digital Logic Kevin Webb Swarthmore College February 3, 2015 Reading Quiz Today Hardware basics Machine memory models Digital signals Logic gates Circuits: Borrow some paper if

More information

+ E. Bit-Alignment for Retargetable Code Generators * 1 Introduction A D T A T A A T D A A. Keen Schoofs Gert Goossens Hugo De Mant

+ E. Bit-Alignment for Retargetable Code Generators * 1 Introduction A D T A T A A T D A A. Keen Schoofs Gert Goossens Hugo De Mant Bit-lignment for Retargetable Coe Generators * Keen Schoofs Gert Goossens Hugo e Mant IMEC, Kapelreef 75, B-3001 Leuven, Belgium bstract When builing a bit-true retargetable compiler, every signal type

More information

1. What is a Map (or Function)? Maps. CITS2200 Data Structures and Algorithms. Some definitions... Topic 16

1. What is a Map (or Function)? Maps. CITS2200 Data Structures and Algorithms. Some definitions... Topic 16 1. What is a Map (or Function)? CITS2200 Data Structures an Algorithms Topic 16 Maps Definitions what is a map (or function)? Specification List-base representation (singly linke) Sorte block representation

More information

Chapter 2 Instruction Set Architecture

Chapter 2 Instruction Set Architecture Chapter 2 Instruction Set Architecture Course Outcome (CO) - CO2 Describe the architecture and organization of computer systems Program Outcome (PO) PO1 Apply knowledge of mathematics, science and engineering

More information

ECE232: Hardware Organization and Design

ECE232: Hardware Organization and Design ECE232: Harware Organization an Design ectre 11: Introction to IPs path apte from Compter Organization an Design, Patterson & Hennessy, CB IPS-lite processor Compter Want to bil a processor for a sbset

More information

Chapter 4. The Processor. Computer Architecture and IC Design Lab

Chapter 4. The Processor. Computer Architecture and IC Design Lab Chapter 4 The Processor Introduction CPU performance factors CPI Clock Cycle Time Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS

More information

Chapter 1: General Purpose Machine

Chapter 1: General Purpose Machine Chapter 1: General Purpose Machine Computer ystems esign and rchitecture User s View of a Computer The user sees software, speed, storage capacity, and peripheral device functionality. Computer ystems

More information

Learning Outcomes. Spiral 3 1. Digital Design Targets ASICS & FPGAS REVIEW. Hardware/Software Interfacing

Learning Outcomes. Spiral 3 1. Digital Design Targets ASICS & FPGAS REVIEW. Hardware/Software Interfacing 3-. 3-.2 Learning Outcomes Spiral 3 Hardware/Software Interfacing I understand the PicoBlaze bus interface signals: PORT_ID, IN_PORT, OUT_PORT, WRITE_STROBE I understand how a memory map provides the agreement

More information

Processor (I) - datapath & control. Hwansoo Han

Processor (I) - datapath & control. Hwansoo Han Processor (I) - datapath & control Hwansoo Han Introduction CPU performance factors Instruction count - Determined by ISA and compiler CPI and Cycle time - Determined by CPU hardware We will examine two

More information

Digital System Design Using Verilog. - Processing Unit Design

Digital System Design Using Verilog. - Processing Unit Design Digital System Design Using Verilog - Processing Unit Design 1.1 CPU BASICS A typical CPU has three major components: (1) Register set, (2) Arithmetic logic unit (ALU), and (3) Control unit (CU) The register

More information

address ALU the operation opcode ACC Acc memory address

address ALU the operation opcode ACC Acc memory address In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in which we will examine how a microprocessor actually works

More information

DESIGN, MANUFACTURE AND TESTING OF A 4-BIT MICROPROCESSOR

DESIGN, MANUFACTURE AND TESTING OF A 4-BIT MICROPROCESSOR DESIGN, MANUFACTURE AND TESTING OF A 4-BIT MICROPROCESSOR Theodore D ~ntonoli 5th Year Microelectronic Engineering Student Rochester Institute of Technology ABSTRACT A four bit microprocessor was designed

More information

PART 5. Process Coordination And Synchronization

PART 5. Process Coordination And Synchronization PART 5 Process Coorination An Synchronization CS 503 - PART 5 1 2010 Location Of Process Coorination In The Xinu Hierarchy CS 503 - PART 5 2 2010 Coorination Of Processes Necessary in a concurrent system

More information

Spiral 3-1. Hardware/Software Interfacing

Spiral 3-1. Hardware/Software Interfacing 3-1.1 Spiral 3-1 Hardware/Software Interfacing 3-1.2 Learning Outcomes I understand the PicoBlaze bus interface signals: PORT_ID, IN_PORT, OUT_PORT, WRITE_STROBE I understand how a memory map provides

More information

Single Cycle Datapath

Single Cycle Datapath Single Cycle atapath Lecture notes from MKP, H. H. Lee and S. Yalamanchili Section 4.-4.4 Appendices B.7, B.8, B.,.2 Practice Problems:, 4, 6, 9 ing (2) Introduction We will examine two MIPS implementations

More information

Politehnica University of Timisoara Mobile Computing, Sensors Network and Embedded Systems Laboratory. Testing Techniques

Politehnica University of Timisoara Mobile Computing, Sensors Network and Embedded Systems Laboratory. Testing Techniques Politehnica University of Timisoara Mobile Computing, Sensors Network an Embee Systems Laboratory ing Techniques What is testing? ing is the process of emonstrating that errors are not present. The purpose

More information

NAND flash memory is widely used as a storage

NAND flash memory is widely used as a storage 1 : Buffer-Aware Garbage Collection for Flash-Base Storage Systems Sungjin Lee, Dongkun Shin Member, IEEE, an Jihong Kim Member, IEEE Abstract NAND flash-base storage evice is becoming a viable storage

More information

are Softw Instruction Set Architecture Microarchitecture are rdw

are Softw Instruction Set Architecture Microarchitecture are rdw Program, Application Software Programming Language Compiler/Interpreter Operating System Instruction Set Architecture Hardware Microarchitecture Digital Logic Devices (transistors, etc.) Solid-State Physics

More information

EE 3170 Microcontroller Applications

EE 3170 Microcontroller Applications EE 3170 Microcontroller Applications Lecture 4 : Processors, Computers, and Controllers - 1.2 (reading assignment), 1.3-1.5 Based on slides for ECE3170 by Profs. Kieckhafer, Davis, Tan, and Cischke Outline

More information

In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in

In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in In this lecture, we will look at how storage (or memory) works with processor in a computer system. This is in preparation for the next lecture, in which we will examine how a microprocessor actually works

More information

Animated Surface Pasting

Animated Surface Pasting Animate Surface Pasting Clara Tsang an Stephen Mann Computing Science Department University of Waterloo 200 University Ave W. Waterloo, Ontario Canaa N2L 3G1 e-mail: clftsang@cgl.uwaterloo.ca, smann@cgl.uwaterloo.ca

More information

Digital Logic Design. Midterm #1

Digital Logic Design. Midterm #1 The University of Toleo f7ms_il7.fm - EES: Digital Logic Design Stuent Name_ Digital Logic Design Miterm # Problems Points. 3. 4 3. 6 4. Total 5 Was the eam fair? yes no //7 The University of Toleo f7ms_il7.fm

More information

Overview. EECS Components and Design Techniques for Digital Systems. Lec 16 Arithmetic II (Multiplication) Computer Number Systems.

Overview. EECS Components and Design Techniques for Digital Systems. Lec 16 Arithmetic II (Multiplication) Computer Number Systems. Overview EE 15 - omponents and Design Techniques for Digital ystems Lec 16 Arithmetic II (Multiplication) Review of Addition Overflow Multiplication Further adder optimizations for multiplication LA in

More information

COSC 243. Computer Architecture 1. COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1

COSC 243. Computer Architecture 1. COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1 COSC 243 Computer Architecture 1 COSC 243 (Computer Architecture) Lecture 6 - Computer Architecture 1 1 Overview Last Lecture Flip flops This Lecture Computers Next Lecture Instruction sets and addressing

More information

csitnepal Unit 3 Basic Computer Organization and Design

csitnepal Unit 3 Basic Computer Organization and Design Unit 3 Basic Computer Organization and Design Introduction We introduce here a basic computer whose operation can be specified by the resister transfer statements. Internal organization of the computer

More information

Digital Logic Design. Midterm #1

Digital Logic Design. Midterm #1 The University of Toleo s7ms_il7.fm - EECS: igital Logic esign r. nthony. Johnson Stuent Name_ igital Logic esign Miterm # Problems Points. 3. 4 3. 6 4. Total 5 Was the eam fair? yes no /6/7 The University

More information

MODULE II. Network Programming And Applications

MODULE II. Network Programming And Applications MODULE II Network Programming An Applications Computer Networks an Internets -- Moule 2 1 Spring, 2014 Copyright 2014. All rights reserve. Topics Internet services an communication paraigms Client-server

More information

Chapter 5. Computer Architecture Organization and Design. Computer System Architecture Database Lab, SANGJI University

Chapter 5. Computer Architecture Organization and Design. Computer System Architecture Database Lab, SANGJI University Chapter 5. Computer Architecture Organization and Design Computer System Architecture Database Lab, SANGJI University Computer Architecture Organization and Design Instruction Codes Computer Registers

More information

Chapter 1: The General Purpose Machine

Chapter 1: The General Purpose Machine Chapter 1: The General Purpose Machine Computer ystems esign and rchitecture User s View of a Computer The user sees software, speed, storage capacity, and peripheral device functionality. Computer ystems

More information

CSE140: Components and Design Techniques for Digital Systems

CSE140: Components and Design Techniques for Digital Systems CSE4: Components and Design Techniques for Digital Systems Tajana Simunic Rosing Announcements and Outline Check webct grades, make sure everything is there and is correct Pick up graded d homework at

More information

Teaching London Computing

Teaching London Computing Teaching London Computing CAS London CPD Day 2016 Little Man Computer William Marsh School of Electronic Engineering and Computer Science Queen Mary University of London Overview and Aims LMC is a computer

More information

Blog -

Blog - . Instruction Codes Every different processor type has its own design (different registers, buses, microoperations, machine instructions, etc) Modern processor is a very complex device It contains Many

More information

ME4447/6405. Microprocessor Control of Manufacturing Systems and Introduction to Mechatronics. Instructor: Professor Charles Ume LECTURE 7

ME4447/6405. Microprocessor Control of Manufacturing Systems and Introduction to Mechatronics. Instructor: Professor Charles Ume LECTURE 7 ME4447/6405 Microprocessor Control of Manufacturing Systems and Introduction to Mechatronics Instructor: Professor Charles Ume LECTURE 7 Reading Assignments Reading assignments for this week and next

More information

Positions, Iterators, Tree Structures and Tree Traversals. Readings - Chapter 7.3, 7.4 and 8

Positions, Iterators, Tree Structures and Tree Traversals. Readings - Chapter 7.3, 7.4 and 8 Positions, Iterators, Tree Structures an Reaings - Chapter 7.3, 7.4 an 8 1 Positional Lists q q q q A position acts as a marker or token within the broaer positional list. A position p is unaffecte by

More information

Appearance Sensing distance Output configuration Operation mode Model. Appearance Sensing distance Output configuration Operation mode Model

Appearance Sensing distance Output configuration Operation mode Model. Appearance Sensing distance Output configuration Operation mode Model Spatter-resistant Proximity Sensor EEQ CSM_EEQ_DS_E Spatter-resistant Fluororesincoate Proximity Sensor Superior spatter resistance. Long Sensing-istance s ae for sensing istances up to mm. DC -Wire s.

More information

ELECTRONIC SCALE WB-380. Instruction manual

ELECTRONIC SCALE WB-380. Instruction manual ELECTRONIC SCALE WB-380 Instruction manual Temperature Range for Use : 5 C 35 C Relative Humiity : 30% 80% (without conensation) Temperature Range of Environment :

More information

Appearance Sensing distance Output configuration Operation mode Model. Appearance Sensing distance Output configuration Operation mode Model

Appearance Sensing distance Output configuration Operation mode Model. Appearance Sensing distance Output configuration Operation mode Model Spatter-resistant Proximity Sensor EEQ CSM_EEQ_DS_E Spatter-resistant Fluororesincoate Proximity Sensor Superior spatter resistance. Long Sensing-istance s ae for sensing istances up to mm. Pre-wire Smartclick

More information

Protocol Configuration

Protocol Configuration Configuration Protocol Configuration Many items must be set before protocols can be use IP aress of each network interface Aress mask for each network Initial values in the forwaring table Process is known

More information

Processing Unit CS206T

Processing Unit CS206T Processing Unit CS206T Microprocessors The density of elements on processor chips continued to rise More and more elements were placed on each chip so that fewer and fewer chips were needed to construct

More information

MICROPROGRAMMED CONTROL

MICROPROGRAMMED CONTROL MICROPROGRAMMED CONTROL Hardwired Control Unit: When the control signals are generated by hardware using conventional logic design techniques, the control unit is said to be hardwired. Micro programmed

More information

session 7. Datapath Design

session 7. Datapath Design General Objective: Determine the hardware requirement of a digital computer based on its instruction set. Specific Objectives: Describe the general concepts in designing the data path of a digital computer

More information

Figure 1: 2D arm. Figure 2: 2D arm with labelled angles

Figure 1: 2D arm. Figure 2: 2D arm with labelled angles 2D Kinematics Consier a robotic arm. We can sen it commans like, move that joint so it bens at an angle θ. Once we ve set each joint, that s all well an goo. More interesting, though, is the question of

More information

Intensive Hypercube Communication: Prearranged Communication in Link-Bound Machines 1 2

Intensive Hypercube Communication: Prearranged Communication in Link-Bound Machines 1 2 This paper appears in J. of Parallel an Distribute Computing 10 (1990), pp. 167 181. Intensive Hypercube Communication: Prearrange Communication in Link-Boun Machines 1 2 Quentin F. Stout an Bruce Wagar

More information

Random Clustering for Multiple Sampling Units to Speed Up Run-time Sample Generation

Random Clustering for Multiple Sampling Units to Speed Up Run-time Sample Generation DEIM Forum 2018 I4-4 Abstract Ranom Clustering for Multiple Sampling Units to Spee Up Run-time Sample Generation uzuru OKAJIMA an Koichi MARUAMA NEC Solution Innovators, Lt. 1-18-7 Shinkiba, Koto-ku, Tokyo,

More information

Offloading Cellular Traffic through Opportunistic Communications: Analysis and Optimization

Offloading Cellular Traffic through Opportunistic Communications: Analysis and Optimization 1 Offloaing Cellular Traffic through Opportunistic Communications: Analysis an Optimization Vincenzo Sciancalepore, Domenico Giustiniano, Albert Banchs, Anreea Picu arxiv:1405.3548v1 [cs.ni] 14 May 24

More information

Recitation Caches and Blocking. 4 March 2019

Recitation Caches and Blocking. 4 March 2019 15-213 Recitation Caches an Blocking 4 March 2019 Agena Reminers Revisiting Cache Lab Caching Review Blocking to reuce cache misses Cache alignment Reminers Due Dates Cache Lab (Thursay 3/7) Miterm Exam

More information

Digital Logic Design. Final Examination

Digital Logic Design. Final Examination The University of Toleo s8fs_il7.fm - EEC: igital Logic esign r. Anthony. Johnson tuent name igital Logic esign Final Examination Problems Points... 4 Total 6 Was the exam fair? yes no The University of

More information

Name: ID# UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences EECS150 Fall 2001 Prof. Subramanian Midterm III

Name:   ID# UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences EECS150 Fall 2001 Prof. Subramanian Midterm III UNIVERSITY OF CALIFORNIA Department of Electrical Engineering and Computer Sciences EECS150 Fall 2001 Prof. Subramanian Midterm III 1) Recalculate the various propogation delays in a 4-bit carry lookahead

More information

Systems Architecture

Systems Architecture Systems Architecture Lecture 15: A Simple Implementation of MIPS Jeremy R. Johnson Anatole D. Ruslanov William M. Mongan Some or all figures from Computer Organization and Design: The Hardware/Software

More information

Inf2C - Computer Systems Lecture Processor Design Single Cycle

Inf2C - Computer Systems Lecture Processor Design Single Cycle Inf2C - Computer Systems Lecture 10-11 Processor Design Single Cycle Boris Grot School of Informatics University of Edinburgh Previous lectures Combinational circuits Combinations of gates (INV, AND, OR,

More information

Blog - https://anilkumarprathipati.wordpress.com/

Blog - https://anilkumarprathipati.wordpress.com/ Control Memory 1. Introduction The function of the control unit in a digital computer is to initiate sequences of microoperations. When the control signals are generated by hardware using conventional

More information

CordEx. >> Operating instructions. English

CordEx. >> Operating instructions. English CorEx >> Operating instructions English Symbols use in this manual Important information concerning your safety is specifically marke. Follow these instructions closely to prevent accients an amage to

More information

Multilevel Paging. Multilevel Paging Translation. Paging Hardware With TLB 11/13/2014. CS341: Operating System

Multilevel Paging. Multilevel Paging Translation. Paging Hardware With TLB 11/13/2014. CS341: Operating System CS341: Operating System Lect31: 21 st Oct 2014 Dr A Sahu Dept o Comp Sc & Engg Inian Institute o Technology Guwahati ain Contiguous Allocation, Segmentation, Paging Page Table an TLB Paging : Larger Page

More information

Levels in Processor Design

Levels in Processor Design Levels in Processor Design Circuit design Keywords: transistors, wires etc.results in gates, flip-flops etc. Logical design Putting gates (AND, NAND, ) and flip-flops together to build basic blocks such

More information

Performance Evaluation of a High Precision Software-based Timestamping Solution for Network Monitoring

Performance Evaluation of a High Precision Software-based Timestamping Solution for Network Monitoring 181 Performance Evaluation of a High Precision Software-base Timestamping Solution for Network Monitoring Peter Orosz, Tamas Skopko Faculty of Informatics University of Debrecen Debrecen, Hungary e-mail:

More information

Chapter 2: Machine Languages and Digital Logic

Chapter 2: Machine Languages and Digital Logic Chapter 2: Machine Languages and igital Logic Computer ystems esign and rchitecture What are the components of an I? ometimes known as The Programmers Model of the machine torage cells General and special

More information

Lab work #8. Congestion control

Lab work #8. Congestion control TEORÍA DE REDES DE TELECOMUNICACIONES Grao en Ingeniería Telemática Grao en Ingeniería en Sistemas e Telecomunicación Curso 2015-2016 Lab work #8. Congestion control (1 session) Author: Pablo Pavón Mariño

More information

CHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle

CHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle CS 224: Computer Organization S.KHABET CHAPTER 5 Basic Organization and Design Outline Instruction Codes Computer Registers Computer Instructions Timing and Control Instruction Cycle Memory Reference Instructions

More information

Just-In-Time Software Pipelining

Just-In-Time Software Pipelining Just-In-Time Software Pipelining Hongbo Rong Hyunchul Park Youfeng Wu Cheng Wang Programming Systems Lab Intel Labs, Santa Clara What is software pipelining? A loop optimization exposing instruction-level

More information