USB3.0之高速视频传输测试 双目相机(mt9p031、mt9m001)带宽高达300M测试 配合isensor测试 500万像素15fps

最近完善了下USB3.0的视频开发测试,主要优化了FPGA程序和固件,及其同步方式。对带宽和图像效果进行了仔细的测试

开发板架构(2CMOS+FPGA+2DDR2+USB3.0)

评估板底板配合2个MT9M001摄像头安装效果

准备工作

1、下载安装isensor app kit 软件 链接:http://pan.baidu.com/s/1sk171wh

2、更新usb固件程序 通过官方软件

3、下载fpga程序

fpga顶层结构

顶层代码

module fpga_usb_slfifo_top(
input wire i_ref0_clk50 , // T1, 50MHz
input wire i_ref1_clk10 , // L22, 10MHz, from mother board OCXO

output wire o_loop0clk , // H2 
//output wire o_loop1clk , //
output wire o_loop2clk , // H21
output wire o_loop3clk , // C10

input wire i_loop0clk , // G2
//input wire i_loop1clk , // 
input wire i_loop2clk , // G21
input wire i_loop3clk , // B11

output wire [3:0] o_led_ctrl , // ctrl0 = G8,H7,J7,J6
input wire [3:0] i_key_ctrl , // ctrl0 = N22,N21,M21,M22

// UART FPGA --> RX232
output wire o_uart_rts , // G16
input wire i_uart_cts , // F16
input wire i_uart_rxd , // C17
output wire o_uart_txd , // D17

// UART USB --> FPGA 
input wire i_usburt_rts , // B6
output wire o_usburt_cts , // D6
output wire o_usburt_rxd , // A6
input wire i_usburt_txd , // F7

// I2C USB --> FPGA
input wire i_i2c0scl , // B5
inout wire io_i2c0sda , // A5

///
// mother board ctrl
/*
output wire o_ref1_clk10 , // M2
output wire o_ref0_clk5 , // C4

// ADC common
output wire o_adc_dith , // J17
output wire o_adc_shdn , // K21
output wire o_adc_rand , // L21

// ADC input
output wire o_adc0_rfgc , // J4
input wire i_adc0_pclk , // H6
input wire i_adc0_ovrf , // G4
input wire [15:0] i_adc0_data , // data0 = B1,B2,C1,C2,F2,E1,H1,F1
// data8 = H5,E6,C6,D2,E5,E3,E4,G3

output wire o_adc1_rfgc , // J3
input wire i_adc1_pclk , // AA1
input wire i_adc1_ovrf , // J2
input wire [15:0] i_adc1_data , // data0 = U2,U1,V1,V2,W2,W1,Y2,Y1
// data8 = AA2,N2,N1,P2,P1,L8,K8,J1

// AD9518(PLL) ctrl
output wire o_pll_resetn , // A4
output wire o_pll_pdn , // B4, power down
output wire o_pll_csn , // C3
output wire o_pll_sclk , // A3
output wire o_pll_sdout , // B3
*/

output wire o_cmos_sck , // AA2
output wire io_cmos_sda , // AA1

output wire o_cmos_rstn , // M2
input wire i_cmos_trig , // J2
input wire i_cmos_stro , // J1

output wire o_cmos_refclk , // W2
input wire i_cmos_pclk , // W1
input wire i_cmos_hsync , // Y2
input wire i_cmos_vsync , // Y1

input wire [7:0] i_cmos_data , // data0 = N2,N1,P2,P1,U2,U1,V1,V2

///
// USB signals
output wire o_usb_refclk , // B16, output 19.2MHz for USB3014

output wire o_usb_rstn , // A15
input wire i_usb_intn , // A18

output wire o_usb_pclk , // H11
output wire [31:0] o_usb_data , // data0 = A20,F15,D19,E15,G14,G15,C15,B14
// data8 = D15,E16,B19,B18,A19,A14,B15,H15
// data16 = A17,E11,B10,A10,G13,B9 ,G10,F11
// data24 = E10,H10,F10,G9 ,F9 ,B8 ,E7 ,C8

output wire [1:0] o_usb_add , // add0 = C13,G11. same as CTL12, CTL11

output wire o_usb_slcsn , // A16, same as CTL0
output wire o_usb_slwrn , // B17, same as CTL1
output wire o_usb_sloen , // E14, same as CTL2
output wire o_usb_slrdn , // D13, same as CTL3
output wire o_usb_pktendn , // F14, same as CTL7

input wire i_usb_flagan , // C19, same as CTL4
input wire i_usb_flagbn , // C7 , same as CTL5
input wire i_usb_flagcn , // F13, same as CTL6
input wire i_usb_flagdn , // D10, same as CTL8

input wire i_usb_ctl9 , // B13, CTL9
input wire i_usb_ctl10 , // E12, CTL10
input wire i_usb_i2s0 , // A8
input wire i_usb_i2s1 , // B7
input wire i_usb_i2s2 , // A7

//ddr2-0
output wire[12: 0] ddr2a_addr , //A0-7 :N16,AA4,T16,AA3,R15,T8,T11,Y6
//A8-13:U14,T9,AB3,T10,V6 
output wire[ 2: 0] ddr2a_ba , //B0 :U13,AB10,V7
output wire ddr2a_cas_n , //T12 
output wire ddr2a_cke , //AB5 
inout wire ddr2a_clk , //U7
inout wire ddr2a_clk_n , //U8
output wire ddr2a_cs_n , //P15
output wire[ 1: 0] ddr2a_dm , //dm0-3 :V5,AA7
inout wire[15: 0] ddr2a_dq , //q0-7 :W8,Y3,W7,Y7,W6,U9,AA5,V8
//q8-15 :W10,AB8,AA9,Y8,AA8,V11,AB7,U10
inout wire[ 1: 0] ddr2a_dqs , //dqs0-3:V10,AB9
output wire ddr2a_odt , //P16
output wire ddr2a_ras_n , //R14
output wire ddr2a_we_n , //Y10

/*
//ddr2-1
output wire[12: 0] ddr2b_addr , //A0-7 :W22,U20,W21,R16,V22,AA21,V21,U15,U22
//A8-13:AA22,P17,R22,T14 
output wire[ 2: 0] ddr2b_ba , //B0 :W20,R20,Y17
output wire ddr2b_cas_n , //Y21 
output wire ddr2b_cke , //U19
inout wire ddr2b_clk , //AA17
inout wire ddr2b_clk_n , //AB17
output wire ddr2b_cs_n , //R21
output wire[ 1: 0] ddr2b_dm , //dm0-3 :AA16,AA10
inout wire[15: 0] ddr2b_dq , //q0-7 :W17,W15,V15,AB16,V14,AB20,T15,AB18
//q8-15 :AA14,U12,AB14,W13,AB13,AB15,AA13,AA15
inout wire[ 1: 0] ddr2b_dqs , //dqs0-3:V13,Y13
output wire ddr2b_odt , //Y22
output wire ddr2b_ras_n , //U21 
output wire ddr2b_we_n //R19
*/
input wire i_dbg
);

