0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

快速掌握MIPI开发攻略,对接百度人工智能计算卡EdgeBoard

云创硬见 2019-09-06 21:34 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

摘要:MIPI摄像头以其体积小、传输速率快的特点在电子产品中得到广泛的应用,现在也广泛地适配到AI端上推理设备。本文以百度的AI端上推理设备EdgeBoard为硬件基础,介绍基于FPGA的MIPI相关技术的开发。

MIPI(移动处理器接口)是Mobile Industry Processor Interface的缩写,是MIPI联盟发起的为移动应处理器制定的开放标准。MIPI高速串口传输数据,满高分辨率摄像头的传输需求,采用串方便PCB布局布线,提信号完整性,也有利于减PCB面积。MIPI的摄像头一般体积,适合于小型的嵌入式设备,比如手机车记录仪等,同时也广泛应用到AI端上推理设备。本以百度的端上推理设备EdgeBoard作为原型来介绍MIPI相关技术的开发。如果用户购买EdgeBoard,出厂的镜像中带有MIPI的功能,只需再购买推荐的MIPI摄像头,即可实现即插即

MIPI介绍

MIPI分为两类,DSI (Display Serial Interface),提供处理和显示模组之间的高速串行口;二是CSI (Camera Serial Interface),提供处理和摄像模组之间的高速串行口。本文将要介绍的是CSI-2

MIPI信号采用低压差分信号进行传输,具有传输速率快,抗干扰能力强的特点。MIPI的传输模式分为低速信号模式和高速信号模式,低速信号用于控制命令(10 MHz),高速信号用于数据传输(80Mbps -1Gbps/lane)。时钟处于非连续工作状态,根据传输状态进时钟的切换,这样可以极大地降低功耗。关于D-PHY可参考MIPI®Alliance Specification for D-PHY

MIPI最多可支持4通道数据,同时配有IIC总线进配置,收发接口如下图

MIPI协议也是采用类似于以太网协议结构,采用分层设计的思想,分为PHY LayerProtocal LayerApplication Layer

MIPI传输的报文中定义了图像数据的类型/格式(Data type),这些类型/格式方便在调试的时候确定链是否工作正常,常用的Data Type如下图,比如YUV的数据格式的标示符是0x180x1F,期间的数值定义了具体的格式,比如YUV422YUV444等,具体可参考MIPI Alliance Specification for CameraSerial Interface 2

硬件相关

MIPI电平

MIPI的电平标准分为LP (Low Power)模式和HPHigh Power)模式,LP模式下高电平最大值1.3V,最1.1V,典型值为1.2VHP模式下共模电平200mv,摆幅200mV

D-PHY

1、Ultrascale系列FPGA使MIPI_PHY_DCI的电平,digital control impedence,如果是mipi的数据率很高时,比如lane rate高于1000Mbps,需要开启100Rtermination

2、如果使K7系列的芯片,由于其不支持MIPI_PHY_DCI电平,可以通过LVDS电平转换而来,可以参Xilinx的官方文档D-PHY solutionsXAPP894,提供了完整D-PHY层的解决方案。

Note1对于Vivado 2018.2以下的版本,如果MIPI线速率很高,比如1500Mbps,需要在xdc约束文件中添加termination约束,针对Ultrascale做以下操作:

MIPI引脚分配和BANK电压

1.EdgeBoard中使用的是Xilinx Ultrascale+系列MPSoCMIPIIO必须放置在HP Bank

2.MIPI_PHY_DCI的电平对Bank的要求苛刻,BankVCCO必须设定为1.2V,同时BANKVREF推荐端接240R。如果Bank中有其他电平标准,比如1.8V的电平,在implementation过程中会报错。

3.MIPI-CSI-RX IP带有Pin assignment的功能,可进引脚分配的验证,参考后文的MIPI IP配置。

Layout

D-PHY的标准规定总的传输延迟不能超过2 ns,对应到FR4材质的PCB大的走线长度是25cm30cm,包括从发送端到接收端,这决定了MIPI支持的传输距离在30cm左右,参考AN-1337D-PHY。同时PCB走线必须匹配100欧姆的端接。

EdgeBoardMIPI

EdgeBoardMIPI最多支持4通道,可以根据需要选择性使用,用户通过排线与EdgeBoard连接即可,注意排线不要过长,最好小于10cm

开发

Vivado

Vivado工具中的视频IP也是在逐步开发完善中,其中难免会遇到各种意想不到的bug,不过好在Xilinx的官论坛维护地很好,只要发帖提问,短时间内就会得到专门技术人员的回答,同时针对出现的BugXilinx方也会定期发布相应的patchVideo论坛中积攒的各种帖子也为后续的开发者提供了解决问题的途径。

1.如果使2017版本的VivadoMIPI CSI RX IP能处理MIPI镜头时钟缺失的问题,参考AR70581。解决该问题,参考AR70530patchpatch打成功之后,在Vivado软件界面提示AR70530。如果使2018之后的版本,则不存在这个问题,不需要打patch

2.MIPI-CSI-RX license需要购买才能使用,功能验证阶段可以在Xilinx网申请Evaluation license但是evaluation license生成的bit文件,会间歇性停止工作,无法用到真正的产品里面

