高帧频CMOS相机研发方案

前言

项目需要,花2个月采用K7 FPGA+IMX4XX(索尼的感光芯片)+88X3310(美满的10G PHY)方案完成了一个760fps具有10G RJ45以太网UDP输出视频的高帧频相机研发,毕竟连1000fps都没有突破,所以称为高帧频还是有些心虚的。

一、感光芯片

采用的是索尼的高帧频感光芯片IMX42X,芯片有8通道差分输出,可配置为SLVS或SLVS-EC。由于担心SLVS-EC的差分摆幅接近K7 GTX的输入摆幅下限,怕出问题,再加上SLVS-EC的编码数据处理麻烦,就采用了SLVS,看了下最高速率,完全在K7的LVDS范围内。SLVS到k7的lvds可以通过电阻网络实现匹配,嫌麻烦,懒得去调试电阻,直接采用了德国的转换芯片MC20901,便宜又省事。
感光芯片的SLVS能够输出760fps的视频数据,掐指一算纯有效数据带宽就3Gbit/s,若加上编码,帧头,帧尾等零碎,千兆以太网干不了这个活啊,只好采用万兆以太网,不过的确有点浪费。

二、RJ45万兆以太网

万兆以太网的PHY芯片采用了88X3310,设计时没细看上百页的手册,结果埋下一颗大雷。它上电后需要首先加载firmware,然后才进行初始化,自协商等操作,由于硬件没有预留加载firmware的存储器和接口,可把我吓坏了!!还好,仔细读手册发现竟然可以通过MDIO也能将外部firmware加载到88X3310,只剩一个问题了:外部firmware存储到哪里去呢?天无绝人之路,FPGA的配置存储器足够大,那在存储配置文件后,可不可以将firmware存到这里呢?
一顿摸索测试,终于搞清了firmware的数据格式,严重怀疑官网的诚意竟然没有放firmware的格式文档。在vivado下通过TCL指令,将firmware转换为mcs后,将该文件烧写到了存储器中足够大的起始地址,起始地址选择上注意要为默认的FPGA配置文件留够空间。
搞定了mdio加载firmware,剩下的就是常规的FPGA内的逻辑设计了。
万兆以太网本来也考虑光纤来着,后觉得光口太大,光纤又不如网线方便可靠,办公室的6类网线就能实现万兆网的传输,这也是选择RJ45万兆网的重要原因。

三、FPGA

FPGA的活最喜欢了,写着写着一不小心就全写完了,主要实现了:MDIO加载firmware,SPI配置IMX42X,8通道SLVS接收视频数据并实现通道对齐和串并转换,DDR3缓存数据,UDP发送数据,10G MAC设置与调用,RAUI接口配置。
FPGA逻辑搞定后,测试几天,相机搞定,通过办公室的常用6类网线连接到万兆网卡上,一切正常!

  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值