设为首页收藏本站优领域

优领域

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
优领域 优领域 电子领域 技术文库 DSP 查看内容

多核DSP编程技术研究

2014-4-18 23:21| 发布者: Saiu| 查看: 983| 评论: 0|原作者: 辛熠 杨瑞民|来自: 电子测试

摘要: 数字信号处理器(DSP)是对数字信号进行高速实时处理的专用处理器。当前,基于单核结构的嵌入式 处理器越来越不能满足日益增长的数据处理应用方面的要求,单纯的增加单个处理器的处理速度更会带来难以 接受的能耗。多核嵌入式结构已成为解决这一问题的有效途径,也使整个系统只用DSP搭建成为可能,但同时 也为如何开发充分利用多核结构的应用软件带来挑战。本文对多核DSP编程技术进行了研究,介绍了多核DSP 的架构和调试及多核DSP编程的DSP/BIOS操作系统。

0 引言

在通信基础设施的信号处理中,无论是语音用户、数据用户还是多媒体用户,均需要单位通道成本低、功耗小的DSP 产品。而对于视频检测、医疗影像等应用,越来越复杂的二维、三维甚至四维的图像处理,需要并行化的系统并能够运行复杂的算法。此外,在高性能、高强度终端设备中,包括医疗中的核磁共振、CT、彩超等,以及其它实现实时现场通信的设备,均需在极短的时间内完成信号处理分析。单核DSP 依靠工艺的改进提升着处理性能,但由于随之带来的功耗过大而变得不再可行。为了解决单板面积的限制、提升处理能力,高性能多核DSP 平台的需求与日俱增。例如在典型的射频拉远设备中,为了实现多路数据的同时处理与传输,目前多数作法是把FPGAPMCSCAN25100TLK4015等联合实现,而没有一个集成化的方案。而经研究,可以用TI 的多核DSP-TMS320C6474来实现整个基带——射频系统。本文对多核DSP 的编程技术进行了研究,并对多核DSP DSP/BIOS 操作系统进行了介绍。

1 多核设计的优势

多核设计的一大关键优势就是效率。多核设计可将任务分配至多个内核,而不是为承担附加工作负荷而单纯提高单个处理器内核的频率。例如,如果系统需要数字信号处理器(DSP) 提供3GHz 性能,多核设计可以在单个DSP 封装中采用3 个频率为1GHz 的内核。从另一方面来说,多个DSP 可以执行多项任务,这使得单独依靠一个多核DSP 设备来实现整个系统成为可能。

此外,芯片制造商还可以通过开发高级的低功耗技术来进一步提高多核DSP 的功率效率。TI SmartReflex 技术就是一个很好的范例,其可以在保持规定器件性能的同时降低静态与动态功耗。Smart Reflex 技术可根据制造工艺考虑到器件专用的硅芯片特征以及热参数等因素。这样不仅可以有效降低DSP 的功耗,同时还能保持性能目标。

2 多核DSP的架构和调试

2.1多核DSP的架构多核处理器在同一个芯片中植入了多个处理器引擎,这就可以提供更高的CPU 性能、功能特性和分区能力。一般说来,多核有两种实现形式。

第一. SMP( Symmetric multiprocessing,对称多处理)

在这种情况下,由SMP 操作系统来决定具体由哪一个内核来运行哪 个任务,其中每个内核都是相同的,而且在同一个操作系统的管理控制之下,共享同一个内存。

第二. AMP (Asymmetric multiprocessing,非对称多处理)。在这种情况下,各个处理器内核都运行着各自独立的操作系统。这种独立性意味着,其中各个处理器内核既可以是同构的,并且运行同样的操作系统,也可以是异构的并运行各自不同的操作系统。

2.2多核DSP的调试多核与多处理器技术的融合为系统调试带来了许多新的挑战,因为系统复杂度不断增加,要通过优化硬件和软件来充分发挥其中的性能潜力,难度就更大了。其中最主要的难点有以下几个方面:有效地管理内存和外设等共享资源; 在多内核、多电路板和多操作系统的环境中对操作系统和应用代码进行调试; 优化JTAG 接口并充分利用JTAG 带宽; 调试单一芯片中的同构和异构多核,进而实现整个系统的协同调试; 有效地利用JTAG 与基于代理的调试方法,确保不同调试工具之间的顺畅协同; 确保多核环境中应用调试的同步机制。

对于多核JTAG 调试来说,有3 种主要的技术选择:第一,以单一JTAG 接口支持所有内核的调试器; 第二,在单一JTAG 调试接口中采用独立调试器的JTAG 多路(Muxing) 技术; 第三,JTAG 链接器或者可编址扫描端口(Addressable Scan Port) 在多核调试中,上述3 个技术途径都是在处理同一个核心问题——由SoC 厂商所提供的JTAG 接口所造成的局限性。 为了节省成本,许多SoC 厂商都只为芯片提供单一的JTAG 接口,而不理会其中包含了多少个内核。对于开发人员来说,最大的挑战就是经济有效地使用这些接口来同步多核以及多处理的调试工作。其中,单一调试器方式采用IEEE 1149.1标准Daisy-chain 方法。

3 多核DSPDSP/BIOS实时操作系统

对于不同的系统应用需要采用定制信号处理算法。使用实时操作系统开发DSP 算法,方便快捷,程序思路清晰,便于代码调试和重用。DSP/BIOS 是一个支持用户剪裁的实时操作系统,主要由3 部分组成:多线程实时内核;实时分析工具;芯片支持库。利用实时操作系统开发程序,可以方便快速地开发复杂的DSP 程序。操作系统维护调度多线程的运行,只需将定制的数字信号算法作为一个线程嵌入系统即可;芯片支持库帮助管理外设资源,复杂的外设寄存器初始化可以利用直接图形工具配置;实时分析工具可以帮助分析算法实时运行情况。

DSP/BIOS 以模块化方式提供给用户对线程、中断、定时器、内存资源、所有外设资源的管理能力都可以根据需要剪裁。实际应用中需要的定制算法作为一个线程插入DSP/BIOS 的调度队列,由DSP/BIOS 进行调度。

3.1 图形配置界面

DSP/BIOS 实时操作系统的图形配置界面:全局设置(System)—包括内存端设置、锁相环设置、中断向量入口设置等;调试工具(Instrumentation)—记录器(LOG)可以提供调试信息,但是特别针对实时操作优化; 操作系统调度工具(Scheduling)—包括定时器、周期器、硬件中断管理、软件中断管理、任务调度、系统空载任务函数;同步机制(Synchronization),提供一般操作系统都具有的信号灯、邮箱、队列、锁四个工具;主机交互接口(Input/Output),提供DSP 实时运行时与主机通过仿真口和CCS 交互数据的机制;芯片支持库(ChipSupport Library),针对不同的DSP 芯片帮助配置DSP的外设资源,最常用的有DMAMCBSP 的配置。

相关阅读

网站统计|优领域|优领域 ( 粤ICP备12011853号-1 )  

GMT+8, 2019-6-17 17:01 , Processed in 0.040903 second(s), 12 queries .

Copyright © 2008-2014 优领域

回顶部