CN310 Microprocessor Systems Design
|
|
- Nelson Heath
- 5 years ago
- Views:
Transcription
1 CN310 Microprocessor Systems Design Micro Architecture Nawin Somyat Department of Electrical and Computer Engineering Thammasat University 28 August 2018
2 Outline Course Contents 1 Introduction 2 Simple Computer 3 Micro Architecture 4 Peripherals 5 Applications Outline 1 Diagram 2 Architecture Processor Core Memory Buses 3 Instruction Set Basics Data Access Control Flow CN310 Microprocessor Systems Design 2 / 60
3 Block Diagram A graphical representation of principal structure and its interconnections, used for a higher level, less detailed description of the overall concepts. Blocks: parts / components / functions Lines: connections / relationships Thick lines: grouped connections Arrows: direction of energy / current / signal / data CN310 Microprocessor Systems Design 3 / 60
4 Block Diagram CN310 Microprocessor Systems Design 4 / 60
5 Block Diagram CN310 Microprocessor Systems Design 5 / 60
6 Schematic A graphical representation of the elements of a system using abstract, graphic symbols rather than realistic pictures. CN310 Microprocessor Systems Design 6 / 60
7 Timing Diagram A graphical representation of the time variation of signals, as well as the timed relationship between the signals. CN310 Microprocessor Systems Design 7 / 60
8 What is Microprocessor A device incorporates most or all of the functions of a central processing unit (CPU) on a single integrated circuit. CN310 Microprocessor Systems Design 8 / 60
9 What is Microprocessor An electronic component: Need fixed supply DC voltage (Vcc) and ground (GND). Operations rely on voltage signal. Internal operations are based on transistors. A digital IC: Operate with respect to clock signal. Interpret voltage level as logic. A device with constrained electrical properties: Can supply only limited current (sink > source) When interfacing with analog signal, input voltage must not exceed supply voltage. A device with processing capability: compared with similar processor core More frequency (MHz) means faster computation. Larger data width (8bit < 16bit < 32bit < 64bit) means more data processing and transfer capability. CN310 Microprocessor Systems Design 9 / 60
10 Cautions Microprocessor is built using CMOS technology Lower supply voltage (3.3V,2.5V,1.8V) uses less power, but will be damaged from 5V circuit. Power loss is proportional to switching frequency. Vulnerable to electrostatic discharge (ESD). Microprocessor executes code within memory. Memory address must be aligned with instruction/data width. Microprocessor selection may need to concern regulations. Thermal properties: operating temperature, heat dissipation. Electromagnetic properties: EMC. Production requirements: lead-free, RoHS. CN310 Microprocessor Systems Design 10 / 60
11 Processor Core A microprocessor is a programmable chip that is used for executing instructions to process data or control other devices. CN310 Microprocessor Systems Design 11 / 60
12 Processor Core Control Unit: manage sequence of processing, e.g. Fetch and execute instructions. Move data among memory locations. Branch to separate instruction based on decisions. Arithematic and Logic Unit: perform mathematical and logical operations, e.g. Addition, subtraction, multiplication, and division AND, OR, XOR, and shift operations. Registers and Flags: Instruction register/decoder: Program counter (PC): memory address of next instruction Memory bus: path to access memory CN310 Microprocessor Systems Design 12 / 60
13 Processor Core: Example CN310 Microprocessor Systems Design 13 / 60
14 Processor Core: Example ARM CN310 Microprocessor Systems Design 14 / 60
15 Processor Core: Example AVR CN310 Microprocessor Systems Design 15 / 60
16 Processor Core: Example Core 2 CN310 Microprocessor Systems Design 16 / 60
17 Concepts Instruction = what to do! Register = temporary memory Data = intermediate (constant) or reference (register/memory) Memory = place of code (ROM) or data (RAM) Address = location in memory of code/data CN310 Microprocessor Systems Design 17 / 60
18 Architecture Fundamental operational structure of processor core from programming viewpoint Instruction set Registers Data types Addressing modes Memory architecture Interrupt and exception handling External I/O CN310 Microprocessor Systems Design 18 / 60
19 Instruction Set An instruction set is a list of all the opcodes (machine language) that a processor can execute. instruction = opcode + operands CN310 Microprocessor Systems Design 19 / 60
20 Instruction Set Registers for arithmetic, addressing, or control functions Memory locations or offsets Operands referred by addressing modes Arithmetic instructions, e.g. add, subtract Logic instructions, e.g. and, or, not Data instructions, e.g. move, input, output, load, store Control flow instructions, e.g. goto, if-goto, call, return Special instructions, e.g. test-and-set, vector/floating-point CN310 Microprocessor Systems Design 20 / 60
21 Instruction set Other than their functions, instructions may be grouped based on the number of operands. 0-operand (stack machines): arithmetic operations use data from stack. push a; push b; add; pop c; 1-operand (accumulator machines): specify an operand (register, mem location, constant) with implicit accumulator load a; add b; store c; 2-operand: load a,reg1; load b,reg2; add reg1,reg2; 3-operand: complex operations or addressing modes CISC = move a,reg1; add reg1,b,c; RISC = load a,reg1; add reg1,reg2,reg3; (add reg1+reg2 -> reg3) more operands: CN310 Microprocessor Systems Design 21 / 60
22 Registers and Flags Registers are limited internal storage within microprocessor, fastest to access from MPU side. Used as temporary storage for execution input and output Indicate the execution capability of instruction/data, e.g. 8bit, 16bit, 32bit, 64bit Reflect the size of word, group of bits that processor can handle in one operation Flags refer to one or more bits within a register, that store a binary value representing a specific meaning CN310 Microprocessor Systems Design 22 / 60
23 Registers and Flags Instruction registers stores the instruction currently being executed or decoded General purpose registers hold data/address values Data registers hold numeric values Address registers hold index values for memory addressing Control and status registers include program counter, stack pointer, and status register Conditional registers hold enable/disable conditions for specific instructions Special purpose registers store program state Hardware registers contain bits of hardware state. Some architectures include additional registers, e.g. floating point registers, vector registers CN310 Microprocessor Systems Design 23 / 60
24 AVR Registers AVR architecture uses fast-access register file containing 32 x 8-bit registers. Single clock cycle access time Sixteen 16-bit addressable units CN310 Microprocessor Systems Design 24 / 60
25 AVR Status Register Status Register (SREG) is updated after all arithmetic and logical instructions, containing a set of status flags: I: Global Interrupt Enable H: Half Carry Flag V: Twos Complement Overflow Flag Z: Zero Flag T: Bit Copy Storage S: Sign Bit N: Negative Flag C: Carry Flag CN310 Microprocessor Systems Design 25 / 60
26 Memory Models Memory model is the way that processor can reference to an entity in memory. Flat memory model: single space up to 2 n Simple, efficient for single task. Not appropriate for multitasking OS (required MMU) Paged memory model: multiple pages, each page up to 2 n Suitable for multitasking environment Harder for low-level management Segmented memory model: combined segment:offset More efficient due to variable page boundaries More difficult for compilers CN310 Microprocessor Systems Design 26 / 60
27 Memory Map A memory map is a representation of memory layout for storing code and data. Program code Internal or external flash memory Read/write memory Internal or external RAM Hardware registers mapping CN310 Microprocessor Systems Design 27 / 60
28 Harvard Architecture Harvard code and data use separate memory space. CN310 Microprocessor Systems Design 28 / 60
29 von Neumann Architecture von Neumann code and data use shared memory space. CN310 Microprocessor Systems Design 29 / 60
30 Cache Memory CPU cache is a smaller, faster memory used by CPU to reduce the average time to access system memory. Cache stores copies of frequently used code/data in main memory Modern processors integrate three types of cache Instruction cache to speed up executable instruction fetch. Data cache to speed up data fetch and store. Translation lookaside buffer to speed up virtual-to-physical address translation Efficiency depends on hit/miss ratio CN310 Microprocessor Systems Design 30 / 60
31 Architecture Classification Instruction Set: Complex Instuction Set Computer (CISC): limited accumulators, complex instruction set, various addressing modes. Aim for 1 processing/1 instruction = small code size Reduced Instruction Set Computer (RISC): general-purpose registers, simple instruction set, limited addressing modes, load-store execution Aim for 1 clock/1 instruction = better MIPS Others: DSP, VLIW,... Word size: 8 / 16 / 32 / 64 bit Memory space: program and data. von Neumann architecture: share address space. Harvard architecture: separate address space. CN310 Microprocessor Systems Design 31 / 60
32 Questions What architecture types of AVR core How many registers in AVR core What is word length of AVR core How large memory can be addressed How many addressing modes AVR core support CN310 Microprocessor Systems Design 32 / 60
33 Processor Bus Processor bus is a subsystem that transfers data between components inside a microprocessor. Data bus: transport data to/from memory Address bus: provide address of memory locations Control bus: control devices on bus There are different type of processor buses System bus or memory bus: CPU main memory Peripheral bus or I/O bus: bridge peripheral devices CN310 Microprocessor Systems Design 33 / 60
34 Bus Addressing & Timing Processor core accesses to code and data in memory using a sequence of signals from address/data/control buses. Generate and hold address value on address bus Some address bits may be used for memory chip selection Assert Read/Write signal from control bus Access data via data bus CN310 Microprocessor Systems Design 34 / 60
35 System and Peripheral Clocks Microprocessor components are digital logics which operate w.r.t. clock signals. Clock source may be external or internal oscillator PLL (phase-locked-loop) multiplies clock frequency Use low-frequency oscillator Prescalar divides clock frequency Peripheral devices Lower-speed devices CN310 Microprocessor Systems Design 35 / 60
36 System and Peripheral Clocks: Example AVR CN310 Microprocessor Systems Design 36 / 60
37 System and Peripheral Clocks Clock source can be selected via I/O register Changing clock source requires time to stabilize frequency Adjusting clock frequency makes trade-off between processing power and power consumption CN310 Microprocessor Systems Design 37 / 60
38 Computer Buses Computer buses cover data pathway among CPU, mainboard chipset, and external devices. Northbridge or memory controller hub: front-side bus Memory (RAM) Highspeed graphics subsystem Southbridge or I/O controller hub: PCI bus = standardized bus for expansion cards SATA and IDE = hard disk drive SPI bus = flash BIOS, SMBus = battery USB bus CN310 Microprocessor Systems Design 38 / 60
39 Computer Buses: Example CN310 Microprocessor Systems Design 39 / 60
40 Instruction Set An instruction set is a list of all the opcodes (machine language) that a processor can execute. Arithmetic instructions, e.g. add, subtract Logic instructions, e.g. and, or, not Data instructions, e.g. move, input, output, load, store Control flow instructions, e.g. goto, if-goto, call, return Special instructions, e.g. test-and-set, vector/floating-point Programming env. at level of machine instructions includes Data types Addressing mode Execution status Instruction timing CN310 Microprocessor Systems Design 40 / 60
41 Instruction Cycle Fetch-and-Execute cycle is a sequence where instructions are fetched from memory, then executed. 1 Fetch the instruction at PC into instruction register: IR [PC] 2 Decode the instruction and increment PC: PC PC + n 3 Fetch operands from memory (instruction with indirect address) 4 Execute the instruction by control unit or ALU 5 Store result to memory CN310 Microprocessor Systems Design 41 / 60
42 Execution Timing The Parallel Instruction Fetches and Instruction Executions Single Cycle ALU Operation CN310 Microprocessor Systems Design 42 / 60
43 Accumulator Architecture CISC processors have limited accumulators, complex instructions, orthogonal addressing modes. Load data into accumulator. Execute instructions with additional data from memory. Store results into memory. CN310 Microprocessor Systems Design 43 / 60
44 RISC Architecture RISC processors have many working registers, simple addressing modes, memory access via load/store instructions. Load data from memory into registers Execute instructions using registers Store results into memory CN310 Microprocessor Systems Design 44 / 60
45 ALU-Related Instructions Basic arithematic and logic instructions that almost ALUs can perform: Integer arithmetic operations: addition, subtraction, multiplication, division Bitwise logic operations: AND, NOT, OR, XOR Bit-shifting operations: to the left or right, with or without sign extension Shifts can be interpreted as multiplications by 2 and divisions by 2. Additional complex ALU operations are optional for the design of instruction set architecture. Floating-point calculation is handled by FPU, not ALU. CN310 Microprocessor Systems Design 45 / 60
46 Binary Representation Two s complement of a binary number is the value obtained by subtracting the number from 2 n. 1 = 2 8 ( ) 1( ) = Encode negative numbers into ordinary binary without special circuit to handle signed computation Represent number in the range 2 n 1 to +2 n 1 1 binary base-10 binary base CN310 Microprocessor Systems Design 46 / 60
47 Machine Data Size Processor core view machine data types according to the relationship between instructions and registers/flags. Bit: 0 or 1 Each flag in conditional registers can be accessed via specific instructions A few processor cores can access general purpose registers at bit level Byte: an octet (8-bit) Similar to word for 8-bit processors Need downsizing for 16-/32-/64-bit processors Word: word length equals the size of registers Some processors support instructions that handle operands with 2 words or more CN310 Microprocessor Systems Design 47 / 60
48 Machine Data Types Programming data types are translated at compiler level into machine data types Boolean, char, integer types are treated as word-length data Floating-point value is handled by software or co-processor Integer processing is the fastest since it is word-aligned Floating-point processing is the slowest if no co-processor Arithematic operations based on native instructions, e.g. add, shift, are faster In C language, integer promotion rules are applied for the computation of char/integer/long data CN310 Microprocessor Systems Design 48 / 60
49 Status Register Status register refers to a group of registers containing flags (bits) showing the status of microprocessor and execution result. Typical statuses include: Carry Flag = result has carry from arithemetic operation Zero Flag = result is zero Negative Flag = result is negative Overflow Flag = result is overflow Parity Flag = result is odd or even Interrupt Enable Flag = flag to enable/disable interrupt Trap Flag = trap condition occurs w.r.t. execution result Some instructions can manipulate these flags directly, or execute according to their value. CN310 Microprocessor Systems Design 49 / 60
50 Data Instructions The movement of data between processor and external devices is handled via the control unit through processor bus. Set register to a constant value. Move data among registers and memory locations: copy, move, load, store. Read and write data with hardware devices: in, out. Flexibility of referencing memory locations allow processor to handle data transfer easier addressing mode. CN310 Microprocessor Systems Design 50 / 60
51 Addressing Modes Addressing mode specifies how to calculate the effective memory address of an operand by using information held in registers and/or constants. Register: operand is in the register Immediate: operand is in the instruction itself Direct: address of operand is in the instruction Register Direct: address of operand is in the given register Base Displacement: address is the sum of register content and a constant Indirect: instruction have address, the contents at the address is the address of the operand Register Indirect: register contains address, the contents at the address is the address of the operand CN310 Microprocessor Systems Design 51 / 60
52 Addressing Modes Addressing modes for code Direct: jump addr Register Direct: jump reg Base Displacement: jump offset Addressing modes for data Direct: load reg,addr Base Displacement: load reg,base,offset CN310 Microprocessor Systems Design 52 / 60
53 Addressing Modes: Examples Direct Data Addressing CN310 Microprocessor Systems Design 53 / 60
54 Addressing Modes: Examples Indirect Data Addressing with Displacement CN310 Microprocessor Systems Design 54 / 60
55 Control Flow Instructions Jumping (unconditional) or Branching (conditional) is the ability to load the PC register with a new address that is not the next sequential address. executing these instructions alters the flow of software. Jump instructions: Absolute: local or long Relative Subroutine instructions: Call and return Software traps Branch instructions: Status register s flags Comparison result CN310 Microprocessor Systems Design 55 / 60
56 Control Flow Instructions: Branch Instructions CN310 Microprocessor Systems Design 56 / 60
57 Subroutine Call A subroutine is a group of instructions that will be used repeatedly in different locations of the program. basis of function call in high-level language. CALL instruction: redirect the execution to the subroutine RET insutruction: return the execution to the calling routine To return after subroutine ends, how processor can remember its code address and execution state. CN310 Microprocessor Systems Design 57 / 60
58 Stack Processor stack is a memory portion used as temporary storage during execution. Stack operation is based on last-in, first-out mechanism Push register into stack Pop top stack to register Stack is always used for saving status and passing arguments PC, status registers, working registers PC, calling arguments Return value CN310 Microprocessor Systems Design 58 / 60
59 Stack: Frame Stack pointer (SP) is the memory address of stack last data Kept by stack pointer register Either increase or decrease, depend on processor Stack overflow is the problem of pushing too much data into stack CN310 Microprocessor Systems Design 59 / 60
60 Stack: Subroutine Hardware level: PC and SREG are saved by default. Software level: required registers by PUSH instruction. High-level language: all registers before each function call. CN310 Microprocessor Systems Design 60 / 60
Advanced Parallel Architecture Lesson 3. Annalisa Massini /2015
Advanced Parallel Architecture Lesson 3 Annalisa Massini - 2014/2015 Von Neumann Architecture 2 Summary of the traditional computer architecture: Von Neumann architecture http://williamstallings.com/coa/coa7e.html
More informationMicrocontrollers. Microcontroller
Microcontrollers Microcontroller A microprocessor on a single integrated circuit intended to operate as an embedded system. As well as a CPU, a microcontroller typically includes small amounts of RAM and
More informationAdvanced Parallel Architecture Lesson 3. Annalisa Massini /2015
Advanced Parallel Architecture Lesson 3 Annalisa Massini - Von Neumann Architecture 2 Two lessons Summary of the traditional computer architecture Von Neumann architecture http://williamstallings.com/coa/coa7e.html
More informationMicrocomputer Architecture and Programming
IUST-EE (Chapter 1) Microcomputer Architecture and Programming 1 Outline Basic Blocks of Microcomputer Typical Microcomputer Architecture The Single-Chip Microprocessor Microprocessor vs. Microcontroller
More informationThe von Neumann Architecture. IT 3123 Hardware and Software Concepts. The Instruction Cycle. Registers. LMC Executes a Store.
IT 3123 Hardware and Software Concepts February 11 and Memory II Copyright 2005 by Bob Brown The von Neumann Architecture 00 01 02 03 PC IR Control Unit Command Memory ALU 96 97 98 99 Notice: This session
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 informationAVR Microcontrollers Architecture
ก ก There are two fundamental architectures to access memory 1. Von Neumann Architecture 2. Harvard Architecture 2 1 Harvard Architecture The term originated from the Harvard Mark 1 relay-based computer,
More informationComputer Organization CS 206 T Lec# 2: Instruction Sets
Computer Organization CS 206 T Lec# 2: Instruction Sets Topics What is an instruction set Elements of instruction Instruction Format Instruction types Types of operations Types of operand Addressing mode
More informationThe CPU and Memory. How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram:
The CPU and Memory How does a computer work? How does a computer interact with data? How are instructions performed? Recall schematic diagram: 1 Registers A register is a permanent storage location within
More informationEC-801 Advanced Computer Architecture
EC-801 Advanced Computer Architecture Lecture 5 Instruction Set Architecture I Dr Hashim Ali Fall 2018 Department of Computer Science and Engineering HITEC University Taxila!1 Instruction Set Architecture
More informationASSEMBLY LANGUAGE MACHINE ORGANIZATION
ASSEMBLY LANGUAGE MACHINE ORGANIZATION CHAPTER 3 1 Sub-topics The topic will cover: Microprocessor architecture CPU processing methods Pipelining Superscalar RISC Multiprocessing Instruction Cycle Instruction
More informationInstruction Sets: Characteristics and Functions Addressing Modes
Instruction Sets: Characteristics and Functions Addressing Modes Chapters 10 and 11, William Stallings Computer Organization and Architecture 7 th Edition What is an Instruction Set? The complete collection
More informationReal instruction set architectures. Part 2: a representative sample
Real instruction set architectures Part 2: a representative sample Some historical architectures VAX: Digital s line of midsize computers, dominant in academia in the 70s and 80s Characteristics: Variable-length
More information3.1 Description of Microprocessor. 3.2 History of Microprocessor
3.0 MAIN CONTENT 3.1 Description of Microprocessor The brain or engine of the PC is the processor (sometimes called microprocessor), or central processing unit (CPU). The CPU performs the system s calculating
More informationMICROPROCESSOR BASED SYSTEM DESIGN
MICROPROCESSOR BASED SYSTEM DESIGN Lecture 5 Xmega 128 B1: Architecture MUHAMMAD AMIR YOUSAF VON NEUMAN ARCHITECTURE CPU Memory Execution unit ALU Registers Both data and instructions at the same system
More informationARM ARCHITECTURE. Contents at a glance:
UNIT-III ARM ARCHITECTURE Contents at a glance: RISC Design Philosophy ARM Design Philosophy Registers Current Program Status Register(CPSR) Instruction Pipeline Interrupts and Vector Table Architecture
More informationINTEL Architectures GOPALAKRISHNAN IYER FALL 2009 ELEC : Computer Architecture and Design
INTEL Architectures GOPALAKRISHNAN IYER FALL 2009 GBI0001@AUBURN.EDU ELEC 6200-001: Computer Architecture and Design Silicon Technology Moore s law Moore's Law describes a long-term trend in the history
More informationDigital 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 informationCN310 Microprocessor Systems Design
CN310 Microprocessor Systems Design Instruction Set (AVR) Nawin Somyat Department of Electrical and Computer Engineering Thammasat University Outline Course Contents 1 Introduction 2 Simple Computer 3
More informationWilliam Stallings Computer Organization and Architecture 10 th Edition Pearson Education, Inc., Hoboken, NJ. All rights reserved.
+ William Stallings Computer Organization and Architecture 10 th Edition 2016 Pearson Education, Inc., Hoboken, NJ. All rights reserved. 2 + Chapter 3 A Top-Level View of Computer Function and Interconnection
More informationCOSC 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 informationMicro computer Organization
Micro computer Organization I Base Basic Components CPU SYSTEM BUSES VDD CLK RESET 1 MPU vs MCU Microprocessor Unit (MPU) CPU (called Microprocessor) is a die All components external to die Basically on
More informationMemory General R0 Registers R1 R2. Input Register 1. Input Register 2. Program Counter. Instruction Register
CPU Organisation Central Processing Unit (CPU) Memory General R0 Registers R1 R2 ALU R3 Output Register Input Register 1 Input Register 2 Internal Bus Address Bus Data Bus Addr. $ 000 001 002 Program Counter
More informationDC57 COMPUTER ORGANIZATION JUNE 2013
Q2 (a) How do various factors like Hardware design, Instruction set, Compiler related to the performance of a computer? The most important measure of a computer is how quickly it can execute programs.
More informationCOSC 6385 Computer Architecture. Instruction Set Architectures
COSC 6385 Computer Architecture Instruction Set Architectures Spring 2012 Instruction Set Architecture (ISA) Definition on Wikipedia: Part of the Computer Architecture related to programming Defines set
More informationUniversität Dortmund. ARM Architecture
ARM Architecture The RISC Philosophy Original RISC design (e.g. MIPS) aims for high performance through o reduced number of instruction classes o large general-purpose register set o load-store architecture
More informationComputer Architecture
Computer Architecture Lecture 1: Digital logic circuits The digital computer is a digital system that performs various computational tasks. Digital computers use the binary number system, which has two
More informationIntroduction to Computers - Chapter 4
Introduction to Computers - Chapter 4 Since the invention of the transistor and the first digital computer of the 1940s, computers have been increasing in complexity and performance; however, their overall
More informationThe Itanium Bit Microprocessor Report
The Itanium - 1986 8 Bit Microprocessor Report By PRIYANK JAIN (02010123) Group # 11 Under guidance of Dr. J. K. Deka & Dr. S. B. Nair Department of Computer Science & Engineering Indian Institute of Technology,
More informationISA and RISCV. CASS 2018 Lavanya Ramapantulu
ISA and RISCV CASS 2018 Lavanya Ramapantulu Program Program =?? Algorithm + Data Structures Niklaus Wirth Program (Abstraction) of processor/hardware that executes 3-Jul-18 CASS18 - ISA and RISCV 2 Program
More informationECE232: Hardware Organization and Design
ECE232: Hardware Organization and Design Lecture 4: Logic Operations and Introduction to Conditionals Adapted from Computer Organization and Design, Patterson & Hennessy, UCB Overview Previously examined
More informationCOMPUTER STRUCTURE AND ORGANIZATION
COMPUTER STRUCTURE AND ORGANIZATION Course titular: DUMITRAŞCU Eugen Chapter 4 COMPUTER ORGANIZATION FUNDAMENTAL CONCEPTS CONTENT The scheme of 5 units von Neumann principles Functioning of a von Neumann
More informationPage 1. Structure of von Nuemann machine. Instruction Set - the type of Instructions
Structure of von Nuemann machine Arithmetic and Logic Unit Input Output Equipment Main Memory Program Control Unit 1 1 Instruction Set - the type of Instructions Arithmetic + Logical (ADD, SUB, MULT, DIV,
More informationModule 5 - CPU Design
Module 5 - CPU Design Lecture 1 - Introduction to CPU The operation or task that must perform by CPU is: Fetch Instruction: The CPU reads an instruction from memory. Interpret Instruction: The instruction
More informationProcessing 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 informationChapter 4. MARIE: An Introduction to a Simple Computer
Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution.
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 informationUNIT-II. Part-2: CENTRAL PROCESSING UNIT
Page1 UNIT-II Part-2: CENTRAL PROCESSING UNIT Stack Organization Instruction Formats Addressing Modes Data Transfer And Manipulation Program Control Reduced Instruction Set Computer (RISC) Introduction:
More informationCS 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 informationWhat Are The Main Differences Between Program Counter Pc And Instruction Register Ir
What Are The Main Differences Between Program Counter Pc And Instruction Register Ir and register-based instructions - Anatomy on a CPU - Program Counter (PC): holds memory address of next instruction
More informationCOMP2121: Microprocessors and Interfacing. Instruction Set Architecture (ISA)
COMP2121: Microprocessors and Interfacing Instruction Set Architecture (ISA) http://www.cse.unsw.edu.au/~cs2121 Lecturer: Hui Wu Session 2, 2017 1 Contents Memory models Registers Data types Instructions
More informationLecture 5: Computer Organization Instruction Execution. Computer Organization Block Diagram. Components. General Purpose Registers.
Lecture 5: Computer Organization Instruction Execution Computer Organization Addressing Buses Fetch-Execute Cycle Computer Organization CPU Control Unit U Input Output Memory Components Control Unit fetches
More informationEMBEDDED SYSTEM DESIGN (10EC74)
UNIT 2 The Hardware Side: An Introduction, The Core Level, Representing Information, Understanding Numbers, Addresses, Instructions, Registers-A First Look, Embedded Systems-An Instruction Set View, Embedded
More informationLecture1: introduction. Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit
Lecture1: introduction Outline: History overview Central processing unite Register set Special purpose address registers Datapath Control unit 1 1. History overview Computer systems have conventionally
More informationChapter. Computer Architecture
Chapter 4 Computer Architecture Figure 4.1 Input device Central processing unit Main memory Output device Bus Data flow Control Figure 4.2 Central processing unit () Status bits ( ) Accumulator ( ) Index
More information1 MALP ( ) Unit-1. (1) Draw and explain the internal architecture of 8085.
(1) Draw and explain the internal architecture of 8085. The architecture of 8085 Microprocessor is shown in figure given below. The internal architecture of 8085 includes following section ALU-Arithmetic
More informationComputer Organization and Technology Processor and System Structures
Computer Organization and Technology Processor and System Structures Assoc. Prof. Dr. Wattanapong Kurdthongmee Division of Computer Engineering, School of Engineering and Resources, Walailak University
More information1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE:
1. INTRODUCTION TO MICROPROCESSOR AND MICROCOMPUTER ARCHITECTURE: A microprocessor is a programmable electronics chip that has computing and decision making capabilities similar to central processing unit
More informationWilliam Stallings Computer Organization and Architecture
William Stallings Computer Organization and Architecture Chapter 16 Control Unit Operations Rev. 3.2 (2009-10) by Enrico Nardelli 16-1 Execution of the Instruction Cycle It has many elementary phases,
More informationTypical Processor Execution Cycle
Typical Processor Execution Cycle Instruction Fetch Obtain instruction from program storage Instruction Decode Determine required actions and instruction size Operand Fetch Locate and obtain operand data
More information(Advanced) Computer Organization & Architechture. Prof. Dr. Hasan Hüseyin BALIK (3 rd Week)
+ (Advanced) Computer Organization & Architechture Prof. Dr. Hasan Hüseyin BALIK (3 rd Week) + Outline 2. The computer system 2.1 A Top-Level View of Computer Function and Interconnection 2.2 Cache Memory
More informationLatches. IT 3123 Hardware and Software Concepts. Registers. The Little Man has Registers. Data Registers. Program Counter
IT 3123 Hardware and Software Concepts Notice: This session is being recorded. CPU and Memory June 11 Copyright 2005 by Bob Brown Latches Can store one bit of data Can be ganged together to store more
More informationWilliam Stallings Computer Organization and Architecture
William Stallings Computer Organization and Architecture Chapter 11 CPU Structure and Function Rev. 3.2.1 (2005-06) by Enrico Nardelli 11-1 CPU Functions CPU must: Fetch instructions Decode instructions
More informationCSIS1120A. 10. Instruction Set & Addressing Mode. CSIS1120A 10. Instruction Set & Addressing Mode 1
CSIS1120A 10. Instruction Set & Addressing Mode CSIS1120A 10. Instruction Set & Addressing Mode 1 Elements of a Machine Instruction Operation Code specifies the operation to be performed, e.g. ADD, SUB
More informationCISC Processor Design
CISC Processor Design Virendra Singh Indian Institute of Science Bangalore virendra@computer.org Lecture 3 SE-273: Processor Design Processor Architecture Processor Architecture CISC RISC Jan 21, 2008
More informationWhere Does The Cpu Store The Address Of The
Where Does The Cpu Store The Address Of The Next Instruction To Be Fetched The three most important buses are the address, the data, and the control buses. The CPU always knows where to find the next instruction
More informationEITF20: Computer Architecture Part2.1.1: Instruction Set Architecture
EITF20: Computer Architecture Part2.1.1: Instruction Set Architecture Liang Liu liang.liu@eit.lth.se 1 Outline Reiteration Instruction Set Principles The Role of Compilers MIPS 2 Main Content Computer
More informationReminder: tutorials start next week!
Previous lecture recap! Metrics of computer architecture! Fundamental ways of improving performance: parallelism, locality, focus on the common case! Amdahl s Law: speedup proportional only to the affected
More informationEE 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 informationChapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics
Chapter 4 Objectives Learn the components common to every modern computer system. Chapter 4 MARIE: An Introduction to a Simple Computer Be able to explain how each component contributes to program execution.
More informationCS 24: INTRODUCTION TO. Spring 2018 Lecture 3 COMPUTING SYSTEMS
CS 24: INTRODUCTION TO Spring 2018 Lecture 3 COMPUTING SYSTEMS LAST TIME Basic components of processors: Buses, multiplexers, demultiplexers Arithmetic/Logic Unit (ALU) Addressable memory Assembled components
More informationComputer System. Hiroaki Kobayashi 7/25/2011. Agenda. Von Neumann Model Stored-program instructions and data are stored on memory
Computer System Hiroaki Kobayashi 7/25/2011 7/25/2011 Computer Engineering 1 Agenda Basic model of modern computer systems Von Neumann Model Stored-program instructions and data are stored on memory Fundamental
More informationCN310 Microprocessor Systems Design
CN310 Microprocessor Systems Design Microcontroller Nawin Somyat Department of Electrical and Computer Engineering Thammasat University Outline Course Contents 1 Introduction 2 Simple Computer 3 Microprocessor
More information55:132/22C:160, HPCA Spring 2011
55:132/22C:160, HPCA Spring 2011 Second Lecture Slide Set Instruction Set Architecture Instruction Set Architecture ISA, the boundary between software and hardware Specifies the logical machine that is
More informationChapter 1: Basics of Microprocessor [08 M]
Microprocessor: Chapter 1: Basics of Microprocessor [08 M] It is a semiconductor device consisting of electronic logic circuits manufactured by using either a Large scale (LSI) or Very Large Scale (VLSI)
More informationBASIC INTERFACING CONCEPTS
Contents i SYLLABUS UNIT - I 8085 ARCHITECTURE Introduction to Microprocessors and Microcontrollers, 8085 Processor Architecture, Internal Operations, Instructions and Timings, Programming the 8085-Introduction
More informationMARIE: An Introduction to a Simple Computer
MARIE: An Introduction to a Simple Computer Outline Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution. Understand a simple
More information8086 INTERNAL ARCHITECTURE
8086 INTERNAL ARCHITECTURE Segment 2 Intel 8086 Microprocessor The 8086 CPU is divided into two independent functional parts: a) The Bus interface unit (BIU) b) Execution Unit (EU) Dividing the work between
More informationECE 471 Embedded Systems Lecture 2
ECE 471 Embedded Systems Lecture 2 Vince Weaver http://web.eece.maine.edu/~vweaver vincent.weaver@maine.edu 7 September 2018 Announcements Reminder: The class notes are posted to the website. HW#1 will
More informationGeneral Purpose Processors
Calcolatori Elettronici e Sistemi Operativi Specifications Device that executes a program General Purpose Processors Program list of instructions Instructions are stored in an external memory Stored program
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 informationComputer Organization
INF 101 Fundamental Information Technology Computer Organization Assistant Prof. Dr. Turgay ĐBRĐKÇĐ Course slides are adapted from slides provided by Addison-Wesley Computing Fundamentals of Information
More informationMARIE: An Introduction to a Simple Computer
MARIE: An Introduction to a Simple Computer 4.2 CPU Basics The computer s CPU fetches, decodes, and executes program instructions. The two principal parts of the CPU are the datapath and the control unit.
More informationComputer Organization and Programming
Sep 2006 Prof. Antônio Augusto Fröhlich (http://www.lisha.ufsc.br) 8 Computer Organization and Programming Prof. Dr. Antônio Augusto Fröhlich guto@lisha.ufsc.br http://www.lisha.ufsc.br/~guto Sep 2006
More informationChapter 3. Top Level View of Computer Function and Interconnection. Yonsei University
Chapter 3 Top Level View of Computer Function and Interconnection Contents Computer Components Computer Function Interconnection Structures Bus Interconnection PCI 3-2 Program Concept Computer components
More informationChapter 13 Reduced Instruction Set Computers
Chapter 13 Reduced Instruction Set Computers Contents Instruction execution characteristics Use of a large register file Compiler-based register optimization Reduced instruction set architecture RISC pipelining
More informationCPU ARCHITECTURE. QUESTION 1 Explain how the width of the data bus and system clock speed affect the performance of a computer system.
CPU ARCHITECTURE QUESTION 1 Explain how the width of the data bus and system clock speed affect the performance of a computer system. ANSWER 1 Data Bus Width the width of the data bus determines the number
More information1. Internal Architecture of 8085 Microprocessor
1. Internal Architecture of 8085 Microprocessor Control Unit Generates signals within up to carry out the instruction, which has been decoded. In reality causes certain connections between blocks of the
More informationCPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA)
CPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA) Aleksandar Milenković Email: milenka@uah.edu Web: http://www.ece.uah.edu/~milenka Objective Introduce MSP430 Instruction Set Architecture (Class of ISA,
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 informationTopics Power tends to corrupt; absolute power corrupts absolutely. Computer Organization CS Data Representation
Computer Organization CS 231-01 Data Representation Dr. William H. Robinson November 12, 2004 Topics Power tends to corrupt; absolute power corrupts absolutely. Lord Acton British historian, late 19 th
More informationInstruction Set Design
Instruction Set Design software instruction set hardware CPE442 Lec 3 ISA.1 Instruction Set Architecture Programmer's View ADD SUBTRACT AND OR COMPARE... 01010 01110 10011 10001 11010... CPU Memory I/O
More informationCHAPTER 5 A Closer Look at Instruction Set Architectures
CHAPTER 5 A Closer Look at Instruction Set Architectures 5.1 Introduction 293 5.2 Instruction Formats 293 5.2.1 Design Decisions for Instruction Sets 294 5.2.2 Little versus Big Endian 295 5.2.3 Internal
More informationCOSC121: Computer Systems: Review
COSC121: Computer Systems: Review Jeremy Bolton, PhD Assistant Teaching Professor Constructed using materials: - Patt and Patel Introduction to Computing Systems (2nd) - Patterson and Hennessy Computer
More informationAssembly Language. Lecture 2 - x86 Processor Architecture. Ahmed Sallam
Assembly Language Lecture 2 - x86 Processor Architecture Ahmed Sallam Introduction to the course Outcomes of Lecture 1 Always check the course website Don t forget the deadline rule!! Motivations for studying
More informationCHAPTER 5 : Introduction to Intel 8085 Microprocessor Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY
CHAPTER 5 : Introduction to Intel 8085 Hardware BENG 2223 MICROPROCESSOR TECHNOLOGY The 8085A(commonly known as the 8085) : Was first introduced in March 1976 is an 8-bit microprocessor with 16-bit address
More informationComputer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: MIPS Instruction Set Architecture
Computer Science 324 Computer Architecture Mount Holyoke College Fall 2009 Topic Notes: MIPS Instruction Set Architecture vonneumann Architecture Modern computers use the vonneumann architecture. Idea:
More informationSAE5C Computer Organization and Architecture. Unit : I - V
SAE5C Computer Organization and Architecture Unit : I - V UNIT-I Evolution of Pentium and Power PC Evolution of Computer Components functions Interconnection Bus Basics of PCI Memory:Characteristics,Hierarchy
More informationUNIT 2 PROCESSORS ORGANIZATION CONT.
UNIT 2 PROCESSORS ORGANIZATION CONT. Types of Operand Addresses Numbers Integer/floating point Characters ASCII etc. Logical Data Bits or flags x86 Data Types Operands in 8 bit -Byte 16 bit- word 32 bit-
More informationCOMPUTER ORGANIZATION & ARCHITECTURE
COMPUTER ORGANIZATION & ARCHITECTURE Instructions Sets Architecture Lesson 5a 1 What are Instruction Sets The complete collection of instructions that are understood by a CPU Can be considered as a functional
More informationClass 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 informationGrundlagen Microcontroller Processor Core. Günther Gridling Bettina Weiss
Grundlagen Microcontroller Processor Core Günther Gridling Bettina Weiss 1 Processor Core Architecture Instruction Set Lecture Overview 2 Processor Core Architecture Computes things > ALU (Arithmetic Logic
More information8051 microcontrollers
8051 microcontrollers Presented by: Deepak Kumar Rout Synergy Institute of Engineering and Technology, Dhenkanal Chapter 2 Introduction Intel MCS-51 family of microcontrollers consists of various devices
More informationECED3204: Microprocessor Part I--Introduction
ECED3204: Microprocessor Part I--Introduction Jason J. Gu Department of 1 Outline i. Computer ii. Processor iii. Embedded System iv. Memory v. Program Execution VI. VII. VIII. IX. AVR AVR Memory AVR CPU
More informationInstruction Set II. COMP 212 Computer Organization & Architecture. COMP 212 Fall Lecture 7. Instruction Set. Quiz. What is an Instruction Set?
COMP 212 Computer Organization & Architecture Quiz COMP 212 Fall 2008 Lecture 7 Fill in your student number only, do NOT write down your name Open book, but NO calculator, NO discussions, Relax and have
More informationVARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad
Introduction to MS-DOS Debugger DEBUG In this laboratory, we will use DEBUG program and learn how to: 1. Examine and modify the contents of the 8086 s internal registers, and dedicated parts of the memory
More informationCSCE 5610: Computer Architecture
HW #1 1.3, 1.5, 1.9, 1.12 Due: Sept 12, 2018 Review: Execution time of a program Arithmetic Average, Weighted Arithmetic Average Geometric Mean Benchmarks, kernels and synthetic benchmarks Computing CPI
More informationAVR MICROCONTROLLER ARCHITECTURTE
AVR MICROCONTROLLER ARCHITECTURTE AVR MICROCONTROLLER AVR- Advanced Virtual RISC. The founders are Alf Egil Bogen Vegard Wollan RISC AVR architecture was conceived by two students at Norwegian Institute
More informationWilliam Stallings Computer Organization and Architecture 8 th Edition. Chapter 11 Instruction Sets: Addressing Modes and Formats
William Stallings Computer Organization and Architecture 8 th Edition Chapter 11 Instruction Sets: Addressing Modes and Formats Addressing Modes Immediate Direct Indirect Register Register Indirect Displacement
More informationChapter 4 The Von Neumann Model
Chapter 4 The Von Neumann Model The Stored Program Computer 1943: ENIAC Presper Eckert and John Mauchly -- first general electronic computer. (or was it John V. Atananasoff in 1939?) Hard-wired program
More information