海思35xx MPP构架和3798M UNF构架分析

 2 E币 
成为会员,免费下载资料
文件大小:2.23 MB 上传者:isuca 时间:2017-04-27 15:38:50 下载量:530
本帖最后由 isuca 于 2017-12-25 14:30 编辑

UNF是海思机顶盒底层构架,UNF和MPP海思是一个工作组完成的,后来分成两个小组。基本构架,实现原理差不多。但UNF大部分东西开源了,你能够看到底层源码,少数部分没有开源,总体来说比MPP开放得多

很多公司早就使用机顶盒方案如3798M开发NVR

目录
前言:        4
1:Hi35xx系列芯片MPP构架        5
1.1 概述        5
1.2 整体软硬件构架        5
1.3 海思媒体处理平台架构        6
1.4 MMZ与模块绑定        8
1.5 HiMPP 支持的绑定关系        9
1.6 函数约定说明        10
1.7 MPP优缺点        11
1.7.1 MPP优点        11
1.7.2 MPP缺点        11
2: MPP和UNF对比        11
3:3798芯片UNF处理构架        12
3.1 应用架构        12
3.2 3798SDK 概览(功能介绍)        13
3.3 3798内存管理        13
3.3.1 Mmz内存        13
3.3.2 解码vid内存        14
3.4 3798模块        14
DEMUX:        14
VI:        14
VDEC        15
SYNC:        15
DISPLAY:显示设备        15
WINDOW:显示通道        15
SO( Subtitle Output)        16
PDM        17
3.5 3798和NVR模块使用方面区别:        20
4: 3798代码祥看        20
4.1 分析方法        20
4.1.1:查看代码,静态分析应用层,驱动层实现方法        20
4.1.2:图示静态分析函数调用关系        21
4.1.3:图示动态分析函数调用关系:库函数,系统调用,内核调用        21
4.2 基础模块:hi_media hi_mmz hi_common        21
Common        21
4.2.1 基本通用模块应用层接口common/api        22
4.2.2 基本通用模块驱动接口common/dev        22
4.2.3 业务模块应用层通用组件source/component        30
4.3 海思专用组件        30
4.3.1 海思MSP模块应用层接口source/msp/api        30
4.3.2 海思MSP模块驱动层接口source/msp/drv/        33
VENC        33
avplay        34
avplay初始化分析        34
IOCTL实现分析 基于avplay        35
avplay 多个实例如何找到对应实例        36
VPSS        36
VDEC        38
Avplay解码ES流过程        38
IR        39
4.4 Sample_mosaic分析        42
应用层调用        42
系统调用        43
5:小结:        44
5.1 UNF相对标准内核模块区别        44
5.1.1 Proc读写调试。        44
5.1.2 内核空间往应用空间写文件        44
5.1.3Log管理        45
5.1.4内存映射        45
5.2代码分析方法        45
5.2.1 查看代码,静态分析应用层,驱动层实现方法        45
5.2.2 图示静态分析函数调用关系.        45
5.2.3 图示动态分析函数调用关系:库函数,系统调用,内核调用        45
参考文档:        46



前言:
        本文通过分析海思文档和代码,把海思SDK的MPI和UNF构架大概实现思想和构架进行了简略的分析。着重分析了内存管理,底层功能如何实现。
        前面章节简要分析了NVR芯片MPI构架及其内存管理机制,后面着重详细分析了3798M底层模块api和drv实现的细节过程及其方法流程。

        本文前面简略分析了DVR,MPI构架的大体实现机制。后面就具体分析3798M UNF构架的实现。
本文不光分析了UNF构架,还使用了很多工具,辅助分析代码。这里从三个层面分析了UNF的实现。
1: 应用层,驱动层的实现框架,使用source insight查看代码并着重分析了avplay等几个模块。
2:静态分析函数调用。使用cflow,dot工具生成调用关系图
3:动态追踪运行过程。Ltrace, strace, valgrind分析函数调用,perf动态分析内核调用。

附件回复可见
海思35XX MPP构架和3798 UNF构架分析 - 副本.pdf
[hide][attach]5537[/attach][/hide]


展开
折叠
4715
评论
共 0 个
内容存在敏感词
    易百纳技术社区暂无数据
相关资料
关于作者
易百纳技术社区
isuca
贡献资料 2
易百纳技术社区 我上传的资料
登录查看
我赚取的积分
登录查看
我赚取的收益
登录查看
上传资料 赚取积分兑换E币
易百纳技术社区
删除原因
广告/SPAM
恶意灌水
违规内容
文不对题
重复发帖
置顶时间设置
结束时间
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-资料模块

审核失败

失败原因
备注
易百纳技术社区