-01-OV7251摄像头与设计规划【Xilinx-LVDS读写功能实现】

准备使用OmniVision的OV7251 Global Shutter黑白摄像头,可以在官网上找到:
http://www.ovt.com/products/sensor.php?id=146

OV7251摄像头的特性如下图,用红框标出了一些关键性的参数。
这里写图片描述

之后可能会用这个摄像头来做双目视觉,所以首先定好一些指标,后面的设计都按照这个指标来进行。
图像
- 分辨率:640 x 480
- 数据格式:10位灰度
- 帧率:60fps (匹配显示器刷新频率)
通信
- 控制接口:SCCB(I2C)
- 传输接口:1通道LVDS
- 速率:600Mbps

由于板子还没有做好,为了验证功能,先使用开发板来进行接口逻辑的验证,我选用了ZedBoard试验。
首先在ZYNQ芯片中使用逻辑产生640x480 60fps的动态图像,再用逻辑电路模拟出和OV7251时序完全相同的LVDS输出信号,并通过回环线缆再传输回开发板,最后使用LVDS接收接口捕获图像信息并缓存和显示。
具体的实现结构如下图:
这里写图片描述
图像数据流的处理全部在ZYNQ芯片的PL部分完成,PS部分负责一些IP模块的配置。

我把设计分为几个步骤,分别去实现:
1. OV7251 LVDS信号模拟输出功能的逻辑设计
- OV7251 LVDS Output Simulation
- Video Test Pattern

2. OV7251 LVDS信号输入捕获功能的逻辑设计
- OV7251 LVDS Input Capture
- Video Timing Generate

3. OV7251摄像头模拟输出与输入捕获接口的IP核封装
- 封装前面设计的几个模块为IP核

4. 基于ZYNQ SoC的OV7251摄像头模拟输出与输入捕获系统设计
- 增加辅助的IP核vid to axis, vdma, axis to vod,打通视频数据流通路
- 设计各种IP核的驱动程序,通过PS完成各种功能模块的初始化配置
- 最终实现视频图像数据的缓存与读取,通过ZedBoard的VGA接口于显示器实现视频图像的显示

  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: Xilinx-lvds输入接口设计主要是实现对高速差分信号传输的支持,其基本构成由lvds输入模块和相关电路组成。由于lvds电平具有高噪声容限、低功耗、高速传输等优点,在高速数据传输领域被广泛应用。在设计xilinx-lvds读写功能时,首先需要开发相应的硬件平台,然后在该平台上构建读写操作的相关逻辑电路。 xilinx-lvds输入接口的设计需要注意以下几点: 1.物理层接口设计。应根据实际应用需求,选择合适的差分信号传输线路,并对线路进行一定的优化设计,以提高传输质量、降低噪声等级。 2.信号解调设计。应该根据lvds信号传输的协议规范,对差分信号进行解调,提取操作所需的有效信号,以满足读写操作的需要。 3.芯片外部器件设计。应根据芯片器件的规格书要求,选用合适的外部器件,如电阻、电容等,以提高信号品质,降低噪声。 4.读写逻辑电路设计。在上述基础上,可以构建读写操作相关的逻辑电路,通过适当的组合与调试,实现对操作信号的读写控制。 最终,执行性能测试,以验证xilinx-lvds输入接口设计的正确性和稳定性。掌握上述关键技术,可以根据不同的应用要求,实现高速、稳定的lvds数据传输与读写功能。 ### 回答2: 在设计LVDS输入接口时,需要考虑多个因素。 首先,需要确定电路中使用的LVDS芯片,以便确定其电气特性。接着,需要对输入信号进行差分和偏置控制。 在使用Xilinx FPGA实现LVDS读写功能时,需要使用FPGA的IO Banks,其中包括LVDS IO。具体步骤为:首先,将LVDS接口通过差分器连接到IO端口上。然后,需要对IO Banks进行正确的布置和引脚映射,以确保LVDS信号能够被正确接收和发送。 接下来,需要使用芯片供应商提供的LVDS驱动器和接收器(例如TI或ADI)来配置芯片。要注意的是,在使用LVDS接口时,时序约束非常重要,尤其是时钟和数据的延迟和对齐问题。 在完成LVDS接口的硬件设计后,需要使用FPGA设计软件实现读写功能。可以使用Xilinx提供的IP核或自己编写Verilog代码来实现。根据芯片的不同,可能需要对接口进行协议转换(例如,从LVDS到DDR3)。 最后,需要进行测试和验证,确保接口能够正常运行并符合时序约束。这可以通过使用示波器等测试工具来完成。 总之,设计LVDS输入接口需要考虑多个因素,并在硬件和软件层面上进行仔细设计和测试。 ### 回答3: 在Xilinx FPGA设计中,设计LVDS输入接口是一项常见的任务。要实现LVDS输入,需要考虑电源和传输线路的噪声,以及时钟精度和稳定性等方面的问题。下面是一些常见的步骤和技巧,用来设计Xilinx LVDS读写功能实现。 首先,需要使用LVDS接收器芯片来接收传输线路上的LVDS信号。在Xilinx FPGA中,推荐使用ISERDES模块来实现LVDS输入。ISERDES模块可以将LVDS信号转换为FPGA内部的信号。在使用ISERDES模块时,需要注意时钟的相位和时序同步。 其次,需要考虑双差输入和共模抑制的问题。双差输入是指LVDS信号是两个互为反相的信号,需要对两个信号进行差分输入。共模抑制是指尽可能排除共模噪声干扰,提高信号的稳定性和可靠性。 最后,需要仔细设计PCB布局,保证LVDS接收器芯片的电源和地线稳定,以及传输线路的匹配和降噪设计。同时,还需要根据具体的设计要求选择适当的输出接口,例如LVDS输出或TTL输出。 综上所述,实现Xilinx LVDS读写功能的关键是设计合理的接收器电路、时钟同步和匹配,降低噪声干扰,提高信号的可靠性和稳定性。在实际的设计过程中,需要仔细考虑系统要求、布局约束和测试方法等方面的问题,以确保设计的可行性和可靠性。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值