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

Frame Buffer Parameter

Altera_Forum
Honored Contributor II
1,269 Views

https://www.alteraforum.com/forum/attachment.php?attachmentid=8822 I am using Frame Buffer Megacore. I want to store a 640*480 pixels frame to sdram. As in the picture, I set maximum packet length = 10 symbols. While 1 symbol = 3 color planes (= 1 pixel) => we have 640*480/10 packets per frame. That is so conflicted with number of packet buffered per frame =1 which I set as in the picture. Can anyone explain it for me?

0 Kudos
4 Replies
Altera_Forum
Honored Contributor II
527 Views

The Frame Buffer is described in this document: 

http://www.altera.com/literature/ug/ug_vip.pdf 

 

The parameters in question are described on page 20-5 and 20-6. 

 

They do not apply to the image (640x480) data, or the VIP protocol Control Packet. They apply to other protocol (possibly user defined) that might be embedded within the same stream. 

 

 

--- Quote Start ---  

 

While 1 symbol = 3 color planes (= 1 pixel) => we have 640*480/10 packets per frame. 

 

--- Quote End ---  

 

 

Typically you only have (2) packets per frame: one control packet, and one video packet. See Figure 3-14 in the document.
0 Kudos
Altera_Forum
Honored Contributor II
527 Views

I got it. Thanks for your help!  

I used a Test Pattern Generator Megacore, streaming data to Frame Buffer, then stored it to DDR3 SDRAM. When I read the sdram data from HPS, the value I got was not equal with the data of Test Pattern. Is there anything to notice here?
0 Kudos
Altera_Forum
Honored Contributor II
527 Views

In the Frame Buffer GUI, there is a place to set read and write FIFO depths and burst target. The UG doesn't specifically call out if these numbers represent "bits", "bytes", "pixels", whatever. Does anyone know? I sort of believe it's defined in pixels so if you set your "bits per pixel" to 8, these numbers would be bytes. Sound reasonable?

0 Kudos
Altera_Forum
Honored Contributor II
527 Views

 

--- Quote Start ---  

In the Frame Buffer GUI, there is a place to set read and write FIFO depths and burst target. The UG doesn't specifically call out if these numbers represent "bits", "bytes", "pixels", whatever. Does anyone know? I sort of believe it's defined in pixels so if you set your "bits per pixel" to 8, these numbers would be bytes. Sound reasonable? 

--- Quote End ---  

 

 

I believe they are in units of Avalon-MM bus width (words). 

 

e.g. 64-bit bus width and 64 burst target would transfer 512 8-bit pixels per burst.
0 Kudos
Reply