1 / 94

DSP

DSP. 赵 峰 2008.05.20. 主要 内容. DSP 运算的特点 DSP 芯片生产厂商 DSP 的体系结构 TI C6x DSP 硬件结构与应用 VLIW 体系结构 汇编语言/线性汇编/编程特点 CCS 简介 硬件仿真器. TMS320C5000. DSP 是什么?. Digital signal processing Digital signal processor. CPU 按应用分类. 服务器: Intel Itanium/ Sun UltraSPARC/IBM Power 桌面系统: 嵌入式系统 MCU MPU

eliot
Download Presentation

DSP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. DSP 赵 峰 2008.05.20

  2. 主要内容 • DSP运算的特点 • DSP芯片生产厂商 • DSP的体系结构 • TI C6x DSP硬件结构与应用 • VLIW体系结构 • 汇编语言/线性汇编/编程特点 • CCS简介 • 硬件仿真器

  3. TMS320C5000 DSP是什么? • Digital signal processing • Digital signal processor

  4. CPU按应用分类 • 服务器: • Intel Itanium/Sun UltraSPARC/IBM Power • 桌面系统: • 嵌入式系统 MCU MPU DSP RISC + DSP ARM? 是否会替代DSP?

  5. DSP不同于arm • 特殊指令 • FFT • 最小均方运算LMS • Viterbi译码指令DADST、DSADT、CMPS • 特殊寻址方式 • 位反寻址 • 循环寻址

  6. DSP • DSP ( Digital Signal Processor ) • 应用特点: • 特定的运算、流式数据(运算密集型) • 高数据吞吐量 • QCIF / CIF(352*288) / D1 • 高实时性要求

  7. DSP运算的特点 • 流式处理 • 任务单一/不需要操作系统(OS) • 工程师与教师的区别

  8. ADC EMIF DAC Supervisor Total System Concept Ser Pt DSP Memory TMS320 Ser Pt 3.3v 1.8v Reset Regulator Power Supply

  9. 主要内容 • DSP运算的特点 • DSP芯片生产厂商 • DSP的体系结构 • TI C6x DSP硬件结构与应用 • VLIW体系结构 • 汇编语言/线性汇编/编程特点 • CCS简介 • 硬件仿真器

  10. 主要DSP厂商 • TI • ADI • MOTOROLA • LUCENT • PHILIPS • Equator

  11. 主要内容 • DSP运算的特点 • DSP芯片生产厂商 • DSP的体系结构 • TI C6x DSP硬件结构与应用 • VLIW体系结构 • 汇编语言/线性汇编/编程特点 • CCS简介 • 硬件仿真器

  12. DSP的体系结构 • 从体系结构角度分析,DSP设计可以采用哪种结构? • CISC ? • RISC ? • SuperScalar ? • VLIW ?

  13. DSP的体系结构 • CISC: TMS320C5000 • SuperScalar: LSI ZSP400(200/500/600) • Static SuperScalar: ADI TS201S • VLIW: TMS320C6000/PHILIPS TM1000 • ReConfigurable:Tensilica Xtensa LX架构 • Vectra LX定点向量DSP引擎 • 中科院声学所: 可配置的 4发射 VLIW • SuperV

  14. ADI TigerSharc • 静态超标量体系结构支持1、8、16和32位定点和浮点数据处理 • 高性能600 MHz、1.67 ns指令速率DSP核 • 24 Mbit片上SRAM,使用用户定义的分区,内部分为6个区 • 增强的通信指令集,用于无线基础结构应用,使得TigerSHARC可以提供完整的基带处理 • 4个内部128-bit宽内部总线,提供每秒38.4 Gbyte的总存储带宽 • 单指令多数据(SIMD)操作,由2个计算模块支持,每个都具有ALU、乘法器、移相器和32字寄存器文件

  15. ZSP600 dsp核

  16. ZSP600 特点 每个周期可处理6条指令,4 MAC/6 ALU DS核 可通过Z.turbo端口定制指令集 广泛的32位和40位的支持 16/32位指令集 在指令和数据内存上都含有24比特数据寻址空间 正交的,Load -store指令集 硬件控制的流水线保护 具有嵌入追踪和性能评测(profiling)能力 可综合的,单相的时钟设计 可完全支持AMBA 与其他型号ZSP核代码完全兼容

  17. 主要内容 • DSP运算的特点 • DSP芯片生产厂商 • DSP的体系结构 • TI C6x DSP硬件结构与应用 • VLIW体系结构 • 汇编语言/线性汇编/编程特点 • CCS简介 • 硬件仿真器

  18. TI C6x DSP硬件结构与应用 • C1x、C2x、C3x、C4x、C5x、C8x • C24x/C28X、C54x/C55x、C62x/C67/C64 • OMAP ( arm7tdmi + C55x ) • 达芬奇( arm921 + C64x + 低功耗 )

  19. TMS320C5000™ TMS320C6000™ TMS320C2000™ Highest-Performance DSPs in the World Most Control-Optimized DSPs in the World Lowest Power/MIPS DSPs in the World TMS320™ DSP Platforms Achieve Unequivocal Leadership

  20. TMS320™ DSP Family Overview fastest TI DSPs running at clock speeds up to 1.1 GHz Tms320 C6416 • from 1200 to 8000 MIPS for fixed-point • From 600 to 1350 MFLOPS for floating point

  21. TMS320C6000 DSPs ROADMAPs C6201 C6203 C6204 C6205 C6416 DM642

  22. Compare C6000 DSPs • C6x0x:标准版 • C6x1x:廉价cache存储结构

  23. 32 DMA EMIF Program Memory 64 Kbytes 32 XBUS McBSP 0 McBSP 1 Timer 0 Timer 1 Data Memory 64 Kbytes JTAG functional and CPU block diagram C6204 CPU 200Mhz TMS320C6204 Digital Signal Processors

  24. functional and CPU (DSP core) block diagram

  25. C6201的结构框图 • 一级CACHE • 直接映射式(direct map) • DSP软件人员的惯用手法: • DMA • Ping-pong • 函数重定位

  26. C6211的结构框图 • L1P: 直接映射式(direct map) • L1D: 2路组关联(2-way set associative) • L2: 4路组关联(4-way set associative)

  27. C64x的结构框图 • 置换算法都是最近最少使用(LRU)法

  28. 6000 DSP Architecture and Core • The TMS320C62x™ and TMS320C67x™ devices are based on VelociTI™, an advanced Very Long Instruction Word (VLIW) architecture. • The C64x™ DSP generation features TI's VelociTI.2™ VLIW architecture

  29. VelociTI • Two general-purpose register files (A and B) 32×32bit • Eight functional units (.L1, .L2, .S1, .S2, .M1, .M2, .D1, and .D2) • Two load-from-memory paths (LD1 and LD2) 32bit • Two store-to-memory paths (ST1 and ST2) 32bit • Two register file cross paths (1X and 2X) • Two data address paths (DA1 and DA2)

  30. VelociTI.2 • Two general-purpose register files (A and B) 64×32bit • Eight functional units (.L1, .L2, .S1, .S2, .M1, .M2, .D1, and .D2) • Two load-from-memory paths (LD1 and LD2) 64bit • Two store-to-memory paths (ST1 and ST2) 64bit • Two register file cross paths (1X and 2X) • Two data address paths (DA1 and DA2)

  31. Cache结构

  32. Video Port

  33. C54 + Arm7

  34. TI DSP的应用领域 • 电机控制 • 通信 • 图像/视频

  35. 蓬勃兴起的视频监控领域 • 数字化 • 网络化:压缩算法(编码与解码) MPEG1/MPEG2/MPEG4/H.263/H.264/AVS • 智能化:生物识别技术 人脸识别 虹膜识别 指纹识别 掌形识别 声音识别

  36. Networked DVR System Using a DM642

  37. Video Security solutionsIP Nodes • 2 TI TMS320DM642 DSPs • 4 x 4 inch • 32 Mbytes per DSP SDRAM • 8 GPIO Signals per DSP I/O • 4 Composite Inputs • 4 Stereo Inputs

  38. 人脸识别器 • 人脸检测功能的演示: 基于规则的算法:快速算法 基于学习的算法:adaboost算法 • TMS320C6204: 4~7 frame/sec • TMS320DM642:25 frame/sec

  39. 信号处理板结构图 一个问题:设备启动过程?(加载再加载)

  40. 信号处理板实物图 如果由DM642实现相同功能会怎样?(节省7chip) 开发过程 高性能信号处理板 dsp上的操作系统

  41. 3X MIPS performance 1/2 the power consumption 2X performance DM642 4800 MIPS Application Performance MPEG-2 Video Decode: MP@ML 30 fps (720x480) Texas InstrumentsDM642 4 1600 MIPS 2X 3 2 # of Channels Equator BSP-15 900 MIPS 1 PhilipsTriMediaTM-1300 0 Equator MAP Processors(333 MHz) TI DM642 (600 MHz) 3种著名的媒体处理器均属VLIW 600 500 400 Performance/Clock Speed (MHz) 300 200 100 0 1.5 w 2.5 w 3.5 w Typical Power Consumption (Watts)

  42. BSP-15 VIDEO-CENTRIC SoC

  43. 主要内容 • DSP运算的特点 • DSP芯片生产厂商 • DSP的体系结构 • TI C6x DSP硬件结构与应用 • VLIW体系结构 • 汇编语言/线性汇编/编程特点 • CCS简介 • 硬件仿真器

  44. TMS320C6X的编程特点 • 软件优化的工作量很大 • 一个PC上有经验的C语言程序员实现的算法 • 到C6x上最后优化好的算法 • 性能上存在10倍到100倍的差异!!! 人脸识别: 9sec/frame -> 7frame/sec 小目标检测:8sec/frame -> 100frame/sec

  45. Why? • CISC: 生成体积小的代码,节省存储 • RISC 高效实现流水线,指令级并行(ILP) • 要提高ILP,该怎么办?(多发射提高理想IPC) SuperScalar:动态的、依赖硬件的方法 多用于PC与服务器 VLIW:静态的、依赖软件的办法 多用于嵌入式CPU

  46. 相关与冲突小结 • 资源冲突 功能单元冲突 总线冲突 存储冲突 • 数据相关与数据冲突 数据相关 与 写读冲突 反相关 与 读写冲突 输出相关 与 写写冲突 • 控制相关 异常行为 数据流

  47. 提高指令级并行性的软件方法 • 1.基本编译技术 • 2.静态分支预测 • 3.静态多发射:VLIW方法 • 4.软件流水 • 5.条件执行指令

  48. Software Scheduling(软件调度) to Avoid Load Hazards Try producing fast code for a = b + c; d = e – f; assuming a, b, c, d ,e, and f in memory. Slow code: LW Rb,b LW Rc,c ADD Ra,Rb,Rc SW a,Ra LW Re,e LW Rf,f SUB Rd,Re,Rf SW d,Rd Fast code: LW Rb,b LW Rc,c LW Re,e ADD Ra,Rb,Rc LW Rf,f SW a,Ra SUB Rd,Re,Rf SW d,Rd

More Related