定义并实现了 DSP 与GPP 之间进行通信的有效方式;给出了当 DSP 需要实现多套信号处理功能并且某一套信号处理任务的执行完全受控于GPP 时的任务实现框架;对 RF5 中不合理的任务拆分进行了合并,减轻了由于DSP/BIOS 任务调度对系统性能的影响。
图 2 ERF5 应用程序框架
3.1 主从通信方式
我们在DSP 的存储空间中定义了两个寄存器:DSP 运行控制寄存器(DSP_CNTL)和DSP 运行状态寄存器(DSP_STAT)。在DSP_CNTL 中可以定义一系列控制字段用来表示外部主机对DSP 的各种控制操作,而在DSP_STAT 中可以定义一些与DSP_CNTL 相对应的描述DSP 当前运行状态的字段信息。GPP 通过合理地设置DSP_CNTL 以命令DSP 执行相应的操作,而DSP 在响应了CPU 的命令后会设置好DSP_STAT 以告知CPU 目前DSP 的运行情况。
另外,为了便于 DSP 与主机进行数据交换,ERF5 在DSP 的存储空间中开辟了两块专用于在DSP 与GPP 之间进行数据交换的缓冲区,并在DSP 运行状态寄存器DSP_STAT 中定义一个缓冲区标志位PPFLG 以告知主机当前它所能访问的乒乓缓冲区是“乒”或是“乓”,使得主功率电感器机和DSP 之间电感封装的数据交互能够彼此相对独立地进行。
3.2 任务实现模型
在明确了主机与DSP 的通信方式以后,下面需要解决的就是如何在应用程序框架中给出合理的任务实现模型使它既能支持主机对DSP 的有效控制又能尽可能地减小DSP/BIOS的任务调度开销。这里以我们的实际项目为例来阐述任务的实现模型。在我们的H.264 混合编解码系统中,DM642 需要运行三个相互独立的任务:视频编码任务、视频解码任务和视频直通任务,在任意时刻,这三个任务线程的核心处理过程运行与否完全受GPP 控制。首先,出于对系统性能的考虑,我们都以静态配置的方式在DSP/BIOS 中定义这3 个任务,这样在系统运行时不需要花费由于任务动态创建所带来的不可避免的性能开销。显然这3 个任务应该具有同等优先级,否则,由于DSP/BIOS 实时内核的抢占性特征将使得某些高优先级的任务始终抢占那些低优先级任务的执行权即使GPP 在某些时刻并没有启动那些高优先级的任务。此外,由于DSP/BIOS 周期性地调度系统中所有处于就绪状态下的任务,所以必须使每个任务中判断其主体处理过程是否执行的逻辑和任务切换逻辑尽可能短小,因为这段代码在系统执行时将被频繁地调用。另外需要注意的是应该使用TSK_sleep(…)函数来实现任务切换逻辑以使当前没有被GPP 命令执行的任务被阻塞一段时间(该时间间隔应该至少是系统中各个周期性任务的最大执行周期),否则DSP/BIOS 任务调度器会频繁调度该任务以至于影响到其它任务的正常执行。下面以视频直通任务为例给出其任务执行流程图如图3所示。
图3 视频直通任务的执行流程图
3.3 任务拆分与合并
DSP/BIOS 实时内核能保证运行在它之上的所有任务在适当的时刻被正确地调度。在通常情况下,系统中运行的任务越多,花费在DSP/BIOS 任务调度上的时间也就越多,单任务系统花费最少的任务调度时间,因此在一个应用框架中应该合理地规定任务的规模,过细或过粗地划分任务都将为系统性能带来负面影响。在ERF5 中,每个功能独立的信号处理模块分别定义成一个任务线程,其中包含了与当前信号处理功能相对应的数据输入预处理和数据输出后处理部分,在一个独立的任务线程中将可以使用EDMA 等外设模块实现的处理算法与必须由CPU 参与运算的算法独立开来,并在它们之间引入双缓冲以模拟流水线机理,这样就把原先的任务线程之间的通信变换为在单个任务线程内的算法单元之间的通信,使得任务线程之间的通信和数据交换由于线程的独立性而被最小化,从而有效避免共模电感了由于线程通信造成系统死锁情况的发生。
4 性能分析
本节以 CPU 负载为指标在本文所提出的应用程序框架和RF5 之间进行性能比较与分析。为了使实验结果更具有说服力,我们使用TMS320DM642 *估板中的MPEG2 编解码插件电感器例程作为RF5 框架的一个实现范例,另外,我们又采用本文所提出的ERF5 实现了MPEG2 编解码系统,两者使用同样的符合XDAIS 算法标准的MPEG2 编解码算法库。这里我们将CPU负载定义为:
关于构建印刷工程专业课程体系的思考基于知识经济、综合科技的全球背景,当代印刷产业的生产方式、组织结构、运行特征,尤其是产业的 技术根基发生了质的变化,当代印刷产业正经历一场“告别铅与火、走过光与电
[开关电源]轻触开关+继电器,要求输出电流大于1A是这样,现在需要设计一个电路,要求按一下轻触开关,电路关断。
再按一下,电路连通,并且输出电流大于1A。
现在的思路是,利用触发器cd4013控制继电器,然后在另一端通过信号源的输入,通
基于STC12C5410AD单片机控制的恒功率金卤灯电子0 引言 金属卤化物灯 (MHL) 作为高压气体放电灯 (HID) 的典型代表,以其高光效、高显色性、寿命长等优点而被称为最理想的光源之一。而作为一种气体放电灯,金卤灯具有负阻特性,所以必须使用镇流器