Kỹ thuật viễn thông - Chapter 14: Redundant arithmetic
Signed Binary Digit (SBD) Addition/Subtraction
• Y
= Y+ - Y-, is a signed digit number, where Y+
and Y- are from the digit set {0, 1, , a}.
• A signed digit number is thus subtraction of 2
unsigned conventional numbers.
• Signed addition is given by:
S
= X + Y = X + Y+ - Y-,
Þ S1
= X + Y+,
S
= S1 - Y-
• Digit serial SBD adders can be derived by folding
the digit parallel adders in both lsd-first and msdfirst modes.
21 trang |
Chia sẻ: huyhoang44 | Lượt xem: 696 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Kỹ thuật viễn thông - Chapter 14: Redundant arithmetic, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Chapter 14: Redundant
Arithmetic
Keshab K. Parhi
Chap. 14 2
• A non-redundant radix-r number has digits from
the set{0, 1, , r - 1} and all numbers can be
represented in a unique way.
• A radix-r redundant signed-digit number system
is based on digit set S º {-b, -(b - 1), , -1, 0, 1,
,a}, where, 1 £ b, a £ r - 1.
• The digit set S contains more than r values Þ
multiple representations for any number in signed
digit format. Hence, the name redundant.
• A symmetric signed digit has a = b.
• Carry-free addition is an attractive property of
redundant signed-digit numbers. This allows most
significant digit (msd) first redundant arithmetic,
also called on-line arithmetic.
Chap. 14 3
Redundant Number Representations
• A symmetric signed-digit representation uses the digit set
D = {-a, , -1, 0, 1, , a}, where r is the radix and a the
largest digit in the set. A number in this representation is
written as :
X = xW-1.xW-2.xW-3x0 = å xW-1-iri
The sign of the number is given by the sign of the most
significant non-zero digit.
> 1> r - 1Over-redundant
= 1= r – 1Maximally redundant
> ½ and < 1= ér/2ùMinimally redundant
> ½³ ér/2ùRedundant
= ½= (r – 1)/2Complete but non-redundant
< ½< (r – 1)/2Incomplete
Redundancy Factor raDigit Set D
Chap. 14 4
Hybrid Radix-2 Addition
S = X + Y
where, X = xW-1.xW-2xW-3x0 , Y = yW-1.yW-2yW-3y0. The
addition is carried out in two steps :
1. The 1st step is carried out in parallel for all the bit positions.
An intermediate sum pi = xi + yi is computed, which lies in the
range {1, 0, 1, 2}. The addition is expressed as:
xi + yi = 2ti + ui,
where ti is the transfer digit and has value 0 or 1, and is
denoted as ti+; ui is the interim sum and has value either 1 or
0 and is denoted as -ui-. t-1 is assigned the value of 0.
2. The sum digits si are formed as follows:
si = ti-1+ - ui-
Chap. 14 5
Eight-digit hybrid radix-2 adder
si+ - si-{1, 0, 1}si = ui + ti-1
ti+{0, 1}ti
-ui-{1, 0}ui
2ti + ui{1, 0, 1, 2}pi = xi + yi
yi+{0, 1}yi
xi+ - xi-{1, 0, 1}xi
Binary CodeRadix 2 Digit SetDigit
Chap. 14 6
LSD-first adder
MSD-first adder
Digit-serial adder formed by folding
Chap. 14 7
Hybrid Radix-2 Subtraction
S = X - Y
where, X = xW-1.xW-2xW-3x0 , Y = yW-1.yW-2yW-3y0. The
addition is carried out in two steps :
1. The 1st step is carried out in parallel for all the bit positions.
An intermediate difference pi = xi - yi is computed, which lies
in the range {2, 1, 0, 1}. The addition is expressed as:
xi - yi = 2ti + ui,
where ti is the transfer digit and has value 1 or 0, and is
denoted as -ti-; ui is the interim sum and has value either 0
or 1 and is denoted as ui+. t-1 is assigned the value of 0.
2. The sum digits si are formed as follows:
si = -ti-1- + ui+
Chap. 14 8
Eight-digit hybrid radix-2 subtractor
si+ - si-{1, 0, 1}si = ui + ti-1
-ti-{1, 0}ti
ui+{0, 1}ui
2ti + ui{2, 1, 0, 1}pi = xi – yi
yi-{0, 1}yi
xi+ - xi-{1, 0, 1}xi
Binary CodeRadix 2 Digit SetDigit
Chap. 14 9
Hybrid radix-2 adder/subtractor (A/S = 1 for addition and
A/S = 0 for subtraction)
•This is possible if one of the operands is in radix-r complement
representation. Hybrid subtraction is carried out by hybrid
addition where the 2’s complement of the subtrahend is added
to the minuend and the carry-out from the most significant
position is discarded.
Hybrid Radix-2 Addition/Subtraction
Chap. 14 10
Signed Binary Digit (SBD) Addition/Subtraction
• Y = Y+ - Y-, is a signed digit number, where Y+
and Y- are from the digit set {0, 1, , a}.
• A signed digit number is thus subtraction of 2
unsigned conventional numbers.
• Signed addition is given by:
S = X + Y = X + Y+ - Y-,
Þ S1 = X + Y+,
S = S1 - Y-
• Digit serial SBD adders can be derived by folding
the digit parallel adders in both lsd-first and msd-
first modes.
• LSD-first adders have zero latency and msd-first
adders have latency of 2 clock cycles.
Chap. 14 11
(a) Signed binary digit adder/subtractor
(b) Definition of the switching box
Chap. 14 12
Digit serial SBD redundant adders. (a) LSD-first adder
(b) msd-first adder
Chap. 14 13
Maximally Redundant Hybrid Radix-4 Addition
(MRHY4A)
• Maximally redundant numbers are based on digit set D.
S = X - Y4
• The first step computes:
xi + yi = 4ti + ui
Replacing the respective binary codes from the table the
following is obtained :
(2xi+2 - 2xi-2 + 2yi+2) + xi+ - xi- + yi+ = 4ti+ + 2ui+2 - 2ui-2 - ui-
A MRHY4A cell consisting of two PPM adders is used to
compute the above.
• Step 2 computes computes si = ti-1 + ui. Replacing si, ui, and ti-1
by corresponding binary codes leads to si+2 = ui+2, si-2 = ui-2,
si+=ti-1+ and si- = ui-.
Chap. 14 14
2si+2 - 2si-2 + si+ - si-{3, 2, 1, 0, 1, 2, 3}si = ui + ti-1
ti+{0, 1}ti
2ui+2 – 2ui-2 - ui-{3, 2, 1, 0, 1, 2}ui
4ti + ui{3, 2, 1, 0, 1, 2, 3, 4, 5, 6}pi = xi + yi
2yi+2 + yi+{0, 1, 2, 3}yi
2xi+2 – 2xi-2 + xi+ - xi-{3, 2, 1, 0, 1, 2, 3}xi
Binary CodeRadix 4 Digit SetDigit
Digit sets involved in Maximally Redundant
Hybrid Radix-4 Addition
Chap. 14 15
MRHY4A adder cell
Four-digit MRHY4A
Chap. 14 16
Minimally Redundant Hybrid Radix-4 Addition
(mrHY4A)
• Minimally redundant numbers are based on digit set D.
S = X - Y4
• The first step computes:
xi + yi = 4ti + ui
Replacing the respective binary codes from the table the
following is obtained :
(- 2xi-2 + 2yi+2) + (xi+ + xi++ + yi+) = 4ti+ - 2ui-2 + ui+
A mrHY4A cell consisting of one PPM adder and a full adder
is used to compute the above.
• Step 2 computes computes si = ti-1 + ui. Replacing si, ui, and ti-1
by corresponding binary codes leads to si-2 = ui-2, si++ = ti-1+
and si+ = ui+.
Chap. 14 17
2si-2 + si+ + si++{2, 1, 0, 1, 2}si = ui + ti-1
ti+{0, 1}ti
2ui+2 – 2ui-2 - ui-{2, 1, 0, 1}ui
4ti + ui{2, 1, 0, 1, 2, 3, 4, 5}pi = xi + yi
2yi+2 + yi+{0, 1, 2, 3}yi
– 2xi-2 + xi+ + xi++{2, 1, 0, 1, 2}xi
Binary CodeRadix 4 Digit SetDigit
Digit sets involved in Minimally Redundant
Hybrid Radix-4 Addition
Chap. 14 18
mrHY4A adder cell
Four-digit mrHY4A
Chap. 14 19
Non-redundant to Redundant Conversion
• Radix-2 Representation : A non-redundant number
X = x3.x2.x1.x0 can be converted to a redundant
number Y = y3.y2.y1.y0, where each digit yi is
encoded as yi+ and yi- as shown below:
Chap. 14 20
• Radix-4 representation :
– radix-4 maximally redundant number: X is a
radix-4 complement number, whose digits xi are encoded
using 2 wires as xi = 2xi+2 + xi+. Its corresponding
maximally redundant number Y is encoded using
yi = 2yi+2 - 2yi-2 + yi+ - yi-. The sign digit x3 can take values
-3, -2, -1 or 0, and is encoded using x3 = -2x3-2 - x3-.
Chap. 14 21
– radix-4 minimally redundant number: X is a radix-
4 complement number, whose digits xi are encoded using
2 wires as xi = 2xi+2 + xi+. Its corresponding minimally
redundant number Y is encoded using yi = -2yi-2 + yi+ + yi++.
To convert radix-r number x to redundant number y,
the digits in the range [a, r - 1] are encoded using a
transfer digit 1 and a corresponding digit xi - r where xi
is the ith digit of x. Thus,
2xi+2 + xi+ = 4xi+2 - 2xi+2 + xi+
= yi+1++ - 2yi-2 + yi+
Các file đính kèm theo tài liệu này:
- chap_chap14_9543_5263.pdf