1 Register Transfer &  -operations Computer Organization Computer Architectures Lab REGISTER TRANSFER AND MICROOPERATIONS Register Transfer Language Register.

Slides:



Advertisements
Similar presentations
Computer Architecture CS 215
Advertisements

CPEN Digital System Design
KU College of Engineering Elec 204: Digital Systems Design
Princess Sumaya University
REGISTER TRANSFER LANGUAGE (RTL)
Chapter 4 Register Transfer and Microoperations
Princess Sumaya Univ. Computer Engineering Dept. د. بســام كحـالــه Dr. Bassam Kahhaleh.
Chapter 7 Henry Hexmoor Registers and RTL
Princess Sumaya University
7-5 Microoperation An elementary operations performed on data stored in registers or in memory. Transfer Arithmetic Logic: perform bit manipulation on.
ARITHMETIC LOGIC SHIFT UNIT
8085 processor. Bus system in microprocessor.
Chapter 9 Computer Design Basics. 9-2 Datapaths Reminding A digital system (or a simple computer) contains datapath unit and control unit. Datapath: A.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use Chapter 7 – Registers.
Chapter 7. Register Transfer and Computer Operations
Cpe 252: Computer Organization1 Lo’ai Tawalbeh Lecture #4 Register Transfer and Microoperations 23/2/2006 Chapter 4:
Logic and Computer Design Dr. Sanjay P. Ahuja, Ph.D. FIS Distinguished Professor of CIS ( ) School of Computing, UNF.
Chapter 4 Register Transfer and Microoperations
Shift Micro operations
Computer System Configuration and Function Computer Architecture and Design Lecture 6.
EKT 221/4 DIGITAL ELECTRONICS II  Registers, Micro-operations and Implementations - Part2.
MICRO OPERATIONS Department of Computer Engineering, M.S.P.V.L. Polytechnic College, Pavoorchatram.
CSC321 Where We’ve Been Binary representations Boolean logic Logic gates – combinational circuits Flip-flops – sequential circuits Complex gates – modules.
Chapter 4 Register Transfer and Micro -operations
DIGITAL 2 : EKT 221. Today’s Outline Register Transfer Clock Gating Load Control Feedback Register Transfer Language Type of Registers Basic Symbols Mathematical.
REGISTER TRANSFER AND MICROOPERATIONS
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
Computer Design Basics
Exam2 Review Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2009.
Chap 7. Register Transfers and Datapaths. 7.1 Datapaths and Operations Two types of modules of digital systems –Datapath perform data-processing operations.
7-6 단일 레지스터에서 Microoperation Multiplexer-Based Transfer  Register 가 서로 다른 시간에 둘 이상의 source 에서 data 를 받을 경우 If (K1=1) then (R0 ←R1) else if (K2=1) then.
REGISTER TRANSFER & MICROOPERATIONS By Sohaib. Digital System Overview  Each module is built from digital components  Registers  Decoders  Arithmetic.
1 Chapter Four Register Transfer and Micro operations.
Micro Operation. MICROOPERATIONS Computer system microoperations are of four types: - Register transfer microoperations - Arithmetic microoperations -
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 7 – Registers and Register Transfers Part.
Charles Kime & Thomas Kaminski © 2004 Pearson Education, Inc. Terms of Use (Hyperlinks are active in View Show mode) Terms of Use ECE/CS 352: Digital Systems.
1 Outline Bus Transfer Memory Transfer Microoperations.
1 Chapter 7 Henry Hexmoor Registers and RTL. REGISTER TRANSFER AND MICROOPERATIONS Register Transfer Language Register Transfer Bus and Memory Transfers.
Register Transfer Languages (RTL)
Lecture 5: Register Transfer & Micro-OpsOverview1.
CSC321 Homework Due Due Tuesday after spring break Turn in –Design information State diagram State table K-map simplifications and expressions for flip-flop.
Chapter 4 Register Transfer and Microoperations Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2010.
Exam1 Review Dr. Bernard Chen Ph.D. University of Central Arkansas.
1 COMP541 Datapaths I Montek Singh Mar 8, Topics  Over next 2/3 classes: datapaths  Basic register operations Book sections 7-2 to 7-6 and 7-8.
REGISTER TRANSFER & MICROOPERATIONS By Sohaib. Digital System Overview  Each module is built from digital components  Registers  Decoders  Arithmetic.
ECEG-3202: Computer Architecture and Organization, Dept of ECE, AAU 1 Register Transfer & Microoperations.
1 Register Transfer and Microoperations Acknowledgment: Most of the slides are adapted from Prof. Hyunsoo Yoon’s slides.
1 REGISTER TRANSFER & MICROOPERATIONS. 2 OUTLINES Register Transfer Language Register Transfer Bus and Memory Transfers Arithmetic Microoperations Logic.
REGISTER TRANSFER AND MICROOPERATIONS
UNIT 2 REGISTER TRANSFER AND MICROOPERATIONS
Overview Register Transfer Language Register Transfer
REGISTER TRANSFER AND MICROOPERATIONS
Chapter 4 Register Transfer and Microoperations
Chap 7. Register Transfers and Datapaths
KU College of Engineering Elec 204: Digital Systems Design
Register Transfer and Microoperations
REGISTER TRANSFER LANGUAGE AND DESIGN OF CONTROL UNIT
Computer Organization and Design
BASIC COMPUTER ORGANIZATION AND DESIGN
Control Unit.
Computer Organization and Design
به نام یگانه مهندس هستی معماری کامپیوتر مهدی قدیری
REGISTER TRANSFER LANGUAGE
Computer Architecture and Design Lecture 6
Computer Organization and Design
CSC 220: Computer Organization
By: A. H. Abdul Hafez CAO, by Dr. A.H. Abdul Hafez, CE Dept. HKU
Overview Part 1 - Registers, Microoperations and Implementations
CHAPTER-3 REGISTER TRANSFER LANGUAGE AND MICROOPERATIONS
Instruction execution and ALU
Presentation transcript:

1 Register Transfer &  -operations Computer Organization Computer Architectures Lab REGISTER TRANSFER AND MICROOPERATIONS Register Transfer Language Register Transfer Bus and Memory Transfers Arithmetic Microoperations Logic Microoperations Shift Microoperations Arithmetic Logic Shift Unit

2 Register Transfer &  -operations Computer Organization Computer Architectures Lab MICROOPERATION An elementary operation performed during one clock pulse, on the information stored in one or more registers R  f(R, R) f: shift, count, clear, load, add,... ALU (f) Registers (R) 1 clock cycle Register Transfer Language

3 Register Transfer &  -operations Computer Organization Computer Architectures Lab REGISTER TRANSFER LANGUAGE - Set of registers and their functions - Microoperations Set Set of allowable microoperations provided by the organization of the computer - Control signals that initiate the sequence of microoperations ----> Register transfer language - A symbolic language - A convenient tool for describing the internal organization of digital computers - Can also be used to facilitate the design process of digital systems. Definition of the (internal) organization of a computer For any function of the computer, a sequence of microoperations is used to describe it Register Transfer Language

4 Register Transfer &  -operations Computer Organization Computer Architectures Lab REGISTER TRANSFER R1 Register Numbering of bits Showing individual bits Subfields PC(H)PC(L) a register - portion of a register - a bit of a register Common ways of drawing the block diagram of a register A simultaneous transfer of all bits from the source to the destination register, during one clock pulse R2  R1 A binary condition(p=1) which determines when the transfer is to occur If (p=1) then (R2  R1) P: R2   R R Designation of a register Representation of a transfer(parallel) Representation of a controlled(conditional) transfer Register Transfer

