FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
6355 Discussions

Frame Rate Conversion - VIP Suite

Altera_Forum
Honored Contributor II
1,207 Views

Hi,  

 

I'm trying to do a frame rate conversion using the VIP Suite Megacore Function (for example : 1280*720p @ 60Hz to 1280*720p @ 50Hz). 

 

Can anyone explain me how to do or give me an example, please? 

 

Thanks 

 

Best Regards 

 

Dath
0 Kudos
11 Replies
Altera_Forum
Honored Contributor II
415 Views

The VIP frame buffer can perform frame rate conversions by simply repeating or dropping frames as required.

0 Kudos
Altera_Forum
Honored Contributor II
415 Views

Hi  

 

Thanks for replying 

 

So I have to use the VIP Frame Buffer with DDR2 and Nios if I understood. 

 

But what are the size of the "Avalon Memory-Mapped Interfaces" parameters in the "Frame Buffer's parameters settings"? 

Can we get them with calculations?? 

 

Best Regards 

 

Dath
0 Kudos
Altera_Forum
Honored Contributor II
415 Views

Have you read the vip user guide (http://www.altera.com/literature/ug/ug_vip.pdf)? All the parameters are described in the user guide. 

 

For the frame buffer memory it does not necessarily have to be DDR2. Any memory with sufficient capacity and bandwidth will do.
0 Kudos
Altera_Forum
Honored Contributor II
415 Views

Hi 

 

thanks for replying 

 

I almost succeeded to do frame rate conversion, but there is still an issue :  

I get the good picture on the screen (the frame rate is 50 Hz) but only during a few seconds ; it is always flickering (black screen). 

 

Can anyone help me please? 

 

Thanks  

 

Best Regards 

 

Dath
0 Kudos
Altera_Forum
Honored Contributor II
415 Views

Are you sure you have Frame Dropping (if converting to a lower frame rate) and Frame Repetition (if converting to a higher frame rate) turned on? 

 

Do you have enough memory bandwidth available for the frame buffer? 

 

Have you performed a memory test to make sure your memory is working properly?
0 Kudos
Altera_Forum
Honored Contributor II
415 Views

Hi,  

 

Thanks for replying 

 

Yes, I have turned on "Frame Dropping", "Frame Repetition", "Support for locked frame rate conversion" and "Run-time control for the writer thread" 

 

I set the bit of the "Controlled Rate Conversion" register to 1 by the Nios ; the I wrote "60" to the "input frame rate" register" and "50" to the "output frame rate" register. 

 

I think I have enough memory bandwidth available for the frame buffer :  

the memory clock frequency is 150 Mhz 

the memory interface DQ width is 32 bits 

 

The memory seems to work, I found a design on internet which use frame buffer and external memory (without frame rate conversion) and it worked well.  

 

 

Best Regards 

 

Dath
0 Kudos
Altera_Forum
Honored Contributor II
415 Views

Hi, 

 

You probably do not want to use the "Support for LOCKED frame rate conversion". It is an advanced feature for users that use genlock and can synchronize the CVO output clock to the CVI input clock. 

 

Clocks are not perfect. It is very likely that you are getting a flickering because the ratio between your input frame rate and your output frame rate is not exactly 60/50. At some point the input will have produced more data than expected or the output will be starved and a frame buffer doing locked rate conversion will not compensate for that. 

 

Enabling "Frame Dropping" and "Frame Repeating" is usually enough to get a working triple buffer. The IP then decides on its own when to drop and repeat frames based on the input rate and the back pressure applied at its output.
0 Kudos
Altera_Forum
Honored Contributor II
415 Views

Hi,  

 

Sorry for the late reply 

 

I tried what vgs wrote : I enabled only "frame dropping" and "frame repeating" and it seems to work for the frame rate conversion; the input video is at 60 Hz and the output video is at 50 Hz. Thanks for your help!!:). 

 

I have an other question : the design is made to work on the Cyclone III EP3C120 development kit which include DDR2 memory. My question is : do I have to use DDR2 memory to perform frame rate conversion, or is it possible to use an other kind of memory? 

 

Thanks,  

 

Best Regards,  

 

dath
0 Kudos
Altera_Forum
Honored Contributor II
415 Views

 

--- Quote Start ---  

My question is : do I have to use DDR2 memory to perform frame rate conversion, or is it possible to use an other kind of memory? 

--- Quote End ---  

As I briefly mentioned in an earlier post you can use any kind of memory as long as it has sufficient usable bandwidth and capacity. As the frame buffer accesses the memory over an Avalon MM port, the frame buffer is independent of the memory type. Any memory controller that presents an Avalon MM slave port should work.
0 Kudos
Altera_Forum
Honored Contributor II
415 Views

 

--- Quote Start ---  

Hi,  

 

Thanks for replying 

 

Yes, I have turned on "Frame Dropping", "Frame Repetition", "Support for locked frame rate conversion" and "Run-time control for the writer thread" 

 

I set the bit of the "Controlled Rate Conversion" register to 1 by the Nios ; the I wrote "60" to the "input frame rate" register" and "50" to the "output frame rate" register. 

 

I think I have enough memory bandwidth available for the frame buffer :  

the memory clock frequency is 150 Mhz 

the memory interface DQ width is 32 bits 

 

The memory seems to work, I found a design on internet which use frame buffer and external memory (without frame rate conversion) and it worked well.  

 

 

Best Regards 

 

Dath 

--- Quote End ---  

 

 

Can you give the link of where you got the design from??
0 Kudos
Altera_Forum
Honored Contributor II
415 Views

hi, will you please give me some advice on how to use the DDR2memory, I have no idea on how to write the driver for the DDR2 IP...Thanks a lot~~~

0 Kudos
Reply