Computer Architecture CS 215

Slides:



Advertisements
Similar presentations
©2004 Brooks/Cole FIGURES FOR CHAPTER 12 REGISTERS AND COUNTERS Click the mouse to move to the next page. Use the ESC key to exit this chapter. This chapter.
Advertisements

CPEN Digital System Design
KU College of Engineering Elec 204: Digital Systems Design
Princess Sumaya University
Propagation Delay: capacitances introduce delay
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
7-5 Microoperation An elementary operations performed on data stored in registers or in memory. Transfer Arithmetic Logic: perform bit manipulation on.
1 Register Transfer &  -operations Computer Organization Computer Architectures Lab REGISTER TRANSFER AND MICROOPERATIONS Register Transfer Language Register.
8085 processor. Bus system in microprocessor.
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
Logic and Computer Design Fundamentals Registers and Counters
CPEN Digital System Design Chapter 9 – Computer Design
Chapter 7 - Part 2 1 CPEN Digital System Design Chapter 7 – Registers and Register Transfers Part 2 – Counters, Register Cells, Buses, & Serial Operations.
Chapter 7 – Registers and Register Transfers Part 1 – Registers, Microoperations and Implementations Logic and Computer Design Fundamentals.
KU College of Engineering Elec 204: Digital Systems Design
Unit 12 Registers and Counters Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information Engineering Da-Yeh.
Registers & Register Transfers Digital Logic Design Instructor: Kasım Sinan YILDIRIM.
Chapter 4 Register Transfer and Microoperations
Computer System Configuration and Function Computer Architecture and Design Lecture 6.
Digital 2 : EKT 221. Today’s Outline RTL Arithmetic Operations Conditional Register Transfer RTL Logical Operations RTL Shift Operations.
EKT 221/4 DIGITAL ELECTRONICS II  Registers, Micro-operations and Implementations - Part2.
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.
Eng. Mohammed Timraz Electronics & Communication Engineer University of Palestine Faculty of Engineering and Urban planning Software Engineering Department.
EKT 221/4 DIGITAL ELECTRONICS II  Registers, Micro-operations and Implementations - Part3.
Charles Kime & Thomas Kaminski © 2008 Pearson Education, Inc. (Hyperlinks are active in View Show mode) Chapter 7 – Registers and Register Transfers Part.
EKT221 ELECTRONICS DIGITAL II CHAPTER 4: Computer Design Basics
Chap 7. Register Transfers and Datapaths. 7.1 Datapaths and Operations Two types of modules of digital systems –Datapath perform data-processing operations.
Chapter 4 Computer Design Basics. Chapter Overview Part 1 – Datapaths  Introduction  Datapath Example  Arithmetic Logic Unit (ALU)  Shifter  Datapath.
7-6 단일 레지스터에서 Microoperation Multiplexer-Based Transfer  Register 가 서로 다른 시간에 둘 이상의 source 에서 data 를 받을 경우 If (K1=1) then (R0 ←R1) else if (K2=1) then.
Register and Register Transfers
REGISTER TRANSFER & MICROOPERATIONS By Sohaib. Digital System Overview  Each module is built from digital components  Registers  Decoders  Arithmetic.
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.
DIGITAL 2 : EKT 221 RTL : Microoperations on a Single Register
EKT 221 : Chapter 4 Computer Design Basics
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)
Chapter 4 Register Transfer and Microoperations Dr. Bernard Chen Ph.D. University of Central Arkansas Spring 2010.
REGISTER TRANSFER & MICROOPERATIONS By Sohaib. Digital System Overview  Each module is built from digital components  Registers  Decoders  Arithmetic.
1 CHAPTER 12 REGISTERS AND COUNTERS This chapter in the book includes: Objectives Study Guide 12.1Registers and Register Transfers 12.2Shift Registers.
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
SLIDES FOR CHAPTER 12 REGISTERS AND COUNTERS
KU College of Engineering Elec 204: Digital Systems Design
Chapter 7 – Registers and Register Transfers
DIGITAL 2 : EKT 221 RTL : Microoperations on a Single Register
Basics of digital systems
Register Transfer and Microoperations
REGISTER TRANSFER LANGUAGE AND DESIGN OF CONTROL UNIT
Computer Organization and Design
Control Unit.
Registers and Counters Register : A Group of Flip-Flops. N-Bit Register has N flip-flops. Each flip-flop stores 1-Bit Information. So N-Bit Register Stores.
REGISTER TRANSFER LANGUAGE
Computer Architecture and Design Lecture 6
Computer Architecture and Organization: L02: Logic design Review
Overview Part 1 - Registers, Microoperations and Implementations
Overview Part 1 - Registers, Microoperations and Implementations
Digital Logic Department of CNET Chapter-6
Digital Logic Department of CNET Chapter-6
Outline Registers Counters 5/11/2019.
CHAPTER-3 REGISTER TRANSFER LANGUAGE AND MICROOPERATIONS
Presentation transcript:

