1 / 59

CoE - EE 00142 Computer Organization Set 4 Registers, Datapaths and Operations

CoE - EE 00142 Computer Organization Set 4 Registers, Datapaths and Operations. Ron Hoelzeman. Datapaths & Control Units. Datapath Performs data-processing operations Control unit Determines the sequence of those operations. Control signals. ControlUnit. Status signals. Datapath.

Solomon
Télécharger la présentation

CoE - EE 00142 Computer Organization Set 4 Registers, Datapaths and Operations

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CoE - EE 00142Computer OrganizationSet 4Registers, Datapaths and Operations Ron Hoelzeman

  2. Datapaths & Control Units • Datapath Performs data-processing operations • Control unit Determines the sequence of those operations

  3. Control signals ControlUnit Status signals Datapath Control inputs Control outputs Data inputs Datapath - Control Unit Interaction Data outputs

  4. Signals • Binary signals – one or zero • Control signals Activate data processing operations in proper sequence • Status signals Datapath feedback to control unit

  5. Datapaths • Best defined by registers and operations • Examples: Shift Count Load clear

  6. Register Transfer Operations • Defined by: The set of registers in the system The operations performed on the data stored in the registers The control that supervises the sequence of operations

  7. Registers • Flip Flops Review of basics • Registers Loading Shifting

  8. Registers • Used to store data or instructions • Simply adjacent FF’s with loading and other control logic - gates • Counters are a special case • Sometimes use special names accumulators, program counters, index registers, stack pointer, status register, etc.

  9. R3 R2 R1 R0 R3 R2 R1 R0 Register Remember - just a bundle of Flip-Flops

  10. Input Output Clock D Latch or Flip Flop Triggers on positive edge of clock pulse

  11. Concept of Synchronization Triggers on positive edge of clock pulse Figure 5.2

  12. Concept of Synchronization Because of edge trigger, we can feed the output back around to the input Figure 5.3

  13. 4-Bit Register Graphics from: Logic and Computer Design Fundamentals, Mano & Kime, Prentice Hall

  14. 4-Bit Register Symbol Graphics from: Logic and Computer Design Fundamentals, Mano & Kime, Prentice Hall

  15. 4-Bit Register with Parallel Load Note: When Load =0, the output is connected back to the input because the D-FF does not have a “no change” input condition Graphics from: Logic and Computer Design Fundamentals, Mano & Kime, Prentice Hall

  16. Shift Registers • Logical shift Right or left • Arithmetic shift Right or left • Ring shift

  17. 0 R3 R2 R1 R0 Logical Shift Right Examples: 0100 --> 0010 1110 --> 0111

  18. 0 R3 R2 R1 R0 Logical Shift Left Examples: 0011 --> 0110 1101 --> 1010

  19. R3 R2 R1 R0 Arithmetic Shift Right • Examples: • Positive numbers 0100 --> 0010 • same as logical shift • Negative numbers 1110 --> 1111 • (-2) --> (-1) not same as logical shift

  20. 0 R3 R2 R1 R0 Arithmetic Shift Left • Examples: • Positive numbers 0011 --> 0110 • same as logical shift • Negative numbers 1101 --> 1010 • (-3) --> (-6) same as logical shift

  21. R3 R2 R1 R0 Ring Shift Right Examples: 0101 --> 1010 1110 --> 0111

  22. Shift a variable amount Shift a fixed amount MIPS Shift Instructions

  23. 4-Bit Shift Register • On leading edge of clock pulse • Each FF gets output of previous Graphics from: Logic and Computer Design Fundamentals, Mano & Kime, Prentice Hall

  24. 4-Bit Shift Register Symbol Graphics from: Logic and Computer Design Fundamentals, Mano & Kime, Prentice Hall

  25. 15 8 7 0 PC (H) PC (L) Register Block Diagrams 7 6 5 4 3 2 1 0 15 0 R2

  26. Register Language Examples • PC(L) or PC(7:0) Low order byte of register PC • PC(H) or PC(15:8) High order byte of register PC • R2 R1 Transfer data from R1 to R2

  27. Example Register Transfer Transfer from R1 to R2 when K1 = 1 If (K1 = 1) then (R2  R1) RTL Expression K1:R2  R2

  28. Register Transfers Symbols

  29. Arithmetic Micro-operations R0  R1 + R2 Addition R2  R2 1’s complement R2  R2 + 1 2’s complement R0  R1 +R2 +1 Subtract R1  R1 +1 Increment R1  R1 – 1 Decrement

  30. Logic Micro-operations R0  R1 Logic NOT R0  R1  R2 Logic AND R0  R1  R2 Logic OR R0  R1  R2 Logic XOR All Bitwise

  31. Logic Examples AND or Mask operation

  32. Logic Examples OR operation

  33. Logic Examples EOR operation Complements selected bits

  34. Shift Micro-operations Before After Shift left R0  sl R0 01110001 11100010 Shift right R0  sr R0 01110001 00111000

  35. Multiplexer-based Transfer If (K1=1) then (R0  R1) else if (K2=1) then (R0  R2) K1: R0  R1,K2: R0  R2

  36. Detailed Multiplexer Select

  37. Memory Transfer Memory read: R0  M[AR] Memory write: M[AR]  R0 M – Memory – typically RAM AR – Address in memory

  38. Add B to A A Serial Adder • When Shift = 0 • C in = 1 • When Shift = 1 • C in = Clock Figure 5-5 Page 229

  39. Example Serial Add

  40. 0 0 Q 0 D 0 In 0 0 Q D In Shift Load Operation 0 0 Nothing 0 1 Load parallel 1 X Shift Shift Register with Parallel Load 0 0 0 1 0 X Figure 5-6 Page 231

  41. Shift Register - Parallel Load Symbol Graphics from: Logic and Computer Design Fundamentals, Mano & Kime, Prentice Hall

  42. Bidirectional Shift Registerone stage S1 S2 Operation 0 0 NC 0 1 Shift Dn 1 0 Shift Up 1 1 Par Load S1S2 determine which line is connected to the D of Qi Graphics from: Logic and Computer Design Fundamentals, Mano & Kime, Prentice Hall

  43. Register A Register B Add Add/Subtract Unit Sub Accumulator CCR Condition Code Register ALU Block Diagram Normally, the accumulator has logical and arithmetic shift capability, both left and right

  44. Single Bus Example 7-6b Transfer Mechanisms

  45. Note Bidirectional Enable causes output

  46. B selects R3 Destination select G to select A + B A selects R2 Status bits MD select MF select Block Diagram of a Datapath Example R1  R2 + R3 Figure 7-9 Page 328 Graphics from: Logic and Computer Design Fundamentals, Mano & Kime, Prentice Hall

  47. Basics of Fig 7-9 All registers connected to Mux A and Mux B Mux B also has “constant in” select Both Bus A & B have output paths G selects arithmetic operation H select shifting operation Mux F selects output of ALU or shifter Mux D selects what goes back to registers Destination select chooses which register

  48. Sequence of OperationsR1  R2 + R3 A select - R2 onto bus A B select - R3 onto Mux B Mux B select - R3 onto bus B G select - operation of A + B MF select - ALU out to Mux F in MD select - Mux F out to Bus D Destination select - Bus D to R1 Load enable - load R1

  49. Block Diagram of n-Bit ALU Figure 7-10 Page 330 Graphics from: Logic and Computer Design Fundamentals, Mano & Kime, Prentice Hall

More Related