SOLUCIONES · Examen de Desarrollo · Sistemas Digitales

Desarrollo completo paso a paso, tal y como habría que escribirlo en el examen. Todos los resultados verificados por fuerza bruta con _verif_desarrollo_sistemas.py.

Problema 1 · Alarma (40 p)

a) Tabla de verdad (8 p)

Condición del enunciado: F = A·(P+V+M) + P·V·M. Recorro las 16 combinaciones (A de peso 8, P de 4, V de 2, M de 1):

mAPVMFrazonamiento
000000desarmada, nada activo
100010desarmada, 1 sensor: no basta
200100ídem
300110desarmada, solo 2 sensores
401000
501010
601100
701111antisabotaje: P=V=M=1
810000armada pero ningún sensor
910011armada + movimiento
1010101armada + ventana
1110111
1211001armada + puerta
1311011
1411101
1511111

b) Suma de mintérminos (4 p)

F(A,P,V,M) = Σm(7, 9, 10, 11, 12, 13, 14, 15)

c) Karnaugh (10 p)

VM\AP00011110
00000411208
01010511319
110317115111
100206114110
Grupos (se solapan; el color de cada celda indica uno de sus grupos): A·P = columna AP=11 completa {12,13,15,14} · A·V = {10,11,14,15} · A·M = {9,11,13,15} · P·V·M = {7,15}

Cada grupo de 4 elimina 2 variables; el de 2 elimina 1. Los cuatro grupos son esenciales: m12 solo lo cubre A·P, m10 solo A·V, m9 solo A·M y m7 solo P·V·M — luego no existe cobertura con menos términos y la expresión es mínima.

F = A·P + A·V + A·M + P·V·M  (4 términos, 9 literales — mínimo verificado)

d) Circuito con puertas (8 p)

Primera etapa: tres puertas AND de 2 entradas (A·P, A·V, A·M) y una AND de 3 entradas (P·V·M). Segunda etapa: una OR de 4 entradas que reúne las cuatro salidas y produce F. No hacen falta inversores (ningún literal aparece negado). Total: 5 puertas, 2 niveles.

e) Solo NAND (10 p)

F = AP + AV + AM + PVM
  = AP + AV + AM + PVM ← doble negación (X = X̿)
  = AP · AV · AM · PVM ← De Morgan sobre la negación interior: la OR negada se convierte en AND de negados

Cada barra individual AP, AV, AM, PVM es directamente una NAND, y la barra exterior sobre el producto es otra NAND de 4 entradas. Circuito: NAND(A,P), NAND(A,V), NAND(A,M), NAND(P,V,M) → NAND de 4 entradas → F. 5 puertas NAND, sin inversores. (Regla práctica: en una SOP de 2 niveles basta sustituir todas las AND y la OR final por NAND.) Equivalencia verificada por fuerza bruta en las 16 combinaciones.

Qué valora el corrector: que la tabla salga del enunciado y no al revés (fila 7 y fila 8 son las delicadas: desarmada+3 sensores → 1; armada sin sensores → 0); columnas del mapa en Gray (00,01,11,10); grupos máximos y justificación de esencialidad; y en (e) que la puerta final sea NAND (error típico: dejar la OR).

Problema 2 · Riego automático (40 p)

a) Tabla de verdad (8 p)

Traducción del enunciado: R = S·(M + H·D) — sin agua (S=0) nunca; con agua, riega el modo manual o bien (humedad baja Y de noche).

mMHDSRrazonamiento
000000sin agua
100010agua, pero ni manual ni humedad baja
200100
300110
401000humedad baja y de noche… pero sin agua
501011agua + humedad baja + noche
601100
701110es de día: no se riega
810000manual pero sin agua
910011manual + agua
1010100
1110111manual + agua (da igual el día)
1211000
1311011
1411100
1511111

b) Suma de mintérminos (4 p)

R(M,H,D,S) = Σm(5, 9, 11, 13, 15)

c) Karnaugh (10 p)

DS\MH00011110
00000401208
01011511319
110307115111
100206014010
M·S = {9,11,13,15} (cuadrado columnas MH=11,10 × filas DS=01,11; la celda 13 es compartida) · D·S = {5,13} (fila DS=01, columnas MH=01 y 11)

En el grupo azul las constantes son M=1 y S=1 (H y D cambian) → término M·S. En el rojo: H=1, D=0, S=1 (solo M cambia) → H·D·S. m5 solo lo cubre el rojo y m9 solo el azul → ambos esenciales, cobertura mínima.

R = M·S + H·D·S  (2 términos, 5 literales — mínimo verificado). Equivale a S·(M + H·D), la lectura directa del enunciado.

d) Circuito con puertas (8 p)

Un inversor para D; una AND de 2 (M·S); una AND de 3 (H·D·S); una OR de 2 final. Total 4 puertas, 3 niveles contando el inversor.

e) Solo NAND (10 p)

R = MS + HDS = MS + HDS ← doble negación
  = MS · HDS ← De Morgan

Circuito: NAND(D,D) = D (el inversor como NAND de entradas unidas); NAND(M,S); NAND(H,D,S); y la NAND de 2 entradas final que combina ambas. Total 4 puertas NAND. Verificado por fuerza bruta.

Qué valora el corrector: la traducción "es de noche" = D (fila 7 vale 0 por ser de día: es la trampa del enunciado); que S multiplique a todo (filas 4 y 8 valen 0); y en (e) acordarse de que el inversor también tiene que ser NAND.

Problema 3 · SOP, POS y equivalencia (30 p)

a) SOP mínima (10 p)

De la tabla: F = Σm(1, 3, 5, 6, 7). Mapa (columnas AB en Gray, fila C):

C\AB00011110
000021604
111131715
fila C=1 completa {1,3,5,7} → C (grupo de 4: elimina A y B) · {6,7} columna AB=11 → A·B (la celda 7 se comparte)
FSOP = C + A·B

b) POS mínima (10 p)

Ceros: F = ΠM(0, 2, 4). Agrupo los ceros en el mismo mapa:

C\AB00011110
000021604
111131715
{0,2}: constantes A=0, C=0 → suma (A + C) · {0,4}: constantes B=0, C=0 → suma (B + C) (la celda 0 se comparte; las columnas 00 y 10 son adyacentes por el borde)

Regla POS: en cada grupo de ceros, la variable constante a 0 entra sin negar en la suma y la constante a 1 entra negada.

FPOS = (A + C)·(B + C)

c) Demostración algebraica (10 p)

(A + C)·(B + C) = A·B + A·C + C·B + C·C ← propiedad distributiva (desarrollo del producto)
= A·B + A·C + B·C + C ← idempotencia: C·C = C
= A·B + C·(A + B + 1) ← distributiva (sacar factor común C)
= A·B + C·1 ← elemento dominante: A + B + 1 = 1
= A·B + C ← elemento neutro: C·1 = C
Coincide con la SOP del apartado (a) ✔ (verificado además por tabla de verdad completa).
Qué valora el corrector: la regla invertida del POS (0 → variable sin negar) que todo el mundo confunde; ver el grupo {0,4} que cruza el borde; y en (c) nombrar los teoremas — el atajo directo (A+C)(B+C) = AB + C es justamente la segunda distributiva (X+Y)(X+Z) = X+YZ con X=C, otra justificación válida en un solo paso.

Problema 4 · Don't cares: BCD ≥ 6 (30 p)

a) Tabla de verdad con X (8 p)

mABCDdígitoF
0000000
1000110
2001020
3001130
4010040
5010150
6011061
7011171
8100081
9100191
10–151010 … 1111X
F = Σm(6, 7, 8, 9) + d(10, 11, 12, 13, 14, 15)

b) SOP mínima con X (10 p)

CD\AB00011110
000004X1218
010105X1319
110317X15X11
100216X14X10
A = las dos columnas AB=11,10 completas {8,9,12,13,15,11,14,10}: grupo de 8 usando las X 10–15 como 1 · B·C = {6,7,15,14} usando 14 y 15 como 1 (celdas compartidas con el azul)

Sin las X, el mejor grupo para 8 y 9 sería A·B·C (3 literales); usando las seis X como 1, la mitad derecha entera es un grupo de 8 → un solo literal A. Igual con B·C: pasa de grupo de 2 a grupo de 4.

FSOP = A + B·C  (mínimo verificado)

c) POS mínima (8 p)

Agrupo los ceros {0,1,2,3,4,5}; aquí no conviene usar ninguna X como 0 (los ceros ya forman dos grupos de 4):

CD\AB00011110
000004X1218
010105X1319
110317X15X11
100216X14X10
columna AB=00 {0,1,3,2}: A=0, B=0 → (A + B) · {0,1,4,5} (celdas 0 y 1 compartidas): A=0, C=0 → (A + C)
FPOS = (A + B)·(A + C)