License申请参考下文申请Xilinx Evaluation License

3. Github也有开源的MIPI CSI2 IP,该IP针对Xilinx 7 Series FPGA,可以支持到4K的分辨率,采VHDL开发,但仅支持4通道的MIPI摄像头。

4.推荐使2018.3及以上的版本进MIPI的开发。

MIPI IP的配置

1.根据MIPI摄像头的参数进基本的设置,主要包括颜色格式、通道数、线速率等。其中线速率最好高于MIPI摄像头的速率,在MIPI IP的内部有一个FIFO缓冲数据,MIPI IP读出速率高于MIPI镜头的写入速度,可以确保不丢帧。

2.在硬件设计之前就需要进引脚验证,由于MIPI对于引脚要求相对苛刻,谨慎为好。

MIPI后续处理IP

面的MIPI IP只是负责从前端摄像头拿到数据,还需要其他IP后续的处理才能得到完整的视频。

Demosaic

也称之为interolation,通过相邻像素的色彩经过插值算法构建出一副标准色彩的图像,实现BayerRGB的转换。

摄像头的感光sensor输出的每个像素不是标准的RGB,每个像素只是三原色中的一种,后期通过插值算法恢复出RGB标准颜色,该方法由柯达科学家Bayer士提出,该方法被称之为Bayer

感光sensor内部带有color filter array(滤色镜),通过放置不同的原色的filter过滤出单个像素的颜色,每个像素是单个的色彩(RGB中的一种),也称之为RAW数据,后端ISP中通过插值算法恢复到标准的RGB。下图是两种滤色方法,一种是RGB一种是CMY印刷四分色模式)。

NOTE使Demosaic IP时,需要制定sensor的左上角的第一个像素是什么颜色,不同的sensor起始像素颜色不同。在DemosaicBAYER_PHASE (0x0028) Register中进设定,参考文档SensorDemosaic

IP配置如下:设定每个时钟的像素个数,像素数据宽度以及分辨率。

Gamma Correcttion

Gamma矫正的目的是将线性亮度信号或者RGB编码矫正成适合显示器显示的非线性数据。IP使Gamma LUT,该IP免费,具体配置见下图

Video Process Subsystem

Video process subsystem IP具有视频处理的多种功能,针对MIPI可以使color space conversion,实现YUV444或者RGB色彩的矫正,提升视觉效果。

注:以上的IP设置均基于Vivado 2017.4版本,2018及以上版本会略有不同,根据我们的开发经验,推荐使2018.3版本。

EdgeBoardMIPI摄像头数据流

EdgeBoardMIPI摄像头数据流如下图,当用户购买EdgeBoard后,然后搭配我们推荐的MIPI摄像头,即可做到即插即

关键寄存器

Xilinx MIPI IPD-PHY对于开发者来说是黑盒子,如果开发中遇到问题,只能通过寄存器的方式来跟踪问题,现介绍一些关键的寄存器。通过跟踪这些寄存器的状态,可以定位排查问题。

D-PHY关键寄存器

首先是判断D-PHY工作状态,在MIPI IP设置中需要Enable D-PHY Register Interface

1. Control Register

1.查看D-PHY是否已经使能

2. CL_STATUS RegisterCL -> Clock Lane

1.查看clock lane是否处于stop状态

2.查看通道是否完成初始化

3.查看工作模式

3. DL_STATUS Register (DL -> Data Lane)

1.查看data lane是否处于stop状态

2.查看通道是否完成初始化

3.查看工作模式

CSI2-RX关键寄存器

1. Core Configuration Register

1. Enable core

2. Protocal Configuration Register

1. Lane number:硬件没问题的话,可以看到MIPI摄像头使用的通道数

3. Core Status Register

1.统计收到的packet

4.查看FIFO是否满,如果数据及时读出,是不会出现满的情况

5. Interrupt Status Register

1.这是排查问题的重要寄存器,各种问题引起的中断都会写入到该寄存器中

6.如果出现ECC的错误,大概率是硬件信号完整性问题

7. Generic short Packet Register

1.查看图像格式,在该寄存器能看到对的Data Type,基本可以说明硬件设计没问题

8. Clock Lane Information Register

1.查看clock工作状态

9. Lane Information Register

1.查看每个lane工作状态,每个lane是始终处于工作状态,也会处于inactive状态

附:申请Xilinx Evaluation License

1.首先需要有一个Xilinx方账号,然后进入到Evaluation License网址申请,申请如下:

2.点击search now,输mipi关键字,勾选MIPI RX

3.Evaluation License需要绑定主机的MAC地址,点击Generate Node-Locked License,然后设置需要绑定的MAC地址

4.很快在个人注册的邮箱里会收到Xilinx方发布的lic文件,将其导入到Vivado工具即可。

NOTEEvaluation License仅限于测试MIPI IPMIPI摄像头的工作状态,不用于发布产品,其内部带有计数器,连续使用小时后会停止工作。



