SlideShare une entreprise Scribd logo
1  sur  46
Chapter 7
                 Henry Hexmoor
                Registers and RTL




Henry Hexmoor
Henry Hexmoor      1
                        1
REGISTER TRANSFER AND MICROOPERATIONS


                 • Register Transfer Language

                 • Register Transfer

                 • Bus and Memory Transfers

                 • Arithmetic Microoperations

                 • Logic Microoperations

                 • Shift Microoperations

                 • Arithmetic Logic Shift Unit


 Henry Hexmoor
                                  2
SIMPLE DIGITAL SYSTEMS

• Combinational and sequential circuits can be used to create simple
  digital systems.

• These are the low-level building blocks of a digital computer.

• Simple digital systems are frequently characterized in terms of
    – the registers they contain, and
    – the operations that they perform.


• Typically,
    – What operations are performed on the data in the registers
    – What information is passed between registers




 Henry Hexmoor
                                      3
Register Transfer Language

                        MICROOPERATIONS (1)

     • The operations on the data in registers are called
       microoperations.
     • The functions built into registers are examples of
       microoperations
           –    Shift
           –    Load
           –    Clear
           –    Increment
           –    …




Henry Hexmoor
                               4
Register Transfer Language

                      MICROOPERATION (2)

         An elementary operation performed (during
         one clock pulse), on the information stored
         in one or more registers




                          Registers        ALU
                             (R)            (f)       1 clock cycle




          R ← f(R, R)
                f: shift, load, clear, increment, add, subtract, complement,
Henry Hexmoor          and, or, xor, …
                                      5
Register Transfer Language

        ORGANIZATION OF A DIGITAL SYSTEM

   • Definition of the (internal) organization of a computer

            - 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 (to perform the functions)




Henry Hexmoor
                                    6
Register Transfer Language

                REGISTER TRANSFER LEVEL

     • Viewing a computer, or any digital system, in this way
       is called the register transfer level

     • This is because we’re focusing on
           – The system’s registers
           – The data transformations in them, and
           – The data transfers between them.




Henry Hexmoor
                                     7
Register Transfer Language

            REGISTER TRANSFER LANGUAGE

 • Rather than specifying a digital system in words, a specific
   notation is used, register transfer language

 • For any function of the computer, the register transfer
   language can be used to describe 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.




Henry Hexmoor
                                      8
Register Transfer Language

                DESIGNATION OF REGISTERS

 • Registers are designated by capital letters, sometimes
   followed by numbers (e.g., A, R13, IR)
 • Often the names indicate function:
       – MAR      - memory address register
       – PC       - program counter
       – IR       - instruction register


 • Registers and their contents can be viewed and represented in
   various ways
       – A register can be viewed as a single entity:

                                          MAR


       – Registers may also be represented showing the bits of data they contain



Henry Hexmoor
                                      9
Register Transfer Language

                  DESIGNATION OF REGISTERS

 • Designation of a register
           - a register
           - portion of a register
           - a bit of a register



 • Common ways of drawing the block diagram of a register

                Register                          Showing individual bits
                                R1                     7   6   5   4     3   2   1   0

                 15                           0   15               8 7               0
                                    R2                     PC(H)             PC(L)
                Numbering of bits                 Subfields




Henry Hexmoor
                                         10
Register Transfer

                   REGISTER TRANSFER

• Copying the contents of one register to another is a register
  transfer

• A register transfer is indicated as

       R2 ← R1

       – In this case the contents of register R1 are copied (loaded) into
         register R2
       – A simultaneous transfer of all bits from the source R1 to the
          destination register R2, during one clock pulse
       – Note that this is a non-destructive; i.e. the contents of R1 are not
         altered by copying (loading) them to R2



Henry Hexmoor
                                    11
Register Transfer

                   REGISTER TRANSFER

• A register transfer such as

       R3 ← R5

       Implies that the digital system has

       – the data lines from the source register (R5) to the destination
         register (R3)
       – Parallel load in the destination register (R3)
       – Control lines to perform the action




Henry Hexmoor
                                   12
Register Transfer

                    CONTROL FUNCTIONS
   • Often actions need to only occur if a certain condition is true
   • This is similar to an “if” statement in a programming language
   • In digital systems, this is often done via a control signal, called
     a control function
         – If the signal is 1, the action takes place
   • This is represented as:

         P: R2 ← R1

         Which means “if P = 1, then load the contents of register R1 into
          register R2”, i.e., if (P = 1) then (R2 ← R1)




Henry Hexmoor
                                     13
Register Transfer

HARDWARE IMPLEMENTATION OF CONTROLLED TRANSFERS


Implementation of controlled transfer
     P: R2 ← R1



Block diagram                              Control   P       Load
                                                                          R2          Clock
                                           Circuit
                                                                               n
                                                                          R1


Timing diagram                                           t          t+1
                                   Clock

                                   Load
                                       Transfer occurs here


                • The same clock controls the circuits that generate the control function
                  and the destination register
                • Registers are assumed to use positive-edge-triggered flip-flops
Henry Hexmoor
                                            14
Register Transfer

                 SIMULTANEOUS OPERATIONS

       • If two or more operations are to occur
         simultaneously, they are separated with commas

                P: R3 ← R5, MAR ← IR

       • Here, if the control function P = 1, load the contents
         of R5 into R3, and at the same time (clock), load the
         contents of register IR into register MAR




Henry Hexmoor
                                  15
Register Transfer

  BASIC SYMBOLS FOR REGISTER TRANSFERS




 Symbols              Description                           Examples
Capital letters   Denotes a register                        MAR, R2
 & 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




 Henry Hexmoor
                                   16
Register Transfer

                       CONNECTING REGISTRS

       • In a digital system with many registers, it is impractical to
         have data and control lines to directly allow each register
         to be loaded with the contents of every possible other
         registers

       • To completely connect n registers  n(n-1) lines
       • O(n2) cost
                – This is not a realistic approach to use in a large digital system


       • Instead, take a different approach
       • Have one centralized set of circuits for data transfer – the
         bus
       • Have control circuits to select which register is the
         source, and which is the destination


Henry Hexmoor
                                           17
Bus and Memory Transfers

                 BUS AND BUS 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 A      Register B        Register C      Register D



                            Bus lines



                          Register A     Register B     Register C        Register D
                          1 2 3 4        1 2 3 4        1 2 3 4           1 2 3 4


                             B1 C1 D 1      B2 C2 D 2        B3 C3 D 3       B4 C 4 D 4

                          0 4 x1         0 4 x1         0 4 x1            0 4 x1
                            MUX            MUX            MUX               MUX

                  x
                 select
                  y


                                                4-line bus
 Henry Hexmoor
                                          18
Bus and Memory Transfers

TRANSFER FROM BUS TO A DESTINATION REGISTER
                          Bus lines

                                                                                    Load
                           Reg. R0            Reg. R1     Reg. R2      Reg. R3



                                                   D 0 D1 D2 D 3
                                          z                            E (enable)
                                   Select               2x4
                                          w
                                                       Decoder

     Three-State Bus Buffers
                 Normal input A                                     Output Y=A if C=1
                                                                    High-impedence if C=0
                 Control input C


     Bus line with three-state buffers
                                                                    Bus line for bit 0
                                                    A0
                                                    B0
                                                    C0
                                                    D0

                                              S0          0
                               Select                     1
                                              S1          2
                               Enable                     3
 Henry Hexmoor
                                                   19
