Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Otras placas, clones o aparatos basados en FPGA / Oher FPGA based clones/devices/boards
Avatar de Usuario
Uto
Mensajes: 1394
Registrado: 17 Dic 2015, 16:39

Re: Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Mensaje por Uto » 07 May 2018, 07:58

En realidad mas que hacer un core previo con menús sería retocar alguno de los que hay. Por ejemplo se puede mirar si se puede retocar levemente la BIOS del core next186 para que detecte la pulsación de las teclas 2,3, etc al arrancar y que fuerce la carga desde otro punto de la flash.Eso obligaría a que el core de Pc fuera el primero de la flash, pero vamos, igual que en zxuno el core de Spectrum es el primero.

Eso sí, en primera aproximación, si alguien (no necesariamente tú) se anima a explorarlo, basta con poder seleccionar core pulsando una tecla. Cosas avanzadas como las que hace el zxuno de mostrar menú, e incluso poder cargar cores de la SD son mucha tela ya. Vamos que para grabar dos cores en la flash habría que usar el cable.

Avatar de Usuario
Uto
Mensajes: 1394
Registrado: 17 Dic 2015, 16:39

Re: Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Mensaje por Uto » 07 May 2018, 18:55

He echado un ojo al next186 y trae los fuentes de la BIOS y del bootloader, por lo que poner algo ahí que cuando pulses "2" le diga a la FPGA que se configure desde la posición XXXXX de la flash en lugar de desde la 000000 no habría de ser difícil.

Otra cosa es si la Cyclone permite eso, y si lo permite como exponer esa funcionalidad en el core para que la BIOS pueda utilizarla (en el ZX-Uno por ejemplo, la capacidad de multiboot de la Xilinx es expuesta por un registro del ZX-Uno, con lo cual basta con hacer unos OUT).

En fin, sería bonito ver arrancar la FPGA con un PC, pulsando 2 con un Amiga, pulsando 3 con una Megadrive.... soñar es gratis :-D

Avatar de Usuario
jepalza
Mensajes: 613
Registrado: 02 Oct 2015, 18:52

Re: Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Mensaje por jepalza » 07 May 2018, 19:41

Estoy tratando de averiguar algo del tema, y de momento, no consigo enterarme de nada. He localizado este documento:
http://www.altera.com/literature/hb/cyc ... -51008.pdf
Que habla del proceso de arranque. Lo estudiaré a ver si averiguo algo.

Avatar de Usuario
Uto
Mensajes: 1394
Registrado: 17 Dic 2015, 16:39

Re: Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Mensaje por Uto » 07 May 2018, 22:03

jepalza escribió:Estoy tratando de averiguar algo del tema, y de momento, no consigo enterarme de nada. He localizado este documento:
http://www.altera.com/literature/hb/cyc ... -51008.pdf
Que habla del proceso de arranque. Lo estudiaré a ver si averiguo algo.
Si, ese mismo he estado leyendo yo pero me daba que no, y mcleod me ha confirmado que las cyclone4 no tienen multiboot. Como consecuencia tal cual no se puede, con hardware adicional si, pero eso ahora mismo no viene a cuento. Gracias por mirarlo, quizá más adelante :-)

Avatar de Usuario
jepalza
Mensajes: 613
Registrado: 02 Oct 2015, 18:52

Re: Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Mensaje por jepalza » 08 May 2018, 05:48

Por eso las MIST emplean el ARM para volcar el contenido del fichero elegido en el menu, sobre la ram de la FPGA. No lo deja permanente, sino que lo vuelca cada vez que se arranca, por que solo tarda unos pocos segundos, y ni se aprecia.
Ya averiguaremos algún truco. Pero a males mayores, sigo diciendo, que todo el que compre esta placa, va a tener su grabador y estar obligado a grabar sí o sí el core, con lo cual, cambiar de core cuando apetezca, son un par de minutos.

Avatar de Usuario
Uto
Mensajes: 1394
Registrado: 17 Dic 2015, 16:39

Re: Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Mensaje por Uto » 10 May 2018, 13:14

Una duda @jepalza: ¿Como queda implementada la VRAM del Next186?

Lo digo porque revisando -después de que lo dijo Distwave - veo que esta FPGA tiene la misma cantidad de RAM interna de la FPGA, y por tanto no sé si tiene la misma limitación que la implementación para ZX-UNo, y es que no suficiente y por tanto no se pueden pintar todas las lineas de pantalla.

Tampoco recuerdo por qué en el ZX-Uno no se podía usarla RAM externa para eso, ni tengo claro si al ser distinto tipo de RAM en una placa y la otra, esa limitación persiste. Quizá @Distwave nos pueda decir algo también.

