Academia.eduAcademia.edu

Thermometer to Gray Encoders

2015, Performance Optimization Techniques in Analog, Mixed-Signal, and Radio-Frequency Circuit Design

Performance Optimization Techniques in Analog, Mixed-Signal, and Radio-Frequency Circuit Design Mourad Fakhfakh University of Sfax, Tunisia Esteban Tlelo-Cuautle INAOE, Mexico Maria Helena Fino New University of Lisbon, Portugal A volume in the Advances in Computer and Electrical Engineering (ACEE) Book Series Managing Director: Managing Editor: Director of Intellectual Property & Contracts: Acquisitions Editor: Production Editor: Development Editor: Typesetter: Cover Design: Lindsay Johnston Austin DeMarco Jan Travers Kayla Wolfe Christina Henning Erin O’Dea Amanda Smith Jason Mull Published in the United States of America by Engineering Science Reference (an imprint of IGI Global) 701 E. Chocolate Avenue Hershey PA, USA 17033 Tel: 717-533-8845 Fax: 717-533-8661 E-mail: [email protected] Web site: http://www.igi-global.com Copyright © 2015 by IGI Global. All rights reserved. No part of this publication may be reproduced, stored or distributed in any form or by any means, electronic or mechanical, including photocopying, without written permission from the publisher. Product or company names used in this set are for identification purposes only. Inclusion of the names of the products or companies does not indicate a claim of ownership by IGI Global of the trademark or registered trademark. Library of Congress Cataloging-in-Publication Data Library of Congress Cataloging-in-Publication Data Performance optimization techniques in analog mixed-signal, and radiofrequency circuit design / Mourad Fakhfakh, Esteban Tlelo-Cuautle, and Maria Helena Fino, editor. pages cm Includes bibliographical references and index. ISBN 978-1-4666-6627-6 (hardcover) -- ISBN 978-1-4666-6628-3 (ebook) -- ISBN 978-1-4666-6630-6 (print & perpetual access) 1. Radio frequency integrated circuits. 2. Mixed signal circuits. I. Fakhfakh, Mourad. II. Tlelo-Cuautle, Esteban. III. Fino, Maria Helena, 1958TK7874.78.P47 2015 621.3815--dc23 2014031233 This book is published in the IGI Global book series Advances in Computer and Electrical Engineering (ACEE) (ISSN: 2327-039X; eISSN: 2327-0403) British Cataloguing in Publication Data A Cataloguing in Publication record for this book is available from the British Library. All work contributed to this book is new, previously-unpublished material. The views expressed in this book are those of the authors, but not necessarily of the publisher. For electronic access to this publication, please contact: [email protected]. 323 Chapter 13 Thermometer to Gray Encoders Yogendra Gupta The LNM Institute of Information Technology, India Sandeep Saini The LNM Institute of Information Technology, India ABSTRACT Analog to Digital Converter (ADC) is a key functional block in the design of mixed signal, system on chip, and signal processing applications. An optimized method for the direct conversion of analog signal to Gray code representation is presented. This eliminates the need for binary-to-Gray code conversion in many digital modulation techniques like M-PSK and M-QAM, which uses Gray coding representation to represent the symbols that are modulated. The authors design a low-power and high-speed Thermometer to Gray encoder for Flash ADC, as encoders have been widely utilized in high-performance critical applications which persistently impose special design constraints in terms of high-frequency, low power consumption, and minimal area. In this chapter, they propose a new circuit that converts the Thermometer code to Gray code and also yields minimized power. INTRODUCTION In a communication system with real world data represent some physical quantity such as speech, temperature, etc. The real world physical quantity exists in the analog domain and if we want to send it via digital communication system, it is imperative to convert it into digital domain. So the process of converting an analog signal to digital signal is done by Analog to Digital Converter (ADC). The digital circuits are more robust and transmission errors are less and also digital circuit offers greater advantages over analog circuit in processing speed and efficient transmission of information. The current scenario of VLSI design for signal processing system demands high speed and low power consumption ADCs. In this chapter a method for direct conversion of analog signal to their Gray code representations is presented. This eliminates the need for binary-to-Gray code conversion in many digital modulation techniques. When multilevel signals are transmitted over a binary channel (PCM) or binary words transmitted over a multilevel channel, the mutual representation of the binary and non-binary signals are often in terms of Gray code, whose unit distance property proves to be of some advantage in such circumstances. So we have designed a DOI: 10.4018/978-1-4666-6627-6.ch013 Copyright © 2015, IGI Global. Copying or distributing in print or electronic forms without written permission of IGI Global is prohibited. Thermometer to Gray Encoders low power and high speed Thermometer to Gray encoder, as encoders have been widely utilized in high-performance critical applications which persistently impose special design constraints in terms of high-frequency, low power consumption and minimal area. Flash ADC is a type of ADC which offers highest sampling rate (Kanan, Kaess and Declercq, 1999). In the Flash ADC an array of comparators compares the input voltage with a set of increasing reference voltages. The comparator output represents the input signal in digital (Thermometer) code, which can be easily converted into Gray code. Figure 1 shows the main structure of Flash ADC. In this figure there are three main parts. The First part is reference ladder network com- Figure 1. Flash ADC architecture 324 posed of a series of resistor. The reference ladder used to generate 2n equally spaced reference voltages. In the second part an array of comparator compares the input voltage with the set of increasing reference voltages (Yoo Jincheol, Kyusun Choi, and Ali Tangel, 2001). If the input signal is greater than the reference voltage, the corresponding comparator output is high and denoted as logic “1”. On the other side, if the input signals voltage is lower than the specific reference voltage output is low and denoted as logic “0”. Note that comparison of the input signal with all reference voltage is performed at the same time. As shown in figure the transition of output code from “1” to “0” denote the input signal Thermometer to Gray Encoders voltage level because the reference voltage are arranged increasingly from the bottom to the top of comparators array, the output code will all be equal to “1” as the reference voltage is lower than input voltage level and all “0” as reference voltage is higher than input voltage level (Pereira & Fernandes, 2001). Hence all the comparator’s output looks like a Thermometer. Finally the third part is Thermometer to Gray encoder. Gray coding representation that is used ubiquitously in all applications. In Gray coding, the adjacent representations (symbols) differ by only one bit. Gray coding, when combined with Forward Error Correction codes capable of corrective single bit errors, it can aid in correction of erroneous reception of bits that spills into adjacent symbols. Digital modulation techniques like MPSK and M-QAM use Gray coding representation to represent the symbols that are modulated. In M-PSK and M-QAM modulation techniques if the constellation symbols are Gray encoded, and then the adjacent constellation symbol differs only by one bit. Thus this Gray encoded structure gives a lesser probability of error than natural binary ordering. Gray code is useful because only one bit changes at a time. When used as encoders for a position sensor, for instance, if the sensor were right at the edge of a change boundary, there is uncertainty. A new improved multiplexer based encoder for flash analog-to-digital converter is proposed, which converts Thermometer code to Gray code. Gray codes are mainly used in glitch free fast circuit design, in communication for error correction in digital modulation techniques and in digital design for data path synchronization. It can be configured to operate on Thermometer code with reduced length without any extra overhead which is suitable for adaptive resolution analog to digital converters. Simulation results indicate that the proposed encoder results in better performance when compared to the existing encoders in terms of power, delay, area and figure of merit. All the architectures were structurally designed using DSCH v3.5 and simulated using Microwind v3.5 and Xilinx ISE. BACKGROUND Encoder is a combinational logic function. It converts the binary information from one form to another. It gives a unique combination at the output according to the information at the unique input at one line. A n-bit encoder has 2n input lines and n output lines (Sall, Vesterbacka and Andersson, 2004). In this section, Thermometer to Gray encoders are introduced. BUBBLE ERROR EFFECT As mentioned in the previous section, the output of comparator array is a set of Thermometer code in Flash ADC as shown in Table 1. In general there will be only one “1” to “0” transition occurs in Thermometer code indicating the corresponding input voltage level. However, in practical circuits there will be more than one “1” to “0” transition occur in the Thermometer code. When such a situation occurs, it looks like bubbles in Thermometer. Therefore we refer more than one “1” to “0” transition to “bubble error” (Chuang, Jen, Hung and Da Liu, 2005). Figure 2 Shows two examples 2 (a) is bubble free Thermometer code and 2 (b) is shows Thermometer code with bubble error. Take Figure 2 (b), for example there will more than single “1” to “0” transition is detected in the Thermometer code. Consequently, the input voltage level is corresponded to two different output codes defined by these two transitions (Chuang, Jen, Hung and Da Liu, 2005). However, the actual input voltage level should be corresponded to only one output code. These two transitions will induce some unexpected coding errors for Thermometer to Gray encoder. 325 Thermometer to Gray Encoders Table 1. Correspondence among decimal, Thermometer, and Gray code Decimal Thermometer Code T7 T6 T5 T4 T3 T2 T1 G2 G1 G0 7 1 1 1 1 1 1 1 1 0 0 6 0 1 1 1 1 1 1 1 0 1 5 0 0 1 1 1 1 1 1 1 1 4 0 0 0 1 1 1 1 1 1 0 3 0 0 0 0 1 1 1 0 1 0 2 0 0 0 0 0 1 1 0 1 1 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 Figure 2. The occurrence of bubble error ROM (READ ONLY MEMORY) - BASED ENCODER In this section a conventional Gray ROM based Thermometer to Gray encoder is introduced. ROM is basically a programmable logic device. It is the most straightforward encoding structure. It stores combination of input variables and for each combination it will generate the output (Niket and Paily 2008). ROM is actually a truth table in hardware form. Figure 3 shows an example of 4 bit Gray ROM based Thermometer to Gray 326 Gray Code D encoder. Every input Thermometer code combination corresponds to an address, which is “read” to produce 4-bit Gray code. The advantage of ROM encoder is its simplicity. However the conversion speed is relatively slow and power consumption is large due to, a constant static current used to preset the ROM encoder. Algorithmically, ROM encoder circuit signal delay is O (N). The encoder is composed of two parts, the one out of N (1-of-N) circuit and Gray ROM. The 1-of-N circuit is used to detect the “1” to “0” transition occurred in the Thermometer code which indicates the input voltage level, by an array of two input NAND logic gate with one input inverted (Hiremath & Ren, 2007). When the input in the non-inverted port is “1” and the inverted port “0” than only the output will be equal to “0”. For the other input patterns the output will be equal to “1”. In general if no bubble errors occurred there will only one “1” to “0” transition detected in the Thermometer code. So there will be only one“0”appearing at the output of 1-of-N circuit. This “0” signal used to enable the corresponding row in the Gray ROM. The total number of NAND gate required for 1-of-N circuit is equal to 2n −1 + 2n − 2 + ....... + 21 + 20 = 2n − 1 (1) Thermometer to Gray Encoders Figure 3. A 4-bit Gray ROM based Thermometer to Gray encoder The operation of Gray ROM encoder can be separated- into two phases. In phase 1 when the clock signal is high, the NMOS on the top of Gray ROM are turned on and the output nodes are discharged to a low logic level through the turned on transistors. In phase 2 when the clock is low, the NMOS are turned off to prevent current leakage at the output nodes. At the same time PMOS in the enabled row of Gray ROM is turned on by”0”signal at the output of 1-of-N circuit. The outputs with turned on PMOS connected to the power supply are charged to “1”. That’s how we obtain a Gray code representation of corresponding Thermometer code. Encoding Scheme Figure 4 shows the encoding scheme of a 3-bit Gray ROM based encoder. At first the 1-of-N circuit detect the transition occurred between T 327 Thermometer to Gray Encoders Figure 4. The encoding scheme of 3-bit Gray ROM based encoder signal delay is O (log2 N). Therefore, the fat tree circuit is faster than the ROM encoder circuit. The Boolean expressions of the fat tree encoder are: G3 = d 0 G2 = d 0 ⊕ ( c0 + c1 ) G1 = ( c0 + c1 ) ⊕ (b0 + b1 + b2 + b3 ) [3] and T [4] bit. This “0” at the output of 1-of-N circuit is used to enable the corresponding row of the Gray ROM. That’s how the Gray output code “110” is obtained according to the input Thermometer code “00001111”. Apart from the speed, the fat tree encoder does not require any clock signal, sense amplifiers, or pull-up resistors. The fat tree circuit is more noise tolerant than the ROM circuit. Full static CMOS implementation of the OR gates eliminates any static power consumption otherwise necessary in circuits with pull up resistors. Therefore, the fat tree circuit is less power consuming than the ROM circuit. On the other hand, the layout of the fat tree is more difficult to design than the ROM. A tree is considered as a regular structure but it is not as regular as the ROM. Moreover, the fat tree is a 3-D structure, challenging to layout on a two dimensional chip. Fat Tree Based Encoder Wallace Tree Based Encoder The Thermometer to Gray encoding is carried out in two stages in the fat tree based encoder (Lee, Daegyu et al, 2002). Like the ROM encoder the first stage converting the Thermometer code to 1-of-N code. This code conversion is done by two input AND gate with one input inverted. The second stage converts the 1-of-N code to Gray code using multiple trees of OR gate. Figure 5 shows the example of 4 bit Flash ADC. A 15 bit 1-of-N code is presented at the leaf nodes of the tree and 4-bit Gray output code are produced at the root nodes of the tree (Akashe, Shyam, Vinod Rajak and Gunakesh Sharma, 2013). An edge count of a node increase as the tree height increases so it is named as fat tree. Algorithmically, fat tree circuit Wallace tree based encoder is a very straight forward approach to convert Thermometer code into Gray code (Pereira, Paula, Fernandes and Silva, 2001). The Wallace tree method originally used to implement high speed multipliers in computer arithmetic units. This encoding scheme is especially devoted to high speed analog to digital converters. It counts the number of 1s present in the Thermometer code or we can say that the output of comparator array. It does not process Thermometer code locally around the transition. Figure 6 shows Wallace tree based Thermometer to Gray encoder (Wallace, Christopher, 1964). The Wallace tree based encoder is built only with the elementary full adder cell. These “1” bit 328 Thermometer to Gray Encoders Figure 5. An example of fat tree encoder for 4 bit Flash ADC full adder cell is used to count the “1”s occurred in the Thermometer code. At the first stage each full adder cell counts the number of logical “1”s at its entries and the output is 2-bit binary coded output. The second stage consists in adding the two-bit words of adjacent cells two by two, giving 3-bit binary outputs ; and so on in order to obtain the final binary output code for the converter. The number of full adder cells used in Wallace tree encoder is given by equation: m = 2n − n − 1 (2) Where m is the number of full adder cell for n-bit flash ADC. The main advantage of Wallace tree encoder is that the encoded value can precisely match the best approximated output value. However it takes long latency to obtain the results, hence it is not suitable for high speed operation (higher than 1GHz). 329 Thermometer to Gray Encoders Figure 6. Wallace tree based encoder PROPOSED MULTIPLEXER BASED THERMOMETER TO GRAY ENCODER A multiplexer based Thermometer to Gray encoder is proposed (Gupta, Yogendra, et al, 2013). This encoder results in higher speed and smaller area as compared to Wallace and fat tree based encoders. The Figure 10 shows the implementation of MUX based encoder for 15-bit thermometer code input. This section first describes the idea behind the presented multiplexer and second describes how it can be generalized (Sail, Vesterbacka, 2004). Basic Idea The basic idea behind this design is self reconfigurable property. When this property was used in Wallace and fat tree based design gave higher delay and more power consumption. The main 330 idea behind the design of the proposed multiplexer based encoder is to group the results of smaller length multiplexer based encoders to form a larger encoder for Thermometer to Gray conversion. This idea is explained by designing a 7-bit Thermometer code to Gray code encoder using a 3-bit Thermometer code to Gray code encoder. A simple circuit to convert 3-bit Thermometer to Gray code along with the truth table for the same is shown in Figure 7. Here T3 - T1 represents the input Thermometer code and G2 – G1 represents the Gray code. So this idea is implemented using 2:1 multiplexers which give minimum power and lesser delay as compared to existing ones. Now the 3-bit Thermometer to Gray encoder can be used to design a 7-bit Thermometer to Gray encoder. The truth table and pictorial representation of the design of 7-bit Thermometer to Gray encoder is shown in Figure 8. In the truth table Thermometer to Gray Encoders Figure 7.bit Thermometer to Gray encoder for 2-bit Flash ADC Figure 8. Truth table of 7 bit T to G encoder 331 Thermometer to Gray Encoders Figure 9. Proposed 7-bit Thermometer to Gray encoder for 3-bit Flash ADC T7 – T1 represents the input Thermometer code and G3 – G1 represents the Gray code. As seen from the truth table G3 = T4, and when T4 = 0 the G2 – G1 are equivalent to the outputs of 3-bit Thermometer to Gray encoder with T3 - T1 input. When T4 = 1 the G2 – G1 are equivalent to the outputs of 3-bit Thermometer to Gray encoder with T7 – T5 input. Hence using aT4 as selection signal, 7-bit Thermometer to Gray encoder can be designed using 3-bit Thermometer to Gray encoder and an array of multiplexers. Such an implementation of 7-bit Thermometer to Gray encoder is shown in Figure 9. For an N bit Flash ADC the most significant bit (MSB) of Gray output is high if more than half of the outputs in the Thermometer code are logic one. Hence MSB is same as Thermometer output at level 2N-1. The Boolean expressions of proposed 15 bit Thermometer to Gray encoder are as follows: So we can generalize this concept to a 2N -1 bit encoder for N bit flash ADC. This encoder can be designed by using two 2N-1–1 bit encoders and an array of multiplexers to generate the Gray code from the thermometer code. This iterative self re-configurable implementation can be done until the basic element i.e. a 3-bit Thermometer to Gray encoder, is reached. The proposed 15-bit Thermometer to Gray encoder is shown in Figure 10. The proposed encoder results in reduced number of gates when compared to Wallace tree encoder and fat tree encoder. So this encoder gives better results than the existing encoders in terms of power, delay, area and figure of merit. In general, for an N bit Flash ADC the Thermometer output has 2N-1 levels. The Thermometer output or multiplexer output is connected to the “0” or “1” input of the multiplexer of next level. Hence the presented encoder requires 2:1 multiplexers for N-bit Flash ADC: N −1 G4 = T8 xN = ∑ (2 N − y − 1) (3) y =1 G3 = T 8 .T4 + T8 .T 12 G2 = T 8 (T 4 .T2 + T4 .T 6 ) + T8 (T 12 .T10 + T12 .T 14 ) G1 = T 8 [T 4 .(T2 .T1 + T2 .T3 ) + T4 (T 6 .T5 + T6 .T7 )] +T8 [T 12 .(T 10 .T9 + T10 .T 11 ) +T12 (T 14 .T13 + T14 .T 15 )] 332 where y is the number of level y = 1, 2, 3…..N-1. This encoder can be configured to operate as a 7-bit Thermometer to Gray encoder by making the MSB bits T8-T15 as logic zero. In this case only the gray colored 2: 1 multiplexer are work- Thermometer to Gray Encoders Figure 10. Proposed multiplexer based encoder for 4-bit flash ADC ing. The 15- bit Thermometer to Gray encoder can be operated as two 7-bit Thermometer to Gray encoders by making the T8 signal as logic one and latching the intermediate outputs of the 7-bit Thermometer to Gray encoder which has T1-T7 as inputs. This property is unique to the proposed multiplexer based encoder and is not present in any of the existing encoder designs. Table 2. Critical path delay comparison of different encoder CRITICAL PATHDELAY COMPARISION CONCLUSION By taking advantage of multiplexers, the number of working gates in the converter is effectively minimized, and thus, low power and high speed is achieved. The proposed multiplexer based encoder has three gates delay in its critical path for a 15-bit Thermometer to Gray encoder shown in Figure 10. The 15-bit Wallace tree based encoder and fat tree based encoder has a critical path delay of 10 gates and 5 gates respectively. 15-bit Encoder (for 4-Bit Flash adc) No. of Gates in Critical Path Wallace tree 10 Fat tree 5 Proposed mux based 3 A new improved multiplexer based encoder for flash analog-to-digital converters is proposed, which converts Thermometer code to Gray code. Gray codes are mainly used in glitch free fast circuit design, in communication for error correction in digital modulation techniques and in digital design for data path synchronization. It can be configured to operate on Thermometer code with reduced length without any extra overhead which is suitable for adaptive resolution analog to digital converters. Simulation results indicate that 333 Thermometer to Gray Encoders the proposed encoder results in better performance when compared to the existing encoders in terms of power, delay, area, and figure of merit. Pereira, P., & Fernandes, J. R. (2001). Comparative study of encoders for parallel-type ADCs. In Proc. Int. Workshop on ADC Modelling and Testing (pp. 142-146). Academic Press. REFERENCES Pereira, P., Jorge, R., & Fernandes, M. S. (2002). Wallace tree encoding in folding and interpolation ADCs. In Proceedings of Circuits and Systems. IEEE. doi:10.1109/ISCAS.2002.1009889 Agrawal, N., & Roy, P. (2008). An improved ROM architecture for bubble error suppression in high speed flash ADCs. In Proceedings of 2008 Annual IEEE Conference. IEEE. doi:10.1109/ AISPC.2008.4460547 Akashe, S., Vinod, R., & Gunakesh, S. (2013). Optimization of fat tree encoder for ultra high speed analog to digital converter using 45 nanometer technology. Optik-International Journal for Light and Electron Optics. Chuang, Y., Hsin, H. O., & Bin-D, L. (2005). A novel bubble tolerant thermometer-to-binary encoder for flash A/D converter. In Proceedings of VLSI Design, Automation and Test, (pp. 315318). VLSI. Gupta, Y., et al. (2013). Design of low power and high speed multiplexer based Thermometer to Gray Encoder. In Proceedings of Intelligent Signal Processing and Communications Systems (ISPACS). IEEE. Hiremath, V., & Ren, S. (2010). An ultra high speed encoder for 5GSPS Flash ADC. In Proceedings of Instrumentation and Measurement Technology Conference (I2MTC), (pp. 136-141). IEEE. doi:10.1109/IMTC.2010.5488216 Kanan, R., Kaess, F., & Declercq, M. (1999). A 640 mW high accuracy 8-bit 1 GHz flash ADC encoder. In Proceedings of Circuits and Systems. IEEE. doi:10.1109/ISCAS.1999.780750 Lee, D., et al. (2002). Fat tree encoder design for ultra-high speed flash A/D converters. In Proceedings of Circuits and Systems, (vol. 2). Academic Press. 334 Sail, E., & Mark, V. (2004). A multiplexer based decoder for flash analog-to-digital converters. In Proceedings of TENCON 2004. IEEE. doi:10.1109/TENCON.2004.1414916 Sall, E., Mark, V., & Ola, A. (2004). A study of digital decoders in flash analog-to-digital converters. In Proceedings of Circuits and Systems. Academic Press. doi:10.1109/ISCAS.2004.1328148 Wallace, C. S. (1964). A suggestion for a fast multiplier. IEEE Transactions on Electronic Computers, 1(1), 14–17. doi:10.1109/PGEC.1964.263830 Yoo, J., Kyusun, C., & Tangel, A. (2001). A 1-GSPS CMOS flash A/D converter for systemon-chip applications. In Proceedings of VLSI, (pp. 135-139). IEEE. ADDITIONAL READING Arpaia, P., Cennamo, F., Daponte, P., & Schumny, H. (1998), “Modeling and characterization ofsigma-delta analog-to-digital converters,” in Instrumentation and Measurement Technology Conference, 1998. IMTC/98. Conference Proceedings. IEEE, vol. 1, pp. 96–100 vol.1. Atmel (2013) Avr 127: Understanding adc parameters. [Online]. Available: www.atmel.in Black, B. (1999) Analog-to-digital converter architectures and choices for system design. [Online]. Available: www.analog.com Thermometer to Gray Encoders Deevy, K., & Quinlan, P. (1997), “Rom encoder circuit for flash adc’s with transistor sizing to prevent sparkle errors,” 1997, uS Patent 5,644,312. [Online]. Available: www.google.com/patents/ US5644312 Li, D., & Chen, C. (2008) “Inverter-based flash analog-to-digital converter using floating resistor ladder,” 2008, uS Patent 7,315,272. [Online]. Available: http://www.google.co.in/patents/ US7315272 Figueiredo, M., Goes, J., & Evans, G. (2013). “General overview of pipeline analog-to-digital converters,” in Reference-Free CMOS Pipeline Analog-to-Digital Converters, ser. Analog Circuits and Signal Processing Springer New York, 2013, 5–45. Vudadha, C., Makkena, G., Nayudu, M., Phaneendra, P., Ahmed, S., Veeramachaneni, S., et al. (2012), “Low-power self reconfigurable multiplexer based decoder for adaptive resolution flash adcs,” in VLSI Design (VLSID), 2012 25th Internationa Conference, pp. 280–285. Fowler, K. (2003, September). Part 7: Analog-todigital conversion in real-time systems. Instrumentation Measurement Magazine, IEEE, 6(3), 58–64. doi:10.1109/MIM.2003.1238355 Yang, J. (2002) “Bubble and meta-stability error immune gray-code encoder for high-speed a/d converters,” 2002, uS Patent 6,388,602. [Online]. Available: http://www.google.com/patents/ US6388602 Hieu, B. V., Beak, S., Choi, S., Seon, J., & Jeong, T. (2010), “Thermometer-to-binary encoder with bubble error correction (bec) circuit for flash analog-to-digital converter (fadc),” in Communications and Electronics (ICCE), 2010 Third International Conference on, pp. 102–106. Instruments, N. (2013) Bandwidth, sample rate, and nyquist theorem. [Online]. Available: www. ni.com Le, B., Rondeau, T., Reed, J., & Bostian, C. (2005). Analog-to-digital converters. Signal Processing Magazine, IEEE, 22(6), 69–77. doi:10.1109/ MSP.2005.1550190 Lee, D., Yoo, J., Choi, K., & Ghaznavi, J. (2002), “Fat tree encoder design for ultra-high speed flash a/d converters,” in Circuits and Systems, 2002. MWSCAS-2002. The 2002 45th Midwest Symposium on, vol. 2, Aug 2002, pp. II–87–II–90 vol.2. KEY TERMS AND DEFINITIONS Bubble Error: More than 1 to 0 transition in Thermometer code results Bubble error in Thermometer code. Encoder: It converts the binary information from one form to another. It gives a unique combination at the output according to the information at the unique input at one line. Gray Code: The reflected binary code, also known as Gray code is a binary numeral system where two successive values differ in only one bit (binary digit). ROM (Read Only Memory): ROM is basically a programmable logic device. It is actually a truth table in hardware form. Thermometer Code: The output of comparators in flash ADC. 335