Bus and Memory Transfers

                 BUS TRANSFER IN RTL

       • Depending on whether the bus is to be mentioned
         explicitly or not, register transfer can be indicated as
         either
                 R2 ← R1
         or
                 BUS ← R1, R2 ← BUS

       • In the former case the bus is implicit, but in the latter, it is
         explicitly indicated




Henry Hexmoor
                                  20
Bus and Memory Transfers

                               MEMORY (RAM)
• Memory (RAM) can be thought as a sequential circuits
  containing some number of registers
• These registers hold the words of memory
• Each of the r registers is indicated by an address
• These addresses range from 0 to r-1
• Each register (word) can hold n bits of data
• Assume the RAM contains r = 2k words. It needs the
  following
    –   n data input lines                                   data input lines
    –   n data output lines
                                                                      n
    –   k address lines
    –   A Read control line              address lines
    –   A Write control line                             k
                                                                  RAM
                                          Read
                                                                  unit
                                          Write
                                                                      n
                                                             data output lines
Henry Hexmoor
                                   21
Bus and Memory Transfers

                 MEMORY TRANSFER
• Collectively, the memory is viewed at the register level as
  a device, M.
• Since it contains multiple locations, we must specify
  which address in memory we will be using
• This is done by indexing memory references

• Memory is usually accessed in computer systems by
  putting the desired address in a special register, the
  Memory Address Register (MAR, or AR)
• When memory is accessed, the contents of the MAR get
  sent to the memory unit’s address lines

                                             M
                                          Memory             Read
                        AR
                                           unit               Write


                                       Data out    Data in
Henry Hexmoor
                              22
Bus and Memory Transfers

                          MEMORY READ


    • To read a value from a location in memory and load it into
      a register, the register transfer language notation looks
      like this:
                    R1 ← M[MAR]


    • This causes the following to occur
          – The contents of the MAR get sent to the memory address lines
          – A Read (= 1) gets sent to the memory unit
          – The contents of the specified address are put on the memory’s output
            data lines
          – These get sent over the bus to be loaded into register R1




Henry Hexmoor
                                      23
Bus and Memory Transfers

                          MEMORY WRITE


    • To write a value from a register to a location in memory
      looks like this in register transfer language:

                         M[MAR] ← R1

    • This causes the following to occur
          – The contents of the MAR get sent to the memory address lines
          – A Write (= 1) gets sent to the memory unit
          – The values in register R1 get sent over the bus to the data input lines
            of the memory
          – The values get loaded into the specified address in the memory




Henry Hexmoor
                                       24
Bus and Memory Transfers

SUMMARY OF R. TRANSFER MICROOPERATIONS

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 ← ABUS          transfer 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


 Henry Hexmoor
                             25
Arithmetic Microoperations

                          MICROOPERATIONS


• Computer system microoperations are of four types:

                - Register transfer microoperations
                - Arithmetic microoperations
                - Logic microoperations
                - Shift microoperations




Henry Hexmoor
                                     26
Arithmetic Microoperations

                ARITHMETIC MICROOPERATIONS
• The basic arithmetic microoperations are
     –   Addition
     –   Subtraction
     –   Increment
     –   Decrement

• The additional arithmetic microoperations are
     –   Add with carry
     –   Subtract with borrow
     –   Transfer/Load
     –   etc. …

                   Summary of Typical Arithmetic Micro-Operations
          R3 ←   R1 + R2       Contents of R1 plus R2 transferred to R3
          R3 ←   R1 - R2       Contents of R1 minus R2 transferred to R3
          R2 ←   R2’           Complement the contents of R2
          R2 ←   R2’+ 1        2's complement the contents of R2 (negate)
          R3 ←   R1 + R2’+ 1   subtraction
          R1 ←   R1 + 1        Increment
          R1 ←   R1 - 1        Decrement
Henry Hexmoor
                                           27
Arithmetic Microoperations

BINARY ADDER / SUBTRACTOR / INCREMENTER
                         B3     A3       B2         A2    B1        A1    B0       A0

       Binary Adder
                           FA        C3        FA        C2    FA        C1    FA        C0



                   C4         S3               S2              S1              S0

Binary Adder-Subtractor
                        B3 A3           B2     A2         B1   A1         B0 A0

                                                                                         M




                                   C3               C2              C1              C0
                         FA              FA                   FA              FA


                 C4      S3               S2                  S1              S0

             Binary Incrementer
                         A3                  A2                A1              A0   1



                          x     y            x      y          x     y         x    y
                          HA                   HA                  HA              HA
                          C    S             C      S          C    S          C    S




 Henry Hexmoor           C4 S3                      S2              S1              S0

                                          28
Arithmetic Microoperations

                               ARITHMETIC CIRCUIT
                     Cin
                     S1
                     S0
                     A0                                               X0        C0
                                                    S1                               D0
                                                    S0                     FA
                     B0                             0 4x1             Y0        C1
                                                    1 MUX
                                                    2
                                                    3
                     A1                                               X1        C1
                                                    S1                     FA        D1
                                                    S0
                     B1                             0 4x1             Y1        C2
                                                    1 MUX
                                                    2
                                                    3
                     A2                                               X2        C2
                                                    S1                     FA        D2
                                                    S0
                     B2                             0 4x1             Y2        C3
                                                    1 MUX
                                                    2
                                                    3
                     A3                                               X3        C3
                                                    S1                               D3
                                                    S0                     FA
                     B3                             0 4x1             Y3        C4
                                                    1 MUX
                                                    2
                                                    3                                Cout
                           0            1



         S1     S0   Cin       Y    Output               Microoperation
         0       0   0         B    D=A+B                Add
         0       0   1         B    D=A+B+1              Add with carry
         0      1    0         B’   D = A + B’           Subtract with borrow
         0       1   1         B’   D = A + B’+ 1        Subtract
         1       0   0         0    D=A                  Transfer A
         1       0   1         0    D=A+1                Increment A
         1       1   0         1    D=A-1                Decrement A
Henry Hexmoor
         1       1   1         1    D=A                  Transfer A
                                                    29
Logic Microoperations

                LOGIC MICROOPERATIONS
• Specify binary operations on the strings of bits in registers
     – Logic microoperations are bit-wise operations, i.e., they work on the
       individual bits of data
     – useful for bit manipulations on binary data
     – useful for making logical decisions based on the bit value
• There are, in principle, 16 different logic functions that can
  be defined over two binary input variables
                      A   B   F0   F1   F2 … F13   F14   F15
                      0   0   0    0    0 … 1      1     1
                      0   1   0    0    0 … 1      1     1
                      1   0   0    0    1 … 0      1     1
                      1   1   0    1    0 … 1      0     1


• However, most systems only implement four of these
     – AND (∧), OR (∨), XOR (⊕), Complement/NOT
• The others can be created from combination of these

Henry Hexmoor
                                        30