测试效果及其带宽计算

单MT9M001  48M xclk输入,全像素输出130万像素(1280*1024)  帧率为30fps,带宽39Mbyte per  sec

单MT9P031  80M xclk输入,全像素输出500万像素(2592*1944)  帧率为12fps,带宽60Mbyte per  sec

单MT9P031  96M xclk输入,全像素输出500万像素(2592*1944)  帧率为14fps,带宽70Mbyte per  sec

极限测试(FPGA控制 80M时钟,32bit总线模拟视频输出演示)

使用模拟1080p视频(1920*1080) 每帧图像2.1Mbyte  帧率 150fps

带宽合计 300M byte per sec  无数据丢失

模拟1080p灰度图像,逐步渐变过程

转载于:https://www.cnblogs.com/xiheji/p/5123905.html

USB3.0之高速视频传输测试 双目相机(mt9p031、mt9m001)带宽高达300M测试 配合isensor测试 500万像素15fps...相关推荐

  1. FPGA驱动FT601实现USB3.0相机 OV5640视频采集 提供2套工程源码和QT上位机源码

    目录 1.前言 2.FT601芯片解读和时序分析 FT601功能和硬件电路 FT601读时序解读 FT601写时序解读 3.我这儿的 FT601 USB3.0通信方案 4.vivado工程1--彩条视 ...

  2. FPGA驱动FT601实现USB3.0相机HDMI视频采集 提供工程源码和QT上位机源码

    目录 1.前言 2.FT601芯片解读和时序分析 FT601功能和硬件电路 FT601读时序解读 FT601写时序解读 3.我这儿的 FT601 USB3.0通信方案 4.详细设计方案 5.vivad ...

  3. Intel Realsense D435 USB线长、光纤线长测试(使用普通USB3.0数据线最长不能超过4M,使用普通USB3.0数据线+USB3.0光纤数据线,不能超过1+5=6M)

    文章目录 使用普通3.0延长线,能达到4M左右,偶尔会报`RuntimeError`错误,往上再加1M就一直报`RuntimeError`错误 往上再加3M就检测不到摄像头了 使用苏州百翼优品科技有限 ...

  4. 计算机的usn插口无法读取,USB3.0还缺谁 解决主板插槽不健全方案

    1干净利落 解决主板插槽不健全 USB3.0无论多么火热,对于老平台或前一代LX版的主板而言也是空谈.目前多数用户无法体验到高速接口优势的主要原因并不是承担不起产品售价,平台限制才是最大的问题. 常用 ...

  5. USB3.0接口的工业相机应用

    随着USB3.0被消费者不断推广采用,成本还将持续降低.目前销售的PC有九成已经内置了USB3.0接口,消费者无需为之支付额外费用.USB3.0连接器和线缆等组件一应俱全.此外,USB3.0线缆能提供 ...

  6. USB3.0 与无线信号的关系

    之前的一个影像项目,在开发的过程中经常因为无线信号太差的原因,导致视频卡顿或者花屏.而项目又到了视频质量调优的过程,我们就花了很多的时间来找问题.到底是什么问题导致无线信号这么差? 因为公司小,没有什 ...

  7. 不可不知的USB2.0/USB3.0/HDMI静电防护方案

    静电防护电路在电子产品/设备的电路板上是十分常见的应用电路,今天就让我们一探究竟. FAE电子工程师对所以的端口进行了静电防护设计,其中包括usb2.0静电防护方案.USB3.0静电防护方案以及HDM ...

  8. 为什么WiFi和USB3.0会互相干扰?

    补充:关于基准频率的问题,根据评论里的说法有一定争议,USB3.0规范里给出过基准频率是2.5GHz的说法(up to the fundamental frequency of 2.5 GHz),但规 ...

  9. 处理USB3.0工业相机帧率偏低的问题

    处理USB3.0工业相机帧率偏问题 USB3.0相机(简称U3口)相对Gige网口相机,有着传输速度快,无需单独供电的优势,如果是采用软触发的形式控制拍照,那么只需连接一根USB3.0的通讯线即可,因 ...