5 Register Transfer &  -operations Computer Organization Computer Architectures Lab HARDWARE IMPLEMENTATION OF CONTROLLED TRANSFERS Basic Symbols for Register Transfers Implementation of controlled transfer P: R2  R1 Block diagram Timing diagram Clock Capital letters Denotes a register MAR, R2 and numerals Parentheses ( ) Denotes a part of a register R2(0-7), R2(L) Arrow   Denotes transfer of information R2   R1 Colon : Denotes termination of control function P: Comma, Separates two micro-operations A  B, B  A SymbolsDescription Meaning Register Transfer Transfer occurs here R2 R1 Control Circuit Load P n Clock Load t t+1

6 Register Transfer &  -operations Computer Organization Computer Architectures Lab BUS AND MEMORY TRANSFER Bus is a path(of a group of wires) over which information is transferred, from any of several sources to any of several destinations. From a register to bus: BUS <- R Register ARegister BRegister CRegister D Bus lines Bus and Memory Transfers

7 Register Transfer &  -operations Computer Organization Computer Architectures Lab TRANSFER FROM BUS TO A DESTINATION REGISTER Three-State Bus Buffers Bus line with three-state buffers Reg. R0Reg. R1Reg. R2Reg. R3 Bus lines 2 x 4 Decoder Load D 0 D 1 D 2 D 3 z w Select E (enable) Output Y=A if C=1 High-impedence if C=0 Normal input A Control input C Select Enable S0 S1 A0 B0 C0 D0 Bus line for bit 0 Bus and Memory Transfers

8 Register Transfer &  -operations Computer Organization Computer Architectures Lab MEMORY TRANSFERS Summary of Register Transfer Microoperations AR Memory unit Read Write DR Memory read micro-op: DR  M ( DR  M[AR] ) Memory write micro-op: M  DR( M[AR]  DR ) Bus and Memory Transfers A   B Transfer content of reg. B into reg. A AR  DR(AD) Transfer content of AD portion of reg. DR into reg. AR A  constant Transfer a binary constant into reg. A ABUS  R1, Transfer content of R1 into bus A and, at the same time, R2  ABUStransfer content of bus A into R2 AR Address register DR Data register M[R] Memory word specified by reg. R M Equivalent to M[AR] DR  M Memory read operation: transfers content of memory word specified by AR into DR M  DR Memory write operation: transfers content of DR into memory word specified by AR

9 Register Transfer &  -operations Computer Organization Computer Architectures Lab ARITHMETIC MICROOPERATIONS * Summary of Arithmetic Micro-Operations Four types of microoperations - Register transfer microoperations - Arithmetic microoperations - Logic microoperations - Shift microoperations Arithmetic Microoperations R3  R1 + R2 Contents of R1 plus R2 transferred to R3 R3  R1 - R2Contents of R1 minus R2 transferred to R3 R2  R2’Complement the contents of R2 R2  R2’+ 12's complement the contents of R2 (negate) R3  R1 + R2’+ 1subtraction R1  R1 + 1Increment R1  R1 - 1Decrement

10 Register Transfer &  -operations Computer Organization Computer Architectures Lab BINARY ADDER Binary Adder-Subtractor Binary Incrementer Binary Adder Arithmetic Microoperations

11 Register Transfer &  -operations Computer Organization Computer Architectures Lab ARITHMETIC CIRCUIT S1 S x1 MUX X0 Y0 C0 C1 D0 FA S1 S x1 MUX X1 Y1 C1 C2 D1 FA S1 S x1 MUX X2 Y2 C2 C3 D2 FA S1 S x1 MUX X3 Y3 C3 C4 D3 FA Cout A0 B0 A1 B1 A2 B2 A3 B3 01 S0 S1 Cin S1S0CinYOutputMicrooperation 0 00BD = A + BAdd 0 01BD = A + B + 1Add with carry 0 10B’D = A + B’Subtract with borrow 0 11B’D = A + B’+ 1Subtract 1 000D = ATransfer A 1 010D = A + 1Increment A 1 101D = A - 1Decrement A 1 111D = ATransfer A Arithmetic Microoperations

