enjoy-digital / litedram

Small footprint and configurable DRAM core
Other
365 stars 115 forks source link

Upconverter rewrite #279

Open mtdudek opened 2 years ago

mtdudek commented 2 years ago

This series of commits improve frontend adapter bandwidth.

mtdudek commented 2 years ago

@enjoy-digital what do you think?

enjoy-digital commented 2 years ago

Thanks @mtdudek, I'm not able to review it now but will try to do so in the next days.

mtdudek commented 2 years ago

So it failed on picolibc, and not on this upconverter, it states that meson is not installed

enjoy-digital commented 2 years ago

Thanks @mtdudek, I've been able to have a first look. The new code is becoming really complex to follow and I'm not sure it will be possible to maintain it, so I'm not able to merge it now and will have to spend time understanding the previous limitations.

The primary issue is in fact coming from LiteVideo that should not require the use of an UpConverter and should directly handle access to the DRAM port with native data-width. This allows using a very simple specific UpConverter vs the generic (but complex) UpConverter here. The new VideoFramebuffer (now recommended vs LiteVideo VideoOut core) does not have this limitation and directly runs with native data-width: https://github.com/enjoy-digital/litex/blob/master/litex/soc/cores/video.py#L618.