首页 > 技术 > 内容

基于T35F324的FPGA开发板图像采集显示系统方案

时间:2025-12-20  作者:Diven  阅读:0

1.前言

个人觉得易灵思的Trion系列比钛金系列FPGA,就目前而言,更适合做图像显示相关应用,以T35和Ti60为例,主要原因如下表所示:

易灵思如果专注图像细分领域,毕竟大部分客户还是用DDR和MIPI,因此我觉得钛金系列的架构真的脑袋被驴踢了,DDR和MIPI用硬核才是正确的选择!

另外,钛金系列FPGA相对推出时间不够,目前IP也不成熟。以T35为例,DDR硬核IP在Efinity Interface中直接可以调用DDR IP并设定相关参数,但是钛金系列Ti60还没有包含到工具链中,这让拿不到一手资源的FPGAer就很尴尬,虽然可以理解不集成到IDE中,可以更快的迭代前提不成熟的版本。

如上图所示,T35F324的FPGA开发板,我都做了快半年了,一直没有做一个基于视频图像的像样点的Demo,甚是惭愧。为了给当下煎熬的大家送点福利,我打算分2步走,如下:

DVP相机+DDR3+LVDS-LCD实时显示系统

MIPI相机+DDR3+LVDS-LCD实时显示系统

前者更关注DDR3硬核、LVDS TX,以及进行并口相机的配置与图像采集,完成实时图像采集、缓存、显示系统;后者则借用1)的基础,更关注MIPI相机的开发,进一步把易灵思FPGA进行图像采集的优势,有着一下。

当然这过程肯定还是有不少的坑,有些坑只有自己趟过,才有发言权。

2.FPGA设计详解

言归正传,我们开始干正事:基于T35的摄像头采集、存储、显示系统的介绍。

首先是FPGA时钟网络

这里涉及到DDR控制器的时钟,LVDS TX的快慢时钟,系统时钟,以及外设驱动时钟等,大致示意图如下:

由于Trion的PLL是能输出3个时钟,因此将2个PLL都用上了,一个产生100MHz的系统时钟,48/168M的LVDS慢/快时钟,另一个PLL产生DDR的驱动时钟400MHz,以及外部传感器的驱动时钟27MHz。另外,还有一个从传感器输入的像素时钟74.25MHz,作为视频流的同步时钟。

其次是硬核的配置

这里用到了DDR与LVDS TX硬核。关于DDR硬核的使用,外部使用的是三星的K4B4G1646E-BYMA,4G 16bit容量。

在Interface中配置DDR控制器相关参数,如下图所示:

其实软件包含了颗粒的型号,因此配置还是挺简单的,对于用户接口,Interface提供的是标准的AXI接口,其都是在硬核中,用户不需要例化,非常的简单。

关于LVDS TX的使用,主要是PORT的配置,以TX0为例,Interface配置如下图所示:

这里特别需要注意的是,PLL1设置tx_fastclk时,需要90度响铃;另外,Efinity的LVDS是LSB的,也就是先发LSB,这在Interface的说明文档中有解释,如下图所示:

另外,在1024*600 LVDS手册中,LVDS时钟有一定的相位关系,如下所示,在7bit数据传输时,时钟为1100011:

所以如上这部分代码,如下所示:

接着是相机的驱动

目前采用的AR0135是车规常用的130万全局曝光黑白相机,成像质量非常好,相关的参数如下所示:

我曾在《FPGA设计技巧与案例开发详解》一书中详细介绍了如何使用FPGA驱动CMOS摄像头,因此这里不再描述细节,给出框图如下:

这里在进行相机的初始化后,捕获输入的并行视频流数据;另外为了适配后面1024*600的LVDS LCD,再捕获数据后,直接Crop到1024*600分辨率。接着将数据送入AXI读写模块,将DVP转成AXI后写入DDR。

最后是视频流的缓存与显示

这一步其实和相机的数据缓存比较类似,无非是用一样的时序反着走一遍:即采用AXI从DDR中读取数据,转成并口后,送给后续的LCD驱动模块,再通过LVDS送给LCD显示,框图如下所示:

汇总整个时钟、DDR、相机、LCD驱动显示的框图,基于T35的摄像头采集、存储、显示系统,如下图所示:

由于该趟的坑,都已经趟过一遍了,这里我们不得不再静下心来再分析讨论一下,这个设计中遇到的最大的坑——DDR3的AXI接口竟然是Shared Read/Write Address Channel,配置与接口代码如下所示:

那就意味着,虽然AXI可以做到读写通道独立,但我不能同时发起读命令与写命令。如果AXI读写通道是完全独立的,则我们可以这样设计,即读归读,写归写,设计相对简单。

但是现在竟然AXI的读写地址通道是shared,我被惊讶到了,毕竟做了七八年芯片,AXI也是手撸过很多遍,Shared地址通过的阉割版,还是有点不适应,毕竟当读写冲突的时候,必须做仲裁,同时也需要更大的FIFO,还缓存读写通道的数据。

3.

花了九牛二虎之力,搞定了1280*720@60Hz的AR0135采集,然后裁剪成1024*600后,与1024*600的LCD显示数据仲裁读写DDR(加入读写仲裁,且读数据优先,),最后得到的效果是这样的:

这里,我还是不解,易灵思的DDR控制器,如果是买的,那Synopsys应该是标准的AXI;或者如果是买的DDR PHY+自研的控制器,那应该至少遵循标准,为什么会出一个阉割版本的AXI接口呢?

百思不得其解,但这也无法阻碍我们前进。在不久的将来,我将写基于易灵思FPGA的MIPI相机采集显示开发详解。

编辑:黄飞

 

猜您喜欢


续流二极管是重要的电子元件,应用于电力电子、开关电源和变频器等领域。主要作用是提供电流的连续性,防止电流的瞬间中断,从而保护电路和设备的安全。在本文中,我们将对...
2025-03-31 06:01:39
可调电阻作为电子元件中的重要组成部分,应用于各种电子设备中。SUPEROHM(美隆)作为知名的电子元件制造商,其可调电阻产品因优异的性能和可靠的质量,深受行业用...
2014-10-29 17:29:12
现代电子设备中,封装技术的选择对电路设计的性能和效率有着至关重要的影响。DFN(DualFlatNo-lead)封装因其优越的散热性能和小巧的体积,越来越受到电...
2025-02-24 16:48:52
随着电力系统的不断发展,电力保险丝作为电路保护的重要元件,其制造工艺也在不断优化升级。本文将围绕“电力保险丝工艺流程图最新版”进行详细解析,帮助读者全面了解现代...
2025-10-31 16:31:11
现代电子技术的发展中,DFN(DualFlatNo-lead)封装的元件因其独特的设计和优越的性能而受到广泛关注。本文将重点介绍DFN-8L_2X2MM-EP这...
2025-02-21 14:28:03
0201贴片电阻,以其极小的尺寸在电子元件领域独树一帜。别看它只有0.6mm x 0.3mm的大小,却拥有着令人惊叹的功率承受能力。对于追求轻薄短小设计的电子产...
2024-11-26 11:29:20
你是否好奇过,网络信号是如何通过网线飞速传输的呢?其实,这其中就蕴藏着以太网差分电压的奥秘。简单来说,以太网差分电压指的是在网络信号传输过程中,两根信号线之间的...
2024-08-29 00:00:00
编带磁珠是应用于电子元件连接的产品,其主要优势体现在以下几个方面。编带磁珠具有优良的电磁干扰抑制能力,能够有效减少电路中的噪声,提高信号的稳定性和清晰度。编带磁...
2010-06-22 00:00:00
信息时代,手机已经成为我们生活中重要的一部分。我们用来工作、学习、娱乐,甚至购物支付。但是,你是否曾担心过,边充电边玩手机会损害电池寿命?今天,我们就来揭开这个...
2024-11-25 00:00:00
排针是电子元件中常见的连接器,应用于电路板的连接与组装。排针主要有几种不同类型,之间的区别主要体现在形状、针脚数量、间距和用途上。排针的形状有直插式和弯插式两种...
2014-12-19 00:00:00