最新文章

  1. 影响网站权重的关键性因素有哪些?
  2. ubuntu下使用pidgin(pidgin-lwqq)登陆qq
  3. 会场安排问题 http://acm.nyist.net/JudgeOnline/problem.php?pid=14
  4. Hot Door CADtools (基础篇)
  5. Jquery操作复选框总结
  6. python numba_如何用numba加速python?
  7. Windows Phone 7 MVVM模式的学习笔记
  8. Hadoop核心组件
  9. MIME,拓展名需要相应的软件打开
  10. 树莓派4B平台部署 kubeedge (cloudcore)+ isula
  11. 两个VB程序之交换数据的DDE工程
  12. 从单体应用到微服务开发旅程
  13. 江苏警官学院计算机科学与技术专业,江苏警官学院什么专业好就业,哪些专业适合女生...
  14. 快递查询单号查询,分享简单好用查询技巧
  15. html视频怎么转换成图片,如何将小视频转换成GIF动图或将GIF动图转换成视频
  16. 视频教程-从理论到实战:在园区网中部属IPv6-网络技术
  17. 组合模式 -- 树形结构处理
  18. 一个java面试题:一个农夫养了一头牛,三年后,这头牛每年会生出一头牛,生出来的牛三年后又可以每年生出一头牛,不考虑牛的性别和生死,问农夫10年后有多少头牛?
  19. ***菜鸟要学会的几个cmd ddos命令
  20. 零散知识点20180403

热门文章

  1. jq 截取指定字符前_jq 截取字符串
  2. PHA挖kuang什么时候开始?
  3. 怎么取消微信充值服务器,微信亲密充充值提醒怎么取消?
  4. 如何优雅的面对一坨翔~~感悟编程代码
  5. oracle禁用amm,[20180211]11g关闭AMM.txt
  6. SAP-HR模块-常用T-CODE
  7. 【AI好书】KK大神带你俯瞰未来20-30年的科技发展趋势,早阅读一天就让你在互联网时代先行一步!...
  8. 关于音乐制作的一些网站
  9. maven私服下载jar包失败的问题记载
  10. setsockopt和getsockopt函数详解