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.

pdf21 trang | Chia sẻ: huyhoang44 | Lượt xem: 696 | Lượt tải: 0download
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:

  • pdfchap_chap14_9543_5263.pdf