d) Comprobación algebraica (4 p)

(A + B)·(A + C) = A·A + A·C + A·B + B·C ← distributiva
= A + A·C + A·B + B·C ← idempotencia: A·A = A
= A·(1 + C + B) + B·C = A + B·C ← factor común + elemento dominante (o directamente absorción: A + A·X = A)
Coinciden ✔. (También sale en un paso con la segunda distributiva: (A+B)(A+C) = A + B·C.)
Qué valora el corrector: justificar QUÉ X se usan y para qué (en SOP las seis como 1; en POS ninguna como 0) — decir "las X valen lo que me convenga en cada mapa por separado" es exactamente la idea. Las dos expresiones solo tienen obligación de coincidir en las entradas válidas 0–9; aquí además coinciden en todo el mapa.

Problema 5 · Álgebra de Boole y De Morgan (30 p)

a) F₁ = A·B + A·B̄·C + Ā·C (10 p)

F₁ = A·(B + B·C) + A·C ← distributiva (factor común A)
= A·(B + C) + A·C ← teorema de reducción/absorción generalizada: X + X̄·Y = X + Y
= A·B + A·C + A·C ← distributiva
= A·B + C·(A + A) ← distributiva (factor común C)
= A·B + C·1 ← complemento: A + Ā = 1
F₁ = A·B + C ✔ (verificado con las 8 combinaciones)

b) F₂ = [(Ā + B) · (C·D̄)̄ ]̄ (10 p)

F₂ = (A + B) + (C·D) ← De Morgan: el producto negado es suma de negados
= A·B + C·D ← De Morgan en el primer sumando + doble negación en el segundo
F₂ = B + C·D ✔ (verificado con las 16 combinaciones)

c) F₃ = A·B + Ā·C + B·C (10 p)

Teorema del consenso: X·Y + X̄·Z + Y·Z = X·Y + X̄·Z. Con X=A, Y=B, Z=C, el término B·C es el consenso de los otros dos y es redundante:

F₃ = A·B + A·C

Demostración por tabla (solo hace falta mirar dónde B·C = 1, filas B=C=1):

ABCA·BĀ·CB·CF₃ completasin B·C
00000000
00101011
01000000
01101111
10000000
10100000
11010011
11110111

Cuando B·C=1 (filas 011 y 111), siempre hay otro término que ya vale 1 (marcado en azul): si A=1 lo cubre A·B y si A=0 lo cubre Ā·C. Por eso quitarlo no cambia la función. Ambas columnas finales son idénticas ✔.

Qué valora el corrector: el nombre exacto de cada teorema (aquí caen los puntos); en (b), aplicar De Morgan de fuera hacia dentro y no perder la doble negación; en (c), citar "consenso" y que la tabla muestre columna a columna la igualdad.

Problema 6 · Sumador completo y ripple de 4 bits (30 p)

a) Tabla de verdad (8 p)

S es el bit de suma y Cout el de acarreo: juntos codifican en binario cuántos unos entran (A + B + Cin = 2·Cout + S).

mABCinA+B+CinCoutS
0000000
1001101
2010101
3011210
4100101
5101210
6110210
7111311
S = Σm(1,2,4,7) · Cout = Σm(3,5,6,7)

b) Expresiones mínimas (10 p)

Cout:

Cin\AB00011110
000021604
101131715
{6,7} → A·B · {5,7} → A·Cin · {3,7} → B·Cin (la celda 7 está en los tres)

S:

Cin\AB00011110
000120614
111031705

Patrón de tablero de ajedrez: ningún 1 tiene un 1 adyacente → no hay grupos posibles y la SOP no simplifica (4 mintérminos de 3 literales). Es la firma de la función paridad.

Cout = A·B + A·Cin + B·Cin (mínimo verificado)  ·  S = A ⊕ B ⊕ Cin (paridad impar de las tres entradas)

c) Circuito (6 p)

Forma estándar con dos semisumadores: S = XOR(XOR(A,B), Cin) — dos puertas XOR en cascada. Cout = tres AND de 2 entradas (A·B, A·Cin, B·Cin) hacia una OR de 3 (equivalente: A·B + Cin·(A⊕B), que reutiliza la primera XOR).

d) Encadenado de 4 bits y ejemplo (6 p)

Se colocan 4 sumadores completos FA₀…FA₃, uno por bit. El Cout de cada etapa se conecta al Cin de la siguiente (por eso "acarreo propagado", ripple-carry) y Cin,0 = 0. Ejemplo 0101 + 0110 (5 + 6):