Logic Microoperations

         LIST OF LOGIC MICROOPERATIONS
  • List of Logic Microoperations
     - 16 different logic operations with 2 binary vars.
                             n
     - n binary vars → 2 2 functions

 • Truth tables for 16 functions of 2 variables and the
   corresponding 16 logic micro-operations
          x 0011     Boolean          Micro-
                                                        Name
          y 0101     Function         Operations
            0000      F0 = 0          F←0               Clear
            0001      F1 = xy         F← A∧ B           AND
            0010      F2 = xy'        F ← A ∧ B’
            0011      F3 = x          F←A             Transfer A
            0100      F4 = x'y        F ← A’∧ B
            0101      F5 = y          F←B             Transfer B
            0110      F6 = x ⊕ y       F← A⊕ B       Exclusive-OR
            0111      F7 = x + y      F← A∨ B           OR
            1000      F8 = (x + y)'   F ← (A ∨ B)’       NOR
            1001      F9 = (x ⊕ y)'    F ← (A ⊕ B)’ Exclusive-NOR
            1010      F10 = y'        F ← B’        Complement B
            1011      F11 = x + y'    F← A∨ B
            1100      F12 = x'         F ← A’       Complement A
            1101      F13 = x' + y    F ← A’∨ B
            1110      F14 = (xy)'      F ← (A ∧ B)’    NAND
            1111      F15 = 1          F ← all 1's   Set to all 1's
Henry Hexmoor
                                        31
Logic Microoperations

HARDWARE IMPLEMENTATION OF LOGIC MICROOPERATIONS

                          Ai
                                           0
                          Bi

                                           1
                                               4X1    Fi
                                               MUX
                                           2

                                           3 Select

                          S1
                          S0




                               Function table
                S1   S0    Output     µ-operation
                0    0    F=A∧ B      AND
                0    1    F=A∨ B       OR
                1    0    F=A⊕ B      XOR
                1    1    F = A’    Complement


Henry Hexmoor
                                      32
Logic Microoperations

APPLICATIONS OF LOGIC MICROOPERATIONS
• Logic microoperations can be used to manipulate individual
  bits or a portions of a word in a register

• Consider the data in a register A. In another register, B, is bit
  data that will be used to modify the contents of A

     –   Selective-set               A←   A+B
     –   Selective-complement        A←   A⊕ B
     –   Selective-clear             A←   A • B’
     –   Mask (Delete)               A←   A•B
     –   Clear                       A←   A⊕ B
     –   Insert                      A←   (A • B) + C
     –   Compare                     A←   A⊕ B
     –    ...


Henry Hexmoor
                                33
Logic Microoperations

                       SELECTIVE SET



• In a selective set operation, the bit pattern in B is used to set
  certain bits in A

                1100       At
                1010       B
                1110       At+1        (A ← A + B)


• If a bit in B is set to 1, that same position in A gets set to 1,
  otherwise that bit in A keeps its previous value




Henry Hexmoor
                                  34
Logic Microoperations

                SELECTIVE COMPLEMENT



• In a selective complement operation, the bit pattern in B is
  used to complement certain bits in A

                1100      At
                1010      B
                0110      At+1        (A ← A ⊕ B)


• If a bit in B is set to 1, that same position in A gets
  complemented from its original value, otherwise it is
  unchanged



Henry Hexmoor
                                 35
Logic Microoperations

                       SELECTIVE CLEAR



• In a selective clear operation, the bit pattern in B is used to
  clear certain bits in A

                1100       At
                1010       B
                0100       At+1        (A ← A ⋅ B’)


• If a bit in B is set to 1, that same position in A gets set to 0,
  otherwise it is unchanged




Henry Hexmoor
                                  36
Logic Microoperations

                       MASK OPERATION



• In a mask operation, the bit pattern in B is used to clear
  certain bits in A

                1100       At
                1010       B
                1000       At+1        (A ← A ⋅ B)


• If a bit in B is set to 0, that same position in A gets set to 0,
  otherwise it is unchanged




Henry Hexmoor
                                  37
Logic Microoperations

                   CLEAR OPERATION



• In a clear operation, if the bits in the same position in A and
  B are the same, they are cleared in A, otherwise they are set
  in A

                1100      At
                1010      B
                0110      At+1        (A ← A ⊕ B)




Henry Hexmoor
                                 38
Logic Microoperations

                        INSERT OPERATION
• An insert operation is used to introduce a specific bit pattern
  into A register, leaving the other bit positions unchanged
• This is done as
     – A mask operation to clear the desired bit positions, followed by
     – An OR operation to introduce the new bits into the desired
       positions
     – Example
         » Suppose you wanted to introduce 1010 into the low order
           four bits of A:  1101 1000 1011 0001 A (Original)
                            1101 1000 1011 1010 A (Desired)

            » 1101   1000   1011   0001    A (Original)
              1111   1111   1111   0000    Mask
              1101   1000   1011   0000    A (Intermediate)
              0000   0000   0000   1010    Added bits
              1101   1000   1011   1010    A (Desired)

Henry Hexmoor
                                     39
Shift Microoperations

                             LOGICAL SHIFT
• In a logical shift the serial input to the shift is a 0.

• A right logical shift operation:
                0



• A left logical shift operation:
                                                                              0




• In a Register Transfer Language, the following notation is used
      – shl      for a logical shift left
      – shr      for a logical shift right
      – Examples:
            » R2 ← shr R2
Henry Hexmoor R3 ← shl R3
            »
                                         40
Shift Microoperations

                            CIRCULAR SHIFT
• In a circular shift the serial input is the bit that is shifted out
  of the other end of the register.

• A right circular shift operation:




• A left circular shift operation:




• In a RTL, the following notation is used
      – cil      for a circular shift left
      – cir      for a circular shift right
      – Examples:
            » R2 ← cir R2
Henry Hexmoor R3 ← cil R3
            »
                                         41
Logical versus Arithmetic Shift

  • A logical shift fills the newly created bit position with
    zero:




  • An arithmetic shift fills the newly created bit
    position with a copy of the number’s sign bit:




Henry Hexmoor
                             42
Shift Microoperations

                        ARITHMETIC SHIFT
• An left arithmetic shift operation must be checked for the
  overflow
                                                                              0
                sign
                 bit



                                              Before the shift, if the leftmost two
                                      V       bits differ, the shift will result in an
                                              overflow


• In a RTL, the following notation is used
     – ashl   for an arithmetic shift left
     – ashr   for an arithmetic shift right
     – Examples:
         » R2 ← ashr R2
         » R3 ← ashl R3




Henry Hexmoor
                                     43
Shift Microoperations

HARDWARE IMPLEMENTATION OF SHIFT MICROOPERATIONS


                                     0 for shift right (down)
                 Serial       Select 1 for shift left (up)
                 input (IR)


                                         S
                                             MUX                H0
                                         0
                                         1
            A0

            A1                           S
                                             MUX                H1
                                         0
            A2                           1

            A3
                                         S
                                             MUX                H2
                                         0
                                         1


                                         S
                                             MUX                H3
                                         0
                                         1

                 Serial
                 input (IL)

 Henry Hexmoor
                                             44
Shift Microoperations

                ARITHMETIC LOGIC SHIFT UNIT
                              S3
                              S2                       Ci
                              S1
                              S0

                                               Arithmetic D i
                                                Circuit
                                                                              Select

                                                       Ci+1
                                                                              0   4x1   Fi
                                                                              1   MUX
                                                                              2
                                                                              3
                                                               Ei
                                                      Logic
                              Bi
                              Ai
                                                     Circuit
                              Ai-1                              shr
                              Ai+1                              shl


      S3 S2     S1 S0   Cin          Operation          Function
      0    0    0  0    0            F=A               Transfer A
      0    0    0  0    1            F=A+1             Increment A
      0    0    0  1    0            F=A+B             Addition
      0    0    0  1    1            F=A+B+1           Add with carry
      0    0    1  0    0            F = A + B’        Subtract with borrow
      0    0    1  0    1            F = A + B’+ 1     Subtraction
      0    0    1  1    0            F=A-1             Decrement A
      0    0    1  1    1            F=A               TransferA
      0    1    0  0    X            F=A∧ B            AND
      0    1    0  1    X            F=A∨B             OR
      0    1    1  0    X            F=A⊕ B            XOR
      0    1    1  1    X            F = A’            Complement A
      1    0    X  X    X            F = shr A         Shift right A into F
      1    1
