新闻中心

EEPW首页 > 嵌入式系统 > 学习方法与实践 > 浅析SoC时代的多核DSP产品

浅析SoC时代的多核DSP产品

作者:国防科技大学计算机学院 汪东时间:2008-03-31来源:收藏

       数字信号处理器(DSP) 是对数字信号进行高速实时处理的专用处理器。在当今的数字化的背景下,DSP已经成为电子工业领域增长最迅速的产品之一。

本文引用地址:http://www.eepw.com.cn/article/80942.htm

       据世界半导体贸易统计组织 (WSTS)发布的统计和预测报告显示,1996~2005年,全球DSP市场将一直保持稳步增长,2005年的增长率将达34%。因此,全球DSP市场 的前景非常广阔,DSP已成为数字通信、智能控制、消费类电子产品等领域的基础器件。随着应用领域的扩大,人们对DSP应用系统的性能、功耗和成本提出了 越来越高的要求,并尝试着在单一硅片上集成更多的处理器核,于是多核DSP应运而生,并推动了SoC产业的成长和壮大,一跃成为SoC时代的骄子。

      多核DSP的应用市场

       3G移动通信

       多核DSP 最重要的应用领域之一就是3G数字移动通信。其中包括基站和移动终端两方面的应用。基站所使用的DSP更注重高性能,对成本和功耗不是非常敏感。而移动终 端要面向具体的用户,设计时必须在功能、功耗、体积、价格等方面进行综合考虑,因此移动终端对核心处理器的要求更加苛刻。

       2G数字蜂窝电话的核心处理器都是基于双处理器结构的,即包含1个DSP和1个RISC微控制器(MCU)。DSP用来实现通信协议栈中物理层协议的功能;而MCU则用来支持用户操作界面,并实现上层通信协议的各项功能。

       3G 数字移动通信标准增加了通信带宽,并更加强调高级数据应用,例如可视电话、GPS定位、MPEG4播放等。这就对核心处理器的性能提出了更高的要求,即能 够同时支持3G移动通信和数据应用。在现代化的3G系统中,对处理速度的要求大概要超过60~130亿次每秒运算。如果用现有的DSP,需要20~80片 低功耗DSP芯片才能满足要求。因此,承担这一重任的多核DSP处理器芯片必须在功耗增长不大的前提下大幅度提高性能,并且要具备强大的多任务实时处理能 力。多核DSP在嵌入式操作系统的实时调度下,能够将多个任务划分到各个内核,大大提高了运算速度和实时处理性能。这些特点将使3G手机能够同时支持实时 通信和用户交互式多媒体应用,支持用户下载各种应用程序。图1给出了一种3G通信多核DSP处理器的架构。

 

      军事应用

       多核DSP在军事领域的应用主要包括软件无线电和目标识别两大方面。

       软件无线电(SR) 是将标准化、模块化的硬件功能单元通过高速总线或高速网络等连接形成一个通用的数字式硬件平台,再通过软件加载的方式来实现各种类型无线通信系统的开放式 体系结构。采用软件无线电技术实现的通信系统灵活性强,易于实现与不同的频带、带宽和调制方式的通信系统的互连、互通,系统的升级更新方便,能更充分地利 用有限的频谱资源。图2给出了一种SR的体系结构。SR的基带处理部分的计算非常密集,要完成信号的调制/解调、编/译码、交织/去交织、扩频/解扩、加 /解密、信道均衡、定时、同步甚至信源编码等工作,产生所谓DSP瓶颈。传统的方法是采用树状结构或网状结构的多处理器技术,用可编程器件(如 FPGA)、DSP和通用CPU等结合实现。多核DSP的出现将有助于解决DSP瓶颈问题,并成为SR的核心部件。

 

       另外,军用导弹、鱼雷、雷达中大量采用目标识别技术。其核心算法就是把传感器采集的实时图像与存储在系统中的原有地图进行对比,以确定导弹的现有方位并及时调整飞行姿态,因此这类应用的实时性要求非常高。如果采用多核DSP,就可以把整个地图划分成多个小块,在多个DSP核上同时进行图像对比运算,找出最大匹配目标。

      数字消费类电子

       DSP是数字消费类电子产品中的关键器件,这类产品的更新换代非常快,对核心DSP的性能追求也无止境。

       由于DSP的广泛应用,数字音响设备得以飞速发展,带数码控制功能的多通道、高保真音响逐渐进入人们的生活。此外,DSP在音效处理领域也得到广泛采用,例如多媒体音效卡。在语音识别领域,DSP也大有用武之地。Motorola公司等厂商正在开发基于DSP的语音识别系统。

        数字视频产品也大量采用高性能DSP。 例如数码摄像机,已经能够实时地对图像进行MPEG4压缩并存储到随机的微型硬盘甚至DVD光碟上。此外,多核DSP还应用在视频监控领域。这类应用往往 要求具有将高速、实时产生的多路视频数字信号进行压缩、传输、存储、回放和分析的功能,其核心的工作就是完成大数据量、大计算量的数字视频/音频的压缩编码处理。

      数字电视的普及也将使用大量高性能DSP。 Philips半导体电视机和机顶盒市场副总裁Julian认为,结合多种网络传输方式的多模式并且融合了PVR(个人视频录像)功能的高端机顶盒将成为 未来家庭媒体的中心。人们通过机顶盒不但可以进行视频点播,而且可以实现在线购物、电视医院、远程互动教育等功能。

      智能控制设备

       汽车电子设备是这一领域的重要市场之一。现代驾乘人员对汽车的安全性、舒适性和娱乐性等要求越来越高。多核的DSP也将逐渐进军这一领域。例如在主动防御式安全系统中,ACC(自动定速巡航)、LDP(车线偏离防止)、智能气囊、故障检测、免提语音识别、车辆信息记录等都需要多个DSP各司其职,对来自各个传感器的数据进行实时处理,及时纠正车辆行驶状态,记录行驶信息。

       此外,多核DSP在智能机器人、工业控制领域也有非常广阔的市场。

       多核DSP的技术基础

       芯片制造工艺技术的进步和SoC设计与验证水平的提升分别是多核DSP诞生的“硬件”基础和“软件”基础。

        目前,TI 生产DSP芯片的工艺已经达到75nm的水平,能够在一块仅有拇指大小的单芯片上集成8个TMS320DSP内核。据TI预测,到2010年,DSP工艺 将稳定在65nm,芯片的集成度将会增加11倍,在单个芯片内将能集成5亿只晶体管。因此,制造工艺的进步,晶体管集成度的增加将为多核DSP扫清前进道 路上的第一道障碍。

       另外,多核DSP 也离不开SoC设计水平的进步。SoC设计可以对整个系统的模型算法、软硬件功能、芯片结构、各电路模块直至器件的设计进行综合考虑,可以在同样的工艺条 件下,实现更高性能的系统指标。具体来说,软硬件协同设计、软硬件协同验证、IP核生成与复用、高速互连总线、低功耗设计等多项SoC关键设计技术已经有 人展开研究,并取得了突破性进展。

     多核DSP的实例

      同构多核DSP

      这类多核DSP内部集成了若干个结构对等的DSP核,不存在其他处理器核。

       AD 公司的BlackfinTM嵌入式对称多处理器ADSP-BF561内部集成了2个对称的600MHz高性能BlackfinTM内核,片内共享 328KB的存储器。该处理器采用类RISC的寄存器和指令模式,易于编程和编译优化,同时具有先进的跟踪、调试和性能监测方式。BlackfinTM内 核采用动态功耗管理技术,可以改变电压和频率,从而为便携式应用提供更长的待机时间。

       TI 公司的TMS320VC5441浮点DSP内部集成了4个C54x核,每个核具有192KB的局部存储器、3个多通道缓冲串口、DMA、定时器等部件。每 个子系统都具有独立的程序和数据空间,可以同时访问指令和数据。该DSP采用了很多并行访存指令,可以在一拍内完成2读1写操作,从而大大提高了并行性。 片内共享512KB的程序存储器。图3给出了该DSP的组成结构。

      异构多核DSP

       异构多核DSP是最常见的一类多核DSP,其中既包含DSP核,又包含用于控制的MCU(微控制器)核,从而充分发挥DSP的处理速度和MCU的控制功能。

       TI 公司的SMJ320C80是世界上第一个单芯片并行MIMD(多指令多数据)DSP。其中集成了一个性能为100MFLOPS的32位RISC浮点CPU 核、4个32位并行处理DSP、一个传输控制器(TC)、一个视频控制器(VC)。所有的处理器通过Crossbar进行耦合,共享50KB的片上 RAM,每秒可以完成20亿次运算。该处理器主要面向军用领域。

       TI 公司的OMAP处理器是这类DSP的典型代表。图4给出了最新推出的OMAP2420的组成结构。该处理器采用90nm工艺,集成了主频为330MHz的 ARM1136核、TMS320C55x DSP核、2D/3D图形加速器、图像与视频加速器、共享存储控制器/DMA等,能够实现30帧每秒VGA分辨率的全动态视频编解码。

       Motorola 公司针对窄带无线系统(例如GSM和TDMA/AMPS)应用,优化设计出了结构非常紧凑的双核DSP产品DSP56654。该处理器内部集成了 Motorola的32位RISC控制器M-CORETM、DSP56600内核以及丰富的外设部件。其中M-CORETM内核采用32位的 Load/Store RISC架构,16位的定长指令和4级流水线设计。该处理器具有静态和动态功耗管理功能,能够在-40℃~85℃温度范围内工作。

       Cradle 公司是DSP领域的后起之秀,其最近推出的高性能CT3616处理器内部集成了16个DSP核与8个GPP(通用处理器)核,主频375MHz,能够进行 16路MPEG4 SP@L3实时编码,最高DSP性能达到96G MAC运算。可编程I/O是该处理器的另外一大特色,共有144个可编程的I/O引脚,允许用户自定义接口。该处理器集成的DDR DRAM接口可以挂接333MHz的DDR存储器。全芯片的功耗仅仅为4.5W,可以应用于音频/视频编码、多路监控、系统控制等领域。

       瑞萨半导体(Renesas) 最新推出的32位RISC处理器SuperHTM系列也采用了多核DSP的结构。其中具有代表性的产品有SH7720。该处理器集成了一个32位 SuperHTM架构的RISC CPU核、一个DSP内核、32KB的Cache存储器、16KB的X/Y存储器,此外还包含中断控制器、高速DMA控制器、USB主机接口、LCD控制 器、A/D和D/A转换器、SIM卡接口等丰富的外设部件。

      DSP核+协处理器

      这类DSP一般针对某一类应用集成专用的协处理器,从而对DSP实现算法加速。TI的研究表明,对于像MPEG4编解码这样的任务,使用协处理器可以降低50%的DSP负荷,从而平衡系统功耗。

       TI 公司的高性能数字信号处理器TMS320C6416是这类多核DSP的典型代表。该DSP除了包含一个功能强大的C64x DSP核之外,还集成了一个维特比协处理器(VCP)和一个Turbo解码协处理器。其中维特比协处理器用于语音和低码率数据通道解码,支持500个 8Kb/s码率的语音通道,并且可以对强制长度、码率和帧长度等解码参数进行编程。Turbo协处理器用于高码率数据通道的解码,支持35个 384Kb/s码率的数据通道。

       另外一个例子就是Motorola 公司的MSC8126 多核DSP。该DSP集成了4颗StarCoreTM DSP核、一个Turbo协处理器、一个维特比协处理器、UART接口、4个TDM串行接口、32个通用定时器、以太网接口及16通道DMA。该DSP在 最先进的90nm工艺下生产,在400MHz主频下,其4个扩展内核可以达到最高每秒6400MMAC(百万次乘加操作)的性能。除了每个DSP核内包含 228KB的M1存储器之外,片内还集成了476KB的共享M2存储器。支持可变长指令是该DSP的另外一个特点。

       多核DSP面临的挑战

       低功耗

       多核DSP 带来了更高的性能,但它相比传统的单核DSP也带来了更大的功耗。嵌入式应用,例如手机、数码相机等对功耗非常敏感。在2G通信时代习惯了200小时待机 时间的手机用户很难接受待机时间仅仅为一天的3G手机。因此多核DSP面临的第一个挑战就是如何有效的降低平均功耗。

       从硬件技术上来看,可以采用动态电源管理技术,设置全速、半速、休眠等工作模式,根据当前的任务强度和功耗监测信息,及时调整电压和频率,关闭暂时不使用的模块,以降低功耗。另外,根据特定的应用需求,设置专门的协处理器,同样可以减少DSP内核的运算强度。

        从软件技术上来看,在编译指导下的多核DSP低功耗优化技术非常具有潜力。低功耗编译技术主要包括编译指导的动态电压调节、多线程功耗模型下的低功耗编译调度等。在操作系统的支持下,通过合理的调度,使处理器资源与算法需求相适应,例如在DSP核+MCU的模式下,MCU就不应该处理DSP的有关程序。

       互连与存储系统

       随着芯片面积的增大,长线互连延迟和信号完整性已经成为制约芯片主频的关键因素。当片上DSP 核较少时,可用简单的总线结构或者Crossbar互连;当DSP核较多时可用二维mesh网络、3D Torus等进行互连,设计者必须在网络开销以及多核之间耦合的程度之间进行权衡,同时还要注意互连拓扑的可扩展性。为提高互连性能,应该采用高频、高带 宽的超深亚微米片上互连结构,以便高效地实现节点间通信。

        针对数据密集型的应用,多核DSP必须解决存储系统的效率问题。为此,必须要解决一系列关键技术,例如应该设计多大的片内存储器?数据的共享和通信在存储层次的哪一级来完成?Cache一致性在哪一级实现更合理?是通过片内共享存储器还是高速总线进行多核之间的通信?存储结构如何支持多线程的应用?

        编译技术与操作系统

        多核DSP 能否发挥最高的性能,在很大程度上取决于编译优化和嵌入式操作系统的有力支持。例如,多核DSP对多线程程序能够提供较高的性能,但是对于单线程应用的性 能反而不高,甚至比单核DSP的性能还要低,从而出现“三个臭皮匠不顶一个诸葛亮”的尴尬局面。

       采用硬件动态提取线程是一种方法,但编译器更要担负起自动并行化的工作,即将串行程序自动地转换为等价的多线程并行代码,使用户不关心迭代空间划分、数据共享、线程调度和同步等细节,减轻用户负担。

      更重要的是多线程优化编译技术,包括线程并发机制的实现、线程调度、线程级前瞻执行等技术。

      多核之间的任务调度是充分利用多处理器性能的关键。为满足实时处理的要求,均衡各处理器负载,需要研究的任务调度机制有分布式实时任务调度算法、动态任务迁移技术等。已有的几种嵌入式操作系统,例如μcLinux、PalmOS、WinCE等,都还无法有效地支持多核处理器。嵌入式多核操作系统的研究任重而道远。

     应用开发环境

      嵌入式应用的特点决定了开发人员必须能够在很短的时间内推出能够为市场所接受的应用系统。为此,多核DSP供应商必须为用户提供简便易用的开发、调试环境。但是面向多核处理器的编程环境始终是不成熟的,并行程序开发技术一直难以普及。

       为此,我们可以借鉴多核通用微处理器的编程模式,即消息传递程序设计模式MPI 和基于编译指导命令的程序设计模式OpenMP。但是,最终的发展趋势还将是集成化的VSP(Virtual Single Processor,虚拟单处理器模型)开发环境,在这一环境下用户能够像开发单处理器程序一样去开发多核应用系统,在同一平台上完成编程、调试、编译优 化和连机测试的过程。

       例如,Cradle 公司在推出CT3600系列多核DSP的同时,还推出了相应的多核开发工具,包括ANSI C编译器、针对DSP进行了时序优化的Cradle C语言、eCOS实时操作系统、INSPECTORTM代码开发与调试器和RDS3600硬件开发平台等,从而为用户提供了一揽子的解决方案。

数字通信相关文章:数字通信原理


晶体管相关文章:晶体管工作原理


存储器相关文章:存储器原理


晶体管相关文章:晶体管原理


关键词: SoC 多核 DSP

评论


相关推荐

技术专区

关闭