Closed Aregaard closed 6 years ago
Hi @Aregaard -- These questions are probably better answered on the mailing list rather then via github issues. There is the numato-opsis-discuss and the hdmi2usb list -- either would be perfectly fine for these types of questions.
Memory bandwidth is a complicated question. The theoretical top memory bandwidth of the Numato Opsis is 800e6 (800 MHz) * 2 (for DDR) * 16bit == 25600000000.0 bits/second or 25 gigabit/second
. However, you are very unlikely to get anywhere close to that actual performance due to overhead with accessing the DDR.
In practical terms, in the HDMI2USB-litex-firmware using LiteDRAM (which runs the memory at 400MHz rather then 800MHz) we are using 2 720p50 inputs + 1 720p50 output + 1 720p25 encoder bandwidth successfully on the Opsis. This means we are currently using, `1280 720 16 (bits per pixel) (350 + 130) == 2580480000 bits/second or 2.5 gigabits/second` We believe we can increase that with optimisation but have not had the developer resources so far (one way would be running at 800MHz rather than 400MHz, another would be proper priority ordering of memory access and better caching).
Another FYI - In terms of upscaling, you can actually do that "just in time" (IE as you output the data) - so what you are after is actually 720p50 * 2 bandwidth (one for input, one for output) -- which we know the Opsis can do fine.
Lastly, getting the high speed DisplayPort interface going is a non-trivial challenge. The high speed transceivers inside the Spartan 6 are pretty grumpy and fickle. We hope to eventually integrate working support for them into the HDMI2USB LiteX firmware, but again have not had the developer time to do so.
Hope that helps!
Hi again, So lets assume a have a real time application 480p-1080p (video surveillance) and want to upscale (with Opsis) to 1920x1200 with Integer scaling (almost like Nearest neighbor). This implies that I need approx. 9MB/frame in 60Hz. Which gives me a bandwidth need of 540MB/s. According to your specs it has 256 MB RAM 1600MHZ (source: NumatoLab). According to me this will fulfill the requirements very well :).
Will this fulfill the requirements?
Please explain how you do the math if I have miscalculated it.
Best Regards