Computer Organization and Assembly Languages Yung-Yu Chuang 2005/09/29

Slides:



Advertisements
Similar presentations
Part 4: combinational devices
Advertisements

Slide 4-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 4 Computer Organization.
Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
The CPU Revision Typical machine code instructions Using op-codes and operands Symbolic addressing. Conditional and unconditional branches.
Computer Systems. Computer System Components Computer Networks.
Midterm Wednesday Chapter 1-3: Number /character representation and conversion Number arithmetic Combinational logic elements and design (DeMorgan’s Law)
Computer Processing CSCE 110 J. Michael Moore.
Assembly Language for Intel-Based Computers Chapter 2: IA-32 Processor Architecture Kip Irvine.
The processor and main memory chapter 4, Exploring the Digital Domain The Development and Basic Organization of Computers.
Dale & Lewis Chapter 5 Computing components. Let’s design a computer Generic CPU with registers −Program counter (PC) – 5 bits (size of addresses) −Instruction.
Processor Types And Instruction Sets Barak Perelman CS147 Prof. Lee.
Micro-operations Are the functional, or atomic, operations of a processor. A single micro-operation generally involves a transfer between registers, transfer.
Some material taken from Assembly Language for x86 Processors by Kip Irvine © Pearson Education, 2010 Slides revised 2/2/2014 by Patrick Kelley.
SAP1 (Simple-As-Possible) Computer
Basic Microcomputer Design. Inside the CPU Registers – storage locations Control Unit (CU) – coordinates the sequencing of steps involved in executing.
Lecture 8 Presented By Dr. Shazzad Hosain Asst. Prof. EECS, NSU.
Fall 2012 Chapter 2: x86 Processor Architecture. Irvine, Kip R. Assembly Language for x86 Processors 6/e, Chapter Overview General Concepts IA-32.
Chapter 8: The Very Simple Computer
The Central Processing Unit (CPU) and the Machine Cycle.
Model Computer CPU Arithmetic Logic Unit Control Unit Memory Unit
General Concepts of Computer Organization Overview of Microcomputer.
Computer Organization CSC 405 (VSC) Very Simple Computer.
Computer Architecture Memory, Math and Logic. Basic Building Blocks Seen: – Memory – Logic & Math.
Computer Science 101 Computer Systems Organization ALU, Control Unit, Instruction Set.
September 26, 2001Systems Architecture I1 Systems Architecture I (CS ) Lecture 2: Implementation of a Simplified Computer Jeremy R. Johnson Wednesday,
COMPILERS CLASS 22/7,23/7. Introduction Compiler: A Compiler is a program that can read a program in one language (Source) and translate it into an equivalent.
Dale & Lewis Chapter 5 Computing components
Lecture 5 Computer Hardware. von Neumann Architecture.
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Control Unit.
Computer Organization and Assembly Languages Yung-Yu Chuang 2005/09/29
CMSC 104, Lecture 061 Stored Programs A look at how programs are executed.
Designing a CPU –Reading a programs instruction from memory –Decoding the instruction –Executing the instruction –Transferring Data to/From memory / IO.
1 Basic Processor Architecture. 2 Building Blocks of Processor Systems CPU.
Jeremy R. Johnson William M. Mongan
Digital Computer Concept and Practice Copyright ©2012 by Jaejin Lee Control Unit.
Chapter 20 Computer Operations Computer Studies Today Chapter 20.
Logic Gates Dr.Ahmed Bayoumi Dr.Shady Elmashad. Objectives  Identify the basic gates and describe the behavior of each  Combine basic gates into circuits.
Lec 4-2 Five operations of the machine cycle Fetch- fetch the next program instruction from memory. (PC+1); instruction to IR Decode- decode the instruction.
Types of Micro-operation  Transfer data between registers  Transfer data from register to external  Transfer data from external to register  Perform.
STUDY OF PIC MICROCONTROLLERS.. Design Flow C CODE Hex File Assembly Code Compiler Assembler Chip Programming.
Chapter Overview General Concepts IA-32 Processor Architecture
Seminar On 8085 microprocessor
Dr.Ahmed Bayoumi Dr.Shady Elmashad
CS 270: Mathematical Foundations of Computer Science
SAP1 (Simple-As-Possible) Computer
Computer Organization
ECE 4110–5110 Digital System Design
Basic Processor Structure/design
Control Unit Lecture 6.
CPU Organisation & Operation
Edexcel GCSE Computer Science Topic 15 - The Processor (CPU)
Computer Design & Organization
Lecture on Microcomputer
Assembly Language for Intel-Based Computers, 5th Edition
Basics of digital systems
Ghifar Parahyangan Catholic University Sept 12, 2011
8085 microprocessor.
Computer Architecture
Chapter 4 The Von Neumann Model
BASIC COMPUTER ORGANIZATION AND DESIGN
Computer Organization and Assembly Languages Yung-Yu Chuang 2005/10/6
Systems Architecture I (CS ) Lecture 2: A Simplified Computer
von Neumann Architecture CPU
Digital Circuits and Logic
A Top-Level View Of Computer Function And Interconnection
Information Representation: Machine Instructions
Computer Architecture Assembly Language
Computer Operation 6/22/2019.
Computer Architecture
Little Man Computer.
Presentation transcript:

