En la ventana de impresión, elige «Guardar como PDF» para conservar una copia en tu dispositivo.
1Fórmulas y métodos
Sistemas de numeración
Valores posicionales
binario 2k, octal 8k, hexadecimal 16k
A decimal
Σ dk·bk
Desde decimal
divide entre la base y lee los restos de abajo arriba
Hexadecimal ↔ binario
un dígito hexadecimal = 4 bits
Complemento a dos
invierte los bits y suma 1
Lógica digital: puertas, mapas K y biestables
Puertas básicas
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Reglas de Boole
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
De Morgan
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Orden del mapa de Karnaugh
00, 01, 11, 10 (Gray code)
Grupo de 2ᵏ celdas
pierde k variables
Multiplexor de 4 a 1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Biestables
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Contadores
n bits: 2ⁿ estados; módulo N: el menor n con 2ⁿ ≥ N; fsal = fclk/N
Contador asíncrono
fmax = 1/(n·tpd)
Contadores en anillo y Johnson
n y 2n estados
Método
En un circuito, trabaja desde las entradas hasta la salida puerta por puerta y escribe el valor en cada hilo, o escribe su expresión y rellena la tabla de verdad.
Para simplificar, coloca los 1 (y las indiferencias como X) en un mapa de Karnaugh con filas y columnas en código Gray: 00, 01, 11, 10.
Cubre los 1 con los menos grupos posibles y lo más grandes posible, de 1, 2, 4, 8 o 16 celdas, envolviendo los bordes; cada grupo es un término producto formado por las variables que permanecen constantes. Agrupa los 0 para la forma POS.
En biestables y contadores, lee las entradas en cada flanco activo del reloj, anota el estado tras cada flanco y recuerda que un contador de n bits da la vuelta tras 2ⁿ estados.
Adquisición de datos y muestreo
Criterio de Nyquist
fs > 2·fmax, fN = fs/2
Frecuencia de aliasing
fa = |f − k·fs|, k = round(f/fs)
Tamaño del paso
1 LSB = VFSR/2ᴺ
Error de cuantización (redondeo)
±½ LSB
Código del ADC con truncamiento
D = ⌊Vin/LSB⌋
Bits para una resolución r
2ᴺ ≥ span/r
SQNR ideal, senoide a fondo de escala
SQNR = 6,02·N + 1,76 dB
Tasa de datos
canales × fs × N bit/s
ADC multiplexado
fs = 1/(n·(tc + tset))
UART
Tb = 1/baudios; 8N1 = 10 bits por byte; bytes/s = baudios/bits por trama
Divisor de la tasa de baudios
baud = fclk/(16·D)
Método
Anota los datos: frecuencia de muestreo, frecuencias de la señal, número de bits, rango de entrada, tasa de baudios.
En las preguntas de muestreo, compara cada frecuencia con fs/2; una frecuencia mayor aparece en fa = |f − k·fs|, con el múltiplo de fs más cercano.
En las preguntas de resolución, halla 1 LSB = VFSR/2ᴺ, o el menor N con 2ᴺ ≥ rango/resolución.
En las tasas de datos y los enlaces UART, cuenta todo lo que se envía: canales, muestras por segundo, bits o bytes completos por muestra, y los bits de inicio, paridad y parada de cada trama.
2Problemas de práctica
1.Sistemas de numeraciónMedia
Pon los bits para que almacenen −84 en complemento a dos de 8 bits. Leído como un número sin signo, ¿cuál es el valor U del patrón?
N = −848 bit
U =
2.Sistemas de numeraciónDifícil
Pon los bits al resultado de 8 bits de 1100 1000 AND 1010 1010. ¿Cuál es el valor R del resultado en decimal?
1100 1000AND1010 1010
R =
3.Lógica digital: puertas, mapas K y biestablesMedia
Usa el mapa de Karnaugh para hallar la forma mínima de producto de sumas (POS) de F(A, B, C, D) = Σm(0, 1, 4, 6, 8, 9, 14). ¿Cuántos términos suma (factores), N, tiene?
F(A, B, C, D) = Σm(0, 1, 4, 6, 8, 9, 14)
N =
4.Lógica digital: puertas, mapas K y biestablesDifícil
Para F(A, B, C, D) = Σm(1, 5, 7, 9, 13, 14) + d(3, 4), donde d marca las condiciones indiferentes, halla el número N de implicantes primos esenciales.
F(A, B, C, D) = Σm(1, 5, 7, 9, 13, 14) + d(3, 4)
N =
5.Adquisición de datos y muestreoMedia
Un ADC de 10 bits con un rango de entrada de 0 a 10 V trunca: su código de salida es ⌊Vin/LSB⌋ con 1 LSB = VFSR/2ᴺ. Halla el código de salida decimal D para una entrada de 6,091 V.
N = 10VFSR = 10 VVin = 6,091 V
D =
6.Adquisición de datos y muestreoDifícil
Un microcontrolador con un reloj de 10 MHz fija su tasa de baudios de la UART como fclk/(16·D), con D un número entero redondeado al valor más cercano. El objetivo es 115200 baudios. Halla el error porcentual de la tasa de baudios real (positivo cuando es demasiado rápida).
fclk = 10 MHzobjetivo = 115200 Bd
e = %
3Disoluciones
1.Sistemas de numeración
Respuesta: U = 172
Poner bits: cada bit vale una potencia de dos (128, 64, …, 1). Un dígito hexadecimal son exactamente cuatro bits, y en complemento a dos de 8 bits el bit de más a la izquierda vale −128. Las operaciones bit a bit actúan sobre cada posición de bit por separado.
Invertir y sumar uno
84 = 0101 0100
invertido: 1010 1011
+1 → 1010 1100
Leerlo sin signo
1010 1100₂ = 256 − 84 = 172
Respuesta
U = 172
2.Sistemas de numeración
Respuesta: R = 136
Poner bits: cada bit vale una potencia de dos (128, 64, …, 1). Un dígito hexadecimal son exactamente cuatro bits, y en complemento a dos de 8 bits el bit de más a la izquierda vale −128. Las operaciones bit a bit actúan sobre cada posición de bit por separado.
Bit a bit
AND da 1 solo donde ambos bits son 1.
1100 1000
AND 1010 1010
= 1000 1000
Valor del resultado
1000 1000₂ = 136
Respuesta
R = 136
3.Lógica digital: puertas, mapas K y biestables
Respuesta: N = 3
Mapas de Karnaugh: las celdas están ordenadas en código Gray (00, 01, 11, 10), por lo que las celdas vecinas, incluidas las que están a través de los bordes, difieren en exactamente una variable. Agrupa los 1 en rectángulos de 1, 2, 4, 8 o 16 celdas, lo más grandes y los menos posibles, hasta cubrir todos los 1. Cada grupo es un término producto: las variables que permanecen constantes dentro de él. Un grupo de 2ᵏ celdas pierde k variables. Las indiferencias (X) pueden usarse para agrandar grupos, pero nunca hace falta cubrirlas. Agrupar los 0 en su lugar da la forma POS mínima.
Agrupa los 0
Todo grupo es un rectángulo de 2ᵏ celdas; las celdas del borde son vecinas de las celdas del borde opuesto.
(B′ + D′)
(B + C′)
(A′ + B′ + C)
Forma POS mínima
F = (B′ + D′)(B + C′)(A′ + B′ + C)
N = 3
Respuesta
N = 3
4.Lógica digital: puertas, mapas K y biestables
Respuesta: N = 3
Mapas de Karnaugh: las celdas están ordenadas en código Gray (00, 01, 11, 10), por lo que las celdas vecinas, incluidas las que están a través de los bordes, difieren en exactamente una variable. Agrupa los 1 en rectángulos de 1, 2, 4, 8 o 16 celdas, lo más grandes y los menos posibles, hasta cubrir todos los 1. Cada grupo es un término producto: las variables que permanecen constantes dentro de él. Un grupo de 2ᵏ celdas pierde k variables. Las indiferencias (X) pueden usarse para agrandar grupos, pero nunca hace falta cubrirlas. Agrupar los 0 en su lugar da la forma POS mínima.
Implicantes primos
Los grupos más grandes que se pueden formar con 1 y X.
C′D, A′D, A′BC′, ABCD′
Implicantes primos esenciales
C′D, A′D, ABCD′
N = 3
Respuesta
N = 3
5.Adquisición de datos y muestreo
Respuesta: D = 623
Resolución del ADC: un convertidor de N bits divide su rango de fondo de escala VFSR en 2ᴺ códigos, de 0 a 2ᴺ − 1. Un paso es 1 LSB = VFSR/2ᴺ: el cambio más pequeño que puede mostrar el convertidor. Un ADC con truncamiento da el código ⌊Vin/LSB⌋; un ADC con redondeo nunca se aparta más de ½ LSB del valor real, que es su error de cuantización. Cada bit adicional reduce a la mitad el LSB y suma unos 6 dB a la relación señal/ruido de cuantización ideal SQNR = 6,02·N + 1,76 dB para una senoide a fondo de escala. Para alcanzar una resolución r en un rango, elige el menor N con 2ᴺ ≥ rango/r.
Tamaño del paso
1 LSB = 10/210 = 9,766 mV
Código
Vin/LSB = 6091/9,766 = 623,7
código = ⌊623,7⌋ = 623
Respuesta
D = 623
En binario es 1001101111.
6.Adquisición de datos y muestreo
Respuesta: e = 8,507 %
UART: un enlace serie asíncrono envía cada byte como una trama: un bit de inicio (nivel bajo), los bits de datos, un bit de paridad opcional y uno o dos bits de parada (nivel alto). La tasa de baudios es el número de bits por segundo, así que un bit dura Tb = 1/baudios y una trama de n bits dura n/baudios. El formato habitual 8N1 tiene 10 bits por byte. El generador de baudios divide el reloj: baudios = fclk/(16·D) con un número entero D, así que la tasa de baudios real difiere ligeramente de la deseada; un error inferior a aproximadamente el 2 % suele ser aceptable.
Divisor
D = 10·10⁶/(16·115200) = 5,425 → 5
Tasa de baudios real
10·10⁶/(16·5) = 125000 Bd
Error
(125000 − 115200)/115200·100 = 8,507 %
Respuesta
e = 8,507 %
Un error superior a aproximadamente el 2 % hace que el enlace no sea fiable: elige otro reloj u otra tasa de baudios.