《Ti公司DSP技术发展历程和现状及其应用实例分析.docx》由会员分享,可在线阅读,更多相关《Ti公司DSP技术发展历程和现状及其应用实例分析.docx(11页珍藏版)》请在三一办公上搜索。
1、DSP应用技术论文学院:信息学院姓名:xxxxxx班级:电科0802学号:2008483602xxTi公司DSP技术发展历程、现状及其应用实例分析一、发展历程1、TI公司简介德州仪器(Texas Instruments),简称TI,是全球领先的半导体公司,为 现实世界的信号处理提供创新的数字信号处理(DSP)及模拟器件技术。除半导体 业务外,还提供包括传感与控制、教育产品和数字光源处理解决方案。TI总部 位于美国得克萨斯州的达拉斯,并在25多个国家设有制造、设计或销售机构。TI公司在1982年成功推出其第一代DSP芯片TMS32010及其系列产品 TMS32011、TMS320C10/C14/
2、C15/C16/C17 等,之后相继推出 了第二代 DSP 芯片 TMS32020、TMS320C25/C26/C28,第三代 DSP 芯片 TMS320C30/C31/C32,第 四代 DSP 芯片 TMS320C40/C44,第五代 DSP 芯片 TMS320C5X/C54X,第二代 DSP芯片的改进型TMS320C2XX,集多片DSP芯片于一体的高性能DSP芯片 TMS320C8X以及目前速度最快的第六代DSP芯片TMS320C62X/C67X等。TI 将常用的DSP芯片归纳为三大系列,即:TMS320C2000系列、TMS320C5000 系列、TMS320C6000 系列。2、TI革
3、新史1954年 生产首枚商用晶体管;1958年TI工程师Jack Kilby发明首块集成电路(IC);1967年 发明手持式电子计算器;1971年 发明单芯片微型计算机;1973年获得单芯片微处理器专利;1978年推出首个单芯片语言合成器,首次实现低成本语言合成技术;1982年推出单芯片商用数字信号处理器(DSP);1990年推出用于成像设备的数字微镜器件,为数字家庭影院带来曙光;1992年 推出microSPARC单芯片处理器,集成工程工作站所需的全部系统逻辑;1995年 启用Online DSP LabTM电子实验室,实现因特网上TI DSP应用的监测;1996年 宣布推出0.18微米工艺
4、的Timeline技术,可在单芯片上集成1.25亿个晶体管;1997年 推出每秒执行16亿条指令的TMS320C6x DSP,以全新架构创造DSP性能记 录;2000年 推出每秒执行近90亿个指令的TMS320C64x DSP芯片,刷新DSP性能记录,推出业界上功耗最低的芯片TMS320C55x DSP,推进DSP的便携式应用;2003年 推出业界首款ADSL片上调制解调器一一AR7;3、获得荣誉推出业界速度最快的720MHz DSP,同时演示1GHz DSP;向市场提供的0.13微米产 品超过1亿件;采用0.09微米工艺开发新型OMAP处理器。TI为全球众多的最终用户提供 完整的解决方案:T
5、I在DSP市场排名第一;TI在混合信号/模拟产品市场排名第一;1999 年售出的数字蜂窝电话中,超过半数使用的是TI的DSP解决方案。其中,诺基亚、爱立信、 摩托罗拉、索尼等世界主要手机生产厂商均采用TI的DSP芯片;全球每年投入使用的调制 解调器中,有三分之一使用TI的DSP。TI是世界上发展最快的调制解调器芯片组供应商; 全球超过70%的DSP软件是为TI的DSP解决方案而编写;TI占有北美图形计算器市场80% 以上的份额;TI在世界范围内拥有6000项专利。二、现状TMS320C5000 系列 DSP 芯片目前包括了 TMS320C54x 和 TMS320C55x 两 大类。这两类芯片软
6、件完全兼容,所不同的是TMS320C55x具有更低的功耗和 更高的性能。C54x是16为定点DSP芯片,适应远程通信等实时嵌入式应用的需要。C54x 具有高度的操作灵活性和运行速度。其结构采用改进的哈佛结构,具有专用硬件 逻辑的CPU,片内存储器,片内外设,以及一个效率很高的指令集。另外,使 用C54x的CPU核和用户制定的片内存储器及外设所做成的派生器件,也得到 了广泛的应用。C55x是C5000系列DSP中的子系列,C54x发展起来的,并与之原代兼容, 以便保护用户在C54x软件上的投资。C55x工作在0.9V时,功耗低至 0.005mW/MIPS。工作在 400MHz 钟频时,可达 80
7、0MIPS。和 120MHz 的 C54x 相比,其性能提高了 5倍,功耗为C54系列的1/6。C55x的核具有双MAC以及 相应的并行指令,还增加了累加器、ALU和数据寄存器。其指令集是C54x指令 集的超集,以便和扩展了的总线结构和新增加的硬件执行单元相适应。TMS320C6000系列是TI公司从1997年开始推出的最新的DSP系列。该系 列的第一款芯片C6201,在200MHz钟频时,达到1600MIPS。而2000年以后推 出的C64x,在钟频1.1GHz时,可以达到8800MIPS以上,即每秒执行近90亿 条指令。C64x的片内DMA引擎和64个独立的通道,使其I/O带宽可达到2GB
8、/s。C6000所采用的类似于RISC的指令集,以及流水技术的书用,可以使许多 指令得以并行运行。C6000系列现在已经推出了 C62x/C67x/C64x等3个子系列。C62x是一种新型定点DSP芯片。该芯片的内部结构与以前的DSP不同,内 部集成了多个功能单元,可同时执行8条指令,其运算能力可达2400MIPS。C67x是继C62x系列后的一种新型浮点DSP芯片。该芯片的内部结构在C62x 的基础上加以改进,内部结构大体一致。同时执行8条指令,其运算能力可达 1G FLOPS。C64x是C6000系列中最新的高性能定点DSP芯片,其软件与C62x完全兼 容。C64x采用VelociTI1.
9、2结构的DSP核,增强的并行机制可以在单个周期内完 成4个16X16位或8个8X8位的乘积加操作。采用两级缓冲机制,第一级中程 序和数据各有16KB,而第二级中程序和数据共用128KB。增强的32通道DMA 控制器具有高效的数据传输引擎,可以提供超过2GB/s的持续带宽。与C62x相 比,C64x的总性能提高了 10倍。三、实例分析需求分析随着网络和多媒体技术的发展,视觉通信的重要性和需求急剧增加,如桌面视频会议、 移动终端、基于因特网的视频通信等。这些视觉信息内涵丰富,但数据量大,必须压缩数据。 但采用多种方法压缩图像数据,其数据量仍然巨大,这就对计算机处理速度、传输介质、传 输方法和存储介
10、质提出较高要求。因此,数据压缩作为数据图像处理的关键技术之一,对研 究图像压缩编码技术具有重要价值。嵌入式微处理器中,DSP具有灵活、高速、便于嵌入式应用等优点,特别适合复杂 算法处理的应用。数字视频图像压缩系统利用DSP作为其嵌入式平台,充分发挥其性能优势, 较好地提高编码效率,满足图像实时处理需要。因此,这里介绍一种基于TMS320VC5509A 型DSP的视频压缩系统。JPEG(Joint Photographic Experts Group)是中国际标准化组织(ISO)提出面向静止图 像编码的标准,其处理方法依次使用离散余弦变换、量化、Z行扫描、游程编码和不变字长 编码。JPEG算法定
11、义了以下4种运行模式:(1) 基于DCT顺序型模式按照从左到右、从上到下的顺序对图像进行扫描和编码,称为 基本系统。(2) 基于DCT递增模式按照从粗到细的顺序对一幅图像进行编码,适用于传输时间长、用户喜欢图像从粗糙到清晰的场合。(3) 无失真编码模式保证重建图像与原始图像完全相同。(4) 分层编码采用各种分辨率对图像进行编码。该系统采用基本系统模式。图1是JPEG的编码框图。图1 JPEG编码框图硬件系统设计该视频压缩系统直接与PAL制摄像头的输出端相连,来采集、预处理和压缩现场图 像,再以USB或睥32方式将处理后的图像数据传给上位机。图2为视频压缩系统硬件结构图。PAL制模拟 视频檎入S
12、RAMUj 2RAM1图像帧缓存SDRAMFlash16视频m 转换器SAA7111.1%LLCVREF:HREF:RTSOZFPCAEP1C6Q240C8DSP忌线.GFI04INTD【NT1 .DSPTMS320VC5509A* USB1. 1【龙总线*压缩玮流 RS23?McRSPU 系统电源*电源监视斗看门狗 图2系统硬件结构该系统硬件设计以TI公司的TMS320VC5509A型数字信号处理器为核心,包括视频采集 电路、FPGA预处理电路、存储器扩展、系统电源和看门狗电路等。系统中TMS320VC5509A 为中央处理器;SDRAM为DSP外扩数据存储器;Flash为程序存储器,用于系
13、统上电自举; 模拟摄像头与视频A/D转换器负责视频图像采集;FPGA用于地址译码、隔行运算,控制两片SRAM用于缓存视频A/D转换器转换后的数字图像。从系统设计成本考虑,这里选用Altera公司的可编程逻辑器件里住240堡型FPGA。该器件是Cyclone系列器件中一款BGA 封装的可用I / O引脚最多的FPGA。3. 1视频采集电路该系统选用的视频解码器为Philip公司的高性能视频A/D转换器SAA7111。该器 件是一款广泛应用于桌面视频、多媒体、数字电视、图像处理、视频电话的高性能视频输入 处理器件。该器件采用3. 3 V的CMOS电路,高度集成模拟前端和数字视频编码器:包括2 路模
14、拟视频处理通道,1个时钟产生电路,1个自动箝位和自动增益控制电路,1个多制式数 字解码器,1个亮度/对比度/饱和度控制电路,以及色彩空间矩阵。SAA7111输出为16位 VPO总线,支持不同位宽的数据输出格式。SAA7111支持的输出格式包括:12位YUV411,16 位YUV4: 2: 2,8位CCIR-656、16位565RGB以及24位的888RGB。图3为视频采集电路。RREF VREF IIS VSKTSO KTS1 RTSO GPS% 和UTLLV LLC? CHEF 泓_Lvt)ri5.0)VPG1? tpO J VPOU VPC12 VMI VPOIOVh)9 VPO* VPO
15、7 VPOb VPOS VP04 VP03 VPO2 VPDi VFOOU VD) V vii4yJb Htjy 37 YPlj 册面 ?j yni5 J VDO ZI IA $AA711 IAGE nC1H卜VSSD5UJvsssSAA711 tA浦】VSSA1 覆沁gUFvnnAj VD*A L VDA0L-QR -OD4idhCn0. t P F-4M F *T0, I p F图3揽槌采耶电眯御-t4 DTilisL S71皿5VPDEJJ VSSD4 明E VSSDJ VDDD2 VSSD3 曜|W1 vssni3. 2存储器选型选择存储器应从以下方面考虑:首先图像压缩算法中间数据量大
16、,要求处理器的片 上内存尽可能大,尽量避免对外部存储器读写操作。VC5509A的片上存储器包括32 Kx16位 DARAM, 96 Kx16位SARAM,共128 K位的存储空间。其中DARAM为双地址,在每个周期内可 以对其进行两次操作(2次读,两次写,一次读和一次写),这样大大增加片上存储器的利用 率;其次,VC5509A片上资源丰富,包括I2C总线(多主从接口),3个McBSPs(1个与多媒体 卡/数字加密卡MMC/SD串行接口复用引脚)。利用FC总线对SAA7111的片内控制寄存器进 行读写操作,非常方便实时控制SAA711 1的工作状态;利用McBSP配合DMA,软件编程实现 UAR
17、T功能,无需专门的硬件UART,从而节省电路板空间:VC5509A采用144引脚LQFP封装, 便于安装、调试;VC5509A功耗小,工作在200 MHz主频下,功耗仅100 mW,非常适合嵌入 式应用。3. 3 DSP供电电源电路DSP基本系统由独立的电源系统供电,而硬件平台的其他器件共用另一套电源供电 系统。为了降低系统功耗,DSP 一般采用低电压供电.并且采用I/O和CPU内核分开供电 方式。VC5509A不同的工作频率要求不同的核电压,200 MHz为1. 6 V,144 MHz为1. 35 V, 108 MHz 为 1. 2 V。DSP 的 I/O 电压为3. 3 V。DSP供电电源
18、电路如图4所示。选用TI公司的两款LDO电源器件TPS76801和 TPS75833分别为DSP提供内核电压和I/O电压。1:N OUTCND E就TPS7633347/ FCi iqvFTVCC-USBCj0. 1 M FTPS76801能给CPU内核提供最大1 A的电流,电压在1. 23 V范围内可调。调整TPS76801的输入电阻值得到1. 6 V, 1. 35 V, 1. 2 V的核电压,DSP相应工作在 200 MHz, 144 MHz, 108 MHz的频率下。而TPS75833能提供最高3 A的I/O电流,对于低 功耗的TMS320VC5509A,这已足够保证其工作在最大负荷状态
19、。系统软件设计该系统软件设计的主要功能是实时采样现场的视频信号,然后对网像数据编码压缩并通 过USB总线或RS232串口将图像数据传送给主机。系统主程序流程如图5所示,该系统软件 设计可分为系统初始化、图像采集、压缩编码和数据传输4个主要模块。启动DSP, 篇蜿初始化设置寄存器启动DMA读取数据编码数据通过USB总线发送至上位机设置DSP空闱标志图5主程序流程系统上电后,DSP首先初始化,初始化主要包括:通过I2C总线初始化SAA7111,设置 其工作模式;空间分配,EMIF的配置以保证外部存储器的正常访问;配置USB模块;设定 DMA通道以及设定外部中断。然后DSP等待FPGA的中断。当DS
20、P接收到FPGA的中断后,DSP 设定标志寄存器,启动DMA读取数据,并进行编码。当编码结束后,DSP把数据交付USB 模块,通过USB总线传送至上位机,同时DSP向FPGA发送空闲信号,通知FPGA继续发送 下一帧。5 JPEG优化JPEG算法在DSP上实现需要解决编码速度问题。片上内存资源的有限性使得大部 分的程序代码和数据不得不放在片外,大量的图像数据在慢速的SDRAM存储器中,对其访问 和算术运算是影响系统性能的关键因素之一。因此,应从内存分配和代码优化两个方面来优 化程序,提高编码效率。5. 1数据内存优化由于VC5509A的片上存储器包括32 Kx16位DARAM,96 Kx16位
21、 SARAM,共128 K位 的存储空间。其中DARAM为双访问内存,即在一个周期内可完成两次数据访问,SARAM为单 访问内存,即在一个周期内只能完成一次数据访问,片外内存为扩展的SDRAM,访问其需要 额外的等待时间,执行效率比较低。因此在算法设计中应合理安排内存分配,尽量将访问频 繁的程序代码和数据放在片内内存中,特别是DARAM中,可以提高编码效率。5. 2 C代码优化在JPEG的编码中,根据VC5509A结构特点及结合图像数据量大的特点,提高编码 效率,考虑程序编写和优化如下:(1) 利用编译器优化,开启编译器的优化选项,包括基本优化、文件级优化和程序 级优化。(2) 使用本征(in
22、trinsics)函数,C55x提供了一种特殊函数一本征函数,可迅速优 化C代码。本征甬数前有个下划线“一”,调用方法和普通函数相同。(3) 使用图像库,TI提供基于C55x的图像库IMGLIB,库中都是图像处理常用的函 数,而且可以用C语言调用,汇编优化好,执行效率高,因此尽量用库函数。在JPEG编码 中比较关键的是DCT变换可调用库函数中的IMG sw fdct 8x8(short*fdct data,short, *inter_buffer),该函数完成一次DCT变换需用1 078个时钟周期。大大提高JPEG的编码效 率。(4) 高效使用MAC硬件,C55x有专门的硬件高效执行MAC运算
23、。一个周期中可以执 行一个单乘加或一个双乘加(dual-MAC)运算。(5) 使用特殊数据类型(register类型、volatile类型、const类型),对于需要多 次重复访问的变量,如for循环中的变量值,一般可设置为register型变量。声明变量为 register型能提高效率,但必须小心使用。在某些编译器中,优化器会自动分配一些变量 为 register 型。(6) 减少判断循环,在使用判断方式选取控制语句时应尽量减少判断转移。DSP多采用流水线结构。由于TMS320C55X采用7级流水线结构,频繁的转移指令使得流水线难以发 挥作用。另外。DSP的大多数指令为单周期指令,但转移类指
24、令却通常要耗费较多的机器周 期。因此,应尽可能减少程序中的转移分支,以提高程序的效率。四、设计总结1、压缩效果实验结果通过改变量化因子Q,改变图像的压缩比。压缩比越大,压缩过程中的视觉损失越大, 压缩后的图片越不清晰。图6为采用不同的量化因子Q的压缩前后效果比较图。其中,图6a 为未压缩,大小57. 4 KB的原始BMP图像,图6b为压缩后大小为5. 18 KB的图像,图6c 为压缩后大小5. 18 KB的图像。由图知,压缩后的图像与原始图像在视觉效果上相差不大。 当Q=50时,压缩后图像所需存储空间仅为原图像的1 / 14。f a 未再缩 (b)压端后(?=75) (c)压缩后(V=5 0)
25、图6 JPEG压缩前后效果比较2、压缩耗时实验结果对于一个8x8数据块,各步耗时如下:分块:1. 335p s; DCT变换:5. 39p s;量化: 1. 355p s;哈夫曼编码:3. 375p s。说明一个8x8数据块总耗时为11. 455p s,一帧720x576 灰度图像的压缩总耗时为90x72x11. 455=74 228. 4p s,再加上其他辅助操作,实际耗时约 75 ms。根据上述结果,在1s内向上位机发送13帧720x576的灰度图像,基本满足系统要求。介绍基于TMS320VC5509A DSP的JPEG视频压缩系统的设计和实现方案,该系统硬件设 计采用DSP+FPGA的方案,充分发挥了各自优势;而软件设计针对C55x的结构进行程序结构 和算法优化,经过验证达到较好的实时效果。由于该系统体积小、功耗低,适用于一些野外 图像采集、远程视频监控等需要连续传输图像的场合。