Un analizador de bus es un tipo de herramienta de análisis de protocolo que se utiliza para capturar y analizar datos de comunicación a través de un bus de interfaz específico, generalmente integrado en un sistema de hardware. La funcionalidad del analizador de bus ayuda a los ingenieros de diseño, prueba y validación a verificar, probar, depurar y validar sus diseños a lo largo de los ciclos de diseño de un producto basado en hardware. También ayuda en las últimas fases del ciclo de vida de un producto, examinando la interoperabilidad de la comunicación entre sistemas y entre componentes, y aclarando los problemas de soporte de hardware. [1]
Un analizador de bus está diseñado para su uso con arquitecturas de bus en serie o paralelo específicas. Aunque el término analizador de bus implica una comunicación física e interfaz que se está analizando, a veces se usa indistintamente con el término analizador de protocolo o analizador de paquetes, y también se puede usar para herramientas de análisis para interfaces inalámbricas como LAN inalámbrica (como Wi-Fi). , PAN (como Bluetooth, USB inalámbrico) y otros, aunque estas tecnologías no tienen un bus "cableado".
El analizador de bus monitorea y captura los datos de comunicación del bus, los decodifica y analiza y muestra los informes de datos y análisis al usuario. Es esencialmente un analizador lógico con algún conocimiento adicional de las características subyacentes del tráfico de autobuses. Una de las diferencias clave entre un analizador de bus y un analizador lógico es notablemente su capacidad para filtrar y extraer solo el tráfico relevante que ocurre en el bus analizado. Algunos analizadores lógicos avanzados presentan opciones de calificación de almacenamiento de datos que también permiten filtrar el tráfico de bus, habilitando funciones similares a las de un analizador de bus. [2]
Algunos diferenciadores clave entre analizadores lógicos y de bus son:
- 1. Costo: los analizadores lógicos suelen tener precios más altos que los analizadores de bus. Lo contrario de este hecho es que un analizador lógico se puede usar con una variedad de arquitecturas de bus, mientras que un analizador de bus solo es bueno con una arquitectura.
- 2. Capacidades específicas y preformateo de datos: se puede diseñar un analizador de bus para proporcionar un contexto muy específico para los datos que ingresan desde el bus. Los analizadores para buses seriales como USB, por ejemplo, toman datos seriales que llegan como un flujo serial de 1 y 0 binarios y los muestran como paquetes lógicos diferenciados por chirp, encabezados, carga útil, etc.
- 3. Facilidad de uso: si bien un analizador lógico de propósito general puede admitir múltiples buses e interfaces, un analizador de bus está diseñado para una interfaz física específica y generalmente permite al usuario conectar rápidamente el hardware de sondeo al bus que se prueba, ahorrando tiempo y esfuerzo.
Desde la perspectiva del usuario, un punto de vista (en gran medida) simplificado puede ser que los desarrolladores que desean las capacidades más completas y específicas para una arquitectura de bus único pueden obtener un mejor servicio con un analizador de bus, mientras que los usuarios que trabajan con varios protocolos en paralelo pueden ser mejores. se sirve con un analizador lógico que es menos costoso que varios analizadores de bus diferentes y les permite aprender una interfaz de usuario única frente a varias.
Los analizadores ahora están disponibles para prácticamente todos los estándares y factores de forma existentes de computadoras y buses integrados, como PCI Express , DDR, USB , PCI , CompactPCI , PMC , VMEbus , CANbus y LINbus , etc. Los analizadores de bus se utilizan en la industria de la aviónica para analizar MIL -STD-1553 , ARINC 429 , AFDX y otros protocolos de bus de datos de aviónica. Otros analizadores de bus también se utilizan en la industria del almacenamiento masivo para analizar protocolos de transferencia de datos populares entre computadoras y unidades. Éstos cubren buses de datos populares como NVMe, SATA , SAS , ATA / PI , SCSI , etc. Estos dispositivos generalmente se conectan en serie entre la computadora host y la unidad de destino, donde 'espían' el tráfico en el bus, lo capturan y presentan en formato legible por humanos .
Ejercitador de bus y protocolo
Para muchas arquitecturas de bus como PCI Express, PCI, SAS, SATA y USB, los ingenieros también utilizan un "Ejercitador de bus" o un "Ejercitador de protocolo". Dichos usuarios pueden emular pilas de comunicación parcial o total que cumplen con el estándar de comunicación de bus específico, lo que permite a los ingenieros controlar quirúrgicamente y generar tráfico de bus para probar, depurar y validar sus diseños.
Estos dispositivos también permiten generar un tráfico de bus malo y bueno para que se puedan probar los sistemas de recuperación de errores del dispositivo. También se utilizan a menudo para verificar el cumplimiento del estándar para garantizar la interoperabilidad de los dispositivos, ya que pueden reproducir escenarios conocidos de forma repetible.
Los ejercitadores generalmente se usan junto con los analizadores, por lo que el ingeniero obtiene una visibilidad completa de los datos de comunicación capturados en el bus. Algunos ejercitadores están diseñados como sistemas independientes, mientras que otros se combinan en los mismos sistemas utilizados para el análisis.
Ver también
- JTAG (escaneo de límites)
Referencias
- ^ Los fundamentos de los analizadores de bus
- ^ En tal caso, a veces también se lo denomina 'registrador de bus digital'. Este es un tipo de registrador de datos que implementa un mecanismo de muestreo y un mecanismo de filtrado para extraer el tráfico relacionado con un protocolo específico o definido por el usuario. Vea, por ejemplo, este registrador de datos digital