Forum Discussion

Altera_Forum's avatar
Altera_Forum
Icon for Honored Contributor rankHonored Contributor
16 years ago

Frame buffer/nano-X speed issues.

Hi, until now we have been ignoring the fact that the video update rate using the frame buffer wiki and a neek is slow. Has anyone looked into this enough to figure out where the bottleneck is? Has someone found a solution? Or am I doing something wrong? THanks in advance -Alex

6 Replies

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    As the standard NEEK FPGA design does not provide any hardware acceleration, this is bound to be slow. It would be nice to have an improved design that does have hardware acceleration (plus the necessary driver), but I don't think anybody tried to create one yet.

    -Michael
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    So are you suggesting that the problem is understood and that it is not an issue with nano-X but more likely with the hardware/software associated with the frame buffer itself? Thanks Michael. -Alex
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    NIOS is not a really fast processor. Without hardware acceleration X-like stuff many things can't perform too well, as the processor needs to create any single pixel on the screen, including hiding and redisplaying stuff that is hidden behind other objects, filling complex polygons for TTF types etc.

    Any PC uses hardware acceleration for any type of X display, as even the PC processor is slow with low level pixel operations.

    -Michael
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    You can modify the kernel driver altfb to use cached display memory instead of the uncached ioremap. It will be a lot faster.

    - Hippo

  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    Hi, until now we have been ignoring the fact that the video update rate using the frame buffer wiki and a neek is slow. Has anyone looked into this enough to figure out where the bottleneck is? Has someone found a solution? Or am I doing something wrong? THanks in advance -Alex

    --- Quote End ---

    Hi Alex,

    you should do some quick math to check whether your RAM memory interface is the bottleneck. Remember that the framebuffer area is in the same physical memory as your data and instructions (of course caches could change things somewhat).

    In one system I've seen, the VGA controller was using the memory 90% of the time, and all other peripherals had to dispute with each other to get a share.

    If your RAM is 16 bits wide, things could be even worse, because it would take two memory accesses to fetch a 32-bit word.

    Cheers,

    Ricardo.
  • Altera_Forum's avatar
    Altera_Forum
    Icon for Honored Contributor rankHonored Contributor

    --- Quote Start ---

    You can modify the kernel driver altfb to use cached display memory instead of the uncached ioremap. It will be a lot faster.

    - Hippo

    --- Quote End ---

    Hi Hippo,

    would like to know what modification have to be done exactly, to use a cached display memory?

    Thx

    D.