A High Performance Binary to BCD Converter



Similar documents
AN IMPROVED DESIGN OF REVERSIBLE BINARY TO BINARY CODED DECIMAL CONVERTER FOR BINARY CODED DECIMAL MULTIPLICATION

Implementation of Modified Booth Algorithm (Radix 4) and its Comparison with Booth Algorithm (Radix-2)

Floating Point Fused Add-Subtract and Fused Dot-Product Units

Oct: 50 8 = 6 (r = 2) 6 8 = 0 (r = 6) Writing the remainders in reverse order we get: (50) 10 = (62) 8

An Efficient RNS to Binary Converter Using the Moduli Set {2n + 1, 2n, 2n 1}

Design and FPGA Implementation of a Novel Square Root Evaluator based on Vedic Mathematics

The string of digits in the binary number system represents the quantity

Binary Number System. 16. Binary Numbers. Base 10 digits: Base 2 digits: 0 1

Correctly Rounded Floating-point Binary-to-Decimal and Decimal-to-Binary Conversion Routines in Standard ML. By Prashanth Tilleti

An Extension to DNA Based Fredkin Gate Circuits: Design of Reversible Sequential Circuits using Fredkin Gates

COMP 250 Fall 2012 lecture 2 binary representations Sept. 11, 2012

Counters and Decoders

COMBINATIONAL CIRCUITS

NEW adder cells are useful for designing larger circuits despite increase in transistor count by four per cell.

Useful Number Systems

Binary Adders: Half Adders and Full Adders

Design Methods for Binary to Decimal Converters Using Arithmetic Decompositions

Let s put together a Manual Processor

Design of Energy Efficient Low Power Full Adder using Supply Voltage Gating

Sistemas Digitais I LESI - 2º ano

A New Reversible TSG Gate and Its Application For Designing Efficient Adder Circuits

Digital Design. Assoc. Prof. Dr. Berna Örs Yalçın

NUMBER SYSTEMS. William Stallings

PROGRAMMABLE LOGIC CONTROLLERS Unit code: A/601/1625 QCF level: 4 Credit value: 15 TUTORIAL OUTCOME 2 Part 1

ECE 0142 Computer Organization. Lecture 3 Floating Point Representations

Lecture 2. Binary and Hexadecimal Numbers

Binary Division. Decimal Division. Hardware for Binary Division. Simple 16-bit Divider Circuit

To convert an arbitrary power of 2 into its English equivalent, remember the rules of exponential arithmetic:

INTRODUCTION TO DIGITAL SYSTEMS. IMPLEMENTATION: MODULES (ICs) AND NETWORKS IMPLEMENTATION OF ALGORITHMS IN HARDWARE

High Speed and Efficient 4-Tap FIR Filter Design Using Modified ETA and Multipliers

(Refer Slide Time: 00:01:16 min)

LSN 2 Number Systems. ECT 224 Digital Computer Fundamentals. Department of Engineering Technology

Multipliers. Introduction

Pavithra.S, Vaishnavi.M, Vinothini.M, Umadevi.V

High Speed Gate Level Synchronous Full Adder Designs

Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng

RN-Codings: New Insights and Some Applications

Today. Binary addition Representing negative numbers. Andrew H. Fagg: Embedded Real- Time Systems: Binary Arithmetic

Flip-Flops, Registers, Counters, and a Simple Processor

Chapter 7. Registers & Register Transfers. J.J. Shann. J. J. Shann

Design and Verification of Nine port Network Router

Design and Analysis of Parallel AES Encryption and Decryption Algorithm for Multi Processor Arrays

A New Paradigm for Synchronous State Machine Design in Verilog

3.Basic Gate Combinations

DIGITAL TECHNICS II. Dr. Bálint Pődör. Óbuda University, Microelectronics and Technology Institute. 2nd (Spring) term 2012/2013

Lecture N -1- PHYS Microcontrollers

Reconfigurable Architecture Requirements for Co-Designed Virtual Machines

This Unit: Floating Point Arithmetic. CIS 371 Computer Organization and Design. Readings. Floating Point (FP) Numbers

The BBP Algorithm for Pi