Henry Hexmoor   X   X   X            F = shl A         Shift left A into F
                                              45
HW 7

1. A Switch-tail ring counter (John counter) uses the
  complement of the serial output of a right shift
  register as its serial input. Starting from an initial
  state 0000, list the sequence of states after each shift
  until the register returns to 0000. (Q7-9a)
2. Use D-type flip flops and gates to design a counter
  with the following repeated binary sequence: 0, 1, 3,
  2, 4, 6. (Q7-18)




Henry Hexmoor
                          46

Contenu connexe

Tendances

Shift micro operations & 4 bit combinational circuit shifter
Shift micro operations &  4 bit combinational circuit shifterShift micro operations &  4 bit combinational circuit shifter
Shift micro operations & 4 bit combinational circuit shifterMonika Chauhan
 
Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor  Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor Mustapha Fatty
 
Pipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture pptPipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture pptmali yogesh kumar
 
COMPUTER INSTRUCTIONS & TIMING & CONTROL.
COMPUTER INSTRUCTIONS & TIMING & CONTROL.COMPUTER INSTRUCTIONS & TIMING & CONTROL.
COMPUTER INSTRUCTIONS & TIMING & CONTROL.ATUL KUMAR YADAV
 
Dynamic Programming Code-Optimization Algorithm (Compiler Design)
Dynamic Programming Code-Optimization Algorithm (Compiler Design)Dynamic Programming Code-Optimization Algorithm (Compiler Design)
Dynamic Programming Code-Optimization Algorithm (Compiler Design)Dhrumil Panchal
 
Computer architecture instruction formats
Computer architecture instruction formatsComputer architecture instruction formats
Computer architecture instruction formatsMazin Alwaaly
 
Register transfer language
Register  transfer languageRegister  transfer language
Register transfer languagehamza munir
 
Unit II arm 7 Instruction Set
Unit II arm 7 Instruction SetUnit II arm 7 Instruction Set
Unit II arm 7 Instruction SetDr. Pankaj Zope
 
ARM7-ARCHITECTURE
ARM7-ARCHITECTURE ARM7-ARCHITECTURE
ARM7-ARCHITECTURE Dr.YNM
 
Computer organization and architecture
Computer organization and architectureComputer organization and architecture
Computer organization and architectureSubesh Kumar Yadav
 
Computer organization memory
Computer organization memoryComputer organization memory
Computer organization memoryDeepak John
 
11 instruction sets addressing modes
11  instruction sets addressing modes 11  instruction sets addressing modes
11 instruction sets addressing modes Sher Shah Merkhel
 
Memory organization (Computer architecture)
Memory organization (Computer architecture)Memory organization (Computer architecture)
Memory organization (Computer architecture)Sandesh Jonchhe
 
Addressing modes of 8086
Addressing modes of 8086Addressing modes of 8086
Addressing modes of 8086saurav kumar
 
Register organization, stack
Register organization, stackRegister organization, stack
Register organization, stackAsif Iqbal
 
Computer architecture addressing modes and formats
Computer architecture addressing modes and formatsComputer architecture addressing modes and formats
Computer architecture addressing modes and formatsMazin Alwaaly
 

Tendances (20)

Shift micro operations & 4 bit combinational circuit shifter
Shift micro operations &  4 bit combinational circuit shifterShift micro operations &  4 bit combinational circuit shifter
Shift micro operations & 4 bit combinational circuit shifter
 
Unit vi (2)
Unit vi (2)Unit vi (2)
Unit vi (2)
 
Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor  Architecture of 8086 Microprocessor
Architecture of 8086 Microprocessor
 
Pipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture pptPipeline hazards in computer Architecture ppt
Pipeline hazards in computer Architecture ppt
 
COMPUTER INSTRUCTIONS & TIMING & CONTROL.
COMPUTER INSTRUCTIONS & TIMING & CONTROL.COMPUTER INSTRUCTIONS & TIMING & CONTROL.
COMPUTER INSTRUCTIONS & TIMING & CONTROL.
 
Dynamic Programming Code-Optimization Algorithm (Compiler Design)
Dynamic Programming Code-Optimization Algorithm (Compiler Design)Dynamic Programming Code-Optimization Algorithm (Compiler Design)
Dynamic Programming Code-Optimization Algorithm (Compiler Design)
 
Arithmetic micro operations
Arithmetic micro operationsArithmetic micro operations
Arithmetic micro operations
 
Acc logic
Acc logicAcc logic
Acc logic
 
Computer architecture instruction formats
Computer architecture instruction formatsComputer architecture instruction formats
Computer architecture instruction formats
 
Register transfer language
Register  transfer languageRegister  transfer language
Register transfer language
 
Unit II arm 7 Instruction Set
Unit II arm 7 Instruction SetUnit II arm 7 Instruction Set
Unit II arm 7 Instruction Set
 
ARM7-ARCHITECTURE
ARM7-ARCHITECTURE ARM7-ARCHITECTURE
ARM7-ARCHITECTURE
 
Computer organization and architecture
Computer organization and architectureComputer organization and architecture
Computer organization and architecture
 
Computer organization memory
Computer organization memoryComputer organization memory
Computer organization memory
 
11 instruction sets addressing modes
11  instruction sets addressing modes 11  instruction sets addressing modes
11 instruction sets addressing modes
 
Memory organization (Computer architecture)
Memory organization (Computer architecture)Memory organization (Computer architecture)
Memory organization (Computer architecture)
 
COMPILER DESIGN Run-Time Environments
COMPILER DESIGN Run-Time EnvironmentsCOMPILER DESIGN Run-Time Environments
COMPILER DESIGN Run-Time Environments
 
Addressing modes of 8086
Addressing modes of 8086Addressing modes of 8086
Addressing modes of 8086
 
Register organization, stack
Register organization, stackRegister organization, stack
Register organization, stack
 
Computer architecture addressing modes and formats
Computer architecture addressing modes and formatsComputer architecture addressing modes and formats
Computer architecture addressing modes and formats
 

En vedette (16)

Register transfer language
Register transfer languageRegister transfer language
Register transfer language
 
#socialradio La comunicazione radiofonica ai tempi dei social media
#socialradio La comunicazione radiofonica ai tempi dei social media#socialradio La comunicazione radiofonica ai tempi dei social media
#socialradio La comunicazione radiofonica ai tempi dei social media
 
Social Radio Lab @ Social Media Week Roma 2014 - Day 2
Social Radio Lab @ Social Media Week Roma 2014 - Day 2Social Radio Lab @ Social Media Week Roma 2014 - Day 2
Social Radio Lab @ Social Media Week Roma 2014 - Day 2
 
Alessandro Rigato – Listening
Alessandro Rigato – ListeningAlessandro Rigato – Listening
Alessandro Rigato – Listening
 
Web Radio Overview
Web Radio OverviewWeb Radio Overview
Web Radio Overview
 