12 Register Transfer &  -operations Computer Organization Computer Architectures Lab LOGIC MICROOPERATIONS Specify binary operations on the strings of bits in registers. - useful for bit manipulations on binary data AND: Mask out certain group of bits OR : Merge binary or character data - useful for making logical decisions based on the bit value Logic Microoperations Applications Manipulating individual bits or a field(portion) of a word in a register - Selective-set A + B - Selective-complement A  B - Selective-clear A B - Mask (Delete) A B - Insert (A B) + C - Compare A  B - Packing (A B) + C - Unpacking A B

13 Register Transfer &  -operations Computer Organization Computer Architectures Lab LIST OF LOGIC MICROOPERATIONS List of Logic Micro-Operations - 16 different logic operations with 2 binary vars. - n binary vars -> functions 2 2 n Truth tables for 16 functions of 2 variables and the corresponding 16 logic micro-operations Boolean Function Micro- Operations Name x y Logic Microoperations F0 = 0 F  0 Clear F1 = xy F  A  B AND F2 = xy' F  A  B’ F3 = x F  A Transfer A F4 = x'y F  A’  B F5 = y F  B Transfer B F6 = x  y F  A  B Exclusive-OR F7 = x + y F  A  B OR F8 = (x + y)' F  A  B)’ NOR F9 = (x  y)' F  (A  B)’ Exclusive-NOR F10 = y' F  B’ Complement B F11 = x + y' F  A  B F12 = x' F  A’ Complement A F13 = x' + y F  A’  B F14 = (xy)' F  (A  B)’ NAND F15 = 1 F  all 1's Set to all 1's

14 Register Transfer &  -operations Computer Organization Computer Architectures Lab HARDWARE IMPLEMENTATION OF LOGIC MICROOPERATIONS 0 0 F = A  B AND 0 1 F = A  B OR 1 0 F = A  B XOR 1 1 F = A’ Complement S1 S0Output  -operation Function table Logic Microoperations B A S S F 1 0 i i i X 1 MUX Select

15 Register Transfer &  -operations Computer Organization Computer Architectures Lab SHIFT MICROOPERATIONS - Logical shift : shift in a 0 into the extreme flip-flop - Circular shift : circulates the bits of the register around the two ends - Arithmetic shift : shifts a signed number (shift with sign extension) Left shift -> multiplied by 2 Right shift -> divided by 2 Arithmetic shifts for signed binary numbers Shift Micro-Operations - Arithmetic shift-left Overflow V = R n-1  R n-2 - Arithmetic shift-right Shift Microoperations Symbol Description R  shl R Shift-left register R R  shr R Shift-right register R R  cil R Circular shift-left register R R  cir R Circular right-shift register R R  ashl R Arithmetic shift-left register R R  ashr R Arithmetic shift-right register R Shifts R n-1 R n-2 R1R1 R0R0 Sign bit

16 Register Transfer &  -operations Computer Organization Computer Architectures Lab HARDWARE IMPLEMENTATION OF SHIFT MICROOPERATIONS Shift Microoperations S 0 1 H0 MUX S 0 1 H1 MUX S 0 1 H2 MUX S 0 1 H3 MUX Select 0 for shift right (down) 1 for shift left (up) Serial input (I R ) A0 A1 A2 A3 Serial input (I L )

17 Register Transfer &  -operations Computer Organization Computer Architectures Lab ARITHMETIC LOGIC SHIFT UNIT S3 S2 S1 S0CinOperation Function F = A Transfer A F = A + 1 Increment A F = A + B Addition F = A + B + 1 Add with carry F = A + B’ Subtract with borrow F = A + B’+ 1 Subtraction F = A - 1 Decrement A F = A TransferA XF = A  B AND XF = A  B OR XF = A  B XOR XF = A’ Complement A 1 0 X XXF = shr A Shift right A into F 1 1 X XXF = shl A Shift left A into F Shift Microoperations Arithmetic Circuit Logic Circuit C C 4 x 1 MUX Select F S3 S2 S1 S0 B A i A D A E shr shl i+1 i i i i-1 i i