Sei sulla pagina 1di 82

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
 A=B
 A>B

 A<B

 7485 TTL 4-bit


comparator

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
 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
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
 8051 micro controller
 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

Potrebbero piacerti anche