Radio in FM più seguite e coinvolgenti sui social. Social Radio Lab @ #smwrme
Radio in FM più seguite e coinvolgenti sui social. Social Radio Lab @ #smwrmeRadio in FM più seguite e coinvolgenti sui social. Social Radio Lab @ #smwrme
Radio in FM più seguite e coinvolgenti sui social. Social Radio Lab @ #smwrme
 
Introduction to digital logic
Introduction to digital logicIntroduction to digital logic
Introduction to digital logic
 
CO By Rakesh Roshan
CO By Rakesh RoshanCO By Rakesh Roshan
CO By Rakesh Roshan
 
Logic microoperations
Logic microoperationsLogic microoperations
Logic microoperations
 
Verilog
VerilogVerilog
Verilog
 
Tavola rotonda «le radio italiane
Tavola rotonda «le radio italianeTavola rotonda «le radio italiane
Tavola rotonda «le radio italiane
 
Verilog hdl
Verilog hdlVerilog hdl
Verilog hdl
 
Verilog
VerilogVerilog
Verilog
 
Arithmetic Logic Unit (ALU)
Arithmetic Logic Unit (ALU)Arithmetic Logic Unit (ALU)
Arithmetic Logic Unit (ALU)
 
bus and memory tranfer (computer organaization)
bus and memory tranfer (computer organaization)bus and memory tranfer (computer organaization)
bus and memory tranfer (computer organaization)
 
Digital logic circuits important question and answers for 5 units
Digital logic circuits important question and answers for 5 unitsDigital logic circuits important question and answers for 5 units
Digital logic circuits important question and answers for 5 units
 

Similaire à RTL

PPT in register and micro operations in electronic
PPT in register and micro operations in electronicPPT in register and micro operations in electronic
PPT in register and micro operations in electronicaaravjamela
 
Computer organiztion4
Computer organiztion4Computer organiztion4
Computer organiztion4Umang Gupta
 
REGISTER TRANSFER AND MICROOPERATIONS
REGISTER  TRANSFER  AND  MICROOPERATIONSREGISTER  TRANSFER  AND  MICROOPERATIONS
REGISTER TRANSFER AND MICROOPERATIONSDr. Ajay Kumar Singh
 
Register Transfer Language & Microoperations.ppt
Register Transfer Language & Microoperations.pptRegister Transfer Language & Microoperations.ppt
Register Transfer Language & Microoperations.pptAldrianSisican
 
CO UNIT I PART I NOTES (1).ppt
CO UNIT I PART I NOTES (1).pptCO UNIT I PART I NOTES (1).ppt
CO UNIT I PART I NOTES (1).pptAyushiBhatlaITA001
 
Regis&Microo_fgfhkgfvg microperation aee
Regis&Microo_fgfhkgfvg microperation aeeRegis&Microo_fgfhkgfvg microperation aee
Regis&Microo_fgfhkgfvg microperation aeeBala Anand
 
unit1COA Computer Organisation and Architecture
unit1COA Computer Organisation and Architectureunit1COA Computer Organisation and Architecture
unit1COA Computer Organisation and ArchitectureSwapnitaSrivastava1
 
computer-system-architecture-morris-mano-220720124304-fefd641d.pdf
computer-system-architecture-morris-mano-220720124304-fefd641d.pdfcomputer-system-architecture-morris-mano-220720124304-fefd641d.pdf
computer-system-architecture-morris-mano-220720124304-fefd641d.pdfKunalSahu180994
 
Top schools in noida
Top schools in noidaTop schools in noida
Top schools in noidaEdhole.com
 
3_Register in COA.ppt
3_Register in COA.ppt3_Register in COA.ppt
3_Register in COA.ppttommychauhan
 
Mca i-u-2-overview of register transfer, micro operations and basic computer ...
Mca i-u-2-overview of register transfer, micro operations and basic computer ...Mca i-u-2-overview of register transfer, micro operations and basic computer ...
Mca i-u-2-overview of register transfer, micro operations and basic computer ...Rai University
 

Similaire à RTL (20)

Register Transfer Language
Register Transfer LanguageRegister Transfer Language
Register Transfer Language
 
PPT in register and micro operations in electronic
PPT in register and micro operations in electronicPPT in register and micro operations in electronic
PPT in register and micro operations in electronic
 
Computer organiztion4
Computer organiztion4Computer organiztion4
Computer organiztion4
 
1 lecture csa
1 lecture csa1 lecture csa
1 lecture csa
 
REGISTER TRANSFER AND MICROOPERATIONS
REGISTER  TRANSFER  AND  MICROOPERATIONSREGISTER  TRANSFER  AND  MICROOPERATIONS
REGISTER TRANSFER AND MICROOPERATIONS
 
Register Transfer Language & Microoperations.ppt
Register Transfer Language & Microoperations.pptRegister Transfer Language & Microoperations.ppt
Register Transfer Language & Microoperations.ppt
 
CO UNIT I PART I NOTES (1).ppt
CO UNIT I PART I NOTES (1).pptCO UNIT I PART I NOTES (1).ppt
CO UNIT I PART I NOTES (1).ppt
 
Regis&Microo_fgfhkgfvg microperation aee
Regis&Microo_fgfhkgfvg microperation aeeRegis&Microo_fgfhkgfvg microperation aee
Regis&Microo_fgfhkgfvg microperation aee
 
COA LESSON.ppt
COA LESSON.pptCOA LESSON.ppt
COA LESSON.ppt
 
Functional organization
Functional organizationFunctional organization
Functional organization
 
unit1COA Computer Organisation and Architecture
unit1COA Computer Organisation and Architectureunit1COA Computer Organisation and Architecture
unit1COA Computer Organisation and Architecture
 
mano.ppt
mano.pptmano.ppt
mano.ppt
 
computer-system-architecture-morris-mano-220720124304-fefd641d.pdf
computer-system-architecture-morris-mano-220720124304-fefd641d.pdfcomputer-system-architecture-morris-mano-220720124304-fefd641d.pdf
computer-system-architecture-morris-mano-220720124304-fefd641d.pdf
 
coa
coacoa
coa
 
Lecture 6
Lecture 6Lecture 6
Lecture 6
 
Top schools in noida
Top schools in noidaTop schools in noida
Top schools in noida
 
Registers in coa
Registers in coaRegisters in coa
Registers in coa
 
Chapter 4
Chapter 4Chapter 4
Chapter 4
 
3_Register in COA.ppt
3_Register in COA.ppt3_Register in COA.ppt
3_Register in COA.ppt
 
Mca i-u-2-overview of register transfer, micro operations and basic computer ...
Mca i-u-2-overview of register transfer, micro operations and basic computer ...Mca i-u-2-overview of register transfer, micro operations and basic computer ...
Mca i-u-2-overview of register transfer, micro operations and basic computer ...
 

Plus de Ashish Sharma

Entrance test for teacher 2013...
Entrance test for teacher 2013...Entrance test for teacher 2013...
Entrance test for teacher 2013...Ashish Sharma
 
Acf computer science test under jkpsc..
Acf computer science test under jkpsc..Acf computer science test under jkpsc..
Acf computer science test under jkpsc..Ashish Sharma
 
Syllabus for screening test 10+2 lecturer in computer sciences..
Syllabus for screening test 10+2 lecturer in computer sciences..Syllabus for screening test 10+2 lecturer in computer sciences..
Syllabus for screening test 10+2 lecturer in computer sciences..Ashish Sharma
 
