Computer Architecture: Arithmetic Algorithms and Memory Address Mapping

 
Computer Architecture
 
Part V
Arithmetic Algorithms and Memory Address Map
 
Department of Computer Science, Faculty of Science, Chiang Mai University
 
Outline
 
Signed-Magnitude Addition and Subtraction
Multiply Operation
Memory Address Map for Microprocessor
 
204231: Computer Organization and Architecture
 
2
 
Hardware for Signed-Magnitude
Addition and Subtraction
 
It consists of register A and B and sign flip-flop A
s
and B
s
.
Subtraction is done by adding A to the 2’s
complement of B.
The output carry is transferred to flip-flop E,
where it can be checked to determine the
relative magnitudes of the two numbers.
The add-overflow flip-flop AVF holds the
overflow bit when A and B are added.
 
204231: Computer Organization and Architecture
 
3
 
Hardware for Signed-Magnitude
Addition and Subtraction
 
The addition of A plus B is done through the
parallel adder.
The S (sum) output of the adder is applied to the
input of the A register.
The complementer provides and output of B or
the complement of B depending on the state of
the mode control M.
 
204231: Computer Organization and Architecture
 
4
 
Hardware for Signed-Magnitude
Addition and Subtraction
 
When M = 0, the output of B is transferred to
the adder, the input carry is 0, and the output of
the adder is equal to the sum A + B.
When M = 1, the 1’s complement of B is applied
to the adder, the input carry is 1, and output
S = A + B + 1 = A – B.
 
204231: Computer Organization and Architecture
 
5
 
Hardware for Signed-Magnitude
Addition and Subtraction
 
204231: Computer Organization and Architecture
 
6
 
Hardware Implementation
 
A and B are registers.
A
S
 and B
S
 are sign flip-flops.
E is an output carry flip-flop.
EA is a register that combines E and A.
AVF is an add-overflow flip-flop.
S is sum.
M is mode control.
M = 0, A + B + 0 = A + B
M = 1, A + B̅ + 1 = A – B
 
204231: Computer Organization and Architecture
 
7
 
Multiplication Algorithm
 
204231: Computer Organization and Architecture
 
8
 
Hardware for Multiply Operation
 
The multiplier is stored in the Q register and its
sign in Q
s
.
The sequence counter SC is initially set to a
number equal to the number of bits in the
multiplier.
The counter is decremented by 1 after forming
each partial product.
When the content of the counter reaches zero,
the product is formed and the process stops.
 
204231: Computer Organization and Architecture
 
9
 
Hardware for Multiply Operation
 
Initially, the multiplicand is in register B and
the multiplier in Q.
The sum of A and B forms partial product
which is transferred to the EA register.
Both partial product and multiplier are shifted
to the right.
The 0 is shifted into E.
 
204231: Computer Organization and Architecture
 
10
 
Hardware for Multiply Operation
 
After the shift, one bit of the partial product is
shifted into Q, pushing the multiplier bits one
position to the right.
In this manner, the rightmost flip-flop in
register Q, designated by Q
n
, will hold the bit
of the multiplier, which must be inspected
next.
 
204231: Computer Organization and Architecture
 
11
 
Hardware for Multiply Operation
 
204231: Computer Organization and Architecture
 
12
 
Numerical Example for Binary Multiplier
 
204231: Computer Organization and Architecture
 
13
 
Main Memory
 
RAM is used for storing the bulk of the
programs and data that are subject to change.
ROM is used for storing programs that are
permanently resident in the computer and for
tables of constants that do not change in
value once the production of the computer is
completed.
 
204231: Computer Organization and Architecture
 
14
 
Typical RAM chip
 
The capacity of the memory is 128 words of
eight bits (one byte) per word.
This requires a 7-bit address and an 8-bit
bidirectional data bus.
The read and write inputs specify the memory
operation and the two chips select (CS)
control inputs are for enabling the chip only
when it is selected by the microprocessor.
 
204231: Computer Organization and Architecture
 
15
 
Typical RAM chip
 
