BCD to 7-Segment Decoder
IC 7447, display driver, segment mapping.
Seven-segment displays on digital multimeters and frequency counters rely on a BCD-to-7-segment decoder to convert a 4-bit binary-coded decimal input into the seven segment drive signals that form visible digits 0–9. The 74LS47 is the industry standard for common-anode displays.
Core Concept
BCD uses only the 4-bit codes 0000 through 1001 (decimal 0–9). Codes 1010 through 1111 are invalid BCD and produce undefined or special patterns on the display. Each of the seven segments (a through g) lights independently. The decoder computes which combination of segments forms the correct digit shape.
The 74LS47 drives common-anode displays directly. Its outputs are active-low open-collector, sinking up to 24 mA per segment. Supply voltage: 4.75 V to 5.25 V. Propagation delay: 35 ns typical. The 74LS48 is the active-high variant for common-cathode displays.
Three auxiliary inputs control display testing and blanking. LT (Lamp Test, active-low) forces all segments on, displaying 8. RBI (Ripple Blank Input) blanks leading/trailing zeros. BI/RBO (Blank Input / Ripple Blank Output) cascades multiple digit blanking across a multi-digit display.
Boolean Expression
Each segment output is a multi-minterm Boolean function of the four BCD inputs D3, D2, D1, D0. For segment a (active-high before inversion): a = m0 + m2 + m3 + m5 + m7 + m8 + m9. Simplified by Karnaugh map: a = D3 + D1 + D2'·D0' + D2·D0. The 74LS47 implements these internally as a fixed ROM-like logic array.
Given:
BCD input = 0110 (decimal 6)
D3=0, D2=1, D1=1, D0=0
Segments that are ON for digit 6 (from truth table):
a = 0 (top segment off for 6 in 74LS47 style)
b = 0 (off)
c = 1 (on)
d = 1 (on)
e = 1 (on)
f = 1 (on)
g = 1 (on)
74LS47 active-low output check:
Active-low 0 = segment ON, 1 = segment OFF
Outputs: a=1, b=1, c=0, d=0, e=0, f=0, g=0
Step by step verification for segment g:
g is on for digits 2,3,4,5,6,8,9 but NOT 0,1,7
6 is in the ON list --> g output = 0 (active-low, lit)
Final Answer:
BCD 0110 displays digit 6
Segments c,d,e,f,g are lit; a and b are offExam Tip: Anna University frequently asks which segments light for a given BCD input and which BCD codes are invalid. Memorize that BCD 1010–1111 are invalid and produce non-numeric patterns on most decoders. Also know: 74LS47 is for common-anode (active-low), 74LS48 for common-cathode (active-high). Mixing them up in circuit connection questions is the most common error in lab viva and written exams.
Key Properties
- IC: 74LS47 (common-anode, active-low), 74LS48 (common-cathode, active-high)
- Valid BCD inputs: 0000 to 1001 only; 1010–1111 produce undefined display
- Output current: 24 mA sink per segment (74LS47 open-collector)
- Propagation delay: 35 ns typical at 5 V
- Auxiliary pins: LT (lamp test), RBI (leading zero blank), BI/RBO (cascade blanking)
- Supply: 4.75–5.25 V (LS TTL family)
- Segment labeling: a=top, b=upper-right, c=lower-right, d=bottom, e=lower-left, f=upper-left, g=middle
Quick Revision
- BCD range: 0000 to 1001; 10 valid codes only
- 74LS47: active-low outputs, drives common-anode display
- 74LS48: active-high outputs, drives common-cathode display
- Each segment = Boolean function of D3, D2, D1, D0 derived via K-map
- LT=0 forces all segments on; RBI=0 blanks zero digits in cascade chains
- Segment a: top horizontal bar; g: middle horizontal bar
- Exam trap: wiring a 74LS47 to a common-cathode display causes all segments to be on (inverted drive logic)
BCD 7-Segment Quiz
Test your knowledge of IC 7447 segment mapping and BCD display decoding.
Q1.The IC 7447 BCD-to-7-segment decoder drives a common-anode display. Its outputs are:
Related Articles
2-to-4 Decoder
Enable input, active high and active low outputs.
4 min read
BCD Adder
4-bit BCD addition, correction logic for invalid BCD.
4 min read
Code Converter Circuits
BCD to Gray, Gray to BCD, BCD to Excess-3 circuits.
9 min read
2-to-1 Multiplexer
Single select line, data routing, Boolean implementation.
4 min read
4-to-1 Multiplexer
Two select lines, function implementation using MUX.
11 min read