Test de placa para UnAmiga.

Moderador: jepalza

Avatar de Usuario
mcleod_ideafix
Site Admin
Mensajes: 77
Registrado: 14 Ago 2018, 01:15

Test de placa para UnAmiga.

Mensaje por mcleod_ideafix » 27 Ago 2018, 12:43

Es un port del mismo core de testeo que se escribió para el ZX-UNO en su momento. Muestra en pantalla (si funciona) la siguiente información:
  • Estado del test de SDRAM (testeo hecho a 100 MHz y CAS LATENCY=2). El test es parecido al que hace el Spectrum. Primero se escribe un valor de 16 bits en todas las direcciones de la SDRAM (16M direcciones). Luego, para cada dirección, se lee el valor de cada dirección y se le suma una cierta cantidad, volviendo a escribir el nuevo valor. Luego, para cada dirección, se comprueba que el valor almacenado se corresponde con lo esperado. Si alguna dirección falla, el test da ERROR.
  • Estado de los dos puertos de joystick. Conectando un joystick a uno de los puertos y manejándolo deben verse las letras U,D,L,R,1 y 2
  • Estado de la conectividad del slot SD (es necesario poner una tarjeta SD. No se hace ninguna operación destructiva sobre ella)
  • Estado de la flash SPI. El valor en hexadecimal que aparece al lado de OK indica el vendor ID de la flash. En la mía es 20, que corresponde a Micron (la flash es una M25P16). Si no se detecta un vendor ID válido (00 o FF) entonces este test devuelve ERROR.
  • Estado del ratón. El test simplemente comprueba que hay conectividad en el puerto PS/2 del ratón mostrando el estado de los tres botones.
  • Estado del puerto serie. Este test aún no ha sido implementado.
De fondo a la ventana de texto con los resultados de los tests hay un patrón con los tres colores básicos (rojo, verde, azul), y de izquierda a derecha, para cada color, un rectángulo que se corresponde a un bit del DAC de video encendido (y los demás apagados). Si algún bit falla, el cuadrado correspondiente se verá negro. Si hay puentes entre bits, se verán cuadrados de un tamaño doble. Pulsando la barra espaciadora la ventana de texto se oculta y es posible ver el patrón de color completo.

Además de todo lo anterior, por los dos canales de sonido se oye un "ping", "pong" que va sonando alternativamente en cada canal de audio. A la vez, los dos leds que se situan en la placa cerca del slot SD, alternan entre encendido y apagado.