etapaaᵢbᵢcᵢ (entra)sᵢcᵢ₊₁ (sale)
FA₀10010
FA₁01010
FA₂11001
FA₃00110
Resultado s₃s₂s₁s₀ = 1011 = 11₁₀ = 5 + 6 ✔, acarreo final 0. (Verificado bit a bit por el script.)
Qué valora el corrector: la lectura "CoutS es el número de unos en binario"; explicar por qué S no agrupa (tablero de ajedrez → XOR); y en el ejemplo, escribir el acarreo que ENTRA y el que SALE de cada etapa, no solo el resultado.

Problema 7 · Decodificador y multiplexores (30 p)

F(A,B,C) = Σm(1, 2, 4, 7). (Observación útil: son las combinaciones con un número impar de unos → F = A⊕B⊕C, verificado.)

a) Decodificador 3:8 + una puerta (10 p)

Conecto A, B, C a las entradas de selección (A en la de mayor peso). Un decodificador con salidas activas a nivel alto pone a 1 exactamente la salida Oi cuyo índice i es la entrada en binario: es decir, Oi ES el mintérmino mi. Como F es la suma de los mintérminos 1, 2, 4 y 7:

F = O₁ + O₂ + O₄ + O₇ → basta una puerta OR de 4 entradas conectada a esas cuatro salidas.

(Si las salidas fueran activas a nivel bajo, cada Oi sería mi y por De Morgan la puerta sería una NAND de 4 entradas: F = m₁·m₂·m₄·m₇.)

b) MUX 8:1 sin puertas (10 p)

Selección S₂S₁S₀ = A B C. El MUX saca a su salida la entrada Ii con i = valor binario de la selección; por tanto basta cablear en cada Ii el valor que F toma en el mintérmino i:

I₁ = I₂ = I₄ = I₇ = 1 · I₀ = I₃ = I₅ = I₆ = 0 (verificado contra la tabla)

c) MUX 4:1 con C como variable residual (10 p)

Selección S₁S₀ = A B. Emparejo las filas de la tabla que comparten AB y miro cómo depende F de C:

ABF(C=0)F(C=1)entrada
00m0: 0m1: 1I₀ = C
01m2: 1m3: 0I₁ = C
10m4: 1m5: 0I₂ = C
11m6: 0m7: 1I₃ = C
I₀ = C, I₁ = C, I₂ = C, I₃ = C (más un inversor para C). Verificado por fuerza bruta.
Qué valora el corrector: la frase clave "cada salida del decodificador es un mintérmino"; en (b) el orden correcto de las I (I₂ es AB C = 010, no la tercera fila que a uno se le ocurra); en (c) el método fila-a-fila con los cuatro casos 0, 1, C, C.

Problema 8 · Sistema de memoria 64 KiB con chips 16K×4 (30 p)

a) Líneas de dirección y de datos (6 p)

Sistema: 64K palabras = 64 · 1024 = 65 536 = 2¹⁶ → 16 líneas de dirección (A₀…A₁₅)
Palabra de 8 bits → 8 líneas de datos (D₀…D₇)
Cada chip: 16K = 16 · 1024 = 16 384 = 2¹⁴ → 14 líneas de dirección por chip (y 4 de datos)

b) Número de chips (6 p)

Por capacidad: total = 64 KiB = 65 536 · 8 = 524 288 bits; chip = 16 384 · 4 = 65 536 bits → 524 288 / 65 536 = 8 chips
Por organización: anchura 8/4 = 2 chips en paralelo; profundidad 64K/16K = 4 filas → 2 · 4 = 8 chips ✔ (las dos cuentas coinciden)

c) Organización y lógica de selección (8 p)

2 chips en paralelo forman cada palabra: uno da los bits D₇–D₄ y el otro D₃–D₀ (comparten dirección y selección). Cada pareja es un banco de 16K×8; hay 4 bancos. Las líneas A₀…A₁₃ van en paralelo a todos los chips (dirección dentro del banco). Las dos líneas altas A₁₅A₁₄ van a un decodificador 2:4 (salidas activas a nivel bajo) cuyas salidas atacan las entradas CS de cada pareja: A₁₅A₁₄ = 00 activa el banco 0, 01 el banco 1, 10 el banco 2 y 11 el banco 3. Así, en todo momento hay exactamente un banco seleccionado.

d) Mapa de direcciones (10 p)

