类型 | 名称 | 描述 | 获取 | 满足要求 |
*.a64P | 算法库文件 | CCS开发自己的音视频编解码算法,编译生成一个编解码算法的库文件*.lib(等同于Linux环境下的*.a64P,直接在Linux环境下修改文件后缀名即可) | 直接在Linux环境下修改*.lib文件后缀名即可 | 库文件中的算法函数的实现要符合xDM标准;不符合xDM标准的算法实现需要创建算法自己的Stub和Skeleton(具体请参考spraae7.pdf)。 |
*.x64P | DSP可执行文件 | DSP上运行的可执行程序(即.out文件),也就是DSP Server? | | |
*.cfg | Codec Engine配置文件(位于APP层的*.cfg) | 包括配置DSP Server的名字及其中包含的具体的音视频编解码算法 | | 定义每个Engine的名字、具体codecs以及codec运行在ARM还是DSP侧等等(具体说明,请参考sprue67.pdf的第5章Integrating an Engine)。 |
| DSP Server配置文件(位于Server层*.cfg) | 负责系统级的管理,如CPU周期、Memory、DMA资源。具体的: (1) Codec配置:每一个codec都被包含在各自的线程中; 配置每一个codec线程的属性(线程优先级、堆栈大小和堆栈的memory资源)。 (2) DSKT2配置:把所有的IALG memory类型结合到可用的DSP memory;定义缺省的scratch组的memory大小。 (3) DMAN3配置:定义DMAN3可以管理的DMA通道号;定义DMAN3可以提供给算法的TCC号。 | | |
*.x470MV | ARM可执行文件 | ARM上运行的可执行文件 | | |
*.xDC | 脚本文件 | *.bld,*.xDC,*cfg合称为xDC文件,是一种由源代码生成执行文件的工具(例程提供的代码几乎没功能) | | 即根据一套build指令生成可执行文件。xDC的源文件可以是C程序、C++程序、汇编程序和库文件等。 |
*.cmd | 连接命令文件 | 主要用来DSP代码定位,包括输入输出定义、MEMORY、SECTION的定义 | | 见实验手册第29页 |
*.tcf | DSP BIOS的配置文件 | 定义DSP的memory map、设置DSP的复位/中断向量表并且创建、初始化BIOS程序需要的各种数据对象 | | |
*.bld | 类似于Linux中的makefile | 定义target是C64P DSP、配置脚本文件是*.tcf、链接选项是链接link.cmd,同时还要生成main.c的目标代码 | | |
Engine API | | 将DSP可执行程序加载到DSP的memory,同时把DSP从复位状态释放;DSP开始运行DSP Server的初始化程序;在DSP侧创建一个优先级最低的RMS任务 |
Engine SPI | | 包含codec表,从而找到要调用的codec算法 |
RMS(Remote Management Server) | | RMS负责管理和维护对应到具体codec算法的Instances |
| | |
xDC(Express DSP component) | | |
最近几天狂弄后,重要上手做算法了……框架配置可以慢慢弄好了……