Tentative vacancies of combined graduate level examination 2012
Tentative vacancies of combined graduate level examination 2012Tentative vacancies of combined graduate level examination 2012
Tentative vacancies of combined graduate level examination 2012Ashish Sharma
 
sbi po_advt_jan2013
 sbi po_advt_jan2013 sbi po_advt_jan2013
sbi po_advt_jan2013Ashish Sharma
 

Plus de Ashish Sharma (6)

Entrance test for teacher 2013...
Entrance test for teacher 2013...Entrance test for teacher 2013...
Entrance test for teacher 2013...
 
Acf computer science test under jkpsc..
Acf computer science test under jkpsc..Acf computer science test under jkpsc..
Acf computer science test under jkpsc..
 
Syllabus for screening test 10+2 lecturer in computer sciences..
Syllabus for screening test 10+2 lecturer in computer sciences..Syllabus for screening test 10+2 lecturer in computer sciences..
Syllabus for screening test 10+2 lecturer in computer sciences..
 
Tentative vacancies of combined graduate level examination 2012
Tentative vacancies of combined graduate level examination 2012Tentative vacancies of combined graduate level examination 2012
Tentative vacancies of combined graduate level examination 2012
 
sbi po_advt_jan2013
 sbi po_advt_jan2013 sbi po_advt_jan2013
sbi po_advt_jan2013
 
MCA CONFLICT
MCA CONFLICTMCA CONFLICT
MCA CONFLICT
 

Dernier

How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPCeline George
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxnelietumpap1
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Celine George
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxthorishapillay1
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPCeline George
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17Celine George
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxHumphrey A Beña
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Mark Reed
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxMaryGraceBautista27
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptxmary850239
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...Postal Advocate Inc.
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 

Dernier (20)

How to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERPHow to do quick user assign in kanban in Odoo 17 ERP
How to do quick user assign in kanban in Odoo 17 ERP
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptx
 
Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17Computed Fields and api Depends in the Odoo 17
Computed Fields and api Depends in the Odoo 17
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
Proudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptxProudly South Africa powerpoint Thorisha.pptx
Proudly South Africa powerpoint Thorisha.pptx
 
What is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERPWhat is Model Inheritance in Odoo 17 ERP
What is Model Inheritance in Odoo 17 ERP
 
How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17How to Add Barcode on PDF Report in Odoo 17
How to Add Barcode on PDF Report in Odoo 17
 
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptxINTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
INTRODUCTION TO CATHOLIC CHRISTOLOGY.pptx
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)Influencing policy (training slides from Fast Track Impact)
Influencing policy (training slides from Fast Track Impact)
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptx
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx
 
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
USPS® Forced Meter Migration - How to Know if Your Postage Meter Will Soon be...
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 

