Вы находитесь на странице: 1из 31

Circuitos Digitales I

EL-3213

Prof: Luis Tarazona

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 0

Circuitos Digitales I

Introducción

Sistemas Digitales y Sistemas


Analógicos

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 1


Representaciones numéricas
analógicas y digitales
! Representación analógica
– Una cantidad se representa con el valor de una
variable física proporcional al valor de la cantidad.
– Estas pueden variar gradualmente sobre un intervalo
continuo de valores
¿Puede Ud. dar
! Representación digital ejemplos de c/u?
– Las cantidades no se representan por valores
proporcionales sino por símbolos denominados
dígitos
– Las cantidades varían en pasos o etapas discretas

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 2

Sistemas digitales y sistemas


analógicos
! Sistema digital
– Combinación de dispositivos diseñados para
manipular cantidades físicas o información en forma
digital.
– Pueden ser electrónicos, mecánicos, magnéticos o
neumáticos
! Sistema analógico
– Combinación de dispositivos diseñados para
manipular cantidades físicas representadas en forma
analógica.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 3


Ventajas de los sistemas digitales

! Generalmente son más fáciles de diseñar


! Facilidad para almacenar la información
! Mayor exactitud y precisión
! Pueden ser programables
! Mayor inmunidad al ruido
! Mayor densidad de circuitería en las pastillas
de circuitos integrados

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 4

Limitaciones de los sistemas digitales

El mundo real es fundamentalmente analógico,


así que es necesario:

1. Convertir las entradas analógicas del


sistema a digital.
2. Procesar la información digital.
3. Convertir las salidas digitales a analógicas.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 5


Ej: Diagrama de bloques de un
controlador digital
Cantidad a
medir
(analógica)
Dispositivo de Convertidor Procesamiento
medición analógico digital digital

Señal de
Convertidor control
Controlador
digital analógico (analógica)

Señal digital
Señal analógica

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 6

Representación de dígitos binarios

Tecnología 0 lógico 1 lógico


Lógica de relevadores Cto. abierto Cto. cerrado
Lógica TTL 0 – 0.8 V 2.0 – 5.0 V
Lógica CMOS 0 – 2.0 V 3.0 – 5.0 V
Fibras ópticas Sin luz Con luz
Cinta o disco magnétcio Sin flujo inv. Flujo invertido
Memoria dinámica C. Cargado C. decargado

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 7


Compuertas lógicas (1)
! Compuertas básicas:
– Son los circuitos que implementan las funciones lógicas
básicas. Permiten construir cualquier función lógica como
combinación de éstos
! Compuerta AND ( • )
– La salida es 1 lógico si todas las entradas son 1 lógico
! Compuerta OR ( + )
– La salida es 1 lógico si una o más entradas son 1 lógico
! Compuerta NOT ( ‘ ó ¯ )
– La salida es el inverso o complemento de la entrada

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 8

Compuertas lógicas (2)

Compuerta AND Compuerta OR Compuerta NOT

Tabla de verdad Tabla de verdad Tabla de verdad


A B A.B A B A+B A A’
0 0 0 0 0 0 0 1
0 1 0 0 1 1 1 0
1 0 0 1 0 1
1 1 1 1 1 1

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 9


Compuertas lógicas (3)

Compuerta NAND Compuerta NOR Compuerta XOR

Tabla de verdad Tabla de verdad Tabla de verdad


A B (A.B)’ A B (A+B)’ ⊕B
A B A⊕
0 0 0 0 0 0 0 0 0
0 1 0 0 1 1 0 1 1
1 0 0 1 0 1 1 0 1
1 1 1 1 1 1 1 1 0

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 10

Circuitos Integrados digitales (1)

Los circuitos integrados se clasifican de


acuerdo al número de compuertas que
poseen:
! Integración a pequeña escala (SSI – small
scale integration)
– 1 a 20 compuertas/chip
– Compuertas y flipflops
– Conocidos también como glue logic (lógica de unión)

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 11


