Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

toki: no double-line buffer #632

Open
jotego opened this issue Apr 22, 2024 · 1 comment
Open

toki: no double-line buffer #632

jotego opened this issue Apr 22, 2024 · 1 comment
Assignees
Labels
enhancement New feature or request

Comments

@jotego
Copy link
Owner

jotego commented Apr 22, 2024

@vertrex, it looks like the reason you need 96MHz is because you are not using a double-line buffer, but a single line. I think you are trying to fill all the line data during blanking in a single buffer and then dump it during the active time.

That approach, although doable, was not the standard one at the time. Even today, there is no benefit in doing it that way as you will still allocate a whole 1kB of BRAM, not the 256 bytes you explicitly declared.

(* ramstyle = "no_rw_check" *)reg [7:0] line_buffer [255:0];

Instead of doing that, follow what the other cores do. There is a module that already implements the dual memory and synthesizes well across the different platforms. From the point of view of the core, it is straight forward to use it. You have a full line time to draw the sprites in one buffer, while data is dumped from the other buffer. This will allow you to go down to 48MHz.

@jotego jotego added the enhancement New feature or request label Apr 22, 2024
@jotego
Copy link
Owner Author

jotego commented Apr 22, 2024

I forgot to mention that the module name is jtframe_obj_buffer

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants