基于FPGA的cmos sensor高速图像采集

小编 2026-06-25 阅读:852 评论:0
 我们开发的cmos sensor是安森美公司的python 5000,价格较贵,但是帧率相对较高,能够提供较高的精度,全景时能出来2592*2048@100Hz的视频图像,可以通过降低  分辨率    ...

 我们开发的cmos sensor是安森美公司的python 5000,价格较贵,但是帧率相对较高,能够提供较高的精度,全景时能出来2592*2048@100Hz的视频图像,可以通过降低  分辨率     进一步提高帧率。驱动该摄像头的工作主要分为两部分,寄存器配置和LVDS解串。

 1,寄存器配置

          PFGA需要给cmos sensor供应时钟和配置寄存器。有两种方式提供时钟,一种是提供72M的单端时钟,再经过sensor里PLL倍频后产生288M;第二种是直接提供288M的单端时钟; 两种方式效果一样,我们提供的72M单端时钟。

FPGA通过spi接口去配置cmos sensor的寄存器,分辨率,帧率以及ROI都可以通过寄存器配置已达到相应的需求。参照安森美        官网提供的文档 NOIP1SN5000A的Figure 20的读写时序即可,  需要注意是SPI时钟应小于10M,  需要配置的寄存器有100多个,     配成的寄存器列表由FAE提供了。

 

   \"\"

    配置通常是在上电后立即完成,有一下几种方式可以检验是否将数据成功写到寄存器中。

 a,  上电后开始计数,记到5--10s后状态机从IDLE状态跳转到configure状态,即可根据相应的触发条件在mosi上抓出相应的数据;          配置完成后可以跳到读状态,如果配置成功,即可在miso上抓到相应的数据。

  b. 配置完成后读出相应的寄存器,并把读出来的数据存到相应的寄存器中,用Chipscope scope抓寄存器的值即可。 在做这个验证      的时候我遇到了两个问题。 (1)根据时序图,读寄存器的值是在下降沿采样,需要额外用到一个always语句;(2)第二  个问题比较尴尬了,cmos sensor是插在一个插糟里的,mosi和mosi分别连接在了FPGA的pin的P端和N端。抓数据发现mosi和 mosi两个信号相等,(为何相等原因解释不清楚,可能跟FPGA结构有关)。即最后抓到的值始终等于要写进去的值,误导我以 为配置没问题,而去调试后面lvds解串的问题了。  偶然发现其实插糟没插紧,从LVDS传过来的数据都是错误的。 

 

2. LVDS解串

     驱动高速摄像头的难点是LVDS解串,python5000以LVDS串行的方式传输数据到FPGA端,相对于LVDS并行,     解析LVDS串行的数据需要理解bitslip这个信号,因此难度相对大一些(之前调试的时候对这个信号理解不透彻耽误了较多时间)。10对LVDS差分数据即8data+1sync+1clk以源同步的形式、288M(双边沿采样)的速度传输到FPGA,

由于xilinx_fpga时钟结构的限制,从cmos sensor过来的差分时钟不能进到两个selectio中,重写了selectio这个模块,模块接口如下,把data和sync数据解析出来。

\"\"

为了满足时序,在这个模块里面可以修改data和clk的延迟以满足建立时间和保持时间,bitslip也是由为重要,为了产生bitslip信号,单独用了一个模块。另外发现加不加时序约束语句影响不大。

  配置相应 的测试模式寄存器,参照下图,解析出来的8data数据和1syn正确。

\"\"

后面要做的是数据解析和算法相关的了,博客会继续更新。

 

 

版权声明

本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。

热门文章
  • 机房智能化温湿度解决方式之POE供电以太网温湿度传感器

    机房智能化温湿度解决方式之POE供电以太网温湿度传感器
    机房智能化温湿度解决方式之POE供电以太网温湿度传感器 北京盈创力和电子科技有限公司 智能型TCP网口温湿度记录仪 北京IP网络温湿度记录仪厂家,北京盈创力和 北京智能型TCP网口温湿度记录仪IP网络温湿度记录仪是一种新型的基于TCP/IP协议双绞线以太网标准温湿度采集模块,利用它可以实现现场温度值、相对湿度值的采集,同时利用其自身的RJ45通信接口可以方便地和机房监控主机或交换机集线器进行联网。 工作于-40℃~85℃工业级带...
  • Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering

    Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering
    Problem Statement 我们考虑一个具有马尔可夫性质、非线性、非高斯的状态空间模型(State Space Model):对于一个时间序列上的观测结果{yt,t∈N}\\{ y_t , t \\in N \\}{yt​,t∈N},我们认为每个观测结果yty_tyt​的生成依赖于一个无法直接观察的隐变量xt∈{xt,t∈N}x_t \\in \\{x_t , t \\in N \\}xt​∈{xt​,t∈N},即:p(...
  • HTTP状态保持的原理

    HTTP状态保持的原理
    a)在用户登录之后,浏览器返回响应的时候会在响应中添加上cookieb)浏览器接收到cookie之后会自动保存c)当用户再次请求同一服务器中的其他网页的时候,浏览器会自动带上之前保存的cookied)服务接收到请求之后可以请 request 对象中取到cookie 判断当前用户是否登录  Http是无状态的,就是连接时数据互通,关闭后...
  • Hive 系统函数及示例

    Hive 系统函数及示例
    查看所有系统函数 show functions; 函数分类 内置函数【系统函数】 数学函数: floor、round、ceil、cos、log2等 字符串函数: length、reverse、trim、lower、get_json_object、repeat等 收集函数: size 转换函数: cast 日期函数: year、month、datediff、date、date_add等 条件函数: coalesce、case…w...
  • CSRF的原理和防范措施

    CSRF的原理和防范措施
    a)攻击原理:i.用户C访问正常网站A时进行登录,浏览器保存A的cookieii.用户C再访问攻击网站B,网站B上有某个隐藏的链接或者图片标签会自动请求网站A的URL地址,例如表单提交,传指定的参数iii.而攻击网站B在访问网站A的时候,浏览器会自动带上网站A的cookieiv.所以网站A在接收到请求之后可判断当前用户是登录状态,所以...
标签列表