CSI MIPI转换DVP,要么就是通用IC操作,如龙讯芯片和索尼芯片,但是复杂的寄存器控制器实在开发太累。对于FPGA操作,大部分都是用xilinx的方案,xilinx方案成本太高,IP复杂。
而用国产GOWIN已经实现了直接mipi csi解码,而且支持非连续的clk时钟功能。
由于MIPI CSI 输入要求特定的管脚,所以设定在BANK 0区域,并且设定,BANK0的电压为1.2V来满足MIPI IO连接功能。
代码结构如下,首先是MIPI DPHY中解析到LP和HS的数据内容。通过字节对接和lane对齐,完成包组合,再解析包。由于clk不连续,通过参考时钟来转换不连续的CLK时钟数据内容。
MIPI RX设定如下,设定MIPI的IO和延迟参数。
得到结果如下: