Diseñar un osciloscopio basado en FPGA

0

Quiero diseñar un pequeño osciloscopio que sea capaz de analizar señales de hasta 1 MHz utilizando un FPGA Xilinx. Quiero usar la interfaz VGA para mostrar las señales. ¿Es posible obtener un buen resultado utilizando solo FPGA y una RAM externa para la elaboración de la señal? ¿O es necesario utilizar un microprocesador externo? Con la licencia de Xilinx ISE Webpack no puedo usar el procesador de núcleo suave MicroBlaze, solo el PicoBlaze. ¿Cuál es la mejor manera de obtener un buen resultado con un diseño simple y barato?

    
pregunta Oceanic815

4 respuestas

1

1 MHz es lo suficientemente lento como para que esto se pueda hacer sin un FPGA. Tal vez quiera usar una memoria externa de muestra o A / D, pero organizar todo eso debería ser posible con un microcontrolador rápido y decente.

Algunos de los dsPIC 33F tienen A / D incorporados que pueden muestrear a 1 MHz, si recuerdo bien. Normalmente, no se necesitan muchos bits para un osciloscopio, ya que el usuario ajustará la ganancia y la compensación para ampliar lo que quiere ver. Los ámbitos de nivel de entrada no tienen más de 256 píxeles verticalmente, por lo que, obviamente, no muestran más de 8 bits de información por muestra. Los 10 bits que puede hacer el A / D interno de un dsPIC deberían ser suficientes.

    
respondido por el Olin Lathrop
1

Creo que esto es bastante factible. Asumiré que ha seleccionado una parte con un ADC incorporado por canal que desee.

La arquitectura depende de si quieres tener un framebuffer o no; consumirá RAM pero facilitará la depuración. Los diseños que no son de marcos de marcos probablemente tendrían un enfoque de ROM de generador de caracteres en lugar de números en la interfaz de usuario.

De cualquier manera, la clave para que funcione bien es que el microprocesador no esté involucrado al poner trace en la pantalla. Cada ADC debe estar conectado a un búfer de anillo de las N muestras más recientes, donde N es el número de muestras en todo el ancho de la pantalla. En el intervalo de supresión vertical VGA, capture esto en otro búfer que representará el conjunto de muestras que se mostrarán. A continuación, puede traducirlos a píxeles en el framebuffer; o genere un framebuffer de una línea para cada línea de la pantalla al escanear el búfer de muestra en busca de cualquier situación en la que haya una muestra debajo de la línea de exploración junto a una encima de la línea de exploración.

(Esto podría implicar dos RAM diferentes, una escrita por los ADC y una que es la pantalla de visualización, intercambiando roles en cada fotograma).

    
respondido por el pjc50
0

Un osciloscopio consta de muchas partes, pero lo que realmente define el rendimiento y la utilidad de un osciloscopio son sus circuitos de activación. Al poder definir cuándo comenzar una muestra, las condiciones que se necesitan para capturar un evento más allá de solo muestrear y mostrar realmente definen / extienden la utilidad del instrumento.

Argumentaría que si realmente quisiera construir algo especial y útil, realmente solo tiene la opción de implementar un 'Alcance de ese tipo de ancho de banda en un FPGA. Con los búferes de línea y la lógica de decisión puede implementar algunos filtros no causales y procesamiento de señales que pueden aislar esos eventos que realmente lo ayudan a depurar. Después de todos esos eventos intermitentes (quizás incluso singulares) los que hacen que la depuración sea muy difícil.

Mientras que un sistema de tarjeta de sonido como (Muestra y luego pantalla) es donde debes comenzar, no debería ser el objetivo final.

    
respondido por el placeholder
-1

Básicamente, creo que es factible con hardware puro. Necesitamos más información para decirle si necesita un microprocesador o no. Si quiere mostrar una forma de onda a una frecuencia fija y una amplitud fija, diría que es fácil de hacer en hardware, pero recuerde que tendrá que configurar ADC y otros periféricos, probablemente utilizando SPI, por lo que al menos picoblaze será necesario.

    
respondido por el Socrates

Lea otras preguntas en las etiquetas