RTL

  • 1. Chapter 7 Henry Hexmoor Registers and RTL Henry Hexmoor Henry Hexmoor 1 1
  • 2. REGISTER TRANSFER AND MICROOPERATIONS • Register Transfer Language • Register Transfer • Bus and Memory Transfers • Arithmetic Microoperations • Logic Microoperations • Shift Microoperations • Arithmetic Logic Shift Unit Henry Hexmoor 2
  • 3. SIMPLE DIGITAL SYSTEMS • Combinational and sequential circuits can be used to create simple digital systems. • These are the low-level building blocks of a digital computer. • Simple digital systems are frequently characterized in terms of – the registers they contain, and – the operations that they perform. • Typically, – What operations are performed on the data in the registers – What information is passed between registers Henry Hexmoor 3
  • 4. Register Transfer Language MICROOPERATIONS (1) • The operations on the data in registers are called microoperations. • The functions built into registers are examples of microoperations – Shift – Load – Clear – Increment – … Henry Hexmoor 4
  • 5. Register Transfer Language MICROOPERATION (2) An elementary operation performed (during one clock pulse), on the information stored in one or more registers Registers ALU (R) (f) 1 clock cycle R ← f(R, R) f: shift, load, clear, increment, add, subtract, complement, Henry Hexmoor and, or, xor, … 5
  • 6. Register Transfer Language ORGANIZATION OF A DIGITAL SYSTEM • Definition of the (internal) organization of a computer - 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 (to perform the functions) Henry Hexmoor 6
  • 7. Register Transfer Language REGISTER TRANSFER LEVEL • Viewing a computer, or any digital system, in this way is called the register transfer level • This is because we’re focusing on – The system’s registers – The data transformations in them, and – The data transfers between them. Henry Hexmoor 7
  • 8. Register Transfer Language REGISTER TRANSFER LANGUAGE • Rather than specifying a digital system in words, a specific notation is used, register transfer language • For any function of the computer, the register transfer language can be used to describe 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. Henry Hexmoor 8
  • 9. Register Transfer Language DESIGNATION OF REGISTERS • Registers are designated by capital letters, sometimes followed by numbers (e.g., A, R13, IR) • Often the names indicate function: – MAR - memory address register – PC - program counter – IR - instruction register • Registers and their contents can be viewed and represented in various ways – A register can be viewed as a single entity: MAR – Registers may also be represented showing the bits of data they contain Henry Hexmoor 9
  • 10. Register Transfer Language DESIGNATION OF REGISTERS • Designation of a register - a register - portion of a register - a bit of a register • Common ways of drawing the block diagram of a register Register Showing individual bits R1 7 6 5 4 3 2 1 0 15 0 15 8 7 0 R2 PC(H) PC(L) Numbering of bits Subfields Henry Hexmoor 10
  • 11. Register Transfer REGISTER TRANSFER • Copying the contents of one register to another is a register transfer • A register transfer is indicated as R2 ← R1 – In this case the contents of register R1 are copied (loaded) into register R2 – A simultaneous transfer of all bits from the source R1 to the destination register R2, during one clock pulse – Note that this is a non-destructive; i.e. the contents of R1 are not altered by copying (loading) them to R2 Henry Hexmoor 11
  • 12. Register Transfer REGISTER TRANSFER • A register transfer such as R3 ← R5 Implies that the digital system has – the data lines from the source register (R5) to the destination register (R3) – Parallel load in the destination register (R3) – Control lines to perform the action Henry Hexmoor 12
  • 13. Register Transfer CONTROL FUNCTIONS • Often actions need to only occur if a certain condition is true • This is similar to an “if” statement in a programming language • In digital systems, this is often done via a control signal, called a control function – If the signal is 1, the action takes place • This is represented as: P: R2 ← R1 Which means “if P = 1, then load the contents of register R1 into register R2”, i.e., if (P = 1) then (R2 ← R1) Henry Hexmoor 13
  • 14. Register Transfer HARDWARE IMPLEMENTATION OF CONTROLLED TRANSFERS Implementation of controlled transfer P: R2 ← R1 Block diagram Control P Load R2 Clock Circuit n R1 Timing diagram t t+1 Clock Load Transfer occurs here • The same clock controls the circuits that generate the control function and the destination register • Registers are assumed to use positive-edge-triggered flip-flops Henry Hexmoor 14
  • 15. Register Transfer SIMULTANEOUS OPERATIONS • If two or more operations are to occur simultaneously, they are separated with commas P: R3 ← R5, MAR ← IR • Here, if the control function P = 1, load the contents of R5 into R3, and at the same time (clock), load the contents of register IR into register MAR Henry Hexmoor 15
  • 16. Register Transfer BASIC SYMBOLS FOR REGISTER TRANSFERS Symbols Description Examples Capital letters Denotes a register MAR, R2 & 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 Henry Hexmoor 16
  • 17. Register Transfer CONNECTING REGISTRS • In a digital system with many registers, it is impractical to have data and control lines to directly allow each register to be loaded with the contents of every possible other registers • To completely connect n registers  n(n-1) lines • O(n2) cost – This is not a realistic approach to use in a large digital system • Instead, take a different approach • Have one centralized set of circuits for data transfer – the bus • Have control circuits to select which register is the source, and which is the destination Henry Hexmoor 17
  • 18. Bus and Memory Transfers BUS AND BUS 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 A Register B Register C Register D Bus lines Register A Register B Register C Register D 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 B1 C1 D 1 B2 C2 D 2 B3 C3 D 3 B4 C 4 D 4 0 4 x1 0 4 x1 0 4 x1 0 4 x1 MUX MUX MUX MUX x select y 4-line bus Henry Hexmoor 18
  • 19. Bus and Memory Transfers TRANSFER FROM BUS TO A DESTINATION REGISTER Bus lines Load Reg. R0 Reg. R1 Reg. R2 Reg. R3 D 0 D1 D2 D 3 z E (enable) Select 2x4 w Decoder Three-State Bus Buffers Normal input A Output Y=A if C=1 High-impedence if C=0 Control input C Bus line with three-state buffers Bus line for bit 0 A0 B0 C0 D0 S0 0 Select 1 S1 2 Enable 3 Henry Hexmoor 19
  • 20. Bus and Memory Transfers BUS TRANSFER IN RTL • Depending on whether the bus is to be mentioned explicitly or not, register transfer can be indicated as either R2 ← R1 or BUS ← R1, R2 ← BUS • In the former case the bus is implicit, but in the latter, it is explicitly indicated Henry Hexmoor 20
  • 21. Bus and Memory Transfers MEMORY (RAM) • Memory (RAM) can be thought as a sequential circuits containing some number of registers • These registers hold the words of memory • Each of the r registers is indicated by an address • These addresses range from 0 to r-1 • Each register (word) can hold n bits of data • Assume the RAM contains r = 2k words. It needs the following – n data input lines data input lines – n data output lines n – k address lines – A Read control line address lines – A Write control line k RAM Read unit Write n data output lines Henry Hexmoor 21
  • 22. Bus and Memory Transfers MEMORY TRANSFER • Collectively, the memory is viewed at the register level as a device, M. • Since it contains multiple locations, we must specify which address in memory we will be using • This is done by indexing memory references • Memory is usually accessed in computer systems by putting the desired address in a special register, the Memory Address Register (MAR, or AR) • When memory is accessed, the contents of the MAR get sent to the memory unit’s address lines M Memory Read AR unit Write Data out Data in Henry Hexmoor 22
  • 23. Bus and Memory Transfers MEMORY READ • To read a value from a location in memory and load it into a register, the register transfer language notation looks like this: R1 ← M[MAR] • This causes the following to occur – The contents of the MAR get sent to the memory address lines – A Read (= 1) gets sent to the memory unit – The contents of the specified address are put on the memory’s output data lines – These get sent over the bus to be loaded into register R1 Henry Hexmoor 23
  • 24. Bus and Memory Transfers MEMORY WRITE • To write a value from a register to a location in memory looks like this in register transfer language: M[MAR] ← R1 • This causes the following to occur – The contents of the MAR get sent to the memory address lines – A Write (= 1) gets sent to the memory unit – The values in register R1 get sent over the bus to the data input lines of the memory – The values get loaded into the specified address in the memory Henry Hexmoor 24
  • 25. Bus and Memory Transfers SUMMARY OF R. TRANSFER MICROOPERATIONS 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 ← ABUS transfer 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 Henry Hexmoor 25
  • 26. Arithmetic Microoperations MICROOPERATIONS • Computer system microoperations are of four types: - Register transfer microoperations - Arithmetic microoperations - Logic microoperations - Shift microoperations Henry Hexmoor 26
  • 27. Arithmetic Microoperations ARITHMETIC MICROOPERATIONS • The basic arithmetic microoperations are – Addition – Subtraction – Increment – Decrement • The additional arithmetic microoperations are – Add with carry – Subtract with borrow – Transfer/Load – etc. … Summary of Typical Arithmetic Micro-Operations R3 ← R1 + R2 Contents of R1 plus R2 transferred to R3 R3 ← R1 - R2 Contents of R1 minus R2 transferred to R3 R2 ← R2’ Complement the contents of R2 R2 ← R2’+ 1 2's complement the contents of R2 (negate) R3 ← R1 + R2’+ 1 subtraction R1 ← R1 + 1 Increment R1 ← R1 - 1 Decrement Henry Hexmoor 27
  • 28. Arithmetic Microoperations BINARY ADDER / SUBTRACTOR / INCREMENTER B3 A3 B2 A2 B1 A1 B0 A0 Binary Adder FA C3 FA C2 FA C1 FA C0 C4 S3 S2 S1 S0 Binary Adder-Subtractor B3 A3 B2 A2 B1 A1 B0 A0 M C3 C2 C1 C0 FA FA FA FA C4 S3 S2 S1 S0 Binary Incrementer A3 A2 A1 A0 1 x y x y x y x y HA HA HA HA C S C S C S C S Henry Hexmoor C4 S3 S2 S1 S0 28
  • 29. Arithmetic Microoperations ARITHMETIC CIRCUIT Cin S1 S0 A0 X0 C0 S1 D0 S0 FA B0 0 4x1 Y0 C1 1 MUX 2 3 A1 X1 C1 S1 FA D1 S0 B1 0 4x1 Y1 C2 1 MUX 2 3 A2 X2 C2 S1 FA D2 S0 B2 0 4x1 Y2 C3 1 MUX 2 3 A3 X3 C3 S1 D3 S0 FA B3 0 4x1 Y3 C4 1 MUX 2 3 Cout 0 1 S1 S0 Cin Y Output Microoperation 0 0 0 B D=A+B Add 0 0 1 B D=A+B+1 Add with carry 0 1 0 B’ D = A + B’ Subtract with borrow 0 1 1 B’ D = A + B’+ 1 Subtract 1 0 0 0 D=A Transfer A 1 0 1 0 D=A+1 Increment A 1 1 0 1 D=A-1 Decrement A Henry Hexmoor 1 1 1 1 D=A Transfer A 29
  • 30. Logic Microoperations LOGIC MICROOPERATIONS • Specify binary operations on the strings of bits in registers – Logic microoperations are bit-wise operations, i.e., they work on the individual bits of data – useful for bit manipulations on binary data – useful for making logical decisions based on the bit value • There are, in principle, 16 different logic functions that can be defined over two binary input variables A B F0 F1 F2 … F13 F14 F15 0 0 0 0 0 … 1 1 1 0 1 0 0 0 … 1 1 1 1 0 0 0 1 … 0 1 1 1 1 0 1 0 … 1 0 1 • However, most systems only implement four of these – AND (∧), OR (∨), XOR (⊕), Complement/NOT • The others can be created from combination of these Henry Hexmoor 30
  • 31. Logic Microoperations LIST OF LOGIC MICROOPERATIONS • List of Logic Microoperations - 16 different logic operations with 2 binary vars. n - n binary vars → 2 2 functions • Truth tables for 16 functions of 2 variables and the corresponding 16 logic micro-operations x 0011 Boolean Micro- Name y 0101 Function Operations 0000 F0 = 0 F←0 Clear 0001 F1 = xy F← A∧ B AND 0010 F2 = xy' F ← A ∧ B’ 0011 F3 = x F←A Transfer A 0100 F4 = x'y F ← A’∧ B 0101 F5 = y F←B Transfer B 0110 F6 = x ⊕ y F← A⊕ B Exclusive-OR 0111 F7 = x + y F← A∨ B OR 1000 F8 = (x + y)' F ← (A ∨ B)’ NOR 1001 F9 = (x ⊕ y)' F ← (A ⊕ B)’ Exclusive-NOR 1010 F10 = y' F ← B’ Complement B 1011 F11 = x + y' F← A∨ B 1100 F12 = x' F ← A’ Complement A 1101 F13 = x' + y F ← A’∨ B 1110 F14 = (xy)' F ← (A ∧ B)’ NAND 1111 F15 = 1 F ← all 1's Set to all 1's Henry Hexmoor 31
  • 32. Logic Microoperations HARDWARE IMPLEMENTATION OF LOGIC MICROOPERATIONS Ai 0 Bi 1 4X1 Fi MUX 2 3 Select S1 S0 Function table S1 S0 Output µ-operation 0 0 F=A∧ B AND 0 1 F=A∨ B OR 1 0 F=A⊕ B XOR 1 1 F = A’ Complement Henry Hexmoor 32
  • 33. Logic Microoperations APPLICATIONS OF LOGIC MICROOPERATIONS • Logic microoperations can be used to manipulate individual bits or a portions of a word in a register • Consider the data in a register A. In another register, B, is bit data that will be used to modify the contents of A – Selective-set A← A+B – Selective-complement A← A⊕ B – Selective-clear A← A • B’ – Mask (Delete) A← A•B – Clear A← A⊕ B – Insert A← (A • B) + C – Compare A← A⊕ B – ... Henry Hexmoor 33
  • 34. Logic Microoperations SELECTIVE SET • In a selective set operation, the bit pattern in B is used to set certain bits in A 1100 At 1010 B 1110 At+1 (A ← A + B) • If a bit in B is set to 1, that same position in A gets set to 1, otherwise that bit in A keeps its previous value Henry Hexmoor 34
  • 35. Logic Microoperations SELECTIVE COMPLEMENT • In a selective complement operation, the bit pattern in B is used to complement certain bits in A 1100 At 1010 B 0110 At+1 (A ← A ⊕ B) • If a bit in B is set to 1, that same position in A gets complemented from its original value, otherwise it is unchanged Henry Hexmoor 35
  • 36. Logic Microoperations SELECTIVE CLEAR • In a selective clear operation, the bit pattern in B is used to clear certain bits in A 1100 At 1010 B 0100 At+1 (A ← A ⋅ B’) • If a bit in B is set to 1, that same position in A gets set to 0, otherwise it is unchanged Henry Hexmoor 36
  • 37. Logic Microoperations MASK OPERATION • In a mask operation, the bit pattern in B is used to clear certain bits in A 1100 At 1010 B 1000 At+1 (A ← A ⋅ B) • If a bit in B is set to 0, that same position in A gets set to 0, otherwise it is unchanged Henry Hexmoor 37
  • 38. Logic Microoperations CLEAR OPERATION • In a clear operation, if the bits in the same position in A and B are the same, they are cleared in A, otherwise they are set in A 1100 At 1010 B 0110 At+1 (A ← A ⊕ B) Henry Hexmoor 38
  • 39. Logic Microoperations INSERT OPERATION • An insert operation is used to introduce a specific bit pattern into A register, leaving the other bit positions unchanged • This is done as – A mask operation to clear the desired bit positions, followed by – An OR operation to introduce the new bits into the desired positions – Example » Suppose you wanted to introduce 1010 into the low order four bits of A: 1101 1000 1011 0001 A (Original) 1101 1000 1011 1010 A (Desired) » 1101 1000 1011 0001 A (Original) 1111 1111 1111 0000 Mask 1101 1000 1011 0000 A (Intermediate) 0000 0000 0000 1010 Added bits 1101 1000 1011 1010 A (Desired) Henry Hexmoor 39
  • 40. Shift Microoperations LOGICAL SHIFT • In a logical shift the serial input to the shift is a 0. • A right logical shift operation: 0 • A left logical shift operation: 0 • In a Register Transfer Language, the following notation is used – shl for a logical shift left – shr for a logical shift right – Examples: » R2 ← shr R2 Henry Hexmoor R3 ← shl R3 » 40
  • 41. Shift Microoperations CIRCULAR SHIFT • In a circular shift the serial input is the bit that is shifted out of the other end of the register. • A right circular shift operation: • A left circular shift operation: • In a RTL, the following notation is used – cil for a circular shift left – cir for a circular shift right – Examples: » R2 ← cir R2 Henry Hexmoor R3 ← cil R3 » 41
  • 42. Logical versus Arithmetic Shift • A logical shift fills the newly created bit position with zero: • An arithmetic shift fills the newly created bit position with a copy of the number’s sign bit: Henry Hexmoor 42
  • 43. Shift Microoperations ARITHMETIC SHIFT • An left arithmetic shift operation must be checked for the overflow 0 sign bit Before the shift, if the leftmost two V bits differ, the shift will result in an overflow • In a RTL, the following notation is used – ashl for an arithmetic shift left – ashr for an arithmetic shift right – Examples: » R2 ← ashr R2 » R3 ← ashl R3 Henry Hexmoor 43
  • 44. Shift Microoperations HARDWARE IMPLEMENTATION OF SHIFT MICROOPERATIONS 0 for shift right (down) Serial Select 1 for shift left (up) input (IR) S MUX H0 0 1 A0 A1 S MUX H1 0 A2 1 A3 S MUX H2 0 1 S MUX H3 0 1 Serial input (IL) Henry Hexmoor 44
  • 45. Shift Microoperations ARITHMETIC LOGIC SHIFT UNIT S3 S2 Ci S1 S0 Arithmetic D i Circuit Select Ci+1 0 4x1 Fi 1 MUX 2 3 Ei Logic Bi Ai Circuit Ai-1 shr Ai+1 shl S3 S2 S1 S0 Cin Operation Function 0 0 0 0 0 F=A Transfer A 0 0 0 0 1 F=A+1 Increment A 0 0 0 1 0 F=A+B Addition 0 0 0 1 1 F=A+B+1 Add with carry 0 0 1 0 0 F = A + B’ Subtract with borrow 0 0 1 0 1 F = A + B’+ 1 Subtraction 0 0 1 1 0 F=A-1 Decrement A 0 0 1 1 1 F=A TransferA 0 1 0 0 X F=A∧ B AND 0 1 0 1 X F=A∨B OR 0 1 1 0 X F=A⊕ B XOR 0 1 1 1 X F = A’ Complement A 1 0 X X X F = shr A Shift right A into F 1 1 Henry Hexmoor X X X F = shl A Shift left A into F 45
  • 46. HW 7 1. A Switch-tail ring counter (John counter) uses the complement of the serial output of a right shift register as its serial input. Starting from an initial state 0000, list the sequence of states after each shift until the register returns to 0000. (Q7-9a) 2. Use D-type flip flops and gates to design a counter with the following repeated binary sequence: 0, 1, 3, 2, 4, 6. (Q7-18) Henry Hexmoor 46