ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

087、安防NVR多路解码显示架构——基于海思Hi3536D的16路1080P实时预览的DDR带宽分配策略

087、安防NVR多路解码显示架构——基于海思Hi3536D的16路1080P实时预览的DDR带宽分配策略 087、安防NVR多路解码显示架构——基于海思Hi3536D的16路1080P实时预览的DDR带宽分配策略兄弟们,今天聊个老平台但特别典型的活儿——Hi3536D。这芯片现在看算力不算猛,但当年在NVR市场那是扛把子,16路1080P实时预览是它的招牌动作。可这招牌动作背后,DDR带宽分配稍有不慎,画面就给你颜色看——不是花屏就是卡顿,要么就是预览画面像幻灯片。我当年在项目上第一次调这玩意儿,16路全开,预览界面直接糊成一锅粥,CPU占用率倒是没爆,但VPSS那边疯狂报带宽不足,最后查了半天,问题出在解码输出和显示通道抢带宽,压根没人管VPSS的压缩率设置。先别急着看寄存器手册,咱得先把账算明白。Hi3536D的DDR控制器是32位宽的,跑DDR3-1600,理论峰值带宽也就12.8GB/s,但实际可用打个七折,大概9GB/s左右。这9个G要养活的东西可不少:16路H.264解码,每路1080P@30fps,码流按8Mbps算,解码读码流才16MB/s,小头;关键是解码后的YUV数据写DDR,每帧1920x1080x1.5字节,30帧就是93MB/s,16路加起来1.5GB/s,这是大头之一。然后是VPSS做缩放、去噪、锐化,读一帧写一帧,带宽翻倍,又是3GB/s。最后是VO显示,16路预览画面拼成一个大画面输出到HDMI,这玩意儿读带宽也得算上,虽然显示分辨率可能就1080P,但每路预览窗口的缩放比例不同,VPSS得先处理好,VO那边只做最终合成,读带宽大概几百MB/s。这么一算,光视频通路就吃掉5GB/s以上,剩下给CPU、GPU、网络、USB、SATA的,也就3-4GB/s,紧巴巴的。那怎么分?海思的文档里有个叫DDR
RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进