《DSP原理及应用整套教学课件.ppt》由会员分享,可在线阅读,更多相关《DSP原理及应用整套教学课件.ppt(358页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、DSPDSP原理及应用原理及应用课程的主要讲述内容 本课程的主要内容: 1、数字信号处理和DSP系统 2、 DSP芯片结构和CPU外围电路 3、存储结构和寻址方式 4、程序流程控制 5、TMS320C55X DSP的汇编指令 6、 DSP集成开发环境 7、 TMS320C55X DSP应用实例 8、 OMAP5912双核处理器2.DSP在图像处理方面的应用在图像处理方面的应用1.DSP在通信领域的应用在通信领域的应用DSP的典型应用实例一个典型移动终端结构框图第一章第一章 数字信号处理和数字信号处理和DSPDSP系统系统1、数字信号处理(Digital Signal Processing,简称
2、DSP)是一门涉及许多学科而又广泛应用于许多领域新兴学科。 20世纪60年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展。2、数字信号处理是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、滤波、估计、增强、压缩、识别等处理,以得到符合人们需要的信号形式。一、引言第一章 数字信号处理和DSP系统3、数字信号处理是围绕着数字信号处理的理论、实现和应用等几个方面发展起来的。DSP理论的发展DSP应用的发展DSP的实现推动促进桥梁 DSP是以众多学科为理论基础,如微积分、概率统计、随机过程、数值分析、网络理论、信号与系统、人工智能、模式识别、神经网络等。数字
3、信号处理是把许多经典的理论体系作为自己的理论基础,同时又使自己成为一系列新兴学科的理论基础。第一章 数字信号处理和DSP系统4、数字信号处理的实现方法(1)通用的计算机上用软件(如 C语言)实现速度较慢。可用于DSP算法的模拟;(2) 在通用计算机系统中加上专用的加速处理机实现;专用性强,应用受限;(3) 用通用的单片机(如: MCS-51、96系列等)实现。只适用实现简单的DSP算法,用于一些不太复杂的数字信号处理,如数字控制等;第一章 数字信号处理和DSP系统(4) 用通用的可编程DSP芯片实现。与单片机相比,DSP芯片具有更加适合于数字信号处理的软件和硬件资源,可用于复杂的数字信号处理算
4、法;为DSP的应用打开了新的局面。(5) 用专用的DSP芯片实现。特殊的应用,要求信号处理速度极高,用通用DSP芯片很难实现,如FFT、数字滤波、卷积、相关等算法的DSP芯片,这种芯片将相应的信号处理算法在芯片内部用硬件实现。第一章 数字信号处理和DSP系统5、20世纪70年代末80年代初世界上第一片单片可编程DSP芯片的诞生,将DSP理论研究结果广泛应用到低成本的实际系统中,推动了新的理论和应用领域的发展。 可以毫不夸张地说,DSP芯片的诞生及发展对近20年来通信、计算机、控制等领域的技术发展起到十分重要的作用。第一章 数字信号处理和DSP系统输入信号:麦克风输出的语音信号、摄像头输出的复合
5、视频信号等。 A/D:奈奎斯特抽样定理、抽样频率。 DSP芯片:对输入的数字信号进行某种形式的处理。 D/A:转换为模拟样值。二、DSP系统及特点抗混叠滤波A/D变换DSP芯片D/A变换平滑滤波输入输出1、DSP系统构成(典型的DSP系统)第一章 数字信号处理和DSP系统2、DSP系统的特点 DSP系统以数字信号处理为基础,具有数字处理的全部优点: (1)接口简单、方便:数字信号的电气特性简单,不同DSP系统互联时,在硬件接口上容易实现; (2)编程方便:可编程DSP芯片可使设计人员在开发过程中灵活方便地对软件进行修改和升级;容易实现复杂的算法和复杂的信号处理功能;(3) 精度高、稳定性好:D
6、SP系统以数字处理为基础,受环境温度以及噪声的影响较小,可靠性高。第一章 数字信号处理和DSP系统(4)可重复性好:模拟系统的性能受元器件参数性能变化比较大,而数字系统基本不受影响,因此数字系统便于测试、调试和大规模生产;(5)集成方便:DSP系统中的数字部件有高度的规范性,便于大规模集成。缺点:(1) 简单的信号处理任务,采用DSP使成本增加;(2) DSP系统中的高速时钟可能带来高频干扰和电磁泄漏等问题;(3) DSP系统的功耗较大。第一章 数字信号处理和DSP系统 DSP芯片,也称数字信号处理器,是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算
7、法。根据数字信号处理的要求,DSP芯片具有如下主要特点:(1) 在一个指令周期内可完成一次乘法和一次加法;3、可编程DSP芯片第一章 数字信号处理和DSP系统(2) 程序和数据空间分开,可以同时访问指令和数据;(3) 片内具有快速RAM;(4) 具有低开销或无开销循环及跳转的硬件支持;(5) 快速的中断处理和硬件I/O支持;(6) 具有在单周期内操作的多个硬件地址产生器;(7) 可以并行执行多个操作;(8) 支持流水线操作,使取指、译码和执行等操作可以重叠执行。第一章 数字信号处理和DSP系统4、DSP系统的设计流程(DSP系统设计的一般过程)DSP应用(确定设计目标)定义系统性能指标选择DS
8、P芯片硬件设计硬件调试软件编程软件调试系统集成系统测试和调试第一章 数字信号处理和DSP系统(1)算法模拟:根据应用系统的目标确定系统的性能指标。根据系统要求进行算法仿真和高级语言模拟实现。确定最佳处理方法。如用MATLAB等数学开发工具对DSP算法进行优化设计和仿真测试,(2)选择DSP芯片:根据算法要求,如运算速度、运算精度、存储器大小、系统成本、体积、功耗等选择合适的DSP芯片。第一章 数字信号处理和DSP系统设计DSP应用系统,选择DSP芯片是非常重要的,只有选定了DSP芯片,才能进一步设计其外围电路及系统的其他电路。DSP芯片的选择应根据实际的应用系统需要而确定。不同的DSP应用系统
9、由于应用场合、应用目的不相同,DSP芯片的选择也不同的。一般来说,选择DSP芯片应考虑到如下因素:DSPDSP芯片的运算速度芯片的运算速度算法确定运算量确定估算DSP运算速度的下限运算速度是DSP芯片的一个最重要的性能指标,是选择DSP芯片需要考虑的主要因素。下面为DSP运算速度的几种衡量指标:第一章 数字信号处理和DSP系统v指令周期:执行一条指令所需的时间,常以ns为单位。如TMS320LC549-80在主频为80MHz时的指令周期为12.5ns;v MAC(Multiply-Accumulate Unit )时间:一次乘加运算的时间。大部分DSP芯片可在一个指令周期内完成一次乘法和加法操
10、作。v FFT执行时间:运行一个N点FFT程序所需的时间。FFT是典型的DSP算法运算,因此FFT运算时间常作为衡量 DSP芯片运算能力的一个指标。v MIPS/MFLOPS( Million Instructions Per Second/Million Floating-point Operations per Second):每秒执行百万条指令和每秒百万条浮点操作。如 TMS320LC549-80的处理能力为 80MIPS,即每秒可执行八千万条指令;第一章 数字信号处理和DSP系统v MOPS:每秒执行百万次操作。 v BOPS:每秒执行十亿次操作。DSPDSP芯片的价格芯片的价格 DS
11、P芯片的价格也是选择DSP芯片所需考虑的一个重要因素。采用价格昂贵的DSP芯片,即使性能再高,其应用范围受到限制,尤其是民用产品。因此根据实际系统的应用情况,需确定一个价格适中的DSP芯片。第一章 数字信号处理和DSP系统DSPDSP芯片的硬件资源芯片的硬件资源 不同的DSP芯片提供的硬件资源是不相同的,如片内RAM、ROM的数量,外部可扩展的程序和数据空间,总线接口,I/O接口等。即使是同一系列的 DSP芯片(如TI的S320C54X系列)系列中不同 DSP芯片也具有不同的内部硬件资源。DSPDSP芯片的运算精度芯片的运算精度 一般的定点 DSP芯片的字长为16位或24位,浮点芯片的字长为3
12、2位,累加器都为40位。定点DSP芯片的价格较便宜,功耗较低,但运算精度稍低。而浮点DSP芯片的优点是运算精度高,但价格稍贵,功耗也较大。第一章 数字信号处理和DSP系统 DSP DSP 芯片的开发工具芯片的开发工具 快捷、方便的开发工具和完善的软件支持是开发大型、复杂DSP系统的必备条件。TI公司的CCS集成开发环境、实时软件技术等, C语言支持(开发的时间大大缩短)。DSPDSP芯片的功耗芯片的功耗 在某些DSP应用场合,功耗也是一个需要特别注意的问题。如便携式的DSP设备、手持设备、野外应用的DSP设备等都对功耗有特殊的要求。目前,3.3V供电的低功耗高速DSP芯片已大量使用。其他因素其
13、他因素:封装的形式、质量标准、供货情况、生命周期等。第一章 数字信号处理和DSP系统(3)(3)设计实时DSP系统:包括硬件设计和软件设计两个方面。v 硬件设计:设计DSP芯片的外围电路及其他电路,如转换、控制、存储、输出电路等。v软件设计:根据系统要求和所选的DSP芯片编写相应的DSP程序。在实际应用系统中常常采用高级语言和汇编语言的混合编程方法。采用这种方法,可缩短软件开发的周期,提高程序的可读性和可移植性,又能满足系统实时运算的要求。第一章 数字信号处理和DSP系统 (4) 硬件和软件的调试:v 软件的调试:一般借助于DSP开发工具,如软件模拟器、DSP开发系统或仿真器等。调试DSP算法
14、时一般采用实时结果与模拟结果相比较的方法,如果实时程序和模拟程序的输入相同,则两者的输出应该一致。v硬件调试:一般采用硬件仿真器进行调试,如果没有相应的硬件仿真器,且硬件系统不是十分复杂,也可以借助于一般的工具进行调试。第一章 数字信号处理和DSP系统(5) 系统集成和系统测试阶段:调试完成后,实时系统固化在DSP系统中,将软件脱离开发系统而直接在应用系统上运行。 DSP系统的开发,特别是软件开发是一个需要反复进行的过程,虽然通过算法模拟基本上可以知道实时系统的性能,但实际上模拟环境不可能做到与实时系统环境完全一致,将模拟算法移植到实时系统时必须考虑算法是否能够实时运行的问题。如果算法运算量太
15、大不能在硬件上实时运行,则必须重新修改或简化算法。第一章 数字信号处理和DSP系统三、DSP芯片的发展及应用(1) 1978年AMI公司发布了世界上第一个单片DSP芯片S2811;(2) 1979年美国Intel公司发布的商用可编程DSP芯片2920; 这两种芯片都没有现代 DSP芯片所必须有的单周期乘法器。 (3) 1980年,日本NEC公司推出的uPD7720是第一个具有乘法器的商用DSP芯片。第一章 数字信号处理和DSP系统(4)美国德州仪器公司(Texas Instruments 简称TI):v第一代DSP芯片(1982年成功推出)TMS320C10及其系列产品TMS320C11、TM
16、S320C10/C14/C15/C16/C17 .v 第二代DSP芯片TMS32020、TMS320C25/C26/C28。v 第三代DSP芯片TMS320C30/C31/C32;v 第四代DSP芯片TMS320C40/C44;v 第五代DSP芯片TMS320C5X/C54X,第二代DSP芯片的改进型TMS320C2XX,集多片DSP芯片于一体的高性能DSP芯片TMS320C8X。v第六代DSP芯片(目前速度最快)TMS320C62X/C67X等。第一章 数字信号处理和DSP系统TI将常用的DSP芯片归纳为三大系列:vTMS320C2000系列:包括TMS320C2X/C2XX;vTMS320
17、C5000系列:包括TMS320C5X/C54X/C55XvTMS320C6000系列:包括TMS320C62X/C67X。 如今,TI公司的一系列DSP产品已经成为当今世界上最有影响的DSP芯片。公司也成为世界上最大的DSP芯片供应商,其DSP市场份额占全世界份额近50。第一章 数字信号处理和DSP系统(6) Motorola公司在推出DSP芯片方面相对较晚。1986年,该公司推出了定点处理器MC56001。1990年,推出了与IEEE浮点格式兼容的浮点DSP芯片MC96002。(7)美国模拟器件公司(Analog Devices,简称 AD)在 DSP芯片市场上也占有一定的份额,相继推出了
18、一系列具有自己特点的DSP 芯片。定点芯片:ADSP2101/2103/2105 、ASDP2111/2115、ADSP2161/2162/2164以及 ADSP2171/2181。浮点芯片: ADSP21000/2102、ADSP21060/21062等。第一章 数字信号处理和DSP系统DSPDSP芯片的应用芯片的应用 自从 20世纪 70年代末 80年代初 DSP芯片诞生以来,DSP芯片得到了飞速的发展。 DSP芯片的高速发展,一方面得益于集成电路技术的发展,另一方面也得益于巨大的市场。 在近20年时间里,DSP芯片已经在信号处理、通信、雷达等许多领域得到广泛的应用。DSP芯片的价格越来越
19、低,性价比日益提高,具有巨大的应用潜力。第一章 数字信号处理和DSP系统DSPDSP芯片的应用主要有:芯片的应用主要有: (1) 信号处理:数字滤波、自适应滤波、快速傅立叶变换、相关运算、谱分析、卷积等;(2) 通信:调制解调器、自适应均衡、数据压缩、程控交换、数字基站、可视电话、多路复用、扩频通信、纠错编码等;(3) 语音:语音编码、语音合成、语音识别、语音增强、说话人辨认、说话人确认、语音邮件、语音存储等;(4)图形/图像:如二维和三维图形处理、图像压缩与传输、图像增强、动画、机器人视觉等;第一章 数字信号处理和DSP系统(5)军事:保密通信、雷达处理、声纳处理、导航、导弹等;(6)仪器仪
20、表:频谱分析、函数发生、锁相环、地震处理等;(7)自动控制:引擎控制、声控、自动驾驶、机器人控制、磁盘控制等;(8)医疗:助听、超声设备、诊断工具、病人监护等;(9)家用电器:高保真音响、音乐合成、音调控制、玩具与游戏、数字电话/电视等。第一章 数字信号处理和DSP系统DSPDSP芯片的分类芯片的分类可按三种方式进行分类 (1) 按基础特性分类:根据芯片的工作时钟和指令类型来分类v 静态DSP芯片:在某时钟频率范围内的任何时钟频率上,芯片都能正常工作,除计算速度有变化外,没有性能的下降。如:OKI 电气公司的DSP芯片、TI公司的TMS320C2XX系列芯片。v一致性DSP芯片:如果有两种或两
21、种以上的DSP芯片,它们的指令集、相应的机器代码和管脚结构相互兼容。例如,美国TI公司的TMS320C54X。第一章 数字信号处理和DSP系统(2) 按数据格式分类 根据DSP芯片工作的数据格式来分类的。v 定点 DSP芯片:数据以定点格式工作的DSP芯片,如 :TI公司的TMS320C1X/C2X、TMS320C2XX/C5X、TMS320C54X/C62XX系列。v 浮点 DSP 芯片:数据以浮点格式工作的DSP芯片,如 TI 公司的TMS320C3X/C4X/8X。v 不同浮点DSP芯片所采用的浮点格式不完全一样,有的DSP芯片采用自定义的浮点格式,如 TMS320C3X,有的 DSP芯
22、片则采用 IEEE的标准浮点格式。第一章 数字信号处理和DSP系统(3) 按用途分类v 通用型DSP芯片:适合普通的DSP应用,如TI公司的一系列DSP芯片属于通用型DSP芯片。v专用DSP芯片:为特定的DSP运算而设计的,更适合特殊的运算,如数字滤波、卷积和FFT。 本书主要讨论通用型DSP芯片。第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路讲课内容:讲课内容:1)TMS320C55x处理器的特点处理器的特点2)TMS320C55x处理器的处理器的CPU结构结构3)TMS320C55x处理器的处理器的CPU外围电路外围电路2.1 DSP芯片结构芯片结构第二章第二章
23、 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路2.1 DSP2.1 DSP芯片结构芯片结构2.1.1 TMS320C55x2.1.1 TMS320C55x处理器的特点处理器的特点采用改进的哈佛结构。采用改进的哈佛结构。1 1条读程序数据总线条读程序数据总线(PB)(PB),5 5条数据总线条数据总线(BB,CB,DB,EB,FB)(BB,CB,DB,EB,FB),和他们对应的,和他们对应的6 6条地址总线条地址总线(PAB,BAB,CAB,(PAB,BAB,CAB, DAB,EAB,FAB) DAB,EA
24、B,FAB)4040位和位和1616位的算术逻辑单元位的算术逻辑单元(ALU)(ALU)各各1 1个个, 1, 1个个4040位的移位器位的移位器4 4个个4040位的累加器位的累加器(AC0,AC1,AC2,AC3)(AC0,AC1,AC2,AC3)和和(T0,T1,T2,T3)(T0,T1,T2,T3)17171717比特的硬件乘法器和一个比特的硬件乘法器和一个4040比特专用加法器的组合比特专用加法器的组合(MAC)(MAC)比较、选择和存储单元比较、选择和存储单元数据地址产生单元数据地址产生单元(DAGEN)(DAGEN)和程序地址产生单元和程序地址产生单元(PAGEN)(PAGEN)
25、数据空间和和程序空间位同一物理空间,采用统一编址数据空间和和程序空间位同一物理空间,采用统一编址第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路2.1.2 TMS320C55x CPUTMS320C55x CPU CPU CPU有有4 4个功能单元:指令缓冲单元个功能单元:指令缓冲单元(I (I单元单元) ),程序流程单元,程序流程单元(P(P单元单元) ) ,地址数,地址数据流程单元据流程单元(A(A单元单元) )和数据计算单元和数据计算单元(D(D单元单元) )CPUCPU结构示意图结构示意图第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电
26、路1 1、指令缓冲单元、指令缓冲单元(I Unit)(I Unit)由指令缓冲队列由指令缓冲队列(IBQ)(IBQ)和指令和指令译码器构成。译码器构成。 I I单元从程序数据总线接收单元从程序数据总线接收程序指令代码程序指令代码( (每次接收每次接收3232比比特程序代码特程序代码) )放到放到IBQ(IBQ(最多可最多可存放存放6464字节的未译码指令字节的未译码指令) )中。中。 指令译码器从指令缓冲队指令译码器从指令缓冲队列中取指令列中取指令( (每次取每次取6 6字节的程字节的程序代码序代码) )进行变长进行变长8/16/24/32/488/16/24/32/48位)指令译码。位)指令
27、译码。 译码后的数据分别送到译码后的数据分别送到P P单单元,元,A A单元,单元,D D单元处理。单元处理。指令缓冲单元(指令缓冲单元(I I单元)图单元)图第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路2 2、 程序流程单元程序流程单元(P Unit)(P Unit)组成:组成:P P单元由程序地址产单元由程序地址产生逻辑电路和一组寄存器组生逻辑电路和一组寄存器组构成。构成。主要功能产生所有主要功能产生所有I I单元读取单元读取指令所需的指令所需的2424比特程序地址、比特程序地址、控制指令读取顺序。控制指令读取顺序。一般情况下,产生的都是一般情况下,产生的都是
28、(连续)顺序地址。在遇到(连续)顺序地址。在遇到指令要求读取非连续地址程指令要求读取非连续地址程序代码时,也可以根据来自序代码时,也可以根据来自I I单元的立即数和单元的立即数和D D单元的寄单元的寄存器值产生所需的地址,并存器值产生所需的地址,并将产生地址送到将产生地址送到PABPAB。程序流程程序流程P P单元结构图单元结构图第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路在程序流程单元中,控制和影响程序地址的寄存器有在程序流程单元中,控制和影响程序地址的寄存器有5 5类:类: 1) 1)程序流程寄存器,包括:程序流程寄存器,包括:PCPC程序计数器,程序计数器,
29、RETARETA返回地返回地址寄存器,址寄存器,CFCTCFCT控制流程关系寄存器;控制流程关系寄存器; 2)2)块重复寄存器,包括:块重复寄存器,包括:BRC0BRC0、BRC1BRC1块重复寄存器块重复寄存器0 0和和1 1、RSA0RSA0、RSA1RSA1块重复起始地址寄存器,块重复起始地址寄存器, REA0REA0、REA1REA1块重块重复结束地址寄存器复结束地址寄存器0 0和和1 1; 3)3)单重复寄存器,包括:单重复寄存器,包括:RPTCRPTC单重复计数器,单重复计数器,CSRCSR计算计算单重复寄存器;单重复寄存器; 4)4)中断寄存器,包括:中断寄存器,包括:IFR0I
30、FR0、IFR1IFR1(标志),(标志),IER0IER0、IER1IER1(使(使能),能),DBIER0DBIER0、DBIER1DBIER1(调试中断使能);(调试中断使能); 5)5)状态寄存器:状态寄存器:ST0_55ST0_55、 ST1_55ST1_55、 ST2_55ST2_55、 ST3_55ST3_55第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路3 3、地址流程单元(、地址流程单元(A UnitA Unit) 功能和组成:功能和组成: 产生读写数产生读写数据空间的地址。据空间的地址。 由数据地址由数据地址产生电路产生电路(DAGEN)(DAG
31、EN),1616比特比特的算术逻辑的算术逻辑ALUALU电路和一组电路和一组寄存器构成。寄存器构成。 DAGENDAGEN 可以根据可以根据I I单元的立即数和单元的立即数和本本A A单元的寄存器数据产生单元的寄存器数据产生读写数据空间的所有地址。读写数据空间的所有地址。在间接寻址中,还需要有在间接寻址中,还需要有P P单元来指示采用那种寻址模单元来指示采用那种寻址模式。式。第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路 A A单元单元1616位位ALUALU的功能的功能 能接收能接收I I单元数据,又能够和存储器、单元数据,又能够和存储器、I/OI/O空间、空间、
32、A A单元寄存器、单元寄存器、D D单元寄存器和单元寄存器和P P单元寄存器进行数据交换,完成算术、逻辑、单元寄存器进行数据交换,完成算术、逻辑、位操作、移位、测试、旋转等操作。位操作、移位、测试、旋转等操作。A A单元包括的寄存器有下单元包括的寄存器有下列列4 4种类型:种类型: 1) 1)数据页寄存器数据页寄存器(Data Page Register)(Data Page Register):DPHDPH、DPDP、(接口数据、(接口数据页)页)PDPPDP 2) 2)指针寄存器指针寄存器(Pointers)(Pointers):CDPHCDPH、CDPCDP系数数据、系数数据、SPHSP
33、H、SPSP、SSPSSP栈、栈、XAR0XAR7XAR0XAR7辅助辅助 3)3)循环缓冲寄存器循环缓冲寄存器(Circular Buffer Registers)(Circular Buffer Registers):BK03BK03、 BK47BK47、BKCBKC大小,大小,BSA01BSA01、 BSA23BSA23、BSA45BSA45、BSA67BSA67、 BSACBSAC起起始地址始地址 4)4)临时寄存器临时寄存器(Temporary Registers)(Temporary Registers):T0T3T0T3第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外
34、围电路外围电路4 4、数据计算单元、数据计算单元(D Unit)(D Unit)D D单元包括了单元包括了CPUCPU的主要计算部的主要计算部件,能够完成高效的计算功能。件,能够完成高效的计算功能。组成:移位器、组成:移位器、4040比特算术逻比特算术逻辑辑ALUALU电路、两个乘累加器电路、两个乘累加器(MAC)(MAC)和若干寄存器组构成。和若干寄存器组构成。移位器移位器D D单元移位器能够接收来自单元移位器能够接收来自I I单单元的立即数,与存储器、元的立即数,与存储器、I/OI/O空间、空间、A A单元寄存器、单元寄存器、D D单元寄单元寄存器和存器和P P单元寄存器进行双向单元寄存器
35、进行双向通信。此外,还向通信。此外,还向D D单元的单元的ALUALU和和A A单元的单元的ALUALU提供移位后的数提供移位后的数据。据。数据计算单元结构图数据计算单元结构图第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路2.1.3 CPU2.1.3 CPU外围电路:外围电路:除除CPUCPU以外的一些功能单元和外部接口。以外的一些功能单元和外部接口。 时钟发生器时钟发生器(Clock)(Clock) 定时器定时器(Timer)(Timer) 多通道缓冲串口多通道缓冲串口(McBSP)(McBSP) 主机接口主机接口(EHPI)(EHPI) 外部存储器接口外部存储器
36、接口(EMIF)(EMIF) 通用输入通用输入/ /输出口输出口(GPIO)(GPIO) 片内存储区片内存储区(Momery)(Momery) DMA DMA控制器控制器 高速指令缓冲存储器高速指令缓冲存储器 (Instruction cache)(Instruction cache)第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路2.22.2时钟发生器时钟发生器1 1、工作模式、工作模式(1) (1) 功能功能 将输入时钟将输入时钟CLKINCLKIN变为变为CPUCPU及外围电路所需要的工作时钟。及外围电路所需要的工作时钟。 通过时钟输出脚通过时钟输出脚CLKOU
37、TCLKOUT输出,供其它器件使用。输出,供其它器件使用。(2) (2) 组成组成 时钟发生器由一个数字锁相环时钟发生器由一个数字锁相环(DPLL(DPLL) )和一个模式控制寄存器和一个模式控制寄存器( (CLKMDCLKMD) )组成。组成。DPLLCLKMD寄存器CLKIN pinCLKOUT pinCLKMD pin第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路(3) (3) 两种工作模式两种工作模式( (模式控制寄存器标志位的定义模式控制寄存器标志位的定义) )若若PLL_ENABLEPLL_ENABLE0 0,DPLLDPLL工作于旁路工作于旁路( (B
38、YPASSBYPASS) )模式。模式。若若PLL_ENABLEPLL_ENABLE1 1,DPLLDPLL工作于锁定工作于锁定( (LOCKLOCK) )模式。模式。旁路模式中:旁路模式中:DPLLDPLL只对输入时钟只对输入时钟CLKINCLKIN作简单的分频,分频次数作简单的分频,分频次数由由BYPASS_DIVBYPASS_DIV字段确定。字段确定。若若BYPASS_DIVBYPASS_DIV0000,为一分频,即,为一分频,即CLKOUTCLKOUT等于等于CLKINCLKIN。若若BYPASS_DIVBYPASS_DIV0101,为二分频,即,为二分频,即CLKOUTCLKOUT等
39、于等于CLKINCLKIN的一半。的一半。若若BYPASS_DIVBYPASS_DIV1x1x,为四分频,即,为四分频,即CLKOUTCLKOUT等于等于CLKINCLKIN的四分之一。的四分之一。第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路锁定模式中锁定模式中 DPLLDPLL锁相环对输入时钟锁相环对输入时钟CKLINCKLIN进行跟踪锁定,可得到如下输出的时钟频率:进行跟踪锁定,可得到如下输出的时钟频率:PLL_MULTPLL_MULT:锁定模式下的倍频次数,取值:锁定模式下的倍频次数,取值0 0到到3131PLL_DIVPLL_DIV: 锁定模式下的分频次数
40、,取值锁定模式下的分频次数,取值0 0到到3 3。CLKOUT=PLL_MULTPLL_DIV+1CLKIN1PLL_MULT311PLL_MULT31时时CLKOUT=1PLL_DIV+1CLKINPLL_MULTPLL_MULT0 0或或1 1时时5比特2比特第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路4 4、使用方法、使用方法(1) (1) DSPDSP复位对时钟发生器的影响复位对时钟发生器的影响 在在DSPDSP复位期间和复位后,复位期间和复位后,DPLLDPLL工作于旁路模式,此时的分频工作于旁路模式,此时的分频次数次数( (BYPASS_DIVBYPA
41、SS_DIV) )由由CLKMDCLKMD管管脚上的电平确定,从而确定了它的输脚上的电平确定,从而确定了它的输出时钟频率。出时钟频率。 若若CLKMDCLKMD管脚为低电平,则管脚为低电平,则BYPASS_DIVBYPASS_DIV0000,CLKOUTCLKOUT等于等于CLKINCLKIN。 若若CLKMDCLKMD管脚为高电平,则管脚为高电平,则BYPASS_DIVBYPASS_DIV0101,CLKOUTCLKOUT等于等于CLKINCLKIN的一半的一半。第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路(2)(2)失锁对时钟发生器的影响失锁对时钟发生器的影响
42、 锁相环是通过对输入基准时钟进行跟踪锁定来稳定其输出时锁相环是通过对输入基准时钟进行跟踪锁定来稳定其输出时钟的,在锁定之后,由于某些因素使其输出时钟发生偏移,即失钟的,在锁定之后,由于某些因素使其输出时钟发生偏移,即失锁。发生失锁时,锁。发生失锁时,DPLLDPLL的动作由的动作由IOBIOB字段控制:字段控制: 若若IOBIOB1 1,时钟电路会自动切换到旁路模式,并重新开始跟踪锁定过程,时钟电路会自动切换到旁路模式,并重新开始跟踪锁定过程,在锁定后又自动切换回锁定模式。在锁定后又自动切换回锁定模式。 若若IOB=0IOB=0,DPLLDPLL会继续输出时钟,而不管锁相环是否失锁会继续输出时
43、钟,而不管锁相环是否失锁第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路(3) (3) 省电状态对时钟发生器的影响省电状态对时钟发生器的影响 当时钟发生器退出省电当时钟发生器退出省电(IDLE)(IDLE)状态时,不管进入省电状态之状态时,不管进入省电状态之前工作于什么模式,前工作于什么模式,DPLLDPLL都会切换到旁路模式,并由都会切换到旁路模式,并由IAIIAI字段确字段确定进一步操作:定进一步操作: 若若IAIIAI1 1,DPLLDPLL将重新开始整个跟踪锁定过程。将重新开始整个跟踪锁定过程。 若若IAI=0IAI=0,DPLLDPLL将使用与进入省电模式之
44、前相同的设置进行跟将使用与进入省电模式之前相同的设置进行跟踪锁定踪锁定第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路5 5、DPLLDPLL模式控制寄存器模式控制寄存器CLKMDCLKMD(1) BREAKLN(1) BREAKLN为失锁指示为失锁指示( (只读只读) ) 0 0:表示由于某种原因引起:表示由于某种原因引起PLLPLL失锁;失锁; 1 1:表示处于锁定状态,或发生对:表示处于锁定状态,或发生对CLKMDCLKMD寄存器的写操作。寄存器的写操作。(2) LOCK(2) LOCK为锁定模式指示为锁定模式指示( (只读只读) ) 0 0:表示:表示DPLL
45、DPLL处于旁路模式处于旁路模式 1 1:表示:表示DPLLDPLL处于锁定模式处于锁定模式第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路6 6、时钟发生器应用举例、时钟发生器应用举例问题:假定输入时钟频率问题:假定输入时钟频率CLKINCLKIN为为20MHz20MHz,而,而DSPDSP需要的工作时需要的工作时钟为钟为160MHz160MHz。解解: (1): (1)需要将时钟发生电路设为锁定模式;需要将时钟发生电路设为锁定模式; (2)(2)根据倍频次数根据倍频次数PLL_MULTPLL_MULT与分频次数与分频次数PLL_DIVPLL_DIV的关系的关系CL
46、KOUT=PLL_MULTPLL_DIV+1CLKIN1PLL_MULT31时PLL_MULT =8(PLL_DIV+1)PLL_DIVPLL_DIV和和PLL_MULTPLL_MULT为为(0(0,8),(18),(1,16),(216),(2,24)24)或或(3(3,32)32)第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路(3) (3) 取取PLL_DIVPLL_DIV和和PLL_MULTPLL_MULT为为(0(0,8)8),要求,要求DPLLDPLL失锁或退出省电状态失锁或退出省电状态后重新锁定,即后重新锁定,即IOB=IAI=1IOB=IAI=1。例程
47、如下:例程如下: MOV #0X6413MOV #0X6413,PORT(#CLKMD)PORT(#CLKMD) 0110 0100 0001 0011 0110 0100 0001 00111000100011第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路2.32.3通用定时器通用定时器一、组成和框图一、组成和框图 C5509 DSPC5509 DSP片内有两个定时器:片内有两个定时器:Timer0Timer0,Timer1Timer1; 具有定时或计数功能。计数器在每个时钟周期减具有定时或计数功能。计数器在每个时钟周期减1 1,当减到,当减到0 0就就产生一个输
48、出信号。该输出信号可用于中断产生一个输出信号。该输出信号可用于中断CPUCPU或触发或触发DMADMA传输传输( (称为定时器事件称为定时器事件) )。 定时器由时钟、控制寄存器、计数器和定时器事件等部分构成定时器由时钟、控制寄存器、计数器和定时器事件等部分构成。第二章第二章 DSPDSP芯片结构和芯片结构和CPUCPU外围电路外围电路4比特预定标器TIN/TOUTTIN/TOUT16比特主计数器CPUCPU中断中断DMADMA同步事件同步事件CPUCPU时钟时钟1 1、时钟部分、时钟部分 可采用内部可采用内部CPUCPU时钟;时钟; 也可采用来自也可采用来自TIN/TOUTTIN/TOUT管
49、脚的外部管脚的外部输入时钟。输入时钟。2 2、两个定时器、两个定时器 一个用于定时器工作一个用于定时器工作( (递减方式递减方式) ) 一个用于一个用于CPUCPU读写读写( (设置定时长度设置定时长度) )3 3、定时器事件、定时器事件产生三个输出信号:产生三个输出信号:CPUCPU中断、中断、DMADMA同步事件、同步事件、TIN/TOUTTIN/TOUT管脚管脚输出信号。输出信号。第六章 DSP芯片内的CPU外围电路二、时钟部分二、时钟部分 定时器的工作时钟可来自定时器的工作时钟可来自DSPDSP内部的内部的CPUCPU时钟,也可来自时钟,也可来自TIN/TOUTTIN/TOUT管脚管脚
50、输入的外部时钟。具体时钟源的选择和输入的外部时钟。具体时钟源的选择和TIN/OUTTIN/OUT管脚的功能由控制寄存器管脚的功能由控制寄存器TCRTCR中的中的FUNCFUNC字段确定。字段确定。 FUNCFUNC0000时,时,TIN/TOUTTIN/TOUT为高阻态,时钟源为为高阻态,时钟源为CPUCPU时钟。该模式为复位后时钟。该模式为复位后的缺省模式。的缺省模式。 FUNC=01FUNC=01时,时,TIN/TOUTTIN/TOUT为定时器输出,时钟源为为定时器输出,时钟源为CPUCPU时钟,可以输出时时钟,可以输出时钟信号或脉冲信号。钟信号或脉冲信号。 FUNC=10FUNC=10时