Curso: Instrumentos Electrónicos (66.44...

Post on 21-Mar-2020

15 views 0 download

Transcript of Curso: Instrumentos Electrónicos (66.44...

Curso: Curso: Instrumentos Electrónicos (66.44 Instrumentos Electrónicos (66.44 –– 85.13)85.13)

INGENIERÍA ELECTRÓNICAINGENIERÍA ELECTRÓNICA

1

INGENIERÍA ELECTRÓNICAINGENIERÍA ELECTRÓNICAFacultad de IngenieríaFacultad de Ingeniería

Universidad de Buenos AiresUniversidad de Buenos Aires

Analizador de estados lógicosAnalizador de estados lógicos

Introducción

2

Introducción

Mediciones electrónicasClasificación

Medidas en el dominio del tiempo

Medidas en el dominio de la frecuencia

3

Medidas de impedancia y características de materiales

Mediciones en eldominio del dato

Información de una señal¿Qué es el dominio del dato?

• ¿Qué vemos en la imagen?

• Un círculo negro con una parte despegada,

• letras blancas que van disminuyendo su tamaño.

4

• Lorem ipsum dolor sit amet, consecteturadipisicing elit…

Por otra parte, denunciamos con indignación a los hombres que son engañados y desmoralizados por los encantos del placer del momento, tan cegados por el deseo, que no pueden prever el dolor y la molestia que se va a producir, y la misma culpa es de los que faltan a su deber por debilidad de la voluntad, que es lo mismo que decir que fallan por la fatiga y el dolor.

• Su traducción al castellano:

Información de una señal¿Qué es el dominio del dato?

• Es el análisis de las señales de datos en base a la informaciónque transmiten, no sus características físicas.

• Los datos son lisa y llanamente hechos. Imágenes, cantidades, sonidos, el mundo que nos rodea.

5

• En teoría de la información, se define información como una secuencia ordenada de símbolos de un alfabeto.

• Al procesar, organizar y estructurar los datos para que sean útiles, se convierten en información.

Información de una señalEl camino a la información – señal modulada

• A veces la información no está a simple vista:

• Este espectrograma no muestra qué información se transmitió

• En el peor de los casos (para el análisis), la información se transmite modulada.

6

https://dk8ok.org/modes/fsk-2/

Información de una señalDemodulando la señal

• Ahora hay texto, pero se entiende?

7

https://www.mwrf.com/test-measurement/how-optimize-linear-distortion-measurements-signal-analyzer• ¿Qué es un uno y qué un cero?

Información de una señalCodificación a nivel bits

• El 1 y el 0 se pueden representar de muchas formas

• ¡Siempre es importante conocer la codificación!

8

• Hay unos y ceros, pero todavía no se ve la información transmitida.

Información de una señalDecodificando la señal a nivel palabras

Está todo junto!… Señal con bits decodificados

9

http://www.bitscope.com/software/

Decodificando palabras en un analizador lógico

Información de una señalAnalizando la información – decodificación de protocolo

Ahora las letras tienen significado:

Vemos que los unos y ceros forman direcciones, datos y secuencias de control

10

https://www.perytech.com/Logic-Analyzer.htm

Información de una señalPresentando la información

Ahora podemos traducir el mensaje…

11

Qué pasa si lo queremos en ASCII?

Utilidad del analizador lógicoUna vista desde el modelo OSI

• Ninguna clase sobre protocolos puede estar completa sin el modelo OSI.

• Las capas superiores se analizan con software adecuado.

12

• Para la capa física, osciloscopio, analizador de espectro y analizador lógico.

• Para la capa de enlace, analizador lógico.

Analizador lógico

13

Analizador lógico

Analizador lógico¿Qué es un analizador lógico?

• Es un instrumento que nos permite visualizar información se señales digitales.

• Si además las decodifica, tenemos un analizador de protocolo.

14

http://www.homebrewcpu.com/new_stuff.htm

https://www.perytech.com/Logic-Analyzer.htm

Analizador lógico¿Qué NO es un analizador lógico?

• Un analizador lógico NO permite evaluar la integridad de una señal.

15

Analizador lógico¿Dónde usamos un analizador lógico?

• Es útil para diseñar, depurar y analizar:

• sistemas digitales • sistemas embebidos

16

• Cada canal mide 0 o 1. No da información de la amplitud de la señal.

Analizador lógicoPrimer round – analizador lógico vs. osciloscopio

• Puede capturar simultáneamente un gran número de señales.

• A lo sumo permite ver 4 canales en simultáneo.

17

• Las señales son 0 o 1. • Tiene un ADC de 8 bits (generalmente).

Analizador lógicoModos de operación - Estado y tiempo

El analizador lógico puede presentar la información de dos maneras:

En modo tiempo En modo estado

•Se necesita señal de clock.•Los canales se capturan con el clock.

•Útil para buses paralelos.

•Se puede ajustar tasa de muestreo.•La captura no necesariamente es sincrónica respecto de la señal.

•Útil para protocolos serie.

18

https://www.edn.com/electronics-news/4378971/Logic-Analyzers-Digital-Detectives

•Útil para protocolos serie.

•Útil para detectar glitches.

http://www.zeroplus.com.tw/logic-analyzer_en/faq_software.php

Analizador lógicoAlgunas “Mediciones” en el modo tiempo

• Permite detectar glitches y errores de timing.

Glitch

19

Ciclo de escritura de memoria

Verificación de tiempos de setup y hold

Analizador lógicoSegundo round – analizador lógico vs. osciloscopio

• Un osciloscopio que guarda 1Mpunto…¿Qué resolución tiene en 4 min.?

20 • El analizador lógico captura gran cantidad de datos digitales gracias a la compresión de datos (“transitional timing”).

Evolución del Analizador de Estados Lógicos

21

Evolución del Analizador de Estados Lógicos

Árbol genealógico del analizador lógicoEl comienzo

22 http://hpmemoryproject.org/wb_pages/wall_b_page_12.htm

Circuitos digitales

Árbol genealógico del analizador lógico La llegada de los microcontroladores

23 http://hpmemoryproject.org/wb_pages/wall_b_page_12.htm

Árbol genealógico del analizador lógico Apogeo y caída

Apogeo

24

http://hpmemoryproject.org/wb_pages/wall_b_page_12.htm

Nuevos inconvenientes:• Mayores velocidades de clock

en los microprocesadores• Encapsulados más difíciles

para conectar• Predominancia de protocolos

de comunicación serie en vez de paralelo

Árbol genealógico del analizador lógico La separación evolutiva

Equipos de muy alta gama: Equipos sencillos:• Con memoria interna:

25

• O que hacen streaming:

Árbol genealógico del analizador lógico Si no puedes con ellos…

• Pantalla pequeña para muchas señales.

• Opciones de triggerlimitadas.

• Menos opciones de decodificación.

• Interfaz menos cómoda

• Osciloscopios de señal mixta (MSO)

26

• Interfaz menos cómoda

https://www.electronicdesign.com/test-amp-measurement/what-s-difference-between-mixed-signal-oscilloscope-and-logic-analyzer

Una opinión más objetiva…

Ejemplo 1:

27

Ejemplo 1:Aplicación a buses paralelos.

Al final no pude con ellos!Uso de osciloscopio con analizador lógico

Cámara térmica Heraeus-Vötsch

Interior de la cámara

28

Verificación de un ADCConversión A/D de lecturas de sensores

Placa de control

29

Simulando los sensores

Verificación de un ADCConversión A/D de lecturas de sensores

Conversor A/D AD679 conectorizado

30

Verificación de un ADCViendo la captura

En una primera inspección vemos una jungla de palitos.

31

Verificación de un ADCProfundidad de memoria

Captura usando memoria normal

Captura usando memoria larga

32

Verificación de un ADCAhora a triggerear

Me quiero enfocar en cada lugar donde hay señal en el canal analógico. Hay que afilar la imaginación.

33

Verificación de un ADCAhora a triggerear

El segundo pulso se triggereapor duración de pulso

El segundo pulso se triggereapor patrón de bits.

34

Verificación de un ADCViendo el primer pulso en detalle

En el primer pulso se hacen tres lecturas

Detalle de una lectura

35

ResumiendoOsciloscopio vs. Analizador lógico

Osciloscopio: Analizador lógico:

• Para medir parámetros analógicos de señales digitales (overshoot, ringing, rise time, etc)

• Caracterizar integridad de hasta 4 señales por vez (jitter, overshoot, etc.).

• Depurar o verificar operación de sistemas digitales.

• Tener seguimiento de múltiples señales de manera simultánea.

• Detectar violaciones de timing y

36

• Medir tensiones y flancos para evaluar retardo de propagación y setup/hold.

• Detectar fallas transitorias (runt, glitches y transitorios).

• Detectar violaciones de timing y glitches.

• Seguir la ejecución de software en sistemas embebidos (ingeniería inversa)

• Capturar largos tiempos de señal

• Decodificar comunicaciones serie y paralelo.

Especificaciones

37

Especificaciones

Especificaciones de analizadores lógicosAnalizadores lógicos Zeroplus

38

Especificaciones de analizadores lógicosAnalizadores lógicos Digiview

39

Especificaciones de analizadores lógicosAnalizadores lógicos Digiview

40

No te dicen la impedancia de entrada… 50kOhm // <3pF

Especificaciones de analizadores lógicosAnalizadores lógicos Digiview

41

Especificaciones de analizadores lógicosAnalizadores lógicos Saleae

42

Especificaciones Tektronix (14 páginas!):

https://www.tek.com/logic-analyzer/tla6400

Fin de la sección shopping

43

Componentes de un analizador lógico –

44

Componentes de un analizador lógico –parte 1

Analizador lógicoDiagrama en bloques

1.Puntas de conexión

2.Configuración de clock y trigger

45

3.Adquisición

4. Análisis y presentación

Puntas de conexión

46

Analizador lógicoConexión al DUT

Puntas de alta densidad con conector Mictor

Puntas de compresión

Puntas “Clip-on”

47

Analizador lógicoEfecto de carga de las puntas

Puntas de tiempo y de estado Efecto de carga de las puntas

• La capacidad de las puntas redondea los flancos

• Esto corre el punto de trigger y ocasiona malas mediciones de tiempo

• Algunos analizadores requieren puntas distintas para capturar señales en modo tiempo o modo estado

48

Analizador lógicoOtros problemas - efectos dependientes de la posición

Conexión en transmisor o receptor Longitud de conexión al conector de prueba

49

Skew!

Configuración de clock y trigger

50

Analizador lógicoConfiguración del clock

• Hay dos posibilidades: modo sincrónico o asincrónico

• En modo sincrónico se usa un clock externo. Generalmente asociado al modo estados.

• En modo asincrónico se usa un clock interno. En algunos analizadores se puede variar el sample rate.

Usando A3 como clock externo Captura con clock interno

51

Analizador lógicoCompresión de datos (“transitional timing”)

• Si se usa el modo sincrónico, sólo se guarda cuando hay señal de clock.

El secreto del analizador lógico para capturar gran cantidad de información es la compresión de datos.

• En modo asincrónico se pueden descartar muestras donde no cambie la señal. Se usan dos clocks, uno absoluto (timestamp) y el relativo cuando la señal está cambiando.

• De esta manera se aprovecha mucho mejor la memoria disponible.

52

De esta manera se aprovecha mucho mejor la memoria disponible.

https://www.saleae.com/performance-calculator/

Analizador lógicoTrigger

• Es una de las partes más importantes del analizador lógico.

• Seteando bien el trigger podemos aprovechar mejor la memoria de captura.

53

• Se pueden tener varias “etapas” de trigger. Las múltiples etapas se combinan para disparar en un evento particular.

• Se pueden setear conjuntos de condiciones en el tiempo (protocolo) o entre canales (Address paralelo).

Analizador lógicoTrigger secuencial

Opciones de trigger:•Palabra

•Rango

•Contador

54

•Flancos y niveles.

•Glitches

•Timer

•Analógico (salida osciloscopio)

Analizador lógicoTrigger vs. Memoria y adquisición

• El punto de trigger puede setearse en cualquier lugar de la memoria.

• Cuando está presente, el trigger generalmente es single

• Determina cómo se llena la memoria.

55

• Cuando está presente, el trigger generalmente es single shot.

• Es posible disparar por ancho de pulso

• Se pueden setear timers para buscar eventos en ventanas de tiempo disparadas por otros eventos.

Más info en: https://www.edn.com/electronics-news/4378971/Logic-Analyzers-Digital-Detectives

Ejemplo 2:

56

Ejemplo 2:Adquisición de comunicación por puerto

serie

Hardware utilizadoAnálisis de caso de uso – Comunicación serie

Se tomaron algunas capturas con un analizador lógico Zeroplus LAP-C 16032 y un osciloscopio Rigol DS2072A de una comunicación serie generada con una placa Arduino Nano.

57

Datos a transmitirAnálisis de caso de uso – Comunicación serie

Con el Arduino se transmite una tabla de código ASCII.

58

Captura con osciloscopioAnálisis de caso de uso – Comunicación serie

Captura con osciloscopio

59

Detalle osciloscopioAnálisis de caso de uso – Comunicación serie

Haciendo zoom

60

Decodificando protocoloAnálisis de caso de uso – Comunicación serie

Decodificación con osciloscopio

61

Setup del analizador lógicoAnálisis de caso de uso – Comunicación serie

Captura con Analizador lógico – configuración del decodificador

62

Activando capturaAnálisis de caso de uso – Comunicación serie

Vista de “Estado” y tiempo

63

Efectos del muestreoAnálisis de caso de uso – Comunicación serie

Capturo a 50kHz de frecuencia de muestreo

64

Problemas de capturaAnálisis de caso de uso – Comunicación serie

No pude capturar toda la tabla! No alcanza la memoria!

65

Menor frecuencia = más tiempo de capturaAnálisis de caso de uso – Comunicación serie

Bajando la velocidad de captura… falla

66

Buscando otra soluciónAnálisis de caso de uso – Comunicación serie

Bajándola aún más, hasta el software se da cuenta que hay algo mal.

67

Compresión!Análisis de caso de uso – Comunicación serie

Activando la compresión se captura toda la tabla ASCII!

68

Análisis de integridadAnálisis de caso de uso – Comunicación serie

Rompamos un poco… la señal

69

Señal a través de línea sin terminarAnálisis de caso de uso – Comunicación serie

A la entrada del cable (amarillo) y al final del mismo (azul)

70

Decodificación con osciloscopioAnálisis de caso de uso – Comunicación serie

A la salida del cable no decodifica bien.

71

Tiempo extraAnálisis de caso de uso – Comunicación serie

El analizador lógico sí decodifica correctamente.

72

Funcionamiento del analizador lógico –segunda parte

73

segunda parte

Adquisición

74

Analizador lógicoAdquisición - Memoria

La adquisición de datos en un analizador lógico es continua.

Repaso… ¿Cómo adquiere un osciloscopio?

75

• La cantidad de datos capturados viene dada por:• La profundidad de memoria• La velocidad de muestreo• La compresión (si no se captura en tiempo real).

Analizador lógicoCaptura de glitches y errores de setup & hold

• Algunos analizadores lógicos están preparados especialmente para detectar estas fallas de los sistemas

• Tienen un segundo sistema de muestreo más rápido que escribe sobre una memoria pequeña.

76

rápido que escribe sobre una memoria pequeña.

• Este sistema permite lograr mayor resolución sin aumentar la memoria necesaria.

Analizador lógicoAdquisición - Resumen

• Captura simple

• Seteando trigger

77https://www.byteparadigm.com/applications/la-for-embedded-software-debug/

• Usando compresión y filtrado

Análisis y presentación

78

Analizador lógicoMuestra de resultados y mediciones automáticas

Presentación en tiempo

79

Mediciones automáticas:

•Frecuencia•Período

•Ancho de pulso

•Duty Cycle•Conteo de flancos

Analizador lógicoMuestra de resultados y mediciones automáticas

Presentación en estados

Desensamblado de código

80

Protocolos de transmisión de datos

81

Protocolos de transmisión de datos

ProtocolosClasificación de protocolos

En la actualidad existe gran variedad de protocolos. Tenemos:

Según simultaneidad o no de los datos:

• Paralelo• Serie

Según características eléctricas:

• Single ended• Diferenciales

Según medio de propagación:

• Eléctricos• Ópticos• Radiofrecuencia

82

https://en.wikipedia.org/wiki/Parallel_communication

http://gunkies.org/wiki/Bus

• Radiofrecuencia

ProtocolosClasificación de protocolos

En la actualidad existe gran variedad de protocolos. Tenemos:

Según características temporales:

• Sincrónicos• Asincrónicos

Según tasa de datos:

• Alta tasa de datos• Baja tasa de datos

Según TX y RX simultáneos o no:

• Full duplex• Half duplex

83

ProtocolosProtocolos decodificados por analizador lógico Zeroplus

84

ProtocolosProtocolos decodificados por analizador lógico Zeroplus

85

ProtocolosProtocolos decodificados por analizador lógico Zeroplus

86

Ejemplo 3:

87

Ejemplo 3:Decodificando algunos protocolos

Transmisión i2cProtocolo i2c

Bus i2c

http://www.handsonembedded.com/stm32f103-spl-tutorial-6/

Acciones simples de escritura y lectura

88https://www.youtube.com/watch?v=7CgNF78pYQM

Viendo los niveles de tensión en las líneas de i2c:

NI myRIO: I2C serial communication

Transmisión i2cUn scanner de direcciones i2c

89

Transmisión i2cVerificando la utilidad de la compresión

90

Transmisión i2cCaptura de dirección no ocupada por dispositivo

91

Transmisión i2cCaptura de dirección ocupada por dispositivo

92

Analizadores de protocolo

93

Analizadores de protocolo

Midiendo señales moduladasDecodificación

• Uno de los más importantes usos del analizador lógico es la decodificación de protocolos.

94

Midiendo señales moduladasDecodificación de señales moduladas

• Con el software VSA 89600 se puede demodular y enviar la información al analizador lógico.

95 http://literature.cdn.keysight.com/litweb/pdf/5989-2384EN.pdf

Midiendo señales moduladasFallas en la decodificación

La decodificación puede fallar por diversos motivos:

• Problemas de integridad

• Problemas de protocolo erróneo

96

de integridad

• Problemas de muestreo

Fuentes

• Logic Analyzer Fundamentals. Tektronix.

• Logic Analysis Fundamentals. Keysight Technologies

• How to Measure Digital Baseband and IF Signals Using Agilent Logic Analyzers with 89600 Vector Signal Analysis Software.

• Feeling Comfortable with Logic Analyzers. Application Note 1337. Agilent

97

• Feeling Comfortable with Logic Analyzers. Application Note 1337. Agilent Technologies.

• Probing Solutions for Logic Analysis Systems. Agilent Technologies.

• 8 Hints For Solving Common Debugging Problems With Your Logic Analyzer. Application Note 1326. Agilent Technologies.

• Understanding Logic Analyzer Triggering. Doug Beck, Hewlett-Packard.