simulación Verilog VGA

1

Soy nuevo en el desarrollo de FPGA y en verilog y actualmente estoy trabajando en un proyecto que involucra el envío de material a la pantalla a través del puerto VGA. Solo tengo acceso a la placa FPGA real cuando estoy en clase, pero también me gusta programar cuando estoy en casa. Estaba buscando una manera fácil de probar la salida VGA pero no pude encontrar nada adecuado para verilog. ¿Alguien podría hacerme saber cómo puedo probar mi salida VGA de mi programa verilog en simulación?

Gracias.

    
pregunta Saik

1 respuesta

1

No estoy seguro de que haya bancos de prueba listos para usar para lo que usted desea, y en general, si hubiera uno, sería costoso IP: alguien, que probablemente esté trabajando para una empresa, tendría que haberlo hecho.

En términos de lo que podría hacer, lo mejor sería escribir su propio banco de pruebas para observar las señales de control y guardar la salida de datos RGB sin procesar para cada cuadro en un archivo. Es relativamente fácil escribir un banco de pruebas con un par de contadores sincronizados con las señales Vsync / Hsync que, para cada píxel válido, guarden los datos RGB en un formato sin procesar (consulte $fwrite , que es una función de escritura de archivos Verilog).

Con los datos RGB guardados, puede verlos usando un software como MATLAB, o visores en línea como este sitio web . Alternativamente, puede guardar los datos en el formato de imagen ppm directamente desde el banco de pruebas como @ alex.forencich sugiere en el Comentarios, que es un buen formato de imagen simple.

Aunque no es ideal, esto debería proporcionar una forma rápida de verificar que los datos RGB que está generando tienen sentido. Supongo que lo que desea probar es que si el código que genera datos de píxeles y alimenta un núcleo VGA de alguna descripción alimenta los datos correctos mientras no tenga hardware. Si también está trabajando en clase, supongo que ya he podido verificar que la generación de señal (temporización VSync / HSync, alineación de datos, etc.) está funcionando, por lo que puede usar eso para configurar y verificar un banco de pruebas.

    
respondido por el Tom Carpenter

Lea otras preguntas en las etiquetas