某软件架构及开发流程讲义

上传人:F****n 文档编号:95431151 上传时间:2019-08-18 格式:PPT 页数:58 大小:1.68MB
返回 下载 相关 举报
某软件架构及开发流程讲义_第1页
第1页 / 共58页
某软件架构及开发流程讲义_第2页
第2页 / 共58页
某软件架构及开发流程讲义_第3页
第3页 / 共58页
某软件架构及开发流程讲义_第4页
第4页 / 共58页
某软件架构及开发流程讲义_第5页
第5页 / 共58页
点击查看更多>>
资源描述

《某软件架构及开发流程讲义》由会员分享,可在线阅读,更多相关《某软件架构及开发流程讲义(58页珍藏版)》请在金锄头文库上搜索。

1、达芬奇(DaVinci)软件开发,一、达芬奇软件架构 及开发流程 二、 Codec创建DSP Server 三、 Codec Engine概述,达芬奇(DaVinci)软件开发 - 什么是达芬奇技术? TI 的 DaVinci 技术是一组专门为高效和引人注目的数字视频而设计的基于 DSP 的系统解决方案-适用于数码摄像机、视频安全设备、高级医疗成像设备、便携式视频播放器或任何其它您能想象得到的视频应用。 成功实现数字视频需要四大要素的最新进步,即:处理器、开发工具、软件以及系统专业技术。由于能够在集成这四种要素的平台中实现数字视频、音频、语音与话音技术,因此达芬奇技术可以为数字视频的当前变革打

2、下基础。 达芬奇技术充分利用了 TI 25 年的数字信号处理与集成电路专业技术来提供系统级芯片(SoC),这种系统针对灵活的数字视频实施而进行了精心优化,拥有业界领先的性能并集成了可编程数字信号处理器(DSP)内核、ARM处理器以及视频加速协处理器。凭借高效的处理能力、存储器、I/O带宽、平衡的内部互连以及专用外设组合,基于达芬奇技术的SoC能够以最低的成本为视频应用提供理想的核心动力。 处理器自身只能用作数字视频解决方案的基础。管理数字视频系统的所有组件是极其复杂的工程难题。对于许多应用来说,数字视频只是更为庞杂的系统的众多组件之一。工程师随意地在自视为基础技术方面投入大把时间和资金的好日子

3、已经一去不复返了。,达芬奇(DaVinci)软件开发 - 为了真正意义上地让开发人员克服最初的障碍并且加快产品上市进程,仅仅开发实施数字视频的基础芯片和软件已经远远不够。开发人员不仅需要处理器,他们还需要 能够直接投入生产的理想代码。换句话说,为了满足其应用的特定需求,开发人员还需要已经集成到可配置或轻松编程的数字视频子系统的硬件和软件。 正像汇编语言向 C 语言的过渡使开发人员能够全力开发更高级功能性那样,达芬奇技术使开发人员能够摆脱数字视频的具体技术细节。现在,开发人员不再需要了 解其视频应用中实施具体 CODEC 引擎(如:MPEG-2、H.263、WMA9)的细节。利用允许开发人员无需

4、修改上层应用代码即可以使用理 想 CODEC 的 API,我们可以显著简化视频 CODEC 处理的具体低层次细节。 摆 脱 CODEC 的困扰是数字视频广泛普及的重要一步。当开发人员可以立足于以前开发的功能性,创新就已经来到他们眼前。例如,在过去开发电子器件时,即使是最基本的功能,工程师们也需要进行栅极布局。许多年来,TI 等公司始终致力于在硅芯片中集成功能,为超越自身功能期望的器件打下了基础,同时也降低了实现预期目标所需要的工程量。例如,由于提供了显著加快信号处理任务的计算引擎,DSP 的问世已经推动了数十载的技术创新。 利用达芬奇技术,TI 可以再度实现全新的创新水平。正是 DSP 的问世

5、带来了计算加速,因此达芬奇技术会以 TI 的 DSP 为基础来提供应用加速。开发人员不再需要了解各种音频、视频、影像以及语音 CODEC 背后的机制。,一、达芬奇软件架构 及开发流程,Davinci 软件平台概述,用户软件 用户程序,框架,GUI,设备 驱动,Codec APIs,ARM/DSP 通信,Linux操作系统,ARM RISC,Video,Image,Speech,Audio,Socket Nodes,DSPLink,DSP/BIOS,DSP,外设,Codec Engine 2.30,Engine,Algorithm API,A-Node,Task,S-Node,Task,xDM

6、API,Codec/ 算法,xDM API,Codec/ 算法,OMAP-L137 Software Architecture,ARM 子系统,DSP 子系统,Linux 用户空间,Linux 内核空间,Transport,I/O,I/O,I/O,USB 2.0 Driver,CMEM Driver,McASP Driver,EMAC Driver,MMC/SD Driver,SPI Driver,Link Driver,UART Driver,DSP/BIOS Link v1.6x,DSP/BIOS 5.3x,应用程序,OSAL,Server,CCS 3.3/CGT,MontaVista P