Cada banco ocupa 16K = 4000₁₆ direcciones (16 384 = 0x4000):

bancoA₁₅A₁₄inicialfinal
0000000h3FFFh
1014000h7FFFh
2108000hBFFFh
311C000hFFFFh
Comprobación: la última dirección FFFFh = 65 535 = 2¹⁶ − 1 = total de palabras − 1 ✔ (todas las fronteras verificadas por el script).
Qué valora el corrector: distinguir KiB (bytes) de Kbit al calcular la capacidad del chip (16K×4 = 8 KiB, no 16); la doble cuenta del apartado (b); decir explícitamente qué líneas van al chip y cuáles al decodificador; y el mapa en hex con el final en xFFF (error típico: escribir 4000h como final del banco 0).

Problema 9 · Representación y aritmética Ca2 (30 p)

a) Conversiones (10 p)

237₁₀ → binario (divisiones sucesivas entre 2, el resto se lee de abajo arriba):

237/2 = 118 r 1 · 118/2 = 59 r 0 · 59/2 = 29 r 1 · 29/2 = 14 r 1 · 14/2 = 7 r 0 · 7/2 = 3 r 1 · 3/2 = 1 r 1 · 1/2 = 0 r 1
237₁₀ = 11101101₂. Comprobación: 128+64+32+8+4+1 = 237 ✔
Octal (grupos de 3 desde la derecha): 011 | 101 | 101 → 355₈
Hexadecimal (grupos de 4): 1110 | 1101 → E | D → ED₁₆

B5₁₆: B·16 + 5 = 11·16 + 5 = 181₁₀; B = 1011, 5 = 0101 → 10110101₂.

110101,11₂: 32 + 16 + 0 + 4 + 0 + 1 + 0,5 + 0,25 = 53,75₁₀ (pesos 2⁵…2⁰ y 2⁻¹, 2⁻²).

b) Aritmética en Ca2 con 8 bits (12 p)

92 + 55: 92 = 01011100, 55 = 00110111.

  01011100 + 00110111 = 10010011 · acarreo final C = 0
Signos: positivo + positivo con resultado de bit de signo 1 → desbordamiento V = 1. El resultado leído en Ca2 sería −109, pero es inválido: el valor verdadero 147 no cabe en 8 bits (máximo +127).

58 − 91 = 58 + (−91): 91 = 01011011 → invierto 10100100 → sumo 1 → −91 = 10100101.

  00111010 + 10100101 = 11011111 · C = 0
Signos distintos → nunca puede haber desbordamiento: V = 0. Resultado válido: 11011111 → invertir+1 → 00100001 = 33 → −33 ✔ (58−91 = −33).

(−87) + (−60): 87 = 01010111 → −87 = 10101001; 60 = 00111100 → −60 = 11000100.

  10101001 + 11000100 = 1|01101101 · acarreo final C = 1 (se descarta el noveno bit)
Signos: negativo + negativo con resultado de bit de signo 0 → V = 1. El patrón 01101101 (= +109) es inválido: el valor verdadero −147 está por debajo de −128. Nota clave: aquí C = 1 y aun así hay desbordamiento — el acarreo NO indica el error en Ca2, lo indican los signos.

c) Rangos (8 p)

sistema (8 bits)mínimomáximorazón
sin signo02552⁸ − 1
signo-magnitud−127+127±(2⁷−1), con doble cero
Ca2−128+127−2⁷ … 2⁷−1, cero único
12 bits en Ca2: −2¹¹ … 2¹¹−1 = −2048 … +2047
−200: con 8 bits el mínimo es −128 → no cabe. Con n=9: rango −256…+255 → cabe. Mínimo 9 bits; su representación: 200 = 011001000 → invertir+1 → 100111000
Qué valora el corrector: el método visible (divisiones y agrupaciones escritas); en Ca2, la comprobación de V por regla de signos y la frase "C y V son cosas distintas" con el tercer caso como ejemplo; los rangos justificados con potencias de 2, no de memoria.

Problema 10 · Biestables y contador módulo 8 (30 p)

a) Tablas características (8 p)

Biestable D
DQ⁺
00
11
Biestable JK
JKQ⁺
00Q (mantiene)
010 (borra)
101 (carga)
11Q (conmuta)

El JK aporta respecto al SR que la combinación J=K=1 (prohibida como S=R=1 en el SR) está definida y es útil: conmutación (toggle).

b) Diseño del contador (16 p)

