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

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

3天内不再提示

1.5G MIPI dsi TX移植注意事项及demo - update8

XL FPGA技术交流 来源:易灵思FPGA技术交流 作者:易灵思FPGA技术交流 2024-06-27 08:43 次阅读

硬件平台

3bc9306e-341e-11ef-82a0-92fbcf53809c.jpg

软件平台:

3bf0be90-341e-11ef-82a0-92fbcf53809c.png

使用注意事项

MIPI Dsi的使用相比于CSI多了一些寄存器控制,生成的example直接仿真是可以的,但是修改了参数,一些参数也要做相应的调整。这里我们来做个简单总结 。

(1)BANK电压要配置成1.2V

(2)输出要接相应bank的REF_RES管脚。

(3)IP设置关键信号说明

名称 参数 说明
MIPI Parallel Clock frequency 50~187.5 指clk_byte_HS的时钟频率。
IP core frequency 100 指mipi_clk的时钟频率,指定100MHz
Pack Type 48 Enable,Disable 使能表示打开48位的数据类型,比如RGB888,
Packe Type64 Enable,Disable 使能表示打开64位的数据类型,比如RGB565.
如果要全部支持可以同时打开Pack Type48和Packe Type 64
MaximumHorizontalResolution 行像素的最大个数。一定要注意hactive的长度,如果设置不正确可能无画面或者画面偏移。
FIFOPixelDepthSize 最大4096 FIFO的data width是64-bit, MIPIIP里面会缓存2~3行才发出去.所以注意这个值要大于一行的一行数据的2倍或者3倍。
videoTransmission Packet Sequences Non-burst mode
with SyncPulses,
Burst mode,
Non-burst mode
with Sync Events
•Non-Burst Mode with Sync Pulses – 让外设可以精确的重构原始的视频时序,包括同步脉冲宽度。 •Non-Burst Mode with Sync Events –与上述类似,但精确重建同步脉冲宽度不是必需的。 •Burst mode – RGB像素包在时间上有压缩,留出更多的时间用于LP模式,或者用于复用别的传输。

(4)修改配置参数

视频格式如下,可能根据实际的需要进行修改。

parameter MAX_HRES = 16'd1920;parameter MAX_VRES = 12'd4;parameter HSP = 10'd2;parameter HBP = 10'd2;parameter HFP = 10'd246;parameter VSP = 6'd5;parameter VBP = 6'd8;parameter VFP = 6'd32;

修改参数后要在Tianium-mipi-utility文件中验证,确保文件没有错误提示。另外要注意VFP的值最小是2。

3c176bf8-341e-11ef-82a0-92fbcf53809c.png

3c32d488-341e-11ef-82a0-92fbcf53809c.png

另外要把Tianium-mipi-utility文件中input fields中的信息替换Panel_1080p_reg.mem中的相应信息。这是IP需要的视频格式信息。

3c56fef8-341e-11ef-82a0-92fbcf53809c.png

(5)注意修改相应的时钟

在下面,i_pclk是单像素的时钟。o_pclk对应MIPI接口的像素时钟。

i_sys_clk是MIPI AXI接口的配置时钟。i_mipi_tx_pclk是MIPI发送8位HS数据的并行时钟。

在使用中可能根据设置参数修改i_pclk,o_pclk和i_mipi_tx_pclk;一般不用修改i_sys_clk。

//video生成时钟是125Minitialbegin i_pclk <= 1'b1; forever #4.00 i_pclk <= ~i_pclk;end//转换成MIPI接口的pixel clock是62.5Minitial begin o_pclk <= 1'b1; forever #8.00 o_pclk <= ~o_pclk;end//MIPI配置接口时钟是50Minitial begin i_sys_clk <= 1'b1; forever #10 i_sys_clk <= ~i_sys_clk;end//MIPI时是100Minitial begin mipi_clk <= 1'b1; forever #5 mipi_clk <= ~mipi_clk;end//数据速率是1000Minitial begin i_mipi_tx_pclk <= 1'b1; forever #4 i_mipi_tx_pclk <= ~i_mipi_tx_pclk;end

(6)所设置的参数既要在Tianium-mipi-utility在评估通过,还要满足公式

PIX_CLK_MHZ < (DATARATE_MPBS * NUM_DATA_LANE) / PACK_BIT