Circuitos Integrados Digitales (2)

! Integración a mediana escala (MSI – medium


scale integration)
– 20 a 200 compuertas
– Decodificadores, multiplexores, contadores, etc.
! Integración a larga escala (LSI – large scale
integration)
– 200 a 20000 compuertas
– Memorias, microprocesadores de 8 bits, dispositivos
de lógica programable.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 12

Circuitos Integrados Digitales (3)

! Integración a muy grande escala (VLSI –


very large scale integration)
– Se define un VLSI de acuerdo a la cantidad de
transistores, no de compuertas
– Cualquier IC con máas de 500K transistores es un
VLSI
– Memorias > 1 Mb, microprocesadores de 32 bits,
ASICs (aplication specific integrated circuit), DSPs
(digital signal processors)

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 13


Tipos de circuitos integrados digitales

! Los dispositivos lógicos mas comúnmente


utilizados se dividen en dos categorías:
! Bipolar
– TTL (series 74, 74LS, 74AS, 74ALS, 74F)
– RTL, DTL, ECL, I2L
! MOS
– CMOS (series 4000xx, 74C, 74HC, 74HCT)
– pMOS, nMOS

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 14

Tipos de circuitos integrados digitales

! Además se tienen diferentes categorías de


dispositivos:
– Chips discretos de pequeña y mediana escala de
integración (SSI y MSI)
• Compuertas, flipflops, contadores y otras funciones
– Dispositivos lógicos programables (PLDs)
• Memorias no volátiles.
• Memorias de lectura/escritura
• PLA, PAL, GAL

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 15


Definiciones (1)
! Nivel lógico:
– Es un rango de valores de voltaje, corriente o
culaquier otra cantidad física, que representa el valor
de dígito binario (1 ó 0).
– En CMOS, TTL y ECL los niveles lógicos se
representan mediante rangos de voltaje
– El nivel ALTO (H) es el rango más positivo
– El nivel BAJO (L) es el rango más negativo
! Inmunidad al ruido:
– Capacidad de un circuito lógico para soportar señales
de ruido superpuestas al nivel lógico en su entrada

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 16

Definiciones (2)

! Voltaje de entrada mínimo de nivel alto (VIHmin)


– Mínimo valor de entrada garantizado para ser reconocido como
un ALTO
! Voltaje de salida mínimo de nivel alto (VOHmin)
– Mínimo valor de salida garantizado en el estado ALTO
! Voltaje de entrada máximo de nivel bajo (VILmax)
– Máximo valor de entrada garantizado para ser reconocido como
un BAJO
! Voltaje de salida máximo de nivel bajo (VOLmax)
– Máximo valor de salida garantizado en el estado BAJO

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 17


Definiciones (3)

! Niveles lógicos y márgenes de ruido


VHmax
Nivel Margen de ruido
ALTO CD
VOHmin Estado alto

VIHmin

VILmix
Nivel VOLmax Margen de ruido
BAJO VLmin CD
SALIDA ENTRADA Estado bajo

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 18

Circuitos Digitales I

Tema I

Sistemas Numéricos y
Códigos

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 19


Sistemas numéricos digitales

! Los más utilizados son:


– Sistema decimal (base 10)
– Sistema binario (base 2)
– Sistema octal (base 8)
– Sistema hexadecimal (base 16)
! Estos sistemas son posicionales
– El número se representa como una cadena de dígitos
donde cada posición tiene un peso asociado (una
potencia de la base del sistema, correspondiente a la
posición)

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 20

Sistema decimal (1)

! Consiste de 10 símbolos : 0,1,2,...9


! Utilizado en el día a día por las personas
! Ejemplo:
10-1
10-2
10-3
105
104
103
102
101

3 5 2 0 7 . 9 8 4

Dígito Más Punto decimal Dígito Menos


Significativo Significativo
(MSD) (LSD)

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 21


Sistema decimal (2)
! En general, un número en decimal con p
dígitos a la izquierda del punto decimal y n
dígitos a la derecha del punto decimal se
representa como:
dp-1 dp-2 …d1d0 .d-1 d-2 … d-n

! El valor del número viene dado por:


p −1
D= ∑ i
d
i =− n
⋅ 10 i

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 22

Sistema binario (1)

! Consiste de 2 símbolos : 0,1


– A c/u de estos símbolos se le denomina dígitos
binario (binary digit = bit)
! Utilizado en los sistemas digitales
! Ejemplo:
2-1
2-2
2-3
25
24

22
21
23

1 1 0 0 1 . 1 0 1

Bit Más Punto binario Bit Menos


Significativo Significativo
(MSB) (LSB)

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 23


Sistema binario (2)
! En general, un número en binario con p
dígitos a la izquierda del punto binario y n
dígitos a la derecha del punto binario se
representa como:
dp-1 dp-2 …d1d0 .d-1 d-2 … d-n

! El valor del número viene dado por:


p −1
B= ∑ i
d ⋅
i =− n
2 i

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 24

Sistema octal y hexadecimal

! Utilizados como representaciones breves


para números con múltiples dígitos binarios
(bits), dado que sus bases (8 y 16) son
potencias de 2
– La conversión de binario a octal se realiza agrupando
bits de 3 en tres a partir del punto binario (hacia la
derecha o izquierda) agregando ceros para obtener
múltiplos de 3 bits.
– La conversión de binario a hexadecimal es similar,
pero agrupando bits de 4 en 4.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 25


Sistema octal y hexadecimal

! Ejemplos:

110112 = 0110112 = 338


111010.011012 = 111010.0110102 = 72.328

110112 = 000110112 = 1B16


111010.011012 = 00111010.011010002 = 3A.6816

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 26

Conversión de decimal a base r (1)

! Conversión de la parte entera:


Si expandimos la fórmula:
p −1
D = ∑ d i ⋅ 10 i
i =0

= d p −1 ⋅ r p −1 + d p − 2 ⋅ r p − 2 + L + d1 ⋅ r + d 0
Y la escribimos de manera anidada, obtenemos:

D = ((L (d p −1 ) ⋅ r + d p − 2 ) ⋅ r + L) L r + d1 ) ⋅ r + d 0

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 27


Conversión de decimal a baser r (2)

D = ((L (d p −1 ) ⋅ r + d p − 2 ) ⋅ r + L) L r + d1 ) ⋅ r + d 0

Nota que si dividimos la expresión anterior por r


obtenemos como residuo a d0 y como cociente la
expresión:
Q = ((L (d p −1 ) ⋅ r + d p − 2 ) ⋅ r + L) L r + d 1

Esta última expresión tiene la misma forma que la


obtenida inicialmente. Sucesivas divisiones por r a
cada nuevo cociente obtenido nos darán como
residuo los dígitos d1, d2, . . . dp-1

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 28

Suma y resta de números binarios

! Se efectúan del mismo modo que en


decimal, usando acarreos y préstamos
! Cuando se necesiten números negativos, es
necesario buscar una representación
adecuada:
– Representación de magnitud y signo:
• Utilizada en la vida diaria
– Sistemas numéricos en complemento
• Utilizada en sistemas digitales

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 29


Tabla de suma y resta en binario

cent o bent x y csal s bsal d


0 0 0 0 0 0 0
0 0 1 0 1 1 1
0 1 0 0 1 0 1
0 1 1 1 0 0 0
1 0 0 0 1 1 1
1 0 1 1 0 1 0
1 1 0 1 0 0 0
1 1 1 1 1 1 1

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 30

Ejemplo de sumas y restas en binario


! Suma:
Acarreo 11101000 0
X 104 01101000
Y +235 + 11101011
X+Y 339 1 01 010011
! Resta:
Préstamo 01000011 0
X 150 10010110
Y - 67 - 01000011
X-Y 83 0 01 010011
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 31
Representación de números negativos

! Representación de magnitud y signo


! Representación de complemento

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 32

Representación de magnitud y signo


! Un número consiste de una magnitud y un
símbolo que indica si la magnitud es positiva
o negativa.
! En el sistema binario, se utiliza un bit extra
(bit de signo)
– Generalmente es el MSB
– MSB=0: positivo, MSB=1: negativo
– Un entero de n bits en esta representación está en el
rango :
-(2n – 1 – 1) hasta +(2n – 1 – 1)

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 33


Representación de complemento

! En este caso, el número se hace negativo al


tomar su complemento (definido por el
sistema)
! Dos formas:
– Complemento de base
– Complemento de base disminuida (base – 1)
! Se trabaja con un número fijo de dígitos n
! Es posible incrementar el número de dígitos
mediante la extensión del signo
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 34

Complemento de base

! El complemento de base de un número D de n


dígitos es:
D’ = rn – D
! Si el complemento de un dígito d se define como:
d’ = (r – 1) – d , entonces D’ puede obtenerse más
fácilmente al complementar los dígitos individuales
y sumarle 1 al resultado ya que:
D’ = (rn – 1) – D + 1
! Nota que (rn – 1) tiene la forma: mmmm...m, donde
m = (r – 1).
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 35
Complemento de base - Ejemplos
D = 347610 (n = 4)
D’ = 104 – 3476 = 652410
! O también :
3’ = 9 – 3 = 6; 4’ = 5; 7’ = 2; 6’ = 3
D’ = 6523 + 1 = 6524

D = 1010102
D’ = 010101 + 1 = 0101102

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 36

Complemento de base disminuida

! El complemento de base disminuida de un


número D de n dígitos es:
! D’ = rn – 1 – D
! Puede obtenerse más fácilmente al complementar
los dígitos individuales.

Existe una sola representación del cero usando


complementos de base y de base disminuida.
Existe un número negativo extra en la representación
de complemento de base.
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 37
Complemento de base disminuida -
Ejemplos
D = 347610 (n = 4)
D’ = 104 – 1 – 3476 = 652310
! O también :
3’ = 9 – 3 = 6; 4’ = 5; 7’ = 2; 6’ = 3
D’ = 652310

D = 1010102
D’ = 0101012

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 38

Complemento a dos

! Este es el complemento de base para


números binarios
! En este caso, el MSB sirve como bit de signo
! (MSB = 1 implica que el número es negativo)
! En el sistema posicional, el peso del MSB es
ahora –2n – 1 (para un número de n bits)
! Rango de números representables:
-(2n – 1) hasta +(2n – 1 – 1)

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 39


Complemento a dos – ejemplos
(8 bits)
! 2310 = 000101112
Complementando los bits:
11101000
+1
111010012 = - 2310

! 11810 = 011101102
Complementando los bits:
10001001
+1
100010102 = - 11810

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 40

Sumas y restas en complemento a dos


! Note que los números negativos y positivos en complemento a dos están
ordenados de modo que al sumar 1 a cualquier número, ignorando el
acarreo final, se obtiene el siguiente número.
000
111 001
+0
-1 +1

Resta de números Suma de números


110 -2 +2 010
positivos positivos
-3 +3
-4
101 011
100
! Esta una ventaja del sistema de complemento a dos sobre otras
representaciones para números negativos.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 41


Desbordamiento (overflow)

! Ocurre cuando el resultado excede el intervalo del


sistema numérico.
– Sólo la suma de dos números del mismo signo puede producir
desbordamiento.
! Una suma produce desbordamiento si ambos
sumandos tienen el mismo signo y la suma tiene
signo diferente al de los sumandos.
– La regla anterior es equivalente a decir que ocurre
desbordamiento si los acarreos de entrada y salida de la posición
del bit de signo son diferentes (ver tabla de sumas). Esta es la
forma común de verificación de desbordamiento en sistemas
digitales.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 42

Resta de números en complemento a dos

! Note que la suma de números en complemento a


