从缓冲区读取比从python

时间:2015-08-19 15:38:39

标签: python-2.7

我有一个fpga板,我编写了一个VHDL代码,可以从串口获取图像(二进制)并将它们保存在我板上的SDRAM中。然后FPGA通过VGA线在显示器上显示图像。 我的问题正在填充SDRAM需要很长时间(大约10分钟,波特率为115200)。 在我的计算机上,我编写了一个python代码,通过串口将图像(二进制)发送到FPGA。我的代码读取保存在硬盘中的二进制文件并将它们发送到FPGA。 我的问题是,如果我使用缓冲区保存我的二进制文件图像,我会得到更好的结果吗?如果是的话,你能帮我怎么做吗?如果没有,你能告诉我一个解决方案吗? 谢谢你的推荐,

1 个答案:

答案 0 :(得分:0)

除非您在下载前进行大量压缩,并在下载后解压缩图像,否则问题在于您的115,200波特传输速率,而不是从文件中读取的速度。

在标准的N / 8/1线路编码中,每个字节需要10位传输,因此每秒传输1150个字节。

在10分钟内,您将转移1150 * 60 * 10 = 6,912,000字节。每像素3个字节(对于R,G和B),这是2,304,600像素,这恰好是1920 x 1200图像中的像素数。

答案是(a)提高波特率;和/或(b)压缩你的图像(使用简单的东西在FPGA上解压缩,如RLE,如果它适合那种压缩)。