7、ro 5.0 Toolchain,LCD Driver,I2C Driver,GPIO Driver,PSL,Codec Engine 2.30,Engine,Algorithm API,DMAN3,Framework Components 2.30,C6747 Software Architecture,DSP 系统,USB 2.0 Driver,McASP,I2C Driver,CMEM Driver,EDMA Driver,GPIO Driver,EMAC Driver,MMC/SD Driver,SPI Driver,UART Driver,应用程序,ACPY3,DSK2,DMAN,D

8、SP/BIOS 5.32,LCD Driver,NAND Driver,ERTFS Driver,CCS 3.3/CGT,xDM API,Codec/ 算法,xDM API,Codec/ 算法,功耗管理 Power Manager (PWRM),PSL,达芬奇DMSoC软件概述 - 达芬奇DMSoC软件概述 一般来讲,软件系统分为应用层、信号处理层和I/O层三部分,TI提供的达芬奇参考软件框架就是基于这样的结构,如下图所示。,图1,达芬奇DMSoC软件概述 -,应用层:工程师可以在系统的用户空间在系统功能性上添加和发挥自己的特色。 信号处理层:通常都运行在DSP一侧负责信号处理,包括Video

9、/Audio编解码算法、 Codec Engine、DSP的实时操作系统DSP/BIOS及和ARM通信的模块。 信号处 理层(SPL)一方面通过VISA API接口与应用层(APL)连接,另一方面则通过DSP/BIOS与底层内核沟通。 I/O层:就是我们通常所说的驱动,是针对Davinci外设模块的驱动程序。 其中应用层通过Codec Engine的VISA API来调用DSP侧的算法,通过EPSI(Easy Peripheral Software Interface)API来访问和操作Davinci的外设。 这三个部分通常对应三个Davinci软件开发小组。当然还需要一个系统集成工程师把这三

10、个部分集成起来,不过VISA API和EPSI API的存在已经大大简化了集成工作的复杂程度。,Codec Engine概述 - 下图给出了这种框架的结构示意图。 共享DDR2存储器-ARM与DSP之间共享内存,进行物理数据交换。 DSPLink-双核通信的基础软件,为开发人员提供通用的API,用于描述ARM 与DSP之间通信的物理链路的特征。 引擎功能层-用于管理算法对象的实例,例如创建一个对象的具体过程等。 VISA层-面向引擎功能层的一个接口,用于定义创建、删除和使用一个特定符合XDM标准的算法的进程。由于Codec Engine的主要任务是为从ARM发起的VISA命令控制远程的XDM算

11、法起到一个管道的作用,因此VISA层实际上就代表了XDM接口层。,达芬奇软件架构 及开发流程 - 下面就是一个完整的应用程序开发步骤:,xDM,Non-xDM,可发布使用的Codec包,VISA,Stub,DSP算法工程师,运行在DSP上的可执行程序:.cfg, .tcf, main(),Codec Server集成工程师,可执行应用程序,ARM应用工程师,各种引擎配置,Codec Engine集成工程师,*.cfg,DSP/BIOS,FrameWork Component, DSPLink, xDC,Server 名称,Codec列表,各种不同的Codec包: *.x64P , *.cfg,

12、*.a64P 即*.lib,*.x64P 即*.out,达芬奇软件架构 及开发流程 - 一个完整的应用程序开发步骤:,xDM,Non-xDM,可发布使用的Codec包,VISA,Stub,DSP算法工程师,*.a64P,第一步: 需要基于DSP利用CCS开发自己的音视频编解码算法,编译生成一个编解码算法的库文件*.lib(等同于Linux环境下的*.a64P,直接在Linux环 境下修改文件后缀名即可)。由于需要确保算法可被Codec Engine使用和配置,所以要确保这些算法 实现需要符合xDM(xDAIS(eXpress DSP Algorithm Interface Standard)

13、for Digital Media)标准。 Codec主要完成音视频的核心算法,应用程序运行时被调用,并不参与其他功能。 如果算法与XDM标准兼容,则可不经修改而直接被Codec Engine的VISA API远程执行;如不兼容, 则需为其提供Codec Engine的框架和终端接口(具体请参考spraae7.pdf) 。,达芬奇软件架构 及开发流程 - 一个完整的应用程序开发步骤:,第二步: 将Codec集成到CodecEngine中。将第一步开发完成的Codec或已有的符合xDM的Codec集成到CodecEngine中, 这一步需要配置两个JavaScript的脚本文件: *.cfg-表明Codec的使用和配置信息, *.tcf-描述Codec在达芬奇上的内存分配的配置. 配置好这两

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号