Guía · Lógica digital

Diseño de un decodificador BCD a 7 segmentos

Siete funciones de cuatro variables con indiferencias: tabla de verdad, mapa del segmento e, expresiones mínimas de todos los segmentos y productos compartidos.

Revisada el con las herramientas del sitio.

Un visualizador de 7 segmentos muestra un dígito encendiendo siete barras, que se nombran de la a a la g en el sentido de las agujas del reloj empezando por arriba, con g en el centro. El decodificador recibe un dígito BCD de 4 bits (ABCD, A el más significativo) y activa las barras necesarias. Es un problema clásico porque combina siete funciones de cuatro variables con indiferencias.

1. La tabla de verdad

Hay que decidir una convención: aquí el 6 lleva la barra superior (a), el 7 no lleva f y el 9 lleva la barra inferior (d). Las entradas 10 a 15 no son dígitos BCD, así que son indiferencias para todos los segmentos.

DígitoABCDabcdefg
000001111110
100010110000
200101101101
300111111001
401000110011
501011011011
601101011111
701111110000
810001111111
910011111011
101010XXXXXXX
111011XXXXXXX
121100XXXXXXX
131101XXXXXXX
141110XXXXXXX
151111XXXXXXX

2. Un segmento paso a paso: e

El segmento e (abajo a la izquierda) solo se enciende en 0, 2, 6 y 8: e = Σm(0, 2, 6, 8) + d(10…15). En el mapa:

AB \ CD00011110
0010010312
0104050716
11X12X13X15X14
101809X11X10
  • Las cuatro esquinas (m0, m2, m8 y m10, esta última indiferente) forman un grupo con B = 0 y D = 0: B'D'.
  • m6 queda fuera. La columna CD = 10 (m2, m6, m14 y m10) es un grupo de 4 con C = 1 y D = 0 gracias a dos indiferencias: CD'.
e = B'D' + CD'

Sin las indiferencias, m6 solo podría agruparse con m2 (A'CD') y m8 con m0 (B'C'D'), y la expresión sería más larga.

3. Los siete segmentos

Repitiendo el proceso para cada segmento se obtiene la tabla siguiente. Cada expresión la calcula el minimizador del sitio y el enlace abre su mapa:

SegmentoExpresión mínimaTérminosLiterales
aB'D' + C + BD + A46abrir
bB' + C'D' + CD35abrir
cC' + D + B33abrir
dB'D' + B'C + BC'D + CD' + A510abrir
eB'D' + CD'24abrir
fC'D' + BC' + BD' + A47abrir
gB'C + BC' + A + CD'47abrir

Si a mano llegas a otra expresión, puede ser igual de válida: basta con que valga lo mismo en las entradas 0 a 9 y tenga el mismo número de términos y literales.

4. Compartir productos entre segmentos

Sumando los términos de las siete expresiones salen 25 productos, pero muchos se repiten. Un circuito real solo necesita una puerta AND por producto distinto: hay 15. Estos son los que usa más de un segmento:

  • B'D' — a, d, e
  • A — a, d, f, g
  • C'D' — b, f
  • B'C — d, g
  • CD' — d, e, g
  • BC' — f, g

5. Qué cambia con otra convención

Si el 6 se dibuja sin barra superior o el 9 sin barra inferior, cambian las funciones de a y d (y f si el 7 lleva barra lateral). Es un buen ejercicio: modifica los minitérminos del segmento en el minimizador y compara el tamaño de las expresiones.

Practica lo que has leído

Minimiza aprovechando las indiferencias

Escribe una suma de productos mínima para F(A,B,C,D) = Σm(1, 3, 7, 11, 15) + d(0, 2, 5). Usa A, B, C, D y un apóstrofo para negar (por ejemplo A'B).

Sintaxis: productos juntos (AB), suma con +, negación con apóstrofo (A') o con ! delante.

Abrir en la herramienta

Referencias

  • S. L. Harris, D. Harris — Digital Design and Computer Architecture: RISC-V Edition (Morgan Kaufmann) — lógica combinacional, mapas de Karnaugh, decodificador de 7 segmentos y microarquitectura RISC-V
  • M. Karnaugh, “The Map Method for Synthesis of Combinational Logic Circuits”, Transactions of the AIEE, Part I, vol. 72, no. 5, 1953 — artículo original del método de mapas