Subido por ingeniero.electronico18

01 Conceptos Digitales

Anuncio
Circuitos Digitales: 2017-2
Capítulo 1
Conceptos Digitales
Prof. Oscar E. Ramos, Ph.D.
(22 de agosto del 2017)
Contenido
1. Analógico vs Digital
2. Conceptos digitales básicos
3. Operaciones lógicas básicas
4. Funciones lógicas
5. Circuitos integrados
6. Lógica programable
2
Analógico vs Digital
Patek Philippe: calatrava
Apple watch: series 2
3
Analógico vs Digital
• Los sistemas electrónicos pueden ser:
a) Sistemas analógicos
- Utilizan señales analógicas (continuas)
b) Sistemas digitales
- Utilizan señales digitales (discretas)
Nota: señales = funciones (que contienen información y son típicamente de origen eléctrico)
4
Analógico vs Digital
Señales Analógicas
• Toman valores en un rango continuo
• Ejemplo: magnitudes físicas (temperatura, voz, voltaje, etc.)
El mundo es
generalmente
analógico
Señal de voz
5
Analógico vs Digital
Sistemas Analógicos
• Procesan solamente datos analógicos (señales analógicas)
• Ejemplo:
- Sistema de amplificación de voz (altavoz)
6
Analógico vs Digital
Señales Digitales
• Cantidades digitales
- Son discretas (rango finito de valores)
- Se representan mediante dígitos
Medición
discreta de
la altura
Habitantes
por ciudad
• Señales digitales
- Señal que toma valores discretos y finitos
Señal
digital
7
Analógico vs Digital
Señales Digitales
• Normalmente solo toman 2 valores posibles: 0, 1
Datos digitales
Señal digital
- A veces llamadas:
• Señales digitales binarias (1/0)
• Señales digitales lógicas (verdadero/falso)
• “Señales digitales”
• En realidad:
- Puede presentar ruido (pero es aún distinguible)
8
Analógico vs Digital
Sistemas Digitales
• Procesan solamente datos digitales (señales digitales) con dos posibles
valores: 0 y 1
- La información digital está contenida en las señales digitales
• Ejemplo:
- Computadora
Diagrama de bloques
de una computadora
9
Analógico vs Digital
Sistemas Digitales
• Ventajas:
-
Es más fácil almacenar información en formato digital (0/1)
Es posible obtener (y mantener) mayor precisión
Permiten programar las operaciones a realizar
Son menos afectados por el “ruido”
Señal analógica
con ruido
Señal digital
con ruido
- Permiten más elementos en los circuitos integrados.
La mayor cantidad de aplicaciones electrónicas actualmente
están basadas principalmente en técnicas digitales
10
Analógico vs Digital
Combinación de Sistemas Analógicos y Digitales
• El mundo es analógico
- La interface con el mundo (entradas/salidas) son generalmente analógicas
• El procesamiento y almacenamiento digital es eficiente
- Se requiere conversión entre señales digitales y analógicas
Control de una variable física analógica mediante una computadora
Notación: ADC = Analog-to-digital converter
DAC = Digital-to-analog converter
[Tocci, Capítulo 11]
11
Analógico vs Digital
Combinación de Sistemas Analógicos y Digitales
• Ejemplo:
- Almacenamiento y reproducción de un CD
Almacenamiento de
datos en un CD
Reproducción de
datos de un CD
12
Analógico vs Digital
Combinación de Sistemas Analógicos y Digitales
• Ejemplo:
- Teléfono celular (parte de comunicación)
Diagrama de bloques simplificado de un teléfono celular
Notación: Amp = Amplificador
Codec = Codificador/Decodificador
DSP = Digital Signal Processing
[Tocci, Capítulo 11]
13
Analógico vs Digital
Conversión de una señal analógica a digital
• Etapas:
- Muestreo (en tiempos discretos: 1, 2, 3, 4, …)
- Cuantización (“redondeo”)
- Codificación digital (0=00, 1=01, 2=10, 3=11, …)
000110010101011011 …
[Floyd, Capítulo 12]
14
Contenido
1. Analógico vs digital
2. Conceptos Digitales Básicos
3. Operaciones lógicas básicas
4. Funciones lógicas
5. Circuitos integrados
6. Lógica programable
15
Dígitos Binarios
• Binario: 2 posibles valores
0 (falso)
1 (verdadero)
• Cada dígito binario se llama “bit” (Binary digIT)
• Código binario:
- Es una combinación de 1s y 0s (grupo de bits)
- Representan números, letras, símbolos, instrucciones, etc.
Los sistemas digitales usan dígitos binarios
16
Niveles Lógicos
• Son los voltajes que representan el 0 y 1
• Tipos de lógicas (en circuitos digitales):
- Lógica positiva:
Valor bajo (low) = 0
Valor alto (high) = 1
- Lógica negativa:
Valor bajo (low) = 1
Valor alto (high) = 0
• La más utilizada es la lógica positiva (en este curso se usará lógica positiva)
0
1
0 1
0
1
0
1
0 1
0
1
alto
alto
bajo
bajo
En “teoría”
En la “realidad”
17
Niveles Lógicos
• En la práctica existen rangos de voltaje
VH(max)
Familia 3.3-V
CMOS (IN)
Familia 5-V
CMOS (IN)
Familia
TTL (IN)
3.3 V
5V
5V
2V
3.5 V
2V
0.8 V
1.5 V
0.8 V
0V
0V
0V
HIGH
VH(min)
No válido
VL(max)
LOW
VL(min)
• Los rangos pueden ser diferentes para entradas (IN) y salidas (OUT)
18
Niveles Lógicos
• Rangos diferentes para entrada y salida
Medio de
transmisión
“1”
“1”
VOH
VIH
Permite mayor
tolerancia a
ruido
VIL
VOL
“0”
“0”
Emisor
Receptor
(output)
(input)
OH, OL: Output High, Output Low
IH, IL: Input High, Input Low
19
Señal Digital
• Señal de voltaje con valores altos (HIGH) y bajos (LOW)
- Está compuesta de pulsos
Señal digital
Dígitos binarios asociados
• Partes de un pulso ideal
Pulso positivo (“1”)
Flanco de
subida
(anterior)
Flanco de
bajada
(posterior)
Terminología: flanco de subida = rising edge
flanco de bajada = falling edge
Pulso negativo (“0”)
Flanco de
bajada
(anterior)
Flanco de
subida
(anterior)
flanco anterior = leading edge
flanco posterior = trailing edge
20
Señal Digital
• Características de un pulso real
- Tiempo de subida tr (rise time) y tiempo de bajada tf (fall time)
- Sobreimpulso (overshoot) y subimpulso (undershoot)
- Ancho del pulso tPW (pulse width)
21
Señal Digital
• Las señales digitales pueden ser
- No periódicas (aperiódicas): no se repiten
- Periódicas: se repiten en un intervalo de tiempo fijo
Período: T = T1 = T2 = T3 = … = Tn [s]
Frecuencia: f 
1
T
[Hz]
T
 tPW
 T
Ciclo de trabajo (duty cycle): DC  

 100%

tPW
22
Señal Digital
Ejemplo
Dada la siguiente señal digital periódica, determinar el periodo, la
frecuencia y el ciclo de trabajo
Período: T  10 ms
1
 100 Hz
10 ms
1
Ciclo de trabajo (duty cycle): DC    100%  10%
 10 
Frecuencia: f 
23
Señal Digital
• El reloj (clock)
- Es una señal (forma de onda) que sincroniza los sistemas digitales
- No contiene información
Bit time =
período de bit
Diagrama de tiempo (diagrama temporal)
• Las señales digitales contienen información
- Esta información se representa mediante secuencias de bits
24
Transmisión de Datos
• Datos (data):
- Son grupos de bits que contienen información
- Frecuentemente se requiere transmitir información a otro circuito o sistema
• Formas de transmisión de datos
- Transmisión serial: un bit a la vez
- Transmisión paralela: grupos de bits
Transmisión serial
Ejemplo: USB (Universal Serial Bus)
Transmisión paralela
25
Transmisión de Datos
Ejemplo
La señal digital A contiene información que se desea transmitir. La
frecuencia del reloj es 1 MHz.
Determinar el tiempo total de transmisión si se transmite los ocho bits de
esta señal
a) de forma serial
b) de forma paralela
Respuesta:
a) 8 μs
b) 1 μs
26
Contenido
1. Analógico vs digital
2. Conceptos digitales básicos
3. Operaciones Lógicas Básicas
4. Funciones lógicas
5. Circuitos integrados
6. Lógica programable
27
Operaciones Lógicas Básicas
Lógica
• La lógica es el estudio del proceso de razonamiento (humano)
- Estudia las inferencias: proposición (verdadera/falsa) → conclusión
- Ejemplo:
Prop 1: Sócrates es un gato
Sócrates vuela
Prop 2:Todos los gatos vuelan
• Reformulando: Sócrates vuela si Sócrates es un gato y si todos los gatos vuelan
• George Boole (en 1854) mostró que la lógica es
matemática (y no solo filosofía)
• Álgebra Booleana:
- Matemática de los valores binarios (0/1)
- 3 operaciones (lógicas) básicas: NOT, AND, OR
28
Operaciones Lógicas Básicas
Compuertas Lógicas
• Las compuertas lógicas implementan las operaciones lógicas
- Son los bloques elementales para sistemas más complejos (computadoras)
• Son:
Opuesto (Complemento)
Verdadero si todas las entradas
son verdaderas.
Verdadero si una o más entradas
son verdaderas
• Nota: verdadero (true) = 1 lógico
falso (false) = 0 lógico
29
Operaciones Lógicas Básicas
Compuertas Lógicas
• NOT (inversor)
- Invierte la entrada
0
1
1
0
Tabla de verdad: NOT
- Ejemplo
30
Operaciones Lógicas Básicas
Compuertas Lógicas
• AND
- Verdadero si todas las entradas son verdaderas
∙
0
0
0
0
1
0
1
0
0
1
1
1
Tabla de verdad: AND
- Ejemplo
31
Operaciones Lógicas Básicas
Compuertas Lógicas
• OR
- Verdadero si al menos una entrada es verdadera
+
0
0
0
0
1
1
1
0
1
1
1
1
Tabla de verdad: OR
- Ejemplo
32
Operaciones Lógicas Básicas
Combinación de Compuertas Lógicas
• Ejemplos
Determinar la expresión de la salida de los siguientes circuitos:
a)
b)
c)
d)
33
Operaciones Lógicas Básicas
Combinación de Compuertas Lógicas
• Ejemplos
Determinar la expresión de la salida de los siguientes circuitos:
a)
b)
34
Operaciones Lógicas Básicas
Análisis usando Tabla de Verdad
• Ejemplo
35
Contenido
1. Analógico vs digital
2. Conceptos digitales básicos
3. Operaciones lógicas básicas
4. Funciones Lógicas
5. Circuitos integrados
6. Lógica programable
36
Funciones Lógicas
• Se forman a partir de los 3 elementos lógicos básicos (NOT, AND, OR)
• Se usan para construir sistemas digitales completos (computadoras)
• Ejemplos de funciones lógicas:
- Comparación
- Operaciones aritméticas
- Conversión de código
- Codificación/decodificación
- Selección de datos
- Conteo
- Almacenamiento
37
Funciones Lógicas
Ejemplo de Aplicación
• Caso:
Diseñar un sistema industrial para el
conteo y envase automático de pastillas
usando solamente funciones básicas.
Se requiere lo siguiente:
- Establecer cuántas pastillas irán en
cada botella.
- Llenar cada botella con el número
establecido
- Conocer el número total de pastillas
empaquetadas (en todas las botellas)
localmente y en un lugar remoto en
otra parte de la planta
38
39
Posible Solución
Funciones Lógicas
Función de comparación
• Se implementa mediante un “comparador”
- Ejemplo: comparación de 2 y 5
40
Funciones Lógicas
Funciones Aritméticas Básicas
• El elemento básico es un
“sumador”
• El sumador sirve de base para la
implementación de: sustracción,
multiplicación y división
- Ejemplo: suma de 3 y 9
41
Funciones Lógicas
Funciones Aritméticas Básicas
• Aplicación: los microprocesadores poseen una Unidad Aritmética
Lógica (ALU)
- Realiza estas funciones aritméticas + operaciones lógicas básicas
- Está compuesta por miles de compuertas lógicas
[http://ati.ttu.ee/IAY0340/labs/Tutorials/SystemC/ALU.html]
42
Funciones Lógicas
Funciones de Codificación/Decodificación
• Codificador
- Convierte información (numero decimal, carácter numérico, etc.) en una forma
codificada (código binario, código Gray, etc.)
- Ejemplo:
• Conversión de dígitos decimales a código binario
43
Funciones Lógicas
Funciones de Codificación/Decodificación
• Decodificador
- Convierte información codificada (código binario, etc.) en una forma no
codificada (código decimal, etc.).
- Ejemplo:
• Decodificador para activar un display de 7 segmentos.
44
Funciones Lógicas
Funciones de Selección de Datos
• Dos funciones:
- Multiplexor (MUX): transmite varias líneas a través de una sola línea
- De-multiplexor (DEMUX): transmite de una línea a diferentes líneas
• Ejemplo de uso:
- Transmitir varias fuentes a una locación distante y redistribuirlas en el destino
45
Funciones Lógicas
Función de Conteo
• Se implementa con “contadores”
- Cuenta el número de pulsos de entrada
Counter
1
2
3
4 5
Input pulses
Parallel
output
lines
Binary
code
for 1
Binary
code
for 2
Binary
code
for 3
Binary
code
for 4
Binary
code
for 5
Sequence of binary codes that represent
the number of input pulses counted.
• Necesitan “recordar” el número actual para incrementarlo con el
siguiente pulso
- Requieren memoria (usando “flip-flops”)
46
Funciones Lógicas
Funciones de Memoria y Almacenamiento
• Generalmente …
- Memoria: retención de datos por tiempo corto
- Almacenamiento: retención de datos por tiempo largo
• Dispositivos de memoria:
- Flip-flops: almacenan solo 1 bit (0/1)
- Registros: almacenan grupos de bits (varios flip-flops)
- Memorias semiconductoras: almacenan gran número de bits (ROM: read-only
memory, RAM: random-access memory)
• Dispositivos de almacenamiento:
- Discos magnéticos: almacenamiento masivo de datos (discos duros)
- Discos ópticos (CDs)
47
48
Posible Solución
Contenido
1. Analógico vs digital
2. Conceptos digitales básicos
3. Operaciones lógicas básicas
4. Funciones lógicas
5. Circuitos Integrados
6. Lógica programable
49
Circuitos Integrados
• Circuito integrado (IC = Integrated Circuit):
- Circuito electrónico construido en un pequeño chip de silicio
- Implementan desde operaciones lógicas simples hasta funciones lógicas
complejas programables
El chip suele ser más
pequeño que la
empaquetadura
- Los pines permiten comunicación con el exterior
50
Circuitos Integrados
Empaquetaduras
• Según la forma en que se colocan en placas de circuitos impresos:
a) Empaquetadura “through-hole”:
- Sus pines son insertados a través de agujeros
en la placa (o protoboards)
- Ejemplo: DIP (Dual in-line Package)
Dual in-line package(DIP)
b) Empaquetadura “Surface-mount technology”
(SMT)
- No atraviesan la placa
- Mucho más pequeños que DIP (para el mismo
número de pines)
- Ejemplos: SOIC (Small-outline IC), SSOP
(shrink small-outline package)
Small outline IC (SOIC)
51
Circuitos Integrados
Empaquetaduras
• Otros tipos de empaquetadura SMT:
PLCC
LCC
LQFP
(Plastic-leaded chip carrier)
(Leadless ceramic chip)
(Low profile quad flat pack)
CSP
FBGA
(Chip scale package)
(Fine-pitch ball grid array)
52
Circuitos Integrados
Numeración de los Pines
• Existe un formato estándar para enumerar los pines.
• Ejemplos:
DIP o SSOP
PLCC o LCC
53
Circuitos Integrados
Clasificación según la Complejidad
• Small-scale integration (SSI)
ICs con hasta 10 compuertas (operaciones
básicas y flip-flops)
• Medium-scale integration (MSI)
ICs con ~ 10 a ~100 compuertas
(codificadores, contadores, etc.)
• Large-scale integration (LSI)
ICs con ~100 a ~10 000 compuertas
(microcontroladores, memorias, etc.)
54
Circuitos Integrados
Clasificación según la Complejidad
• Very large-scale integration (VLSI)
ICs con ~10 000 a ~100 000 compuertas
(microprocesadores, etc.)
• Ultra large-scale integration (ULSI)
ICs con más de 100 000 compuertas
55
Circuitos Integrados
Tecnologías Utilizadas
• Las “tecnologías” pueden ser:
- CMOS (Complementary MOS)
• Basada en transistores MOSFET (metal-oxide semiconductor field-effect transistor)
- TTL (transistor-transistor logic)
• Basada en transistores de unión bipolar (BJT)
CMOS
(NOT)
TTL
(NOT)
[https://www.allaboutcircuits.com/textbook/digital/chpt-3/cmos-gate-circuitry]
[https://www.allaboutcircuits.com/textbook/digital/chpt-3/not-gate]
- Tecnología BiCMOS: Usa CMOS y TTL
56
Contenido
1. Analógico vs digital
2. Conceptos digitales básicos
3. Operaciones lógicas básicas
4. Funciones lógicas
5. Circuitos integrados
6. Lógica Programable
57
Lógica Programable
• Los dispositivos programables son ICs donde se puede “diseñar”
circuitos digitales
- Involucran diseño de hardware a partir de software
- Son más versátiles que funciones lógicas fijas
• Categorías:
- PLD: Programmable Logic Device
- FPGA: Field-Programmable Gate Array
Lógica Programable
58
Lógica Programable
PLDs
• SPLD: Simple PLD
- Puede reemplazar hasta ~10 ICs de función fija
- Categorías:
• PAL (programmable array logic)
• GAL (generic array logic)
PAL
Programable 1 sola vez
Típico SPLD
GAL
Programable varias veces
59
Lógica Programable
PLDs
• CPLD: Complex PLD
- Contiene varios SPLDs
- Partes:
• LABs (logic array blocks): “equivalente” a un SPLD
• PIA (programmable interconnection array)
CPLD de 128 pines
Arquitectura de CPLD
60
Lógica Programable
FPGAs
• Son más complejos y densos que PLDs
• Elementos básicos:
- Bloque lógico, interconexiones programables, bloques
de entrada/salida
BGA (ball-grid array) típico
61
Lógica Programable
Programación
• PLDs y FPGAs requieren un programa que “diseña” el circuito lógico
- No se programa “software” sino “hardware”
• Formas de especificar el circuito:
- Basado en circuito esquemático
- Descripción de diagrama de estados
- Basado en texto (HDL: Hardware Description Language)
• Los HDL más usados son:
- VHDL: Very high speed IC HDL
- AHDL: Altera HDL
- Verilog
62
Lógica Programable
VHDL
• Describe conexiones lógicas y características del circuito
• Usa la estructura entity/architecture
- Entity: define las entradas y salidas (puertos)
- Architecture: describe la operación lógica
Nota: se puede usar std_logic en lugar de bit
63
Puntos Importantes
• Una cantidad analógica tiene valores continuos y una cantidad digital
tiene valores discretos.
• Un digito binario es llamado bit.
• Las señales digitales están compuestas por pulsos binarios y representan
información.
• La frecuencia de la señal periódica es la inversa del periodo.
• Las tres operaciones básicas son NOT, AND y OR, y forman los elementos
básicos en los sistemas digitales.
• La funciones lógicas básicas (comparadores, multiplexores, etc.) forman
los elementos básicos para construir sistemas digitales más complejos.
64
Referencias
• T.L. Floyd, Digital Fundamentals, 11th ed, Edinburgh Gate, England:
Pearson Education Limited, 2015 (Capítulo 1)
• R.J. Tocci, N.S. Widmer and G.L. Moss, Sistemas digitales: Principios y
aplicaciones, 10a ed, Mexico D.F.: Pearson Education, 2007 (Capítulo 1)
65
Descargar