1)这里的PIX_CLK_MHZ就是指MIPI IP接口的pixel_clk

2)DATARATE_MPBS是指MIPI的数据速率,并非video的带宽。

3)NUM_DATA_LANE是指传输所用的lane数

4) PACK_BIT如下,详细信息请参考MIPI DSI ds。

3c7b0e88-341e-11ef-82a0-92fbcf53809c.png

(7)复位处理

3ca786d4-341e-11ef-82a0-92fbcf53809c.png

复位timing

3cc9e814-341e-11ef-82a0-92fbcf53809c.png

关于DSI_TX复位处理:

1)reset_n,reset_byte_HS_n和axi_reset_n先释放;

2)在reset_n释放之后,等待tINIT时间之后

3ce7d180-341e-11ef-82a0-92fbcf53809c.png

3)通过panel_config来配置panel寄存器。

4)等待panel_config的o_confdone拉高,也就是panel_config配置完成

5)通过confdone拉高来释放video_stream的复位

6)confdone可以用于reset_pixel_n,也可以通过video_stream的输出的vs信号,在vs为blank时释放复位。

parameterFRAME_NUM = 5reg vs_r;reg     [10:0]  r_vs_cnt;wire neg_vs;always@(negedge sys_rst_n or posedge i_sysclk_div_2)beginif(!sys_rst_n)        vs_r    <= 1'b0;    else         vs_r    <= vs;end assign neg_vs = {vs_r,vs} == 2'b10;always@(negedge sys_rst_n or posedge i_sysclk_div_2)begin    if( !sys_rst_n )        r_vs_cnt    <= 16'b0;    else if (neg_vs && r_vs_cnt <= FRAME_NUM )        r_vs_cnt    <= r_vs_cnt + 1'b1;end always@(negedge sys_rst_n or posedge i_sysclk_div_2)begin    if (!sys_rst_n)        reset_pixel_n    <= 1'b0;    else if (neg_vs && r_vs_cnt == FRAME_NUM-1  ) //          reset_pixel_n    <= 1'b1;end     

(8) MIPI IP接口的timing时序要求如下:

3d03cd90-341e-11ef-82a0-92fbcf53809c.png

(9)video接口数据类型格式

视频格式的顺序请参考AN015。

=========================================

example

=========================================

时钟方案

3d32a7e6-341e-11ef-82a0-92fbcf53809c.png


审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • MIPI
    +关注

    关注

    10

    文章

    286

    浏览量

    48111
  • DSI
    DSI
    +关注

    关注

    0

    文章

    44

    浏览量

    42233