Pulsando 1,2 y 3 se cambia de modo de video (RGB PAL, RGB NTSC, o VGA 60 Hz. Al tener que manejar este core con el teclado, se testea también la conectividad del propio teclado y su compatibilidad con PS/2.
test_placa_unamiga.jpg
test_placa_unamiga.jpg (111.83 KiB) Visto 1672 veces
Se adjunta código fuente del core y SOF listo para enviar a la FPGA.

PD: ah! y además (al igual que el core del ZXUNO equivalente) core 100% "de aquí de la tierra". Sin tomar prestado ni una línea de OpenCores u otros sitios. Excepto el módulo del reloj, que es el que genera automáticamente el Quartus cuando le pides una megafunción de reloj, claro.
Adjuntos
test_placa.zip
(112.33 KiB) Descargado 162 veces

Avatar de Usuario
jepalza
CPLD
Mensajes: 171
Registrado: 14 Ago 2018, 18:51

Re: Test de placa para UnAmiga.

Mensaje por jepalza » 27 Ago 2018, 19:05

Muy chulo. Al estilo ZXUNO. Que bien me hubiera venido al principio, cuando empecé con la Altera, pero es igual de útil ahora mismo. :P

ManuFerHi
GAL
Mensajes: 56
Registrado: 17 Sep 2018, 09:50

Re: Test de placa para UnAmiga.

Mensaje por ManuFerHi » 17 Oct 2018, 15:48

Pues me ha venido perfecto este core, gracias.
phpBB [media]

fpganoob
Veroboard
Mensajes: 12
Registrado: 11 Oct 2018, 15:31

Re: Test de placa para UnAmiga.

Mensaje por fpganoob » 19 Oct 2018, 21:24

Una duda mcleod, sdram_controller_2x es un controlador de ddr?

Avatar de Usuario
jepalza
CPLD
Mensajes: 171
Registrado: 14 Ago 2018, 18:51

Re: Test de placa para UnAmiga.

Mensaje por jepalza » 20 Oct 2018, 06:59

fpganoob escribió:
19 Oct 2018, 21:24
Una duda mcleod, sdram_controller_2x es un controlador de ddr?
Respondo por él: NO

Un controlador de DDR es muy, muy complejo. Generalemente, es tan complejo, que los mismo sistemas de desarrollos como XILINX o QUARTUS tienen sus propios medios para generar módulos de control DDR.
Incluso con la "chuleta" ya realizada, sigue siendo muy complejo adaptar ese módulo generado a tu proyecto, hay que saber muy bien lo que haces. Yo lo he intentado en varias ocasiones, y en todas he tirado la toalla.
Tengo una placa Spartan LX45, una "bestia" de capacidad, pero lleva DDR en lugar de SDRAM, y solo he conseguido ejecutar los circuitos que he encontrado por la red ya hechos, como chequeos o un visualizador de fotos, pero tratar de usar esa DDR a modo SDRAM o SRAM para proyectos retro, no lo conseguí.

Mira esta página, donde se habla de los módulos DDR en Xilinx:
https://numato.com/blog/spartan6-and-dd ... g-project/

A groso modo, te puedo decir que controlar una SDRAM lo haces con 100 líneas de código como mucho, una SRAM con poco mas de 20 líneas, pero una DDR.... no menos de 1000 líneas

fpganoob
Veroboard
Mensajes: 12
Registrado: 11 Oct 2018, 15:31

Re: Test de placa para UnAmiga.

Mensaje por fpganoob » 20 Oct 2018, 09:37

Jeje, me has pillado
La verdad es que suponía que no lo era... Pero lo tenía que intentar no vaya a ser que estuviera equivocado.

Gracias por la información!!!




Enviado desde mi iPhone utilizando Tapatalk

edgg
Veroboard
Mensajes: 4
Registrado: 18 Dic 2018, 21:39

Re: Test de placa para UnAmiga.

Mensaje por edgg » 19 Dic 2018, 15:30

Yo no he sido capaz de hacerla funcionar correctamente, arranca, las luces de la placa pivotan correctamente y el ping es reproducido de altavoz a altavoz, pero no sale nada por pantalla, si cambio los modos de vídeo, en uno de ellos dice que no es reconocido porque entiendo que está emitiendo en 15khz, no obstante los cores me cargan y se ven perfectos,
me estoy dejando algún parámetro de configuración?

estoy tirando de un monitor Dell con entrada por vga..
Muchas gracias!

antoniovillena
GAL
Mensajes: 80
Registrado: 17 Ago 2018, 10:09

Re: Test de placa para UnAmiga.

Mensaje por antoniovillena » 19 Dic 2018, 17:04

Vale. Eso es porque por defecto el test arranca en PAL. Tienes que enchufar un teclado y pulsar 3 para activar la salida VGA.

edgg
Veroboard
Mensajes: 4
Registrado: 18 Dic 2018, 21:39

Re: Test de placa para UnAmiga.

Mensaje por edgg » 20 Dic 2018, 00:34

Gracias Antonio!
mañana lo pruebo

edgg
Veroboard
Mensajes: 4
Registrado: 18 Dic 2018, 21:39

Re: Test de placa para UnAmiga.

Mensaje por edgg » 20 Dic 2018, 16:27

Pues te entendí mal y pensé que tenía que enchufar el teclado tendiendo presionado el botón 3,
ya había hecho el cambio de opciones de vídeo con las teclas 1,2 y 3; con la 1 y 2 la pantalla se queda en negro y con la opción 3 me da el error siguiente
Imagen

básicamente lo que me está diciendo es que la señal que me llega no es de 60Hz, de hecho me llega a 50Hz, pero en el monitor no tengo opción de cambiarla, por lo que me hace preguntarme, el modo 3 vga del core puede emitir a 50Hz, tiene que ver con las señales que sean Pal o Ntfs?, y podría cambiar yo la configuracion de alguna de las formas?

Muchas gracias Antonio!

Responder

Volver a “Otros cores / En preparación”