Code Converters, Multiplexers and Demultiplexers Chapter 8 Code Converters, Multiplexers and Demultiplexers 1
Objectives You should be able to: Use an IC magnitude comparator to perform binary comparisons. Describe the function of a decoder and an encoder. Design the internal circuitry for encoding and decoding. Use manufacturers’ data sheets to determine operation of IC decoder and encoder chips. 2
Objectives (Continued) Explain the procedure involved in binary, BCD, and Gray code conversion. Explain the operation of code converter circuits built with SSI and MSI ICs. Describe the function and uses of multiplexers and demultiplexers. Design circuits that employ multiplexer and demultiplexer ICs. 3
Comparators Compare two binary strings or words Digital comparator Compare bit-by-bit Outputs a 1 if they are exactly equal Using exclusive-NOR gates is easiest 4
Comparators Evaluating two 4-bit numbers 5
Comparators Magnitude Comparators 7485 TTL 4-bit comparator A = B 6
Comparators (Continued) 7485 TTL 4-bit comparator logic symbols 6
Comparators Magnitude comparison of two 8-bit strings 7
VHDL Comparator using IF-THEN-ELSE
PROCESS Flowchart
8-bit Comparator Simulation
Decoding Process of converting some code (binary, BCD, or hex) to a single output 4-bit BCD decoder Comprised of a combination of logic gates 8
Decoding 3-Bit Binary-to-Octal Decoder Truth Tables 9
Decoding Complete Octal Decoder (active LOW outputs) 10
Decoding Octal Decoder Decoder ICs Also known as 1-of-8 decoder Also known as 3-line-to-8-line decoder Decoder ICs 11
Decoding Octal Decoder IC 74138 pin configuration and logic symbol. 12
Octal Decoder IC Decoding 74138 logic diagram and function table 13
Decoding 7442 BCD-to-DEC Decoder IC 1-of-10 decoder pin configuration and logic symbol 14
Decoding 7442 BCD-to-DEC Decoder IC 1-of-10 decoder logic diagram and function table 15
Decoding 74154 Hexadecimal Decoder IC 1-of-16 Decoder pin configuration and logic symbol 16
Decoding 74154 Hexadecimal Decoder IC 1-of-16 Decoder logic diagram and function table 17
Decoders in VHDL More flexible than fixed-function 7400-series ICs Can be customized to meet specific needs.
VHDL Octal Decoder Boolean Equations and Block Diagram
VHDL Octal Decoder Implemented with Vectors
VHDL Octal Decoder With Enable Input
VHDL Octal Decoder IF-THEN-ELSE and CASE Statements
VHDL Octal Decoder Simulation with Enable Control
Encoding Opposite process from decoding Used to generate a coded output from a singular active numeric input line. 18
Encoding Octal-to-binary and decimal-to-BCD encoders 19
Encoding A truth table can be used to design encoders using combinational logic. 20
Encoding A basic decimal-to-BCD encoder 21
Encoding 74147 Decimal-to-BCD Encoder Inputs and outputs are Active-LOW Note bubbles on logic symbols Priority encoder - highest input has priority 22
Encoding 74147 Decimal-to-BCD Encoder logic symbol and function table 23
Encoding 74148 Octal-to-Binary Encoder Eight active-low inputs Three active-low outputs Priority encoder 24
Encoding 74148 Octal-to-Binary Encoder logic symbol and function table 25
VHDL Octal Priority Encoder VHDL listing and block symbol file
VHDL Octal Priority Encoder Octal encoder simulated waveforms
Discussion Point Explain the difference between an encoder and a decoder. How does a priority encoder determine which input to encode if more than one is active? 26
Code Converters Convert a coded input into another form BCD-to binary is a good example Computer program (software) MSI integrated circuits (hardware) 27
Code Converters Software BCD-to-Binary conversion Must develop an algorithm Weighting factor of 10 28
Code Converters 74184 BCD-to-Binary Converter logic symbol Hardware approach 29
Code Converters Six-bit BCD-to-Binary Converter using 74184 30
Code Converters BCD-to-binary for two BCD decades 31
Code Converters BCD-to-binary for three BCD decades 32
Code Converters 6 bit binary-to-BCD and 8 bit binary-to-BCD converters 33
Code Converters BCD-to-Seven Segment Converters 4-bit BCD into a 7-bit code to drive display segments Useful in calculators and any application that requires a 7 segment display. The 7447 is a commonly used IC 34
Code Converters Gray Code is used to indicate the angular position of a rotating machine. Varies by only 1 bit from one entry to the next 35
Code Converters Gray Code 36
Code Converters Conversion between binary and Gray code using exclusive-OR gates 37
Multiplexers Funneling several data lines into a single one for transmission to another point Data select control determines which input is transmitted 38
Multiplexers S0 and S1 determine which data is transmitted 39
Multiplexers Logic diagram for a four-line multiplexer Figure 8-31 40
Multiplexers Some popular TTL and CMOS multiplexers 40
Multiplexers 74151 Eight-Line Multiplexer logic symbol Note 3 data select inputs for 8 inputs (23 = 8) 41
Multiplexers 74151 Eight-Line Multiplexer logic diagram 42
Multiplexers Provide Combination Logic Functions Multiplexers can be used to implement combinational logic circuits. A multiplexer can replace several SSI logic gates 43
VHDL 4-Line Multiplexer Program listing and block symbol file 43
VHDL 4-Line Multiplexer Simulated waveforms 43
Demultiplexers Opposite procedure from multiplexing Data distributor Single data input routed to one of several outputs 45
Demultiplexers In this simulation file, the D waveform is routed to the Y outputs as determined by the data select inputs (S0 and S1). 45
Demultiplexers 74139 Dual 4-line Demultiplexer logic symbol and logic diagram 46
Demultiplexers 74139 connected to route an input signal to the 2a output 47
Demultiplexers 74154 4-line-to16-line hexadecimal decoder Used as a 16 line demultiplexer Connected to route a signal to the 5 output 48
Demultiplexers Analog Multiplexer/Demultiplexer 4051, 4052, 4053 CMOS devices High-speed CMOS also available (74HCT4051) Function as either device since inputs and outputs are bidirectional Analog since outputs can be any value between positive and negative supplies (not just 0 and 1) 49
Demultiplexers 4051 CMOS analog multiplexer /demultiplexer 50
System Design Application The 74138 as a memory address decoder 51
System Design Application The 74148 used to encode an active alarm 52
Serial Data Multiplexing for a Microcontroller One serial receive line One serial transmit line 74HCT151 is the multiplexer 74HCT238 is the demultiplexer HCT versions used to match the microcontroller`s speed 53
54
74HCT4051 Staircase Generator 55
74HCT4051 Staircase Generator The voltage divider at the Y-inputs creates outputs at 8 different voltage levels.
Multiplexed Display Application Allows sharing of common ICs, components, and conductors Four-digit registered are multiplexed to a single-digit bus Display bus is multiplexed into the four-digit displays 56
Multiplexed Display Application 57
FPGA Design Using LPMs LPM module for an 8-bit comparator 58
FPGA Design Using LPMs Simulation waveforms for the LPM comparator 58
FPGA Design Using LPMs LPM module for an octal decoder 58
FPGA Design Using LPMs Simulation waveforms for the LPM decoder 58
FPGA Design Using LPMs LPM module for an 8-line multiplexer 58
FPGA Design Using LPMs Simulation waveforms for the LPM multiplexer 58
Summary Comparators can be used to determine equality or which of two binary strings is larger. Decoders can be used to convert a binary code into a singular active output representing its numeric value. Encoders can be used to generate a coded output from a singular active numeric input line. 59
Summary ICs are available to convert BCD to binary and binary to BCD. The Gray code is useful for indicating the angular position of a shaft on a rotating device, such as a motor. Multiplexers are capable of funneling several data lines into a single line for transmission to another point. 60
Summary Demultiplexers are used to take a single data value or waveform and route it to one of several outputs. 61