收藏 人收藏

    评论

    相关推荐

    IT6113: 高速MIPI DSI 4通道转8通道转接芯片资料

    超高分辨率格式,如转换器模式下的 WUXGA。 IT6113的 TX 物理层支持每个通道高达1.5 Gbs 的数据传输速率。 IT6113兼容 MIPI DSI Version 1.1
    发表于 03-25 21:06

    MIPI解决方案 ICN6202:MIPI DSI转LVDS转换芯片

    通过IIC总线给芯片写相应的寄存器配置。注意事项: A、ICN6202设计的时候要特别注意MIPI DSI和LVDS的走线问题,要做好屏蔽以免信号受到干扰。 B、
    发表于 12-26 09:32

    MIPI DSI 转 LVDS 单路, ZA7783

    TX(此功能一般不用)输入:MIPI DSI输出:Single link LVDS/TTL输出信号格式:TTL支持RGB888/666/565通信方式:IICI/O电压:1.8/3.3V工作温度范围
    发表于 05-25 15:00

    LT8912(LT8912B)MIPI DSI转LVDS,HDMI1.4/MHL2.0的转接芯片

    是1.8V需要MOS管或三极管做电平转换)7.7.3应用平台:高通,MTK平台上应用较多7.7.4推广注意事项7.7.3设计注意事项LVDS像素时钟:25MHz-154MHz***
    发表于 05-28 09:56

    移植STM32F有哪些注意事项

    怎样去移植STM32F工程?移植STM32F有哪些注意事项
    发表于 10-15 06:01

    移植LWIP的注意事项有哪些

    在stm32+enc28j60板子上如何去移植LWIP呢?有哪些注意事项
    发表于 11-03 06:44

    GD32大容量产品软件的移植注意事项

    本文档的主要内容详细介绍的是GD32大容量产品软件的移植注意事项
    发表于 11-14 16:14 17次下载
    GD32大容量产品软件的<b class='flag-5'>移植</b><b class='flag-5'>注意事项</b>

    MIPI dsi TX移植注意事项简单总结

    MIPI Dsi的使用相比于CSI多了一些寄存器控制,生成的example直接仿真是可以的,但是修改了参数,一些参数也要做相应的调整。
    的头像 发表于 02-06 14:20 1374次阅读
    <b class='flag-5'>MIPI</b> <b class='flag-5'>dsi</b> <b class='flag-5'>TX</b><b class='flag-5'>移植</b><b class='flag-5'>注意事项</b>简单总结

    MIPI2.5G DPHY TX demo移植教程

    最近陆续有客户在评估易灵思的Ti180。Ti180的MIPI 2.5G是硬核。今天做一个简单的移植来试验下MIPI DSI 驱屏。
    的头像 发表于 04-18 10:07 1412次阅读
    <b class='flag-5'>MIPI</b>2.5G DPHY <b class='flag-5'>TX</b> <b class='flag-5'>demo</b><b class='flag-5'>移植</b>教程

    MIPI dsi TX移植注意事项

    MIPI Dsi的使用相比于CSI多了一些寄存器控制,生成的example直接仿真是可以的,但是修改了参数,一些参数也要做相应的调整。这里我们来做个简单总结 。
    的头像 发表于 05-14 10:04 547次阅读
    <b class='flag-5'>MIPI</b> <b class='flag-5'>dsi</b> <b class='flag-5'>TX</b><b class='flag-5'>移植</b><b class='flag-5'>注意事项</b>

    MIPI dsi TX移植注意事项

    MIPI Dsi的使用相比于CSI多了一些寄存器控制,生成的example直接仿真是可以的,但是修改了参数,一些参数也要做相应的调整。这里我们来做个简单总结 。
    的头像 发表于 05-22 10:01 546次阅读
    <b class='flag-5'>MIPI</b> <b class='flag-5'>dsi</b> <b class='flag-5'>TX</b><b class='flag-5'>移植</b><b class='flag-5'>注意事项</b>

    MIPI dsi TX移植注意事项-update4

    MIPI Dsi的使用相比于CSI多了一些寄存器控制,生成的example直接仿真是可以的,但是修改了参数,一些参数也要做相应的调整。
    的头像 发表于 05-23 09:51 786次阅读
    <b class='flag-5'>MIPI</b> <b class='flag-5'>dsi</b> <b class='flag-5'>TX</b><b class='flag-5'>移植</b><b class='flag-5'>注意事项</b>-<b class='flag-5'>update</b>4

    MIPI dsi TX移植注意事项

    MIPI Dsi的使用相比于CSI多了一些寄存器控制,生成的example直接仿真是可以的,但是修改了参数,一些参数也要做相应的调整。这里我们来做个简单总结 。 (1)BANK电压要配置成1.2V
    的头像 发表于 07-08 10:20 547次阅读
    <b class='flag-5'>MIPI</b> <b class='flag-5'>dsi</b> <b class='flag-5'>TX</b><b class='flag-5'>移植</b><b class='flag-5'>注意事项</b>

    MIPI2.5G DPHY TX demo移植指南

    最近陆续有客户在评估易灵思的Ti180。Ti180的MIPI 2.5G是硬核。今天做一个简单的移植来试验下MIPI DSI 驱屏。
    的头像 发表于 07-14 10:21 1291次阅读
    <b class='flag-5'>MIPI</b>2.5G DPHY <b class='flag-5'>TX</b> <b class='flag-5'>demo</b><b class='flag-5'>移植</b>指南

    MIPI dsi TX移植注意事项 - update7

    MIPI Dsi的使用相比于CSI多了一些寄存器控制,生成的example直接仿真是可以的,但是修改了参数,一些参数也要做相应的调整。这里我们来做个简单总结 。 (1)BANK电压要配置成1.2V
    的头像 发表于 12-12 09:52 341次阅读
    <b class='flag-5'>MIPI</b> <b class='flag-5'>dsi</b> <b class='flag-5'>TX</b><b class='flag-5'>移植</b><b class='flag-5'>注意事项</b> - <b class='flag-5'>update</b>7