dos se realiza como si éstos fueran números
binarios sin signo, pero interpretando el resultado
en complemento a dos y tomando en cuenta que
puede ocurrir desborde.
! Para realizar la resta del mismo modo, lo que se
hace es sumar al minuendo el complemento a dos
(el negativo) del sustraendo. Debe igualmente
interpretarse el resultado en complemento a dos y
tomar en cuenta la posibilidad de desborde.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 43


Códigos binarios

! Un código es un conjunto de cadenas de n


bits donde las diferentes cadenas
representan números, letras, palabras, etc.
– A una combinación particular de valores de n bits se
le denomina palabra de código
! Código decimal codificado en binario (BCD):
Se obtiene al representar cada dígito decimal
con su equivalente binario
– Se necesitan 4 bits por cada dígito decimal

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 44

Código BCD

! Es común emplear un byte (8 bits) para


representar un número decimal de dos
dígitos (de 00 a 99). A esto se le denomina
representación BCD empacada
! Ejemplos:
65410 = 0110 0101 0100 (BCD)
8710 = 10000111 (BCD empacado)

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 45


El Código Gray

! Es un código perteneciente a la clase de


códigos de cambio mínimo
! Sólo cambia un bit entre cada par de
palabras de código sucesivas
! Utilizado en situaciones en las cuales otros
códigos producirían resultados erróneos
! Ej: Codificación de posición mecánica
! El código Gray es un código reflejado

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 46

Construcción recursiva de un código Gray

1. Un código Gray de un bit tiene dos palabras: 0 y 1.


2. Las primeras 2n palabras de un código Gray de
(n+1) bits son iguales a las palabras de un código
Gray de n bits escritas en orden y agregándoles
un “0” en el MSB.
3. Las últimas 2n palabras de un código Gray de
(n+1) bits son iguales a las palabras de un código
Gray de n bits escritas en orden inverso y
agregándoles un “1” en el MSB.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 47


Código Gray de 3 bits

Decimal Binario Gray


0 000 000
1 001 001
2 010 011
3 011 010
4 100 110
5 101 111
6 110 101
7 111 100

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 48

Codificación de posición mecánica


Disco mecánico de Disco mecánico de
codificación mediante un codificación mediante un
código binario de 3 bits código Gray de 3 bits

111 000 100 000

110 001 101 001

0 0 1 0 0 1

101 010 111 011

100 011 110 010

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 49


Conversión binario ↔ Gray

bn-1 bn-2 b1 b0 gn-1 gn-2 g1 g0

a b ⊕b
a⊕
Binario a Gray :
0 0 0
g i = bi ⊕ bi +1 para i = 0,1,2 L n − 2
0 1 1
g i = bi , para i = n − 1 1 0 1
Gray a binario : 1 1 0
bi = g i , para i = n − 1
bi = g i ⊕ bi +1 para i = n − 2, n − 1, L1,0 Suma
módulo-2

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 50

Código ASCII

! ASCII = American Standard Code for Information


Interchange.
! Es el código utilizado más ampliamente para
representar caracteres (letras, símbolos, números...)
! Cada palabra de código consiste en una cadena de 7
bits, para un total de 128 caracteres diferentes
! El código ASCII extendido utiliza un byte (8 bits) por
cada palabra de código para un total de 256
caracteres
Tabla ASCII

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 51


Otros códigos

! Códigos para acciones, condiciones o


estados
– Utilizados por ejemplo en controles de máquinas, en
semáforos (por ejemplo para codificar las luces o
estados).
! Código 1 de n
! Código 1 de n invertido
! Código m de n
! Códigos de detección y corrección de errores

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 52

Detección y Corrección de Errores


! Error: alteración de datos desde su valor
correcto a algún otro valor.
! Los errores ocurren debido a las limitaciones
del medio físico, interferencias y ruido.
! Existen dos estrategias principales para la
detección y corrección de errores en sistemas
digitales:
! Control de errores hacia adelante (Forward Error
Correction, FEC)
! Control de errores por retroalimentación o
retrospectivo
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 53
Control de Errores hacia adelante (FEC)

