简介
基于FPGA平台实现简单的OSD的功能,对于FPGA实现OSD只能实行简单的画框和文字叠加,如果实现复杂的车道线画框,则没法实现(起码我个人感觉,这个功能没有思路执行)。
FPGA实现OSD功能需要7系列平台,以及VDMA、OSD等Xilinx公司的IP使用(本功能工程采用Vivado2017.4平台)。
FPGA框图
工程主要用到VDMA和OSD以及自定义的TMD(HDMI模块),功能是将RGB数据转换成AXI4协议,再通过DDR3,最后将AXI4转换成类BT1120协议。
OSD IP说明
OSD模块中有两个重要的设置,一个层数,另外一个设置设置该层的源方向(内部源和外部源),外部源是用于图像合并的功能,内部源是用来叠加画框或字符(注意“或”)。
代码
该代码OSD是C语言在ARM或miroblaze中完成。在XSDK中,有OSD的例子。提前说明的是,OSD字符叠加需要先把字符库加载进去。
xil_printf("GMSL Single TRANS ETH/HDMI Bro