Advanced Computer Architecture-CS501. Computer Systems Design and Architecture 2.1, 2.2, 3.2

DEPARTMENT OF INFORMATION TECHNLOGY

Chapter 2 Logic Gates and Introduction to Computer Architecture

Design and Implementation of an On-Chip timing based Permutation Network for Multiprocessor system on Chip

BINARY CODED DECIMAL: B.C.D.

Lecture 8: Binary Multiplication & Division

Module-I Lecture-I Introduction to Digital VLSI Design Flow

CHAPTER 5 Round-off errors

Asynchronous counters, except for the first block, work independently from a system clock.

WEEK 8.1 Registers and Counters. ECE124 Digital Circuits and Systems Page 1

ANYTIME ANYPLACE-REMOTE MONITORING OF STUDENTS ATTENDANCE BASED ON RFID AND GSM NETWORK

RN-coding of Numbers: New Insights and Some Applications

CHAPTER 3 Boolean Algebra and Digital Logic

International Journal of Electronics and Computer Science Engineering 1482

ISSN: ISO 9001:2008 Certified International Journal of Engineering Science and Innovative Technology (IJESIT) Volume 2, Issue 3, May 2013

Number Representation

DIGITAL-TO-ANALOGUE AND ANALOGUE-TO-DIGITAL CONVERSION

Computers. Hardware. The Central Processing Unit (CPU) CMPT 125: Lecture 1: Understanding the Computer

Chapter 4 Register Transfer and Microoperations. Section 4.1 Register Transfer Language

a 11 x 1 + a 12 x a 1n x n = b 1 a 21 x 1 + a 22 x a 2n x n = b 2.

FAULT TOLERANCE FOR MULTIPROCESSOR SYSTEMS VIA TIME REDUNDANT TASK SCHEDULING

NUMBER SYSTEMS. 1.1 Introduction

Attaining EDF Task Scheduling with O(1) Time Complexity

ANALOG & DIGITAL ELECTRONICS

Contents COUNTER. Unit III- Counters

Design Verification and Test of Digital VLSI Circuits NPTEL Video Course. Module-VII Lecture-I Introduction to Digital VLSI Testing

Implementation of emulated digital CNN-UM architecture on programmable logic devices and its applications

Chapter 1: Digital Systems and Binary Numbers

Implementation and Design of AES S-Box on FPGA

A Novel Switch Mechanism for Load Balancing in Public Cloud

Modeling Sequential Elements with Verilog. Prof. Chien-Nan Liu TEL: ext: Sequential Circuit

on an system with an infinite number of processors. Calculate the speedup of

CHAPTER 5 FINITE STATE MACHINE FOR LOOKUP ENGINE

A Novel Way of Deduplication Approach for Cloud Backup Services Using Block Index Caching Technique

A Novel Low Power, High Speed 14 Transistor CMOS Full Adder Cell with 50% Improvement in Threshold Loss Problem

Optimization and Comparison of 4-Stage Inverter, 2-i/p NAND Gate, 2-i/p NOR Gate Driving Standard Load By Using Logical Effort

EE360: Digital Design I Course Syllabus

VHDL Test Bench Tutorial

3. Convert a number from one number system to another

RAM & ROM Based Digital Design. ECE 152A Winter 2012

=

A DA Serial Multiplier Technique based on 32- Tap FIR Filter for Audio Application

Reconfigurable Low Area Complexity Filter Bank Architecture for Software Defined Radio

Enhancing Production Planning (PP) Module for Manufacturing Finished Goods and Generating A Production Schedule Using SAP Application

Divide: Paper & Pencil. Computer Architecture ALU Design : Division and Floating Point. Divide algorithm. DIVIDE HARDWARE Version 1

Combinational Logic Design

Filling the consistency and reliability gap in elastic cloud an IaaS approach

Image Compression through DCT and Huffman Coding Technique

Transcription:

A High Performance Binary to BCD Converter A. Hari Priya 1 Assistant Professor, Dept. of ECE, Indur Institute of Engineering. and Technology, Siddipet, Medak, India 1 ABSTRACT: Decimal data processing applications have grown exponentially in recent years thereby increasing the need to have hardware support for decimal arithmetic. Binary to BCD conversion forms the basic building block of decimal digit multipliers. This paper presents novel high speed low power architecture for fixed bit binary to BCD conversion which is at least 28% better in terms of power-delay product than the existing designs. KEYWORDS:Decimal Arithmetic, Binary to BCD Converter I.INTRODUCTION In commercial business and internet based applications, decimal arithmetic is receiving significant importance. Decimal arithmetic is important in many applications such as banking, tax calculation, insurance, accounting and many more. Even though binary arithmetic is used widely, decimal computation is essential. The decimal arithmetic is not only required when numbers are presented for inspection by humans, but also it is a necessity when fractions are being used. Rational numbers whose denominator is a power of ten are decimal fractions and most them cannot be represented by binary fractions. For example, the value 0.01 may require an infinitely recurring binary number. Even though the arithmetic is correct, but if binary approximation is used instead of an exact decimal fraction, results can be wrong. This extensive use of decimal data indicates that it is important to analyse how the data can be used and how the decimal arithmetic can be defined. However, the current general purpose computers perform decimal computations using binary arithmetic. But the problem is that decimal numbers such as 0.3 cannot be representedprecisely in binary. The errors that result onconversion between decimal and binary formatscannot be tolerated as long as precision is concerned. Since decimal arithmetic hasgained wideimportance in financial analysis, banking, taxcalculations. Insurance, telephone billing, such errorscannot be tolerated. This in turn can be overcome byusing a decimalarithmetic and logic unit. Theoperationsrelated to decimal arithmetic are typicallyslower, more complex and occupy more area andthis leads to more power and less speed whenimplemented in hardware. Hence, enhancing speedand reducing area is the major consideration whileimplementing decimal arithmetic. In this paper wewill be estimating the delay and power.decimal Arithmetic is getting significant attention in commercial business and internet based applications, providing hardware support in this direction is henceforth necessary.recognizing the prerequisite for decimal arithmetic has led to specifications for decimal floating point arithmetic to be added in the draft revision of the IEEE- P754 standard. Decimal arithmetic operations are usuallysluggish and complex, its hardware occupies more area. They are characteristically implemented using iterative methods or lookup table based reduction schemes. This has led to the motivation behind improving BCD architectures, to enable faster and compact arithmetic. BCD is a decimal representation of a number directly coded in binary, digit by digit. For instance, the number (9321) 10 = (1001 0011 0010 0001) BCD. It is observed that each digit of the decimal number is coded in binary and then concatenated to form the BCD representation of the decimal number. As mentioned that any BCD digit lies between [0, 9] or [0000, 1001], multiplying two BCD digits can outcome in numbers between [0, 81]. All the promising combinations can be represented in a 7-bit binary number when multiplied, (81) 10 or (1010001) 2 being the highest. In BCD multiplication where 4-bit binary multipliers are used to multiply two BCD numbers X and Y with digits, X i and Y j, respectively, a partial product P ij is generated of the form (p 6 p 5 p 4 p 3 p 2 p 1 p 0 ) 2. Conversion of P ij from binary to a BCD number B i C j where π (X i, Y j ) = 10B i + C j wants fast and also efficient BCD converters. The binary to BCD conversion is generally ineffective if the binary number is seems to be Copyright to IJAREEIE DOI: 10.15662/ijareeie.2015.0408091 7197

very large enough. Hence the conversion can be ended in parallel for each partial product after each BCD digit is multiplied as shown in Figure.1 and the resulting BCD numbers after conversion can be added using BCD adders. Additional alternativewould be to compress the partial products of all binary terms in parallel and then convert them to BCD as done. In this paper we introduce a new architecture for binary to BCD conversion of partial products which forms the core of decimal multiplication algorithms such as [7] and [8]. Figure 1: Illustration of BCD conversion in BCD II.LITERATURE SURVEY As pronounced in [1] BCD-digit multiplier can assist as the key building block of a decimal multiplier, regardless of the degree of parallelism. A BCD-digit multiplier creates a two-bcd digit product from two input BCD digits. We provide a novel design for the concluding;viewing some benefits in BCD multiplier implementations. As described in [2] describes several methods of performing fast, efficient, binary-to-decimal conversion. With a modest amount of circuitry, an order of magnitude speed enhancement is achieved. This attainmentdeals a matchlessbenefit to general-purpose computers needing special hardware to interpret between binary and decimal numbering systems. As described in [3], Couleur described a serial binary/ decimal conversion algorithm, the BIDEC method. It was a twostep methodconnecting a shift shadowed by a parallel modification of the data being converted. Now with the assistance of the integrated-circuit J-K flip-flop, the implementation of this two-step process needs an extreme amount of control logic. This paper presents a one-step conversion algorithm that is appropriate for binary-to-decimal and decimal-to-binary conversion. Anall-purpose design procedure for expressing the conversion registers as a presentstate/next-state counter problem is given, along with numeroussamples of the application of the one-step algorithm. The advantages of this novel algorithm include low cost, faster operation, and also hardware modularity. As described in [4] the risingappreciation of decimal computer arithmetic in scientific, commercial, financial and Internet-based applications, the only hardware realization of decimal arithmetic algorithms is in advance more importance. Thus Hardware decimal arithmetic units now help as an essential part of some newly commercialized general purpose processors, on the other hand complex decimal arithmetic operations, such as multiplication, have been recognized by somewhat slow iterative hardware algorithms. Nevertheless, with the fastimprovements in very large scale integration (VLSI) technology, semi- and fully parallel hardware decimal multiplication units are predictable to changeshortly. The foremost representation for decimal digits is the binary-coded decimal (BCD) encoding. The BCDdigit multiplier can help as the significant building block of a decimal multiplier, regardless of the degree of parallelism. A BCD-digit multiplier yields a two-bcd digit product from two input BCD digits. We make available a novel design for the former, showing some benefits in BCD multiplier implementations. Copyright to IJAREEIE DOI: 10.15662/ijareeie.2015.0408091 7198

As defined in [5] the, decimal multiplication is avital part ofthe financial, commercial, as well as internet-based computations. Here elementary building block of a decimal multiplier is a single digit multiplier. It takes two Binary Coded Decimal (BCD) inputs and provides a product that is in the range of [0, 81] characterized by only two BCD digits. A unique design for single digit decimal multiplication that role is toreduce the critical path delay and area is proposed in this investigation. On view of the among possible 256 combinations for the 8-bit input, only hundred combinations of them are seem to be valid BCD inputs. In the hundred valid combinations only four combinations need 4 times 4 multiplication, 64 combinations need 3 times 3 multiplication, and the remaining 32 combinations use either 3 times 4 or 4 times 3 multiplication. The proposed design makes use of this property. This design leads to more regular VLSI implementation, and does not have need of special registers for putting away easy multiples. So it is a fully parallel multiplier consuming only combinational logic, and is extended to a Hex/Decimal multiplier that provides either a decimal output or a binary output. The gathering of partial products produced using single digit multipliers is done by an array of multi-operand BCD adders for an (n-digit time s n-digit) multiplication. III.PROPOSED ALGORITHM As we discussed earlier the main motto of the proposed algorithm in the paper is to achieve the more effective fixed bit binary to BCD conversion have been considered by relating with power,, delay and area.as discussed in earlier work most of author worked on 7-bit binary to 8-bit/2-digit BCD converters, so we designed our proposed algorithm keeping in the mind above considerations to have extra benefit with the converters. Here we treated p 6 p 5 p 4 p 3 p 2 p 1 p 0 be seven binary bits that are to be converted into corresponding two parts; among them first one comprises the lower significant bits (LSBs) p 3, p 2, p 1 and p 0 while the second part contains the remaining higher significant bits (HSBs) p 6, p 5 and p 4.Here (LSBs) has the similar weight as that of a BCD digit and that could be directly used to denote a BCD digit. Therefore only exclusion attains when p 3 p 2 p 1 p 0 exceeds (1001) 2 or (9) 10. So finally we convert the LSBs into a valid BCD number we check whether p 3 p 2 p 1 p 0 exceeds (1001) 2, and if it see to, we then add (0110) 2 to it. So now we define this kind of adding (0110) 2 whenever the particular number exceeds (1001) 2 is named correction in BCD arithmetic. So obtained carry from this process is added immediately to the higher significant BCD digit calculated from the HSBs of the original binary number. Generally HSBs not only helps to the particular higher significant BCD digit rather to the lower significant BCD digit also. So these kind of major contributions of HSBs towards the lower significant digit are added subsequently BCD correction. The obtained resulting sum is then checked for the instance (1001) 2 and correction is done only if wanted to get the final lower significant BCD digit. At this timeobtained carry from the above process is added sonly to the higher significant digit causing in the final higher significant BCD digit. We also gets the case when two BCD digits are multiplied only six combinations of p 6, p 5 and p 4 (HSBs) are possible, that are likely to be 000, 001, 010, 011, 100 and 101. At this situation each of these combinations have a different involvement towards the lower and higher significant BCD digits. So finally we can say that influence can be easily calculated by assessing the weights of the patterns which are p 6 x 27 + p 5 x 26 + p 4 x 25. Contribution of each of these patterns towards the lower and higher BCD digits is shown in table. Higher Significant Bits (HSBs Table 2: Contribution of HSBs Higher Significant BCD Digit Lower Significant BCD Digit 000 0000 0000 001 0001 0110 010 0011 0010 011 0100 1000 100 0110 0100 101 1000 0000 Copyright to IJAREEIE DOI: 10.15662/ijareeie.2015.0408091 7199

The below figure clearly shows an example of the algorithm for number (111111) 2 or (63) 10 or (0110 0011) BCD. By above discussions the maximum utilization of the process is limited and small numbers of consequences are feasible for conversion has been done while designing the given architecture to reduce delay, power as well as area. Figure.3 shows the proposed architecture. Figure 2: Proposed Algorithm for BCD conversion Figure 3: Proposed Architecture Copyright to IJAREEIE DOI: 10.15662/ijareeie.2015.0408091 7200

p 6 p 5 p 4 p 3 p 2 p 1 p 0 are the binary bits that have toconvert into corresponding BCDbitsz 7 z 6 z 5 z 4 z 3 z 2 z 1 z 0. At the same time p 6, p 5 and p 4 are the HSBs while p 3, p 2, p 1 and p 0 are the LSBs. z 0 is same as p 0 and hence therefore no operation is performed on p 0. {p 3, p 2 and p 1 } are used to check whether the present LSBs are greater than (1001) 2 or not using equation (1) and are directed to the BCD Correction block. C 1 = p 3. (p 2 + p 1 ) (1) Whenever C1 is high, BCD Correction block immediately adds 011 to the input bits. Figure.4 shows the implementation of BCD Correction block. Figure.4: BCD Correction In analogous, HSBs beside with p 3 are fed to a given simple logic block recognized as Contribution Generator which yields the higher significant BCD digits. The logic implemented by the ContributionGenerator is as follows t 3 = p 6 p 4. (2) t 2 = p 5 (p 4 +p 3 ) + p 6 p 4.. (3) t 1 = (p 5 +p 6 ) p4 4) t 0 = p 6 p 5 p 4 + p 5 p 4.. (5) C 1 is the carry from the lower significant digit, so it is added to the higher significant digit t 3 t 2 t 1 t 0. It is observed that very few cases lead to the propagation of the incoming carry from t 1 to t 2. Hence, we take benefit of this situation and also device {t 3, t 2 } in combinational logic thus eliminating the need to add C 1 to these terms, thus saving hardware and complexity thus 2-bit One Adder, as presented in Figure.5, that is used to add C 1 t o t 0 and t 1. Now there is anoption of a carry generation, when the contributions of HSBs are added to the corrected LSBs (a 3, a 2 and a 1 ). This carry is calculated ahead of time by a Carry Generator block using C1 and input bits p6 to p1. The logic implemented by Carry Generator is given by the equation below C 2 = C 1 (p 4 (p 3 + p2) +p 3 p 5 ) + p 6 p 3 + p 4 p 3 p 1 (6) Figure.5 : 2-bit One Adder Copyright to IJAREEIE DOI: 10.15662/ijareeie.2015.0408091 7201

C 2 is similarly added to result of the principal 2-bit One Adder using alternative 2-bit One Adder and the final higher significant digit is Higher Significant obtained. {t 3 and t 2 } are equivalent to z 7 and z 6 respectively and are directlyaccessible from the above Contribution Generator block. Now contribution of HSBs towards lower significantbcd digit is static and distinctive and is known once HSBs are known. We have implemented four distinct adder units which add only stated values to the inputs in parallel according to the contributions in Table. On the other hand different adder blocks, +1, +2, +3 and +4 (shown in Figure.6) add 001, 010, 011 and 100 to the input bits correspondingly. So the Adder blocks take the corrected LSBs (a 3, a 2, a 1 ) as inputs and add particular numbers to them. The suitable result is then acquired through a multiplexer whose selection bits are p 6, p 5 and p 4 (HSBs). Then finally result from the multiplexer is then fed to BCDCorrection block which takes C 2 as input then decides whether correction has to be done or not. Now the results obtained from the BCD Correction block are z 3, z 2 and z 1 which, along with z 0, form the final lower significant BCD digit. Figure.6: +1, +2, +3, +4 adder blocks IV. RESULT AND DISCUSSION The results of the above method have been simulated with the help ofxilinxtool and analysed it and implemented its RTL Schematic using corresponding part number and shows that with the specialized converter overwhelming features that led better conversion in case of area, power and delay. Copyright to IJAREEIE DOI: 10.15662/ijareeie.2015.0408091 7202

RTL Schematic: Internal Schematic: Simulation: Copyright to IJAREEIE DOI: 10.15662/ijareeie.2015.0408091 7203

VI.CONCLUSION We discussed that the architectures have been designated using Verilog HDL.Corresponding Delay, power and area values for the designs are acquired by synthesizing the Verilog HDL description language. The proposed converter is very flexible that can be easily plugged into any homogeneous multiplication architectures to accomplish better performance regardless of the method employed to generate binary partial products. REFERENCES 1. Arazi, B., and Naccache, D.: Binary-to-decimal conversion based on the 28 2 1 by 5, Electron. Let, 1992. 2. Schmookler, M.: High-speed binary-to-decimal conversion, IEEE Trans. Comput., 1968. 3. Rhyne, V.T.: Serial binary-to-decimal and decimal-to-binary conversion, IEEE Trans. Comput., 1990. 4. Binary-coded decimal digit multipliers Jaberipur, G.; Kaivani A. Computers and Digital Techniques, IET Volume 1, Issue 4, July 2007.H. Khalife, N. Malouch, S. Fdida, Multihop cognitive radio networks: to route or not to route, IEEE Network, vol. 23, no. 4, pp. 20-25, 2009. 5. Decimal multiplication using compact BCD multiplier James, R.K.; Shahana, T.K.; Jacob, K.P.; Sasi, S.; Electronic Design, 2008. ICED 2008. International Conference on 1-3 Dec. 2008. 6. Decimal multiplication using compact BCD multiplier James, R.K.; Shahana, T.K.; Jacob, K.P.; Sasi, S.; Electronic Design, 2008. ICED 2008. International Conference on 1-3 Dec. 2008 Page(s):1 6. 7. Binary-coded decimal digit multipliers Jaberipur, G.; Kaivani, A. Computers and Digital Techniques, IET Volume 1, Issue 4, July 2007 Page(s):377-381. 8. Novel High-Speed Architecture for 32-Bit Binary Coded Decimal (BCD) Multiplier Veeramachaneni, S.; Srinivas, M.B. Communications and Information Technologies, 2008. ISCIT 2008. International Symposium on 21-23 Oct. 2008 Page(s):543 546. BIOGRAPHY A. Hari PriyareceivedBTech (ECE) in Malla Reddy College of Engineering and Techin Maisammaguda, Dhulapally, Kompally, Medchal in the year 2009. And MTech (VLSI System Design) in Hyderabad Instituteof Tech. and Mangement at Gowdevally (v), Medchal (M), in the year 2011. She is currently working as Assistant Professor, Dept. of ECE, Indur Institute of Engineering. And Technology, Siddipet, Medak (D) India. Copyright to IJAREEIE DOI: 10.15662/ijareeie.2015.0408091 7204