Avatar de Usuario
Uto
Mensajes: 1394
Registrado: 17 Dic 2015, 16:39

Re: Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Mensaje por Uto » 10 May 2018, 14:51

También hay una cosa que hizo Distwave en su core para ZX-Uno y que era muy cómodo, y es evitar tener que meter el sector de arranque dentro de un sector concreto de la SD. Lo metió en el core.

No es que ea lo más crítico, pero sí era lo que más quebraderos de cabeza daba a la gente al crear la SD para el core :-D

Avatar de Usuario
jepalza
Mensajes: 613
Registrado: 02 Oct 2015, 18:52

Re: Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Mensaje por jepalza » 10 May 2018, 16:41

Lo de la BIOS, cierto, va en la SD, y cierto, es un "peñazo", primero, por que win7 no deja escribir, aunque le digas que eres administrador. Para grabar ese sector empleo windows xp. Pero no todo el mundo podrá conseguirlo, y no todas las SD dejarán hacerlo. Un problema importante, es que si la SD está "gastada", o con problemas, y no deja mostrar el sector final de la misma, no podrás grabar la BIOS ahí, y el core nunca arrancará. Digo esto, por que me ha pasado con SD viejas, con mucho uso, cuyos sectores dan problemas, y ni formateando se consigue que muestre los 4 gigas completos.

Que se pueda cargar la BIOS desde la flash, lo desconozco. En Xilinx, sí sé que se puede, mediante "bootstrap", una capacidad de las Xilinx de acceder a flash antes de iniciarse esta, pero desconozco los Altera por completo. Ya hemos visto que no tiene capacidad multicore. Alguna sorpresa mas habrá.
He dicho en varias ocasiones, que solo llevo con Altera un par de semanas, tiempo insuficiente para entender su funcionamiento.

El tema de la VRAM que preguntas, no tengo ni "pajonera" idea. Solo sé que funciona. Si faltan líneas, no lo he notado.
Tampoco he invertido mas allá de 20 horas en este core. Lo bajé, lo adapté, lo hice funcionar, lo mejoré un poco, y se acabó, no he hecho nada mas. Funciona, es todo lo que sé.
Es "exactamente" el mismo que el del DE0NANO de Opencores. Allí se podrá leer los pros y los contras.
Pero a diferencia del ZXUNO, este emplea SDRAM, la misma que el MIST y que la FleaFpga, de donde salen todas las versiones actuales.
Y que la VRAM es mucho mayor, dado que emplea SDRAM, no BRAM

Avatar de Usuario
Uto
Mensajes: 1394
Registrado: 17 Dic 2015, 16:39

Re: Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Mensaje por Uto » 10 May 2018, 17:01

El core de PC de ZX-Uno no carga del sector ese de la SD, pero tampoco de la flash, lo que tiene que cargar lo lleva embebido en el propio core, no me preguntes como (llamando a @Distwave). Si eso es posible o no con Alterna, pues ni idea, ya se verá.

Respecto a la memoria de video, si este core está usando la SDRAM no tiene el problema de que le falten lineas que tiene el de ZX-Uno, que usa la BRAM y no le cabe entero.

Avatar de Usuario
jepalza
Mensajes: 613
Registrado: 02 Oct 2015, 18:52

Re: Next186 funcionano en placa Altera EP4CE22F17 Cyclone IV

Mensaje por jepalza » 10 May 2018, 18:46

¡Ah! Vale, ya sé lo que dices, no había entendido. Es que el core del ZXUNO solo lo probé al principio. Por que yo conseguí meterlo en mi "vieja" papilio LX9 y me olvidé del ZXUNO, y no sabía hasta dónde se había logrado llegar.
Lo que dices es usar un fichero de carga BRAM en formato hexadecimal, o decimal. Se puede hacer mediante IPCORE (en Xilinx) (memoria ya creada con el fichero dentro), como formato hexadecimal, leído dentro de un verilog, o integrado en el propio verilog, como datos hexadecimales.
Cualquiera de los tres métodos ocupa BRAM, lo mismo que ocupa la BIOS, o sea 8kb, que tampoco es mucho.

Y claro, lo del vídeo, si usaba BRAM, también lo entiendo, solo hay 72K, y si le quitas 8k para la BIOS, solo quedan 64K para la ram de vídeo, oo sea, una sola página de vídeo, y sin paginación, por lo que modos de vídeo mayores a 320x200x256 no se mostraría, como mucho, entraría el 640x400x2

Pero en este core no sucede eso, aquí se emplea la SDRAM, y tiene 512k de VRAM, que admite hasta 8 páginas de 64k para conseguir el modo 640x480x256 creo que era.

Responder