! Cada cadena transmitida contiene información


adicional (redundancia) que permite detectar y
determinar la posición del error.
! La cadena se corrige invirtiendo los símbolos en las
posiciones erróneas.
! El número de bits requerido para lograr un control de
errores confiable aumenta conforme al número de bits
de información.
! La complejidad del sistema aumenta con la capacidad
de corrección del sistema.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 54

Control de Errores hacia adelante (FEC)

Información codificador Información redundancia

decodificador Información

Errores o ruido durante la transmisión

Métodos típicos de FEC:


!Códigos de bloque (Ej. Hamming, BCH, Reed-Solomon)
•El procesamiento de datos se realiza por bloques, uno a la vez
•Usado principalmente en la corrección de errores en ráfagas
! Códigos convolucionales (Ej. Viterbi)
•Usado para corregir errores aleatorios

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 55


Control de Errores por realimentación
! Cada cadena transmitida contiene sólo la información
adicional que permite detectar la presencia de errores.
! Se emplea un esquema de control de retransmisiones para
solicitar el envio de otra copia de la información.
! Consiste de dos partes:
1. Las técnicas uitlizadas para lograr una detección
confiable.
! Paridad, suma de chequeo, verificación de redundancia
cíclica (CRC)
2. Los algoritmos de control para los esquemas de
retransmisión asociados.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 56

Distancia de Hamming y capacidad de


detección y corrección de errores

! Distancia de Hamming: Número de posiciones de bits en


las cuales dos palabras del mismo código difieren.
! Distancia de Hamming mínima: La mínima de todas las
distancias Hamming entre palabras de un mismo código.
! Para detectar e errores se requiere un código de distancia
mínima d = e +1
! Para corregir c errores se necesita de un código de
distancia mínima de d = 2c + 1
! Para corregir c errores y además detectar d errores
adicionales, se necesita de un código de distancia mínima
d = 2c + d + 1

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 57


Detección de errores por paridad
! Se agrega un bit a cada palabra para que el número de
unos en la palabra sea par (o impar)
! Esto hace que la distancia mínima sea 2

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 58

Códigos de Hamming

! Códigos con d = 3 y una estructura tal que permite


detectar y corregir un error, o bien detectar dos
errores.
! Para codificar k bits de información se requieren i
bits de paridad, tal que k ≤ 2i – i – 1.
! Longitud máxima de la palabra n = 2i – 1.
! Los bits de paridad se generan combinando los bits
de información en posiciones tales que sea posible
localizar el bit erróneo.

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 59


Construcción de un código de Hamming

! Numerar las posiciones de bit desde 1 hasta 2i – 1.


! Reservar las posiciones que son potencia de 2 (1,2,4,8,16
…) para los bits de paridad (pj).
! El resto de las posiciones se usa para los bits de
información (bk).
! Cada bit de paridad pj se elige de modo que complete la
paridad par con todas las posiciones bk cuyo número
equivalente en binario tenga un 1 en la posición de peso j.
! Por ejemplo el bit de paridad 1 (001) se debe agrupar con
las posiciones 3(001), 5(101), 7(111) ya que todas tienen
un 1 en la posición de peso 1 (primer bit).

Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 60

Ejemplo
! Código de Hamming para codificar palabras de 4 bits.
! En este caso, i = 3. Se numeran las posiciones del 1 al
7. Se reservan las posiciones 1,2 y 4 para los bits de
paridad.
! Los bits de paridad se calculan así:
p1 = b3 ⊕ b5 ⊕ b7 p 2 = b3 ⊕ b6 ⊕ b7 p 4 = b5 ⊕ b6 ⊕ b7

! Palabra ordenada en Forma No Sistemática:


b7 b6 b5 p 4 b3 p 2 p1
! Palabra ordenada en Forma Sistemática:
b7 b6 b5 b3 p 4 p 2 p1
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 61