Hola chicos:
estoy a vueltas con el core del BOMBJACK. Funciona de maravilla, todo, sonido, teclado (en lugar de mando, va por teclado PS2, mas cómodo al menos para mi), pero los gráficos me salen "vacios", solo bloques de color.
Este core funciona de la siguiente manera:
Al ser el total de ROMS mayor en kilobytes que los bloques de BRAM libres, lo que hace, es "pegar" los 128k de gráficos detrás del BIT de 333k, obteniendo uno de 461k, a partir de la dirección final del BIT de la spartan 6 lx9, o sea, la 0x53500. Luego, en el core, se hace un "bootstrap" incial, que mantiene el juego congelando mientras el boot no se haya realizado, y lo que hace es coger los 128k de roms gráficas, y copiarlas en la SRAM desde la dirección "0" de esta. Al finalizar, pone a "1" el bootstrap para que no se repita, y la SRAM en modo "solo lectura" para que se comporte como una ROM.
Con los bloques BRAM libres ahora, puede mapear el juego con la RAM interna.
Hasta aquí el funcionamiento teórico, pero ocurre que en el Papilio Pro mediante una SRAM externa colocada por mi, funciona de maravilla, copiando la FLASH sobre la SRAM externa. Pero cuando lo replico en el ZXUNO solo veo bloques vacios, que en realidad es TODO CERO's, o sea, SRAM limpia.
editado: he borrado un comentario que hacía alusión a los pines HOLD y WP, por que me había colado (gracias a quest que me ha avisado)
¿alguna ayuda? ¿quizás el módulo de lectura de SPI del papilio (flash de 4mbits) no sea el mas correcto para la flash del ZXUNO (8mbits)?
¿cómo leer de la SPI FLASH?
¿cómo leer de la SPI FLASH?
Última edición por jepalza el 08 Nov 2015, 14:10, editado 1 vez en total.
Re: ¿cómo leer de la SPI FLASH?
Cuidado! Los pines Hold y WP NO están conectados sólo a EXT en la v2! Están conectados a la FPGA para poder leer a SPI x4 el bitstream.
Si haces lo que comentas te puedes cargar esos pines de la fpga (a mi me pasó), por eso a partir de la v4 no estarán mapeados a EXT para evitar este tipo de cosas.
Si haces lo que comentas te puedes cargar esos pines de la fpga (a mi me pasó), por eso a partir de la v4 no estarán mapeados a EXT para evitar este tipo de cosas.
http://www.zxuno.com
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA
ZX-Uno · Clon de ordenador ZX Spectrum basado en FPGA
Re: ¿cómo leer de la SPI FLASH?
Jopetas!! no lo he visto, me he quedado solo con el EXT. Dejo de jugar con eso entonces, y edito el mensaje.
De todos modos : ¿alguna forma alternativa de leer la SPI cpn este formato?
De todos modos : ¿alguna forma alternativa de leer la SPI cpn este formato?
Código: Seleccionar todo
-- FLASH chip SPI driver
u_flash : entity work.spi_flash
port map (
O_FLASH_CK => O_FLASH_CK, -- to FLASH chip SPI clock
O_FLASH_CS => O_FLASH_CS, -- to FLASH chip select
O_FLASH_SI => O_FLASH_SI, -- to FLASH chip SPI input
O_FLASH_DONE => flash_done,
O_FLASH_DATA => flash_data,
I_FLASH_SO => I_FLASH_SO, -- to FLASH chip SPI output
I_FLASH_CLK => I_CLK,
I_FLASH_INIT => flash_init,
I_FLASH_ADDR => user_address
);