Computer Organization and Assembly Languages Yung-Yu Chuang 2005/09/29 IA-32 Architecture Computer Organization and Assembly Languages Yung-Yu Chuang 2005/09/29 with slides by Kip Irvine and Keith Van Rhein

Virtual machines Abstractions for computers

Digital gate diagram for NOT: Inverts (reverses) a boolean value Truth table for Boolean NOT operator: Digital gate diagram for NOT:

Digital gate diagram for AND: Truth if both are true Truth table for Boolean AND operator: Digital gate diagram for AND:

Digital gate diagram for OR: True if either is true Truth table for Boolean OR operator: Digital gate diagram for OR:

Truth tables A Boolean function has one or more Boolean inputs, and returns a single Boolean output. A truth table shows all the inputs and outputs of a Boolean function Example: X  Y

All possible 2-input Boolean functions

Two-input multiplexer Truth tables Example: (Y  S)  (X  S)

4-multiplexer x0 4MUX x1 z x2 x3 s0 s1

4-multiplexer 2MUX x0 x1 x2 x3 z s0 s1 x0 4MUX x1 z x2 x3 s0 s1

Comparator x>y CMP x=y x<y x y x y x>y x=y x<y

8-bit comparator xn>yn x>y CMP xn=yn x=y xn<yn x<y x y

1-bit half adder x ADD c y s x y s c

1-bit full adder x y x y Cin Cout s ADD Cin Cout s

8-bit adder

Registers and counters EN(RD) EN(RD) REG IN COUNTER IN OUT OUT SET SET INC DEC z0 s0 z1 s1 z2 z3

Memory 8K 8-bit memory

Microcomputer concept

Basic microcomputer design clock synchronizes CPU operations control unit (CU) coordinates sequence of execution steps ALU performs arithmetic and logic operations

Basic microcomputer design The memory storage unit holds instructions and data for a running program A bus is a group of wires that transfer data from one part to another (data, address, control)

Clock synchronizes all CPU and BUS operations machine (clock) cycle measures time of a single operation clock is used to trigger events Basic unit of time, 1GHz→clock cycle=1ns A instruction could take multiple cycles to complete, e.g. multiply in 8088 takes 50 cycles

Instruction execution cycle program counter instruction queue Fetch Decode Fetch operands Execute Store output

A simple microcomputer DATA BUS I/O PORT IR ACC B MEMORY DEVICE I/O DECODE PC ALU DEVICE I/O FLAG CONTROL AND SEQUENCING ADDRESS BUS CONTROL BUS CLOCK

Instruction set OPCODE MNEMONIC OPCODE MNEMONIC 0 NOP A CMP 1 LDA B JG 2 STA C JE 3 ADD D JL 4 SUB 5 IN 6 OUT 7 JMP 8 JN 9 HLT OPCODE OPERAND 4 12

Control bus A series of control signals to control all components such as registers and ALU Control signal for load ACC: SETACC=1, others=0

Control and sequencing unit MEMORY from decoder PCRD MEMRD SETACC μPC … CLOCK

Control and sequencing unit PCRD MEMRD MEMWT IRSET …. 0000 1 0…. fetch 0001 1 0002 1 0003 4-bit IR RD decode 0004 DECODER RD, μPC SET exec 0005 fetch decode 000B

Decoder 4-bit opcode 5 1 B μcode