Frameworks for the Exploration and Implementation of Generalized Carry-Free Redundant Number Systems

Jaberipur, Ghassem | 2004

549 Viewed
  1. Type of Document: Ph.D. Dissertation
  2. Language: English
  3. Document No: 39648 (19)
  4. University: Sharif University of Technology
  5. Department: Computer Engineering
  6. Advisor(s): Ghodsi, Mohammad; Parhami, Behrooz
  7. Abstract:
  8. Redundant number systems provide for carry-free arithmetic, where the result of arithmetic operations is achieved, in redundant format, without the need for latent carry propagation. However conversion of the result to a conventional nonredundant representation, always, requires carry propagation. Therefore, efficient use of redundant number systems is feasible when a series of arithmetic operations is to be performed before the need arises to obtain the result in a nonredundant representation. Redundant number systems have been used in several special purpose integrated designs (e.g., DSP applications) and also as intermediate number representation in complex arithmetic operations implemented for general purpose processors. But we have not encountered, in the literature, any general purpose application of redundant number systems in the sense that separate arithmetic operations, invoked by separate machine instructions of a general purpose executable program, accept redundantly represented operands and produce such results, in a carry-free manner or in constant time, independent of the length
    of the operands. In this research we have established the characteristics of a general purpose carry-free arithmetic environment including a suitable redundant number representation system, a general purpose processor with carry-free arithmetic instructions, and special code optimizers to convert conventional arithmetic instructions to their carry-free counterparts. But the main trust is on development of the most suitable redundant number representation, which should provide for the most efficient (in terms of speed, area, regularity, etc.) representationally closed carry-free arithmetic. We start with investigation of previous works on signed digit number systems, namely the conventional signed digit number system of, the pioneer in the field, professor Avezienis, the generalized signed digit number systems of professor Parhami, and the hybrid signed digit number systems of professors Phatak and Koren, and offer some algorithmic improvement for carry-free addition of representation paradigms of signed digit number systems. Then, we gradually build up the desired redundant encoding system by introducing the class of stored transfer representation of redundant number systems with the idea of mixing the stored carry mechanism and signed digit number systems. Next, we introduce the class of weighted bit-set (WBS) encoding of redundant number systems as a unification of the generalized signed digit, and the hybrid signed digit number systems. A WBS-encoded number, in each binary position, has a collection of zero or more posibits (positively weighted bits) and negabits (negatively weighted bits). This generalization led us to develop the extended hybrid redundant number systems including an interesting symmetric subclass not foreseen in the hybrid redundancy scheme of Phatak and Koren. With the novel concept of inverted encoding of negabits, we manage to develop efficient and regular designs for universal hybrid redundant adders, based solely on standard full/half adders, with the possibility of employing conventional carry accelerating techniques. Further generalization was fruitful, and resulted in development of the new concept of two-valued digits (twit) and the weighted twit-set (WTS) encodings. A twit may assume any two integer values, and a WTS encoding has the same structure as a WBS encoding except that it may contain any twit besides posibits and negabits. The latter is believed to be the most comprehensive encodings covering all the redundant and nonredundant positional number systems, we have encountered, including those with noncontiguous digit sets, possibly, not including zero. Then we present high level designs for representationally closed multiplication and division of some selected redundant number representations, with the encodings studied, and show advantages of our designs over some of the state of the art multiplication and division methods. Our multiplier design includes a special Booth recoder for redundant multipliers, which produces one multiple per every two binary positions of the multiplier in spite of extra redundancy bits. Floating point arithmetic is another vital topic in our investigation of the desired redundant encodings, where we show the suitability and advantages of our selected encodings. To complete our study of the desired redundant representations, we design arithmetic support functions, for the selected encodings, such as negation, binary and radix shifts, zero and sign detection, and over/underflow detection and correction.
  9. Keywords:
  10. Positional Number System ; Redundant Number System ; Hybrid Redudancy ; Signed Digits ; Redundant Arithmetic Operations

 Digital Object List

  • محتواي پايان نامه
  •   view