Ir al contenido

Trabajo — código Hamming y corrección de error

En muchos cursos de digitales el primer trabajo escrito no es un circuito: es una reseña de Richard Hamming más un ejemplo de código Hamming (detectar y corregir un bit errado). Aquí tienes las dos mitades, para el informe y para el parcial.

1. Reseña histórica (lo que va en el trabajo)

Sección titulada «1. Reseña histórica (lo que va en el trabajo)»

Usa esta línea de tiempo. No copies el párrafo entero: reelabora y cita.

  • Nació en Chicago. Doctorado en matemáticas (Universidad de Illinois, 1942).
  • Proyecto Manhattan (Los Álamos): no diseñaba bombas; corría cálculos en las computadoras electromecánicas. Los fines de semana las máquinas se detenían por errores de bit y él tenía que repetir el trabajo a mano. Esa rabia es el origen del código.
  • Bell Labs (1946–1976), junto a Shannon y otros. En 1950 publica Error Detecting and Error Correcting Codes en el Bell System Technical Journal.
  • Define la distancia de Hamming: cuántos bits hay que cambiar para pasar de una palabra válida a otra. Si la distancia mínima es 3, puedes corregir 1 error (o detectar 2).
  • Premio Turing 1968. Hay una medalla IEEE con su nombre. Frase que citan en informes: “The purpose of computing is insight, not numbers.”

Antes, un bit de paridad solo detectaba (número impar de unos → “algo falló”) y la máquina paraba. Hamming quiso que el sistema localizara cuál bit y lo invirtiera, sin repetir todo el cálculo. Por eso las posiciones de paridad son potencias de 2: cada paridad “vota” un subconjunto, y el patrón de votos es la dirección del error (el síndrome).

  1. Quién fue Hamming y en qué laboratorio trabajó (no basta “un científico”).
  2. Diferencia entre detectar y corregir.
  3. Distancia de Hamming con un ejemplo de 4 bits.
  4. Un código (7,4) resuelto a mano (siguiente sección).
  5. Una aplicación actual: RAM ECC, satélites, QR, almacenamiento — una frase, no un catálogo.

Extensión habitual: 3–6 páginas. Historia ≈ 40 %, ejemplo numérico ≈ 40 %, conclusión ≈ 20 %.

2. El código Hamming (7,4) — lo que tienes que saber hacer

Sección titulada «2. El código Hamming (7,4) — lo que tienes que saber hacer»

(7,4) = 4 bits de datos + 3 bits de paridad → palabra de 7 bits. Corrige 1 error (SEC). No corrige dos errores a la vez (para eso se añade un bit extra: Hamming extendido).

Posiciones numeradas 1 a 7 (sí, desde 1). Las potencias de 2 son paridad:

Posición1234567
Rol(p_1)(p_2)(d_1)(p_4)(d_2)(d_3)(d_4)

Paridad par (la más usada en clase): cada (p) se elige para que su grupo tenga número par de unos.

  • (p_1): posiciones 1, 3, 5, 7
  • (p_2): posiciones 2, 3, 6, 7
  • (p_4): posiciones 4, 5, 6, 7

Coloca los datos: pos. 3,5,6,7 → 1 0 1 1
Palabra incompleta: _ _ 1 _ 0 1 1

  • Grupo (p_1) (1,3,5,7): p1, 1, 0, 1 → unos en datos = 2 (par) → (p_1 = 0)
  • Grupo (p_2) (2,3,6,7): p2, 1, 1, 1 → 3 unos → (p_2 = 1)
  • Grupo (p_4) (4,5,6,7): p4, 0, 1, 1 → 2 unos → (p_4 = 0)

Palabra enviada: 0 1 1 0 0 1 1

En recepción vuelves a calcular las tres paridades. Si un grupo sale impar, ese bit de síndrome vale 1. El número binario (p_4 p_2 p_1) es la posición del error (0 = no hay error).

Supón que llega 0 1 1 0 0 1 0 (se cayó el bit 7).

  • (p_1) del recibido: pos 1,3,5,7 = 0,1,0,0 → impar → (s_1 = 1)
  • (p_2): 1,1,1,0 → impar → (s_2 = 1)
  • (p_4): 0,0,1,0 → impar → (s_4 = 1)

Síndrome (s_4 s_2 s_1 = 111_2 = 7) → invierte el bit 7 → recuperas 0110011.

Un bit de paridad par de 4 bits es XOR en cascada: (p = a \oplus b \oplus c \oplus d). En hardware eso son compuertas XOR (7486 en TTL). El Hamming no es “otra materia”: es paridad varias veces, mirando subconjuntos.

  • Portada con tu nombre y la materia (Sistemas lógicos / Digitales — no hace falta que sea UNEXPO).
  • Cita a Hamming 1950 y al capítulo de códigos de Floyd o Rojas (enlaces CALETAS arriba).
  • Un diagrama de posiciones 1–7; no solo texto.
  • Un segundo ejemplo distinto de 1011 (cámbiale los datos) para que no parezca copiado.

Cuando cierres el informe, Siguiente sigue a álgebra booleana. El trabajo de Proteus es del parcial IV (cierre de teoría); en el menú está junto a este, bajo Trabajos.