基于FPGA的cameralink编解码测试系统设计
1、目的
项目需要设计一个多功能参数可变的cameralink相机视频接收机,接收到相机传过来的视频数据通过PCIE往上位机发。开始没有可供测试的相机,于是想着用FPGA模拟cameralink协议自行写一个视频发送机,用于对接自己的设计的cameralink视频接收机;采用两块FPGA板对接,用lvds差分信号传输数据;
发送机实现FPGA对视频数据的cameralink协议编码;
接收机实现FPGA对视频数据的cameralink协议解码;
接收到的数据是:portA,portB,portC,portD,portE,portF,portG,portH共八个端口的数据;
FPGA将8个端口的数据根据不同的传输模式进行重组,写入内存空间;上位机从内存读到数据以后显示出来。
CPU读取当前模式寄存器,确认当前cameralink工作模式;
CPU根据cameralink工作模式确定图像数据组合的方式;
2、设计架构图
base模式:一次性传3个像素 占用A,B,C共3个端口
midium模式:一次性传6个像素 占用A,B,C,D,E,F共6个端口
full模式:一次性传8个像素 占用A,B,C,D,E,F,G,H共8个端口
3、参数计算
//
2021年11月17日
cameralink全参数设计:
wire [31:0]slvReg1;//0008
wire [31:0]slvReg2;//000C
wire [31:0]slvReg3;//0010
wire [31:0]slvReg4;//0014
localparam VERSION1 = 32'h20211117;0018
localparam VERSION2 = 32'h000000A1;001C
wire [31:0]gpio_i1=VERSION1;
wire [31:0]gpio_i2=VERSION2;
//c_mode
//[7:6]=00 -->BASE [7:6]=01 -->MEDIUNM [7:6]=10 -->FULL
//[5:4]=00 -->8BIT [5:4]=01 -->10BIT [5:4]=10 -->12BIT [5:4]=11 -->14BIT
//[3:0]=0000 -->640*512
//[3:0]=0001 -->320*240
//[3:0]=0010 -->1024*1024
//[3:0]=0011 -->1280*1280
//[3:0]=0100 -->1280*720
//[3:0]=0101 -->1902*1080
cameralink像素的排列方式:
在BASE模式下:
1、当像素是14bit的时候,B端口的低6位 + A端口的8位组成14bit,C端口空置,一个时钟产生1个像素
2、当像素是12bit的时候,B端口的低4位 + A端口的8位组成12bit 第1个像素,
C端口的8位 + B端口的高4位组成12bit 第2个像素,,一个时钟产生2个像素
3、当像素是10bit的时候,B端口的低2位 + A端口的8位组成10bit 第1个像素,
C端口的8位 + B端口的B5,B4组成10bit 第2个像素,,一个时钟产生2个像素
4、当像素是8bit的时候, A端口的8位组成8bit 第1个像素,
A端口的8位组成8bit 第1个像素,
A端口的8位组成8bit 第1个像素,一个时钟产生3个像素
在medium模式下:
1、当像素是14bit的时候,一个时钟产生2个像素 【不考虑这种情况,medium模式不用来传输14bit数据】
2、当像素是12bit的时候,一个时钟产生4个像素
3、当像素是10bit的时候,一个时钟产生4个像素
4、当像素是8bit的时候 ,一个时钟产生6个像素
在full模式下:
1、仅用于8bit传输,一个时钟产生8个像素,1个端口代表一个像素
基于FPGA的cameralink编解码测试系统设计相关推荐
- 基于FPGA 的8b10b编解码电路前端电路设计
基于FPGA 的8b10b编解码电路前端电路设计 摘 要 本设计是采用EDA技术设计的一种8B /10B 编解码电路,实现了在高速的串行数据传输中的直流平衡.该编解码电路设计大体上可以由五个模块构成, ...
- 基于FPGA的单目内窥镜定位系统设计(上)
今天给大侠带来基于FPGA的单目内窥镜定位系统设计,由于篇幅较长,分三篇.今天带来第一篇,上篇,话不多说,上货. 导读 随着现科技的发展和社会的进步,信息科技迅速发展,我们可从互联网.电台等媒体获取大 ...
- 基于FPGA的红外遥控解码与PC串口通信
基于FPGA的红外遥控解码与PC串口通信 zouxy09@qq.com http://blog.csdn.net/zouxy09 这是我的<电子设计EDA>的课程设计作业(呵呵,这个月都拿 ...
- 基于FPGA的单目内窥镜定位系统设计(中)
今天给大侠带来基于FPGA的单目内窥镜定位系统设计,由于篇幅较长,分三篇.今天带来第二篇,中篇,话不多说,上货. 导读 随着现科技的发展和社会的进步,信息科技迅速发展,我们可从互联网.电台等媒体获取大 ...
- 迅为RK3568开发板 buildroot 平台编解码测试
第 1 章 buildroot 平台编解码测试 1. 音频和视频播放初体验 使用 gplay 播放器播放视频和音频 Gplay 是基于 Gstreamer 实现的音视频播放器,运行也十分简单.输入以下 ...
- 基于FPGA的单目内窥镜定位系统设计(下)
今天给大侠带来基于FPGA的单目内窥镜定位系统设计,由于篇幅较长,分三篇.今天带来第三篇,下篇,话不多说,上货. 导读 随着现科技的发展和社会的进步,信息科技迅速发展,我们可从互联网.电台等媒体获取大 ...
- 基于 FPGA 的以太网回环测试verilog实现UDP协议
基于 FPGA 的以太网回环测试verilog实现UDP协议 verilog实现UDP协议: 该 设计使用 UDP 协议,首先通过串口助手接收 PC 发送的 UDP 数据包,然后提取其中的数据部分并使 ...
- 基于 CoreAudio 的音频编解码(二):音频编码
系列文章目录 基于 CoreAudio 的音频编解码(一):音频解码 基于 CoreAudio 的音频编解码(二):音频编码 前言 在 基于 CoreAudio 的音频编解码(一):音频解码 中,我们 ...
- 基于 CoreAudio 的音频编解码(一):音频解码
系列文章目录 基于 CoreAudio 的音频编解码(一):音频解码 基于 CoreAudio 的音频编解码(二):音频编码 前言 Core Audio 是iOS和MAC系统中的关于数字音频处理的基础 ...
- 基于 FFMPEG 的音频编解码(三):音频编码
音频编码 基于 FFMPEG 的音频编解码(一):Hello FFMPEG,安装与编译 基于 FFMPEG 的音频编解码(二):音频解码 基于 FFMPEG 的音频编解码(三):音频编码 在前面文章中 ...
最新文章
- centos7查看当前系统时间、_CentOS7 设置系统时间
- js一个大盒子中有三个小盒子_寒假预习:一万有多大,数一数估一估,亲身感觉一万有多大...
- MKL学习——数学运算库安装调试
- js 根据时间生成唯一订单号
- linux nfs 默认端口,Linux NFS服务固定端口与防火墙配置
- vscode python debug venv_Visual Studio Code Python开发调试环境设置
- SpringBoot实战总汇--详解
- Oracle ora-15070,查询字段过多触发了Oracle的BUG?【ORA-01465: 无效的十六进制数字】...
- 浅谈C++设计模式之抽象工厂(Abstract Factory)
- The POM for is missing, no dependency information available
- 教你如何在交换机上查询并看懂光模块DDM信息
- k8s-linux上安装
- 高通CameraSenorBringup
- BPM- Eteams体验报告
- oracle预收核销,Oracle EBS AP取消核销
- 线性代数·关于线性相关和线性组合
- hle机器人_cuvee选出奶妈上单!HLE以2-1击败SKT,haru奥拉夫成神了
- 壁纸wallpaper透视壁纸王者荣耀透视壁纸mpkg
- python优化网站_5个Python脚本优化你的网站搜索引擎优化
- C语言初学零基础(一)——安装Visual Studio2022
热门文章
- python管理后台框架_python3 django layui后台管理开源框架分享(码云)
- 使用MarkDown来写一份漂亮简约的简历
- 质量提高90%以上,智能化施工为高铁建设提速增效
- 解决 tesserocr 无法安装问题!
- 第2章 MCS-51 单片机硬件结构
- 计算机软件产品类退税,软件产品增值税退税政策详解.doc
- GIS要学哪种计算机语言,做好一名ArcGIS开发人员所需要掌握的知识
- 计算机说课稿模板小学数学,小学数学说课万能模板精简
- android xml属性,android中解析XML androidxml属性大全
- 技术干货大集锦(一)