图像采集与输出 相关芯片Max9218/max9247 /adv7179

收图问题

1、Max9218接受数据紊乱。

解决流程:当时根据相关接口,测了时钟和行场信号以及lock,发现Max9247的输出时钟和Max921的输入时钟不匹配。

解决方式:都更改成15M时钟。

2、Max9218的lock锁不上。

解决流程:Max9218上面记录,正常情况下,应该是一开始是低电平,锁上后一直保持3.3v高电平。这边没法排查,最后预处理板说他们那边阻抗不匹配。

3、Max9218接收图像有白点。

解决流程:发现在接受数据中,接收到的数据和实际发过来的数据的最低位总是存在跳变,甚至接收到的都不一定是准确数据。先将测试输入图像(格子图,渐变图)输出给Dsp看图像质量,发现都有白点。最后看采集相关的地方发现Max9247和Max9218应该做上升沿和下降沿匹配。

解决方式:Max9247上升沿发送,max9218下降沿接收。

4、因为图像干扰问题,导致裂屏,走了很多弯路。因为该现象不能规律复现。

解决流程一开始只是测场信号,发现场信号周期是对的。最后找预处理板要数据有效的时钟周期,直接对数据进行计数。发现每次裂屏的时候都是数据有效信号时钟和预处理板给的时钟不一致,分析原因为干扰导致行场信号紊乱。

解决方式:加容错机制,因为DSP不能收错图,会导致图像跟踪出错,meanshift算法需要保持跟踪目标一直再框内。但是可以丢图。所以FPGA存下一张图,当一场的数据有效数据量不对时,清空并复位fifo。Fifo的复位时间要大于三个时钟周期。

跟Dsp通信机制。

1、每一场的前八个字节没有写进去。srio发完doorbell时没有拉高TLast。

2、Dsp初始化需要时间,一般给Dsp发图前,要确认Dsp的初始化状态,可以通过doorbell或者Gpio的方式。

3、Dsp因为中断问题,导致不能按20ms发图,图像抖动。改用bram缓存图像,经查证,图像输出一般不建议用fifo,因为无法保证图像没有干扰。并且图像大量缓存时,应该选用DDR以乒乓缓存的方式缓存。

 

图像输出问题

1、奇偶场问题。造的渐变图显示正常,但是实际图像异常。未能理解奇偶场,Adv7179的发送模式是,按奇场块存,按奇偶场隔行输出。

解决流程:翻看模拟视频输出文档(bt656、Bt601),验证对于Adv7179和FPGA的工作模式,应该是FPGA按正常图像接受,但是每一场中要先给Adv7179发奇场再发偶场。(每一场中的所有奇行连续发送,再发对应场中的所有偶行)。当时对场概念理解失误,因为模拟视频是先输出奇行,在输出偶行,我也就这么理解了。导致图像发送错误,而我当时一直在排查数据量的问题。

解决方式:查文档意识到该问题后,分奇偶场接收然后再发送。用FIFO来分奇偶场,信号总是卡不准,当时的验证方式也无法确认。所以就让DSp分的奇偶场。接下来是FPGA来做。

奇偶场设计(fifo):经验证,Dsp每发一包,中间会有十几个时钟周期间隔。

在接受处设置状态机,设置奇偶行状态位,初始值位零。每接收一包(256bit),包计数加1。图像输出中,先发奇行,后发偶行,所以奇偶行状态位0为奇行,1为偶行。每行是320个像素,所以每接收十包,将奇偶行状态位取反,输出该标志位,设立两个fifo,当状态位为0时,往fifo1写,当状态位位1时,往fifo2写。而在图像输出时,奇场数就从fifo1取,偶场数就从fifo2取。

奇偶场设计(Bram):设置行计数器,每记满320个像素时。取零。另外该计数器每次记满320个像素时,取地址加320。当奇场时,取地址初始值为0x00,偶场时,设置取地址为0x140。

2、寄存器模式选择,按照默认配置即可。当时因为Adv7179是编码芯片,可以支持自定义图像输出,并且现在模式寄存器需要配置两次才能正常输出图像,原因未知。

3、Adv7179输出是720*576,但是要在中间只输出320*256。

解决方式:卡像素点,匹配想对应的奇偶行。其他位补零。

4、Iic配置不进去。

跟林福炎师兄沟通,zynq的iic的写地址位要右移一位,设置为repead模式。

信号检查

1、不出图的原因。

(1) 检查各使能信号(数据量不满足),比如ADV7179需要每张图都有一定的消影区和视频有效区,如果不满足就不出图。

(2) 测数据输出电压。模拟视频数据输出的电压值为1.2V左右。在数据输出中,场信号是负电平,只有有一段由高到低但是明显和数据电压不一样的波形,是消影区。加了一推三之后,数据输出电压不对,导致没有数据输出。

(3) 输出波形图:包括电压的峰值,时钟频率,数据输出频率。

1、抖图,乱图的原因。

(1) 一般为数据量不匹配。该问题主要会导致图像中部分显示输出异常。至于在哪的数据量错误,需要靠经验检测。一般测试应该从头到尾看一张图的输出是否能和设计的时序相匹配。

(2) 时钟不准确。该问题主要会导致整张图闪乱,而且会显得没有规律。

(因电脑更新,没有测试数据)

 

待做内容

1、分奇偶行。

2、加预处理算法。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章