The function table listed in slide number 31
specifies the operation of the RAM chip.
The unit is in operation only when CS1 = 1 and
CS2 = 0.
If the chip select inputs are not enabled, or if
they are enables but the read or write inputs
are not enabled, the memory is inhibited and
its data bus is in a high-impedance state.
 
204231: Computer Organization and Architecture
 
16
 
Typical RAM chip
 
204231: Computer Organization and Architecture
 
17
 
Typical ROM chip
 
204231: Computer Organization and Architecture
 
18
 
Memory Address Map for Microprocessor
 
The component column specifies whether a
RAM or a ROM chip is used.
The hexadecimal address column assigns a
range of hexadecimal equivalent addresses for
each chip.
The small x’s under the address bus lines
designate those lines that must be connected
to the address inputs in each chip.
 
204231: Computer Organization and Architecture
 
19
 
Memory Address Map for Microprocessor
 
The RAM chips have 128 bytes and need
seven address line.
The ROM chip has 512 bytes and needs 9
address line.
We choose bus lines 8 and 9 to represent four
distinct binary combinations.
Note that any other  pair of unused bus lines
can be chosen for this purpose.
 
204231: Computer Organization and Architecture
 
20
 
Memory Address Map for Microprocessor
 
The distinction between a RAM and ROM
address is done with another bus line.
Here we choose line 10 for this purpose.
The equivalent hexadecimal address for each
chip is obtained from the information under
the address bus assignment.
 
204231: Computer Organization and Architecture
 
21
 
Memory Address Map for Microprocessor
 
The address bus lines are subdivided into
groups of four bits each so that each group
can be represented with a hexadecimal digit.
The x’s represent a binary number that can
range from an all-0’s to an all-1’s value.
 
204231: Computer Organization and Architecture
 
22
 
Memory Address Map for Microprocessor
 
204231: Computer Organization and Architecture
 
23
 
Reference
 
M. Moris Mano, 
Computer System
Architecture
, 3
rd
 ed. NJ: Prentice Hall, 1992.
 
204231: Computer Organization and Architecture
 
24
Slide Note
Embed
Share

Exploring the intricate world of computer architecture, this study delves into the realms of signed-magnitude addition and subtraction, multiplication operations, and memory address mapping for microprocessors. It uncovers the hardware components involved in these operations, such as registers, flip-flops, and parallel adders. The detailed examination showcases the process of performing arithmetic operations in a computer system and provides insights into the implementation of these algorithms.

  • Computer Architecture
  • Arithmetic Algorithms
  • Memory Mapping
  • Hardware Components
  • Multiplication Operations

Uploaded on Jul 13, 2024 | 1 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. Download presentation by click this link. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

E N D

Presentation Transcript


  1. Computer Architecture Part V Arithmetic Algorithms and Memory Address Map Department of Computer Science, Faculty of Science, Chiang Mai University

  2. Outline Signed-Magnitude Addition and Subtraction Multiply Operation Memory Address Map for Microprocessor 2 204231: Computer Organization and Architecture

  3. Hardware for Signed-Magnitude Addition and Subtraction It consists of register A and B and sign flip-flop and Bs. Subtraction is done by adding A to the 2 s complement of B. The output carry is transferred to flip-flop E, where it can be checked to determine the relative magnitudes of the two numbers. The add-overflow flip-flop AVF holds the overflow bit when A and B are added. 3 204231: Computer Organization and Architecture

  4. Hardware for Signed-Magnitude Addition and Subtraction The addition of A plus B is done through the parallel adder. The S (sum) output of the adder is applied to the input of the A register. The complementer provides and output of B or the complement of B depending on the state of the mode control M. 4 204231: Computer Organization and Architecture

  5. Hardware for Signed-Magnitude Addition and Subtraction When M = 0, the output of B is transferred to the adder, the input carry is 0, and the output of the adder is equal to the sum A + B. When M = 1, the 1 s complement of B is applied to the adder, the input carry is 1, and output S = A + B + 1 = A B. 5 204231: Computer Organization and Architecture

  6. Hardware for Signed-Magnitude Addition and Subtraction 6 204231: Computer Organization and Architecture

  7. Hardware Implementation A and B are registers. ASand BSare sign flip-flops. E is an output carry flip-flop. EA is a register that combines E and A. AVF is an add-overflow flip-flop. S is sum. M is mode control. M = 0, A + B + 0 = A + B M = 1, A + B + 1 = A B 7 204231: Computer Organization and Architecture

  8. Multiplication Algorithm 8 204231: Computer Organization and Architecture

  9. Hardware for Multiply Operation The multiplier is stored in the Q register and its sign in Qs. The sequence counter SC is initially set to a number equal to the number of bits in the multiplier. The counter is decremented by 1 after forming each partial product. When the content of the counter reaches zero, the product is formed and the process stops. 9 204231: Computer Organization and Architecture

  10. Hardware for Multiply Operation Initially, the multiplicand is in register B and the multiplier in Q. The sum of A and B forms partial product which is transferred to the EA register. Both partial product and multiplier are shifted to the right. The 0 is shifted into E. 10 204231: Computer Organization and Architecture

  11. Hardware for Multiply Operation After the shift, one bit of the partial product is shifted into Q, pushing the multiplier bits one position to the right. In this manner, the rightmost flip-flop in register Q, designated by Qn, will hold the bit of the multiplier, which must be inspected next. 11 204231: Computer Organization and Architecture

  12. Hardware for Multiply Operation 12 204231: Computer Organization and Architecture

  13. Numerical Example for Binary Multiplier 13 204231: Computer Organization and Architecture

  14. Main Memory RAM is used for storing the bulk of the programs and data that are subject to change. ROM is used for storing programs that are permanently resident in the computer and for tables of constants that do not change in value once the production of the computer is completed. 14 204231: Computer Organization and Architecture

  15. Typical RAM chip The capacity of the memory is 128 words of eight bits (one byte) per word. This requires a 7-bit address and an 8-bit bidirectional data bus. The read and write inputs specify the memory operation and the two chips select (CS) control inputs are for enabling the chip only when it is selected by the microprocessor. 15 204231: Computer Organization and Architecture

  16. Typical RAM chip The function table listed in slide number 31 specifies the operation of the RAM chip. The unit is in operation only when CS1 = 1 and CS2 = 0. If the chip select inputs are not enabled, or if they are enables but the read or write inputs are not enabled, the memory is inhibited and its data bus is in a high-impedance state. 16 204231: Computer Organization and Architecture

  17. Typical RAM chip 17 204231: Computer Organization and Architecture

  18. Typical ROM chip 18 204231: Computer Organization and Architecture

  19. Memory Address Map for Microprocessor The component column specifies whether a RAM or a ROM chip is used. The hexadecimal address column assigns a range of hexadecimal equivalent addresses for each chip. The small x s under the address bus lines designate those lines that must be connected to the address inputs in each chip. 19 204231: Computer Organization and Architecture

  20. Memory Address Map for Microprocessor The RAM chips have 128 bytes and need seven address line. The ROM chip has 512 bytes and needs 9 address line. We choose bus lines 8 and 9 to represent four distinct binary combinations. Note that any other pair of unused bus lines can be chosen for this purpose. 20 204231: Computer Organization and Architecture

  21. Memory Address Map for Microprocessor The distinction between a RAM and ROM address is done with another bus line. Here we choose line 10 for this purpose. The equivalent hexadecimal address for each chip is obtained from the information under the address bus assignment. 21 204231: Computer Organization and Architecture

  22. Memory Address Map for Microprocessor The address bus lines are subdivided into groups of four bits each so that each group can be represented with a hexadecimal digit. The x s represent a binary number that can range from an all-0 s to an all-1 s value. 22 204231: Computer Organization and Architecture

  23. Memory Address Map for Microprocessor 23 204231: Computer Organization and Architecture

  24. Reference M. Moris Mano, Computer System Architecture, 3rded. NJ: Prentice Hall, 1992. 24 204231: Computer Organization and Architecture

More Related Content

giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#giItT1WQy@!-/#