Computer Architecture CS 215 Registers Computer Architecture CS 215

Registers & Counters Register Counter Collection of storage elements Set of flip-flops Counter Register that cycles through a sequence of states (values)

2-bit Register Build this! Independent data lines Shared Clock pulse Write enable D Q Q In1 In0 CP W Q1 Q0 States: 22 = 4 Input Combinations: 22 = 4 Output Combinations: 22 = 4 Y = A A(t+1) = IN Moore States = 2n Input Combinations = 2n Output Combinations = 2n Build this!

Register Design Models Large numbers of states and input combinations as n becomes large State diagram/state table model is not feasible Options? Add predefined combinational circuits to registers Design individual cells using the state diagram/state table model and combine them into a register

Register Storage Expectations: Reality: Store information for multiple clock cycles “store” or “load” control signal Reality: D flip-flop loads information on every clock cycle

Register Storage Options: Signal to block the clock to the register Signal to control feedback of the output of the register back to its inputs Use other SR or JK flip-flops which for (0,0) applied store their state

Clock Gating Advantages? Disadvantages? Clock Load Gated Clock to FF Gated Clock = Clock + Load Advantages? Disadvantages?

Load-Controlled Feedback 2 to 1 Mux used to control load operation Note feedback loops Build this! C D Q Clock In0 In1 A1 A0 Y1 Y0 Load 2-to-1 Multiplexers

Register Transfer Operations Movement and processing of data stored in registers Components set of registers operations control of operations Microoperations Elementary operations Load, count, shift, add, bitwise "OR", etc.

Register Notation Letters and numbers denotes a register 7 6 5 4 3 2 1 0 15 8 7 0 15 0 PC(H) PC(L) R2 Letters and numbers denotes a register Parentheses ( ) denotes a range of register bits Arrow () denotes data transfer Comma separates parallel operations Brackets [ ] specifies a memory address

Conditional Transfer K1: (R2  R1) If (K1 =1) then (R2  R1) R1 R2 K 1 Clock Load n K1 Transfer Occurs Here No Transfers Occur Here

Microoperations Logical Groupings: Transfer - move data from one set of registers to another Arithmetic - perform arithmetic on data in registers Logic - manipulate data or use bitwise logical operations Shift - shift data in registers Arithmetic operations + Addition – Subtraction * Multiplication / Division Logical operations  Logical OR  Logical AND  Logical Exclusive OR  Not

Control Expressions Appear to the left of operations separated by a colon Specify the logical condition for the operation to occur Example: X’ K1 : R1  R1 + R2 X K1 : R1  R1 + R2’ + 1 Variable K1 enables the add or subtract operation. If X =0, then X’ =1 so K1 = 1, activating the addition of R1 and R2. If X = 1, then X K1 = 1, activating the addition of R1 and the two's complement of R2 (subtract).

Arithmetic Microoperations Symbolic Designation Description R0 ¬ R1 + R2 Addition R1 Ones Complement R1 + 1 Two's Complement R2 + R2 minus R1 (2's Comp) Increment (count up) – 1 Decrement (count down)

Logical Microoperations Symbolic Description Designation R0 ¬ R1 Bitwise NOT R0 ¬ R1 Ú R2 Bitwise OR (sets bits) R0 ¬ R1 Ù R2 Bitwise AND (clears bits) R0 ¬ R1 Å R2 Bitwise EXOR (complements bits)

Shift Microoperations Symbolic Designation Description R1 ¬ sl R2 Shift Left sr R2 Shift Right R1 Operation 10010010 ¬ sl R2 01100100 sr R2 Note: These shifts "zero fill". Sometimes a separate flip-flop is used to provide the data shifted in, or to “catch” the data shifted out. Other shifts are possible (rotates, arithmetic)

Register Transfer Structures Multiplexer-Based Transfers - Multiple inputs are selected by a multiplexer dedicated to the register Bus-Based Transfers - Multiple inputs are selected by a shared multiplexer driving a bus that feeds inputs to multiple registers Three-State Bus - Multiple inputs are selected by 3-state drivers with outputs connected to a bus that feeds multiple registers Other Transfer Structures - Use multiple multiplexers, multiple buses, and combinations of all the above

Multiplexer-Based Transfers Multiplexers connected to register inputs produce flexible transfer structures (Note: Clocks are omitted for clarity) Load R0 n MUX S K 2 1 R2 R1 Build this!

Shift Registers Build this! Move data laterally within the register Simplest case, the shift register is a set of D flip-flops connected in a row Data input, In, is called a serial input or the shift right input Data output, Out, is often called the serial output The vector (A, B, C, Out) is called the parallel output.

Parallel Load Shift Registers By adding a MUX between each shift register stage, data can be shifted or loaded If SHIFT is low, A and B are replaced by the data on DA and DB lines, else data shifts right on each clock D Q A B CP SHIFT IN DA DB Build this!