Paso 1 — tabla de transiciones y excitaciones. Tabla de excitación del JK: 0→0: J=0,K=X · 0→1: J=1,K=X · 1→0: J=X,K=1 · 1→1: J=X,K=0.

Q₂Q₁Q₀Q₂⁺Q₁⁺Q₀⁺J₂K₂J₁K₁J₀K₀
0000010X0X1X
0010100X1XX1
0100110XX01X
0111001XX1X1
100101X00X1X
101110X01XX1
110111X0X01X
111000X1X1X1

Paso 2 — Karnaugh de cada excitación (con tantas X, salen a ojo; se muestran J₁ y J₂ como ejemplo, columnas Q₂Q₁ en Gray, fila Q₀):

Q₀\Q₂Q₁00011110
00XX0
11XX1
J₁: fila Q₀=1 completa → J₁ = Q₀ (y por simetría K₁ = Q₀)
Q₀\Q₂Q₁00011110
000XX
101XX
J₂: grupo {Q₁=1, Q₀=1} → J₂ = Q₁·Q₀ (y K₂ = Q₁·Q₀)
Expresiones mínimas (verificadas como óptimas por Quine-McCluskey): J₀ = K₀ = 1 · J₁ = K₁ = Q₀ · J₂ = K₂ = Q₁·Q₀. Patrón general del contador binario: cada bit conmuta cuando todos los de menor peso valen 1.

Paso 3 — comprobación (simulada por el script para el ciclo completo 0→1→…→7→0). Ejemplos: desde 011: J₀=K₀=1 → Q₀ conmuta a 0; J₁=K₁=Q₀=1 → Q₁ conmuta a 0; J₂=K₂=Q₁Q₀=1 → Q₂ conmuta a 1 → 100 ✔. Desde 111: los tres conmutan → 000 ✔.

c) Divisor de frecuencia (6 p)

Q₀ conmuta en cada flanco de reloj → su onda completa un ciclo cada 2 pulsos: f(Q₀) = fCLK/2. Q₁ conmuta la mitad de veces (f/4) y Q₂ una de cada ocho: f(Q₂) = fCLK/8. En general, un contador módulo 2ⁿ divide la frecuencia entre 2ⁿ.

Qué valora el corrector: usar la tabla de excitación del JK con sus X (no confundirla con la característica); explotar las X en los mapas para llegar a las expresiones de un literal; y la comprobación explícita de al menos una transición "difícil" (011→100 o 111→000).

Problema 11 · Comparador de 2 bits (30 p)

a) Tabla de verdad (10 p)

mA₁A₀B₁B₀XYG (X>Y)
00000000
10001010
20010020
30011030
40100101
50101110
60110120
70111130
81000201
91001211
101010220
111011230
121100301
131101311
141110321
151111330
G = Σm(4, 8, 9, 12, 13, 14)

b) Karnaugh (12 p)

B₁B₀\A₁A₀00011110
00001411218
01010511319
110307015011
100206114010
A₁·B₁ = {8,9,12,13} (cuadrado columnas A₁A₀=11,10 × filas B₁B₀=00,01; la 12 se comparte) · A₀·B₁·B₀ = {4,12} (fila 00) · A₁·A₀·B₀ = {12,14} (columna 11, filas 00 y 10 adyacentes por el borde)
G = A₁·B₁ + A₀·B₁·B₀ + A₁·A₀·B₀  (3 términos, 8 literales — mínimo verificado por Quine-McCluskey)

c) Circuito e interpretación (8 p)

Dos inversores (B₁, B₀), una AND de 2 y dos AND de 3, y una OR de 3. Interpretación de cada término:

Comprobaciones: X=2 (10), Y=1 (01): A₁=1, B₁=0 → primer término = 1 → G=1 ✔ (2>1). X=1 (01), Y=3 (11): A₁=0 anula el 1º y el 3º; B₁=1 anula el 2º → G=0 ✔ (1<3).

Qué valora el corrector: ordenar bien las variables al numerar mintérminos (A₁A₀B₁B₀, no alternadas); el grupo {12,14} que cruza el borde superior-inferior; y la interpretación semántica de los términos, que demuestra que entiendes el circuito y no solo el método.
Verificación: todos los mintérminos, mapas, expresiones mínimas (incluida su minimalidad por Quine-McCluskey exhaustivo), equivalencias NAND/POS, conversiones, operaciones en Ca2, cuentas de memoria y la secuencia del contador han sido comprobados por fuerza bruta con _verif_desarrollo_sistemas.py (resultado: TODO OK).