sistemas digitales y sistemas analógicosltarazona/digitales/tema1_4.pdf · circuitos digitales i...
TRANSCRIPT
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 0
Circuitos Digitales I EL-3213
Prof: Luis Tarazona
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 1
Introducción
Circuitos Digitales I
Sistemas Digitales y Sistemas Analógicos
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 2
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
! Representación digital– Las cantidades no se representan por valores
proporcionales sino por símbolos denominados dígitos
– Las cantidades varían en pasos o etapas discretas
¿Puede Ud. dar ejemplos de c/u?
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 3
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 4
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 5
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 6
Ej: Diagrama de bloques de un controlador digital
Dispositivo de medición
Cantidad a medir
(analógica)Convertidor
analógico digitalProcesamiento
digital
Convertidor digital analógico Controlador
Señal de control
(analógica)
Señal analógica
Señal digital
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 7
Representación de dígitos binarios
C. decargadoC. CargadoMemoria dinámica
Flujo invertidoSin flujo inv.Cinta o disco magnétcio
Con luzSin luzFibras ópticas
3.0 – 5.0 V0 – 2.0 VLógica CMOS
2.0 – 5.0 V 0 – 0.8 VLógica TTL
Cto. cerradoCto. abiertoLógica de relevadores
1 lógico0 lógicoTecnología
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 8
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 9
Compuertas lógicas (2)
111001010000
A.BBA
Compuerta AND
Tabla de verdad
0110A’A
Compuerta NOT
Tabla de verdad
111101110000
A+BBA
Compuerta OR
Tabla de verdad
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 10
Compuertas lógicas (3)
111101110000
(A+B)’BA
111001010000
(A.B)’BA
Compuerta NAND
Tabla de verdad
Compuerta XOR
Tabla de verdad
Compuerta NOR
Tabla de verdad
011101110000
A⊕⊕⊕⊕ BBA
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 11
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 12
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 13
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 14
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 15
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 16
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 17
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 18
Definiciones (3)
! Niveles lógicos y márgenes de ruido
VOLmax
VLmin
VOHmin
VIHmin
VILmix
VHmax
SALIDA ENTRADA
Margen de ruidoCD
Estado alto
Margen de ruido CD
Estado bajo
NivelALTO
NivelBAJO
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 19
Tema I
Circuitos Digitales I
Sistemas Numéricos y Códigos
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 20
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 21
Sistema decimal (1)
! Consiste de 10 símbolos : 0,1,2,...9! Utilizado en el día a día por las personas! Ejemplo:
3
105
5
104
2
103
0
102
7
101
. 9
10-1
8
10-2
4
10-3
Dígito Más Significativo
(MSD)
Punto decimal Dígito Menos Significativo
(LSD)
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 22
Sistema decimal (2)
! En general, un número en decimal con pdígitos a la izquierda del punto decimal y ndí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:
∑∑∑∑−−−−
−−−−====
⋅⋅⋅⋅====1
10p
ni
iidD
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 23
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:
1
25
1
24
0
23
0
22
1
21
. 1
2-1
0
2-2
1
2-3
Bit Más Significativo
(MSB)
Punto binario Bit Menos Significativo
(LSB)
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 24
Sistema binario (2)
! En general, un número en binario con pdígitos a la izquierda del punto binario y ndí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:
∑∑∑∑−−−−
−−−−====
⋅⋅⋅⋅====1
2p
ni
iidB
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 25
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 26
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 27
Conversión de decimal a base r (1)
! Conversión de la parte entera:Si expandimos la fórmula:
Y la escribimos de manera anidada, obtenemos:01
22
11
1
010
drdrdrd
dD
pp
pp
p
i
ii
+⋅++⋅+⋅=
⋅=
−−
−−
−
=∑
L
0121 ))))((( drdrrdrdD pp +⋅++⋅+⋅= −− LLL
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 28
Conversión de decimal a baser r (2)
Nota que si dividimos la expresión anterior por robtenemos como residuo a d0 y como cociente la expresión:
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
0121 ))))((( drdrrdrdD pp +⋅++⋅+⋅= −− LLL
121 )))((( drrdrdQ pp ++⋅+⋅= −− LLL
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 29
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 30
Tabla de suma y resta en binario
cent o bent x y csal s bsal d0 0 0 0 0 0 00 0 1 0 1 1 10 1 0 0 1 0 10 1 1 1 0 0 01 0 0 0 1 1 11 0 1 1 0 1 01 1 0 1 0 0 01 1 1 1 1 1 1
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 31
! Suma:Acarreo
X 104 01101000Y +235 + 11101011
X+Y 339! Resta:Préstamo
X 150 10010110Y - 67 - 01000011
X-Y 83
Ejemplo de sumas y restas en binario
0
1
0
1
0
0
0
0
1
1
0
0
1
1
1
0
1
1
0
1
1
1
1
0
0
0
0
1
0
0
0
1
1
0
0
0
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 32
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 33
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 34
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 35
Complemento de base
! El complemento de base de un número D de ndí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 36
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 37
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 38
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 39
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 40
Complemento a dos – ejemplos (8 bits)
! 2310 = 000101112Complementando los bits:
11101000+1
111010012 = - 2310
! 11810 = 011101102Complementando los bits:
10001001+1
100010102 = - 11810
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 41
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.
! Esta una ventaja del sistema de complemento a dos sobre otras representaciones para números negativos.
000
001
010
011
100
101
110
111 +0+1
+2
+3-4
-3
-2
-1
Resta de números positivos
Suma de números positivos
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 42
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 43
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úmerosbinarios 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 44
Códigos binarios
! Un código es un conjunto de cadenas de nbits 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 45
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 46
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 47
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ándolesun “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 48
Código Gray de 3 bits
10011171011106111101511010040100113011010200100110000000
GrayBinarioDecimal
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 49
Codificación de posición mecánica
000
001
011
110
111
101
010
100
0 0 1
000
001
010
100
101
110
011
111
0 0 1
Disco mecánico de codificación mediante un código binario de 3 bits
Disco mecánico de codificación mediante un
código Gray de 3 bits
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 50
Conversión binario ↔ Gray
bn-1 bn-2 b0b1 gn-1 gn-2 g0g1
0,1,1,2 para 1 para
:binario aGray 1 para
22,1,0 para :Gray a Binario
1
,
,
1
L
L
−−=⊕=−==
−==−=⊕=
+
+
nnibgbnigb
nibgnibbg
iii
ii
ii
iii
011101110000
a⊕⊕⊕⊕ bba
Suma módulo-2
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 51
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 52
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 53
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 54
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 55
Control de Errores hacia adelante (FEC)
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
Información codificador
decodificador
Errores o ruido durante la transmisión
Información redundancia
Información
Luis Tarazona, UNEXPO Barquisimeto EL-3213 – Circuitos Digitales I - 2004 56
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 57
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 58
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 59
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 ibits 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 60
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 61
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í:
! Palabra ordenada en Forma No Sistemática:
! Palabra ordenada en Forma Sistemática:
765476327531 bbbpbbbpbbbp ⊕⊕=⊕⊕=⊕⊕=
1234567 ppb pbbb
1243567 pppbbbb