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

Incorrect Frame Buffer Stride Validation in VVP Frame Buffer

dscully
Novice
3 089 Visites

Hello,

 

We believe we have discovered an issue with the VVP Frame Buffer component GUI validation for checking invalid values for Inter-buffer Stride in Quartus Pro 23.2.

 

The documentation says the TCL validates the values of Inter-buffer Stride and Inter-line Stride:

dscully_2-1694557336529.png

 

But the calculation of the maximum frame size in the TCL (intel_vvp_vfb_hw.tcl) doesn't take into account that the Inter-line Stride can introduce unused space.  (This is in addition to the unused space resulting from pixel packing, which is correctly accounted for.)

 

The attached screenshots show an invalid set of settings that does not error.

dscully_0-1694557269540.png

dscully_3-1694557427225.png

 

The Inter-line Stride of 16kB multiplied by the maximum field height of 1080 lines gives a minimum Inter-buffer Stride of 16.875MB.

The actual Inter-buffer Stride is 16MB, so the buffer is overflowed by 896kB = 56 lines.  However, no error is displayed.

 

We believe the solution would be to change line 307 in 
intelFPGA_pro\23.2\ip\altera\mtm\cores\vvp\frame_buffer\intel_vvp_vfb\intel_vvp_vfb_hw.tcl

From:

 

set max_bytes_per_frame [expr $max_bytes_per_line * $max_height] 

 

To:

set max_bytes_per_frame [expr $mem_line_stride * $max_height]

 

Thanks,

David

Étiquettes (1)
0 Compliments
1 Solution
blakes_seven
Employé
2 704 Visites

David, thanks for spotting this bug, I understand it will be fixed in 23.4.  Your solution looks correct.

Voir la solution dans l'envoi d'origine

0 Compliments
8 Réponses
ZH_Intel
Employé
2 937 Visites

Hi David,

 

Thank you for reaching out.

Just to let you know that Intel has received your support request and currently we are confirming the details with our internal team.

I shall come back to you with findings.

 

Thank you for your patience.

 

Best Regards,

ZulsyafiqH_Intel


0 Compliments
ZH_Intel
Employé
2 836 Visites

Hi David,


Apologize for the delayed respond.

I understand that this is not a bug.

Only active video frame is stored in frame buffer.

For example, when Htotal = 4400 Vtotal = 2250, only H-active = 3840 and Vactive = 2160 data is stored in frame buffer. The size of a frame in frame buffer is 3840x2160x byte of a pixel.


Thank you.

Best Regards,

Zul


0 Compliments
dscully
Novice
2 815 Visites

Hi Zul,

 

"The size of a frame in frame buffer is 3840x2160x byte of a pixel". This is only correct when the inter-line stride is equal to the maximum bytes per line. In general, the size of a frame in frame buffer is max_height x Inter-line stride. Which can be greater than max_width x max_height x byte_of_pixel.

 

In practice, we were using these settings in our video pipeline and the last 56 lines of the frame appeared to be overwritten periodically.  I've attached a screenshot showing this behavior.

 

The behavior disappeared when we changed the Inner-Line stride from 0x4000 (16384) to 0x3000 (12288).


If it is not a bug, can you explain the behavior?

 

Thanks,

David

0 Compliments
ZH_Intel
Employé
2 738 Visites

Hi David,


Good day.

We may need more time to clarify on this.

Could you share with us your design project?


Thank you.

Best Regards,

Zul


0 Compliments
ZH_Intel
Employé
2 734 Visites

Hi David,


Good day.

We may need more time to clarify on this.

Could you share with us your design project? also the Ip settings(video resolution)?


Thank you.

Best Regards,

Zul


0 Compliments
blakes_seven
Employé
2 705 Visites

David, thanks for spotting this bug, I understand it will be fixed in 23.4.  Your solution looks correct.

0 Compliments
ZH_Intel
Employé
2 687 Visites

Hi Blakes,


Good day.

Thank you for this clarification and addressing the question.

David, Do you still have further inquiries on this case?

If there is no further inquiries, I will transition this thread to community support. 


Thank you.

Best Regards,

Zul



0 Compliments
dscully
Novice
2 659 Visites

Hi Zul,

 

I am glad that this will be addressed in a future version of Quartus. I have accepted Blakes response as a solution.

 

Thank you for your support,

David

0 Compliments
Répondre