声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    百度Create 2026发布“百度胜算”

    近期,百度Create 2026开发者大会如期召开,百度创始人李彦宏抛出一个足以撼动行业的新概念: **DAA(日活智能体数,Daily Active Agents)** ,并宣布将以
    的头像 发表于 05-17 09:47 1441次阅读

    格灵深瞳亮相Create 2026百度AI开发者大会

    5月13日-14日,Create 2026 百度 AI 开发者大会在北京国家会议中心二期举行。作为百度的生态伙伴,格灵深瞳在专题论坛和公开课上分享了最新的 AI 原生视觉智能产品:视觉
    的头像 发表于 05-16 10:58 538次阅读

    百度发布DAA新度量衡与四大智能体产品

    近日,百度Create AI开发者大会在北京开幕。百度创始人李彦宏在开幕式上抛出一个重磅概念—— **DAA(日活智能体数,Daily Active Agents)** ,将其定义为A
    的头像 发表于 05-15 10:50 745次阅读

    百度智能云正式发布Hogee

    5月13日,在Create2026百度AI开发者大会上,百度智能云正式发布了一款全新的企业一站式AI营销应用——Hogee。这款产品的亮相,标志着
    的头像 发表于 05-15 09:18 829次阅读

    利尔达作为“数据通道与硬件方案”核心伙伴亮相2026百度AI开发者大会

    5月13日,以“自我进化”为主题的Create2026百度AI开发者大会在北京国家会议中心二期盛大开幕。百度创始人李彦宏在开幕式上首次提出AI时代的“度量衡”——日活智能体数(DAA)
    的头像 发表于 05-14 17:36 323次阅读
    利尔达作为“数据通道与硬件方案”核心伙伴亮相2026<b class='flag-5'>百度</b>AI<b class='flag-5'>开发</b>者大会

    云天励飞亮相2026广东省人工智能应用对接大会

    4月27日,广东省人工智能应用对接大会举行。大会以“1+5”模式搭建人工智能供需对接平台,集中展示广东“人工智能+”重点领域典型应用案例。云
    的头像 发表于 04-30 17:08 3717次阅读

    瀚博半导体宣布深度参与百度飞桨黑客松生态活动

    近日,瀚博半导体正式宣布深度参与百度飞桨主办的黑客松生态活动。面向全球开发者开放旗下载天系列加速开发环境,支持部署百度文心ERNIE-4.
    的头像 发表于 04-11 09:41 815次阅读

    百度地图开放平台与400万开发者共赴智能时空新未来

    二十年星辰大海,十五载开放引航。2025年,百度地图迎来服务用户的二十周年,其开放平台亦走过了与开发者并肩同行的十五个春秋。在近期举行的“2025百度地图开发者盛典”上,
    的头像 发表于 01-23 09:03 1080次阅读
    <b class='flag-5'>百度</b>地图开放平台与400万<b class='flag-5'>开发</b>者共赴<b class='flag-5'>智能</b>时空新未来

    光庭信息成为百度智能云大模型行业合伙人

    8月28日-30日,以“智能,生成无限可能”为主题的百度云智大会在北京举办。数千位行业领袖、技术专家与企业代表齐聚一堂,共同见证人工智能从技术探索迈向规模化应用的产业变革。29日,在大会的生态专题
    的头像 发表于 09-02 16:17 1041次阅读

    昆仑芯科技亮相2025百度云智大会

    近日,2025百度云智大会在北京国家会议中心二期隆重启幕。本届大会以“智能,生成无限可能”为主题,聚焦人工智能从技术到产业的全链条落地,深入探讨AI赋能千行业的实践路径与未来机遇。
    的头像 发表于 09-01 11:00 1585次阅读

    百度智能云全面升级舸5.0和千帆4.0

    大会上,百度智能云全面升级舸AI计算平台5.0、千帆企业级AI开发平台4.0两大AI基础设施,帮助企业以更低成本、更高效率部署和
    的头像 发表于 08-30 09:18 2072次阅读

    百度智能云亮相第二十二届ChinaJoy

    百度智能云亮相第二十二届ChinaJoy 8月1日,第二十二届中国国际数码互动娱乐展览会(ChinaJoy)在上海开幕。大会期间,百度全景展示了百度
    的头像 发表于 08-05 09:47 1001次阅读

    中软国际出席江宁开发人工智能产业对接

    近日,江宁开发人工智能产业对接会在南京江宁区成功举办,本次对接会汇聚了南京市工信局、江宁区工信局、紫金山科技城管委会、江宁开发区企业服务中
    的头像 发表于 07-30 17:34 1243次阅读

    最新人工智能硬件培训AI 基础入门学习课程参考2025版(大模型篇)

    人工智能大模型重塑教育与社会发展的当下,无论是探索未来职业方向,还是更新技术储备,掌握大模型知识都已成为新时代的必修课。从职场上辅助工作的智能助手,到课堂用于学术研究的智能工具,大模
    发表于 07-04 11:10

    百度Apollo向北京工商大学捐赠自动驾驶车辆

    近日,百度Apollo自动驾驶车辆捐赠仪式在北京工商大学计算机与人工智能学院举行。捐赠仪式上,百度Apollo正式向北京工商大学计算机与
    的头像 发表于 06-18 14:43 1303次阅读