DSP原理及应用全套课件完整版电子教案最新板_第1页
DSP原理及应用全套课件完整版电子教案最新板_第2页
DSP原理及应用全套课件完整版电子教案最新板_第3页
DSP原理及应用全套课件完整版电子教案最新板_第4页
DSP原理及应用全套课件完整版电子教案最新板_第5页
已阅读5页,还剩353页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、DSP原理及应用课程的主要讲述内容 本课程的主要内容: 1、数字信号处理和DSP系统 2、 DSP芯片结构和CPU外围电路 3、存储结构和寻址方式 4、程序流程控制 5、TMS320C55X DSP的汇编指令 6、 DSP集成开发环境 7、 TMS320C55X DSP应用实例 8、 OMAP5912双核处理器2.DSP在图像处理方面的应用1.DSP在通信领域的应用DSP的典型应用实例一个典型移动终端结构框图第一章 数字信号处理和DSP系统1、数字信号处理(Digital Signal Processing,简称DSP)是一门涉及许多学科而又广泛应用于许多领域新兴学科。 20世纪60年代以来,

2、随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得到迅速的发展。2、数字信号处理是利用计算机或专用处理设备,以数字形式对信号进行采集、变换、滤波、估计、增强、压缩、识别等处理,以得到符合人们需要的信号形式。一、引言第一章 数字信号处理和DSP系统3、数字信号处理是围绕着数字信号处理的理论、实现和应用等几个方面发展起来的。DSP理论的发展DSP应用的发展DSP的实现推动促进桥梁 DSP是以众多学科为理论基础,如微积分、概率统计、随机过程、数值分析、网络理论、信号与系统、人工智能、模式识别、神经网络等。数字信号处理是把许多经典的理论体系作为自己的理论基础,同时又使自己成为一系列新兴学科的

3、理论基础。第一章 数字信号处理和DSP系统4、数字信号处理的实现方法通用的计算机上用软件(如 C语言)实现速度较慢。可用于DSP算法的模拟;(2) 在通用计算机系统中加上专用的加速处理机实现;专用性强,应用受限;(3) 用通用的单片机(如: MCS-51、96系列等)实现。只适用实现简单的DSP算法,用于一些不太复杂的数字信号处理,如数字控制等;第一章 数字信号处理和DSP系统(4) 用通用的可编程DSP芯片实现。与单片机相比,DSP芯片具有更加适合于数字信号处理的软件和硬件资源,可用于复杂的数字信号处理算法;为DSP的应用打开了新的局面。(5) 用专用的DSP芯片实现。特殊的应用,要求信号处

4、理速度极高,用通用DSP芯片很难实现,如FFT、数字滤波、卷积、相关等算法的DSP芯片,这种芯片将相应的信号处理算法在芯片内部用硬件实现。第一章 数字信号处理和DSP系统5、20世纪70年代末80年代初世界上第一片单片可编程DSP芯片的诞生,将DSP理论研究结果广泛应用到低成本的实际系统中,推动了新的理论和应用领域的发展。 可以毫不夸张地说,DSP芯片的诞生及发展对近20年来通信、计算机、控制等领域的技术发展起到十分重要的作用。第一章 数字信号处理和DSP系统输入信号:麦克风输出的语音信号、摄像头输出的复合视频信号等。 A/D:奈奎斯特抽样定理、抽样频率。 DSP芯片:对输入的数字信号进行某种

5、形式的处理。 D/A:转换为模拟样值。二、DSP系统及特点抗混叠滤波A/D变换DSP芯片D/A变换平滑滤波输入输出1、DSP系统构成(典型的DSP系统)第一章 数字信号处理和DSP系统2、DSP系统的特点 DSP系统以数字信号处理为基础,具有数字处理的全部优点: (1)接口简单、方便:数字信号的电气特性简单,不同DSP系统互联时,在硬件接口上容易实现; (2)编程方便:可编程DSP芯片可使设计人员在开发过程中灵活方便地对软件进行修改和升级;容易实现复杂的算法和复杂的信号处理功能;(3) 精度高、稳定性好:DSP系统以数字处理为基础,受环境温度以及噪声的影响较小,可靠性高。第一章 数字信号处理和

6、DSP系统(4)可重复性好:模拟系统的性能受元器件参数性能变化比较大,而数字系统基本不受影响,因此数字系统便于测试、调试和大规模生产;(5)集成方便:DSP系统中的数字部件有高度的规范性,便于大规模集成。缺点:(1) 简单的信号处理任务,采用DSP使成本增加;(2) DSP系统中的高速时钟可能带来高频干扰和电磁泄漏等问题;(3) DSP系统的功耗较大。第一章 数字信号处理和DSP系统 DSP芯片,也称数字信号处理器,是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法。根据数字信号处理的要求,DSP芯片具有如下主要特点:(1) 在一个指令周期内可完成一

7、次乘法和一次加法;3、可编程DSP芯片第一章 数字信号处理和DSP系统(2) 程序和数据空间分开,可以同时访问指令和数据;(3) 片内具有快速RAM;(4) 具有低开销或无开销循环及跳转的硬件支持;(5) 快速的中断处理和硬件I/O支持;(6) 具有在单周期内操作的多个硬件地址产生器;(7) 可以并行执行多个操作;(8) 支持流水线操作,使取指、译码和执行等操作可以重叠执行。第一章 数字信号处理和DSP系统4、DSP系统的设计流程(DSP系统设计的一般过程)DSP应用(确定设计目标)定义系统性能指标选择DSP芯片硬件设计硬件调试软件编程软件调试系统集成系统测试和调试第一章 数字信号处理和DSP

8、系统(1)算法模拟:根据应用系统的目标确定系统的性能指标。根据系统要求进行算法仿真和高级语言模拟实现。确定最佳处理方法。如用MATLAB等数学开发工具对DSP算法进行优化设计和仿真测试,(2)选择DSP芯片:根据算法要求,如运算速度、运算精度、存储器大小、系统成本、体积、功耗等选择合适的DSP芯片。第一章 数字信号处理和DSP系统设计DSP应用系统,选择DSP芯片是非常重要的,只有选定了DSP芯片,才能进一步设计其外围电路及系统的其他电路。DSP芯片的选择应根据实际的应用系统需要而确定。不同的DSP应用系统由于应用场合、应用目的不相同,DSP芯片的选择也不同的。一般来说,选择DSP芯片应考虑到

9、如下因素:DSP芯片的运算速度算法确定运算量确定估算DSP运算速度的下限运算速度是DSP芯片的一个最重要的性能指标,是选择DSP芯片需要考虑的主要因素。下面为DSP运算速度的几种衡量指标:第一章 数字信号处理和DSP系统指令周期:执行一条指令所需的时间,常以ns为单位。如TMS320LC549-80在主频为80MHz时的指令周期为12.5ns; MAC(Multiply-Accumulate Unit )时间:一次乘加运算的时间。大部分DSP芯片可在一个指令周期内完成一次乘法和加法操作。 FFT执行时间:运行一个N点FFT程序所需的时间。FFT是典型的DSP算法运算,因此FFT运算时间常作为衡

10、量 DSP芯片运算能力的一个指标。 MIPS/MFLOPS( Million Instructions Per Second/Million Floating-point Operations per Second):每秒执行百万条指令和每秒百万条浮点操作。如 TMS320LC549-80的处理能力为 80MIPS,即每秒可执行八千万条指令;第一章 数字信号处理和DSP系统 MOPS:每秒执行百万次操作。 BOPS:每秒执行十亿次操作。DSP芯片的价格 DSP芯片的价格也是选择DSP芯片所需考虑的一个重要因素。采用价格昂贵的DSP芯片,即使性能再高,其应用范围受到限制,尤其是民用产品。因此根据

11、实际系统的应用情况,需确定一个价格适中的DSP芯片。第一章 数字信号处理和DSP系统DSP芯片的硬件资源 不同的DSP芯片提供的硬件资源是不相同的,如片内RAM、ROM的数量,外部可扩展的程序和数据空间,总线接口,I/O接口等。即使是同一系列的 DSP芯片(如TI的S320C54X系列)系列中不同 DSP芯片也具有不同的内部硬件资源。DSP芯片的运算精度 一般的定点 DSP芯片的字长为16位或24位,浮点芯片的字长为32位,累加器都为40位。定点DSP芯片的价格较便宜,功耗较低,但运算精度稍低。而浮点DSP芯片的优点是运算精度高,但价格稍贵,功耗也较大。第一章 数字信号处理和DSP系统 DSP

12、 芯片的开发工具 快捷、方便的开发工具和完善的软件支持是开发大型、复杂DSP系统的必备条件。TI公司的CCS集成开发环境、实时软件技术等, C语言支持(开发的时间大大缩短)。DSP芯片的功耗 在某些DSP应用场合,功耗也是一个需要特别注意的问题。如便携式的DSP设备、手持设备、野外应用的DSP设备等都对功耗有特殊的要求。目前,3.3V供电的低功耗高速DSP芯片已大量使用。其他因素:封装的形式、质量标准、供货情况、生命周期等。第一章 数字信号处理和DSP系统(3)设计实时DSP系统:包括硬件设计和软件设计两个方面。 硬件设计:设计DSP芯片的外围电路及其他电路,如转换、控制、存储、输出电路等。软

13、件设计:根据系统要求和所选的DSP芯片编写相应的DSP程序。在实际应用系统中常常采用高级语言和汇编语言的混合编程方法。采用这种方法,可缩短软件开发的周期,提高程序的可读性和可移植性,又能满足系统实时运算的要求。第一章 数字信号处理和DSP系统 (4) 硬件和软件的调试: 软件的调试:一般借助于DSP开发工具,如软件模拟器、DSP开发系统或仿真器等。调试DSP算法时一般采用实时结果与模拟结果相比较的方法,如果实时程序和模拟程序的输入相同,则两者的输出应该一致。硬件调试:一般采用硬件仿真器进行调试,如果没有相应的硬件仿真器,且硬件系统不是十分复杂,也可以借助于一般的工具进行调试。第一章 数字信号处

14、理和DSP系统(5) 系统集成和系统测试阶段:调试完成后,实时系统固化在DSP系统中,将软件脱离开发系统而直接在应用系统上运行。 DSP系统的开发,特别是软件开发是一个需要反复进行的过程,虽然通过算法模拟基本上可以知道实时系统的性能,但实际上模拟环境不可能做到与实时系统环境完全一致,将模拟算法移植到实时系统时必须考虑算法是否能够实时运行的问题。如果算法运算量太大不能在硬件上实时运行,则必须重新修改或简化算法。第一章 数字信号处理和DSP系统三、DSP芯片的发展及应用(1) 1978年AMI公司发布了世界上第一个单片DSP芯片S2811;(2) 1979年美国Intel公司发布的商用可编程DSP

15、芯片2920; 这两种芯片都没有现代 DSP芯片所必须有的单周期乘法器。 (3) 1980年,日本NEC公司推出的uPD7720是第一个具有乘法器的商用DSP芯片。第一章 数字信号处理和DSP系统(4)美国德州仪器公司(Texas Instruments 简称TI):第一代DSP芯片(1982年成功推出)TMS320C10及其系列产品TMS320C11、TMS320C10/C14/C15/C16/C17 . 第二代DSP芯片TMS32020、TMS320C25/C26/C28。 第三代DSP芯片TMS320C30/C31/C32; 第四代DSP芯片TMS320C40/C44; 第五代DSP芯片

16、TMS320C5X/C54X,第二代DSP芯片的改进型TMS320C2XX,集多片DSP芯片于一体的高性能DSP芯片TMS320C8X。第六代DSP芯片(目前速度最快)TMS320C62X/C67X等。第一章 数字信号处理和DSP系统TI将常用的DSP芯片归纳为三大系列:TMS320C2000系列:包括TMS320C2X/C2XX;TMS320C5000系列:包括TMS320C5X/C54X/C55XTMS320C6000系列:包括TMS320C62X/C67X。 如今,TI公司的一系列DSP产品已经成为当今世界上最有影响的DSP芯片。公司也成为世界上最大的DSP芯片供应商,其DSP市场份额占

17、全世界份额近50。第一章 数字信号处理和DSP系统(6) Motorola公司在推出DSP芯片方面相对较晚。1986年,该公司推出了定点处理器MC56001。1990年,推出了与IEEE浮点格式兼容的浮点DSP芯片MC96002。(7)美国模拟器件公司(Analog Devices,简称 AD)在 DSP芯片市场上也占有一定的份额,相继推出了一系列具有自己特点的DSP 芯片。定点芯片:ADSP2101/2103/2105 、ASDP2111/2115、ADSP2161/2162/2164以及 ADSP2171/2181。浮点芯片: ADSP21000/2102、ADSP21060/21062等

18、。第一章 数字信号处理和DSP系统DSP芯片的应用 自从 20世纪 70年代末 80年代初 DSP芯片诞生以来,DSP芯片得到了飞速的发展。 DSP芯片的高速发展,一方面得益于集成电路技术的发展,另一方面也得益于巨大的市场。 在近20年时间里,DSP芯片已经在信号处理、通信、雷达等许多领域得到广泛的应用。DSP芯片的价格越来越低,性价比日益提高,具有巨大的应用潜力。第一章 数字信号处理和DSP系统DSP芯片的应用主要有: (1) 信号处理:数字滤波、自适应滤波、快速傅立叶变换、相关运算、谱分析、卷积等;(2) 通信:调制解调器、自适应均衡、数据压缩、程控交换、数字基站、可视电话、多路复用、扩频

19、通信、纠错编码等;(3) 语音:语音编码、语音合成、语音识别、语音增强、说话人辨认、说话人确认、语音邮件、语音存储等;(4)图形/图像:如二维和三维图形处理、图像压缩与传输、图像增强、动画、机器人视觉等;第一章 数字信号处理和DSP系统(5)军事:保密通信、雷达处理、声纳处理、导航、导弹等;(6)仪器仪表:频谱分析、函数发生、锁相环、地震处理等;(7)自动控制:引擎控制、声控、自动驾驶、机器人控制、磁盘控制等;(8)医疗:助听、超声设备、诊断工具、病人监护等;(9)家用电器:高保真音响、音乐合成、音调控制、玩具与游戏、数字电话/电视等。第一章 数字信号处理和DSP系统DSP芯片的分类可按三种方

20、式进行分类 (1) 按基础特性分类:根据芯片的工作时钟和指令类型来分类 静态DSP芯片:在某时钟频率范围内的任何时钟频率上,芯片都能正常工作,除计算速度有变化外,没有性能的下降。如:OKI 电气公司的DSP芯片、TI公司的TMS320C2XX系列芯片。一致性DSP芯片:如果有两种或两种以上的DSP芯片,它们的指令集、相应的机器代码和管脚结构相互兼容。例如,美国TI公司的TMS320C54X。第一章 数字信号处理和DSP系统(2) 按数据格式分类 根据DSP芯片工作的数据格式来分类的。 定点 DSP芯片:数据以定点格式工作的DSP芯片,如 :TI公司的TMS320C1X/C2X、TMS320C2

21、XX/C5X、TMS320C54X/C62XX系列。 浮点 DSP 芯片:数据以浮点格式工作的DSP芯片,如 TI 公司的TMS320C3X/C4X/8X。 不同浮点DSP芯片所采用的浮点格式不完全一样,有的DSP芯片采用自定义的浮点格式,如 TMS320C3X,有的 DSP芯片则采用 IEEE的标准浮点格式。第一章 数字信号处理和DSP系统(3) 按用途分类 通用型DSP芯片:适合普通的DSP应用,如TI公司的一系列DSP芯片属于通用型DSP芯片。专用DSP芯片:为特定的DSP运算而设计的,更适合特殊的运算,如数字滤波、卷积和FFT。 本书主要讨论通用型DSP芯片。第二章 DSP芯片结构和C

22、PU外围电路讲课内容:1)TMS320C55x处理器的特点2)TMS320C55x处理器的CPU结构3)TMS320C55x处理器的CPU外围电路2.1 DSP芯片结构第二章 DSP芯片结构和CPU外围电路第二章 DSP芯片结构和CPU外围电路2.1 DSP芯片结构2.1.1 TMS320C55x处理器的特点采用改进的哈佛结构。1条读程序数据总线(PB),5条数据总线(BB,CB,DB,EB,FB),和他们对应的6条地址总线(PAB,BAB,CAB, DAB,EAB,FAB)40位和16位的算术逻辑单元(ALU)各1个, 1个40位的移位器4个40位的累加器(AC0,AC1,AC2,AC3)和

23、(T0,T1,T2,T3)1717比特的硬件乘法器和一个40比特专用加法器的组合(MAC)比较、选择和存储单元数据地址产生单元(DAGEN)和程序地址产生单元(PAGEN)数据空间和和程序空间位同一物理空间,采用统一编址第二章 DSP芯片结构和CPU外围电路2.1.2 TMS320C55x CPU CPU有4个功能单元:指令缓冲单元(I单元),程序流程单元(P单元) ,地址数据流程单元(A单元)和数据计算单元(D单元)CPU结构示意图第二章 DSP芯片结构和CPU外围电路1、指令缓冲单元(I Unit)由指令缓冲队列(IBQ)和指令译码器构成。 I单元从程序数据总线接收程序指令代码(每次接收3

24、2比特程序代码)放到IBQ(最多可存放64字节的未译码指令)中。 指令译码器从指令缓冲队列中取指令(每次取6字节的程序代码)进行变长8/16/24/32/48位)指令译码。 译码后的数据分别送到P单元,A单元,D单元处理。指令缓冲单元(I单元)图第二章 DSP芯片结构和CPU外围电路2、 程序流程单元(P Unit)组成:P单元由程序地址产生逻辑电路和一组寄存器组构成。主要功能产生所有I单元读取指令所需的24比特程序地址、控制指令读取顺序。一般情况下,产生的都是(连续)顺序地址。在遇到指令要求读取非连续地址程序代码时,也可以根据来自I单元的立即数和D单元的寄存器值产生所需的地址,并将产生地址送

25、到PAB。程序流程P单元结构图第二章 DSP芯片结构和CPU外围电路在程序流程单元中,控制和影响程序地址的寄存器有5类: 1)程序流程寄存器,包括:PC程序计数器,RETA返回地址寄存器,CFCT控制流程关系寄存器; 2)块重复寄存器,包括:BRC0、BRC1块重复寄存器0和1、RSA0、RSA1块重复起始地址寄存器, REA0、REA1块重复结束地址寄存器0和1; 3)单重复寄存器,包括:RPTC单重复计数器,CSR计算单重复寄存器; 4)中断寄存器,包括:IFR0、IFR1(标志),IER0、IER1(使能),DBIER0、DBIER1(调试中断使能); 5)状态寄存器:ST0_55、 S

26、T1_55、 ST2_55、 ST3_55第二章 DSP芯片结构和CPU外围电路3、地址流程单元(A Unit) 功能和组成: 产生读写数据空间的地址。 由数据地址产生电路(DAGEN),16比特的算术逻辑ALU电路和一组寄存器构成。 DAGEN 可以根据I单元的立即数和本A单元的寄存器数据产生读写数据空间的所有地址。在间接寻址中,还需要有P单元来指示采用那种寻址模式。地址流程单元结构图第二章 DSP芯片结构和CPU外围电路 A单元16位ALU的功能 能接收I单元数据,又能够和存储器、I/O空间、A单元寄存器、D单元寄存器和P单元寄存器进行数据交换,完成算术、逻辑、位操作、移位、测试、旋转等操

27、作。A单元包括的寄存器有下列4种类型: 1)数据页寄存器(Data Page Register):DPH、DP、(接口数据页)PDP 2)指针寄存器(Pointers):CDPH、CDP系数数据、SPH、SP、SSP栈、XAR0XAR7辅助 3)循环缓冲寄存器(Circular Buffer Registers):BK03、 BK47、BKC大小,BSA01、 BSA23、BSA45、BSA67、 BSAC起始地址 4)临时寄存器(Temporary Registers):T0T3第二章 DSP芯片结构和CPU外围电路4、数据计算单元(D Unit)D单元包括了CPU的主要计算部件,能够完成高

28、效的计算功能。组成:移位器、40比特算术逻辑ALU电路、两个乘累加器(MAC)和若干寄存器组构成。移位器D单元移位器能够接收来自I单元的立即数,与存储器、I/O空间、A单元寄存器、D单元寄存器和P单元寄存器进行双向通信。此外,还向D单元的ALU和A单元的ALU提供移位后的数据。数据计算单元结构图第二章 DSP芯片结构和CPU外围电路2.1.3 CPU外围电路:除CPU以外的一些功能单元和外部接口。 时钟发生器(Clock) 定时器(Timer) 多通道缓冲串口(McBSP) 主机接口(EHPI) 外部存储器接口(EMIF) 通用输入/输出口(GPIO) 片内存储区(Momery) DMA控制器

29、 高速指令缓冲存储器 (Instruction cache)第二章 DSP芯片结构和CPU外围电路2.2时钟发生器1、工作模式(1) 功能 将输入时钟CLKIN变为CPU及外围电路所需要的工作时钟。 通过时钟输出脚CLKOUT输出,供其它器件使用。(2) 组成 时钟发生器由一个数字锁相环(DPLL)和一个模式控制寄存器(CLKMD)组成。DPLLCLKMD寄存器CLKIN pinCLKOUT pinCLKMD pin第二章 DSP芯片结构和CPU外围电路(3) 两种工作模式(模式控制寄存器标志位的定义)若PLL_ENABLE0,DPLL工作于旁路(BYPASS)模式。若PLL_ENABLE1,

30、DPLL工作于锁定(LOCK)模式。旁路模式中:DPLL只对输入时钟CLKIN作简单的分频,分频次数由BYPASS_DIV字段确定。若BYPASS_DIV00,为一分频,即CLKOUT等于CLKIN。若BYPASS_DIV01,为二分频,即CLKOUT等于CLKIN的一半。若BYPASS_DIV1x,为四分频,即CLKOUT等于CLKIN的四分之一。第二章 DSP芯片结构和CPU外围电路锁定模式中 DPLL锁相环对输入时钟CKLIN进行跟踪锁定,可得到如下输出的时钟频率:PLL_MULT:锁定模式下的倍频次数,取值0到31PLL_DIV: 锁定模式下的分频次数,取值0到3。CLKOUT=PLL

31、_MULTPLL_DIV+1CLKIN1PLL_MULT31时CLKOUT=1PLL_DIV+1CLKINPLL_MULT0或1时5比特2比特第二章 DSP芯片结构和CPU外围电路4、使用方法(1) DSP复位对时钟发生器的影响 在DSP复位期间和复位后,DPLL工作于旁路模式,此时的分频次数(BYPASS_DIV)由CLKMD管脚上的电平确定,从而确定了它的输出时钟频率。 若CLKMD管脚为低电平,则BYPASS_DIV00,CLKOUT等于CLKIN。 若CLKMD管脚为高电平,则BYPASS_DIV01,CLKOUT等于CLKIN的一半。第二章 DSP芯片结构和CPU外围电路(2)失锁对

32、时钟发生器的影响 锁相环是通过对输入基准时钟进行跟踪锁定来稳定其输出时钟的,在锁定之后,由于某些因素使其输出时钟发生偏移,即失锁。发生失锁时,DPLL的动作由IOB字段控制: 若IOB1,时钟电路会自动切换到旁路模式,并重新开始跟踪锁定过程,在锁定后又自动切换回锁定模式。 若IOB=0,DPLL会继续输出时钟,而不管锁相环是否失锁第二章 DSP芯片结构和CPU外围电路(3) 省电状态对时钟发生器的影响 当时钟发生器退出省电(IDLE)状态时,不管进入省电状态之前工作于什么模式,DPLL都会切换到旁路模式,并由IAI字段确定进一步操作: 若IAI1,DPLL将重新开始整个跟踪锁定过程。 若IAI

33、=0,DPLL将使用与进入省电模式之前相同的设置进行跟踪锁定第二章 DSP芯片结构和CPU外围电路5、DPLL模式控制寄存器CLKMD(1) BREAKLN为失锁指示(只读) 0:表示由于某种原因引起PLL失锁; 1:表示处于锁定状态,或发生对CLKMD寄存器的写操作。(2) LOCK为锁定模式指示(只读) 0:表示DPLL处于旁路模式 1:表示DPLL处于锁定模式第二章 DSP芯片结构和CPU外围电路6、时钟发生器应用举例问题:假定输入时钟频率CLKIN为20MHz,而DSP需要的工作时钟为160MHz。解: (1)需要将时钟发生电路设为锁定模式; (2)根据倍频次数PLL_MULT与分频次

34、数PLL_DIV的关系CLKOUT=PLL_MULTPLL_DIV+1CLKIN1PLL_MULT31时PLL_MULT =8(PLL_DIV+1)PLL_DIV和PLL_MULT为(0,8),(1,16),(2,24)或(3,32)第二章 DSP芯片结构和CPU外围电路(3) 取PLL_DIV和PLL_MULT为(0,8),要求DPLL失锁或退出省电状态后重新锁定,即IOB=IAI=1。例程如下: MOV #0X6413,PORT(#CLKMD) 0110 0100 0001 00111000100011第二章 DSP芯片结构和CPU外围电路2.3通用定时器一、组成和框图 C5509 DSP

35、片内有两个定时器:Timer0,Timer1; 具有定时或计数功能。计数器在每个时钟周期减1,当减到0就产生一个输出信号。该输出信号可用于中断CPU或触发DMA传输(称为定时器事件)。 定时器由时钟、控制寄存器、计数器和定时器事件等部分构成。第二章 DSP芯片结构和CPU外围电路4比特预定标器TIN/TOUT16比特主计数器CPU中断DMA同步事件CPU时钟1、时钟部分 可采用内部CPU时钟; 也可采用来自TIN/TOUT管脚的外部输入时钟。2、两个定时器 一个用于定时器工作(递减方式) 一个用于CPU读写(设置定时长度)3、定时器事件产生三个输出信号:CPU中断、DMA同步事件、TIN/TO

36、UT管脚输出信号。第六章 DSP芯片内的CPU外围电路二、时钟部分 定时器的工作时钟可来自DSP内部的CPU时钟,也可来自TIN/TOUT管脚输入的外部时钟。具体时钟源的选择和TIN/OUT管脚的功能由控制寄存器TCR中的FUNC字段确定。 FUNC00时,TIN/TOUT为高阻态,时钟源为CPU时钟。该模式为复位后的缺省模式。 FUNC=01时,TIN/TOUT为定时器输出,时钟源为CPU时钟,可以输出时钟信号或脉冲信号。 FUNC=10时,TIN/TOUT为通用输出,时钟源为CPU时钟。此时,TIN/OUT作为通用输出,其电平由控制寄存器TCR中的DATOUT字段确定。 FUNC=11时,

37、TIN/TOUT为时钟源输入,定时计数器将在其上升沿递减。第二章 DSP芯片结构和CPU外围电路三、计数器部分 C5509定时器的计数器分为两类: 一类用于定时器工作, 一类用于CPU设置定时长度。 定时长度为20比特:4比特的预定标器和16比特的主计数器。其中,4比特的预定标值由预定标寄存器PRSC定义:16比特主定时器的值由定时周期寄存器PRD定义。第二章 DSP芯片结构和CPU外围电路定时器的工作方式 设定时器的工作时钟周期为Tclock,则定时长度T可用下式计算: 定时器的设置步骤 CPU将定时长度的预定标值和周期值分别写入TDDR和PRD 将控制寄存器TCR中的TLB设为1,使定时器

38、把PRD值和 TDDR值分别拷贝到它的工作寄存器TIM和PSC中。 把控制寄存器TCR中的TSS字段设为0启动定时器。TTclock(PRD+1)(TDDR+1)第二章 DSP芯片结构和CPU外围电路四、定时器控制寄存器TCR IDLE_EN:省电控制使能位,0:禁止省电模式,1:允许省电模式 INT/EXT:时钟源从内部切换到外部的指示标志,当时钟源从内部切换到外部要检测此位来决定是否准备好使用外部时钟。 0:定时器没准备好使用外部时钟, 1:定时器准备好使用外部时钟。 ERR_TIM:定时器错误标志,0:正常,1:错误第二章 DSP芯片结构和CPU外围电路 FUNC:定时器工作模式选择;

39、TLB:定时长度拷贝控制,0:停止拷贝,1:拷贝 SOFT和FREE:在仿真时遇到高级语言调试器断点时的处理方式 00:定时器立刻停止 01和11:定时器继续运行 10:在主计数器TIM减为0时停止。 PWID:TIN/TOUT管脚输出脉冲的宽度。 当PWID00时,TIN/TOUT输出脉宽为1个CLKOUT周期 当PWID01时,TIN/TOUT输出脉宽为2个CLKOUT周期 当PWID10时,TIN/TOUT输出脉宽为4个CLKOUT周期 当PWID11时,TIN/TOUT输出脉宽为8个CLKOUT周期第二章 DSP芯片结构和CPU外围电路 ARB:自动重装控制。 0:不自动重装, 1:自

40、动重装, 即每次TIM减为0时,定时器又会把PRD值和TDDR值分别拷到TIM和PSC,继续定时。 TSS:定时器停止控制,0:启动,1:停止 C/P:TIN/TOUT引脚输出脉冲/时钟选择,0:输出脉冲,1:输出时钟。 POLAR:TIN/TOUT引脚输出信号的极性,0:正极性,1:负极性 DATOUT:TIN/TOUT引脚作通用输出时的电平,0:低电平,1:高电平第二章 DSP芯片结构和CPU外围电路五、应用举例 假定定时器0的工作时钟为160MHz,请配置定时长度为5ms的定时器。 解:根据定时器公式:即(PRD+1)(TDDR+1)800000取TDDR=15(0 x0F)、PRD=4

41、9999(0 xC34F)。完成这一定时长度的程序如下: MOV #0 x000f,PORT(#PRSC0) ;写入预定标值。 MOV #0 xc34f, PORT(#PRD0) ;写入周期值 MOV #0 x0fd0,PORT(#TCR0) ;将PRD0和TDDR0分别拷贝到 TIM0和PSC0 MOV #0 x0Bc0,PORT(#TCR0);TLB=TSS=0,停止拷贝,开始定时第二章 DSP芯片结构和CPU外围电路2.4 外部存储器接口EMIF TMS320C5509 DSP的外部存储器接口EMIF有: 16位的数据总线D15:0 ; 4个片选输出CE3:0和其它多种控制信号。 能支持

42、多种不同类型的外部存储器件。片选空间EMIF接口的4个片选空间对应的地址如图所示。ST3_55中的MPNMC字段控制片内ROM的使用 1:CE3空间长度为4MB 0:后32KB空间被片上ROM占用。第二章 DSP芯片结构和CPU外围电路一、与外部存储器接口方法 C5510 DSP的外部存储器接口EMIF可以提供高度灵活的接口方式,每个片选都可以连接不同类型的存储器件,单独设置读写时序参数等。 支持的接口有: 包括异步 SRAM、ROM、FLASH(闪速存储器) 、EPROM等,EMIF能够提供可配置的定时参数,提供高度灵活的存储器时序。每个接口都可以支持程序代码访问 32bit数据访问、16b

43、it数据访问、8bit数据访问。第二章 DSP芯片结构和CPU外围电路1、片选控制寄存器CEx_1 (x=03)根据片选控制寄存器中的MTYPE段来设置访问类型。 MTYPE 000:异步,8比特宽 MTYPE 001:异步,16比特宽 MTYPE 010:保留 MTYPE 011:16比特宽的SDRAM第二章 DSP芯片结构和CPU外围电路2、异步存储器接口方案:低电平有效的片选信号,用于指定要访问的外部空间。CEn ARDY:异步访问就绪指示,使EMIF可以延缓异步访问速度。A13:0:14位地址数据总线。:低电平有效的异步输出使能信号,连接异步存储器的输出使能引脚。AOE:低电平有效的异

44、步读使能信号。ARE:低电平有效的异步写使能信号。AWE:低电平有效的字节选择信号,用于指定要访问的字节位置。 BE3:0D15:0: 16位数据总线第二章 DSP芯片结构和CPU外围电路EMIF的异步读操作时序地址有效读选通有效外部器件没准备好第二章 DSP芯片结构和CPU外围电路EMIF的异步写操作时序第二章 DSP芯片结构和CPU外围电路与EMIF的异步接口有关的寄存器 全局控制寄存器EGCR 全局复位寄存器EMI_RST 总线错误状态寄存器EMI_BE 片选0空间控制寄存器1/2/3 CE0_1/CE0_2/CE0_3 片选1空间控制寄存器1/2/3 CE1_1/CE1_2/CE1_3

45、 片选2空间控制寄存器1/2/3 CE2_1/CE2_2/CE2_3 片选3空间控制寄存器1/2/3 CE3_1/CE3_2/CE3_3第二章 DSP芯片结构和CPU外围电路全局控制寄存器EGCR(控制4个片选空间的公共参数) MEMFREQ:同步存储器的时钟频率,00:CLKEM是DSP CPU时钟 01:DSP 时钟的2分频。 WPE:后写使能,0:禁止,1:使能 MEMCEN:同步存储器时钟输出使能,决定CLKMEM是否使用 ARDY:ARDY管脚上的输入电平,0:外部器件没有准备好,1:表示准备好。 HOLD_:HOLD_管脚上的输入电平。 HOLDA_:HOLDA_管脚上的输出电平。

46、表示DSP对外部总线征用的响应。 NOHOLD:外部总线征用使能。第二章 DSP芯片结构和CPU外围电路总线错误状态寄存器EMI_BE(标志总线错误的类型和位置)如果访问出错,置位寄存器中相应的标志位,表示出错的原因 TIME:超时错误 CE3/CE2/CE1/CE0:表示访问CE3/CE2/CE1/CE0出错。 DMA:DMA出错 FBUS/EBUS/DBUS/CBUS:表示CPU读或写这些总线出错。 PBUS :程序总线出错。第二章 DSP芯片结构和CPU外围电路EMIF 全局复位寄存器EMI_RST任何对EMI_RST寄存器的写操作都会复位EMIF状态机,但是不改变当前的配置,此寄存器不

47、可读。第二章 DSP芯片结构和CPU外围电路片选控制寄存器CEx_1 (x=03) MTYPE:存储器的类型 READ SETUP:读建立时间,115个DSP时钟周期 READ STROBE:读选通时间,115个DSP时钟周期 READ HOLD:读保持时间,03个DSP时钟周期第二章 DSP芯片结构和CPU外围电路片选控制寄存器CEx_2(x=03) READ EXTENDED READ:读延长保持时间, 13个DSP时钟周期 WRITE EXTENDED READ:写延长保持时间, 13个DSP时钟周期 WRITE SETUP:写建立时间, 115个DSP时钟周期 WRITE STROBE

48、 :写选通时间,115个DSP时钟周期 WRITE HOLD :写保持时间,03个DSP时钟周期第二章 DSP芯片结构和CPU外围电路片选控制寄存器CEx_3(x=03)TIMEOUT:从选通STROBE的第三个周期开始,若在TIMEOUT个周期后,仍没有响应,视为访问超时错误。0表示不允许超时,仅对异步存储器起作用。注意:三个片选控制寄存器中除MTPYE外,其它仅对异步存储器的时序阶段设置,对同步存储器不影响。第二章 DSP芯片结构和CPU外围电路3、同步动态RAM接口 SDRAM是一种高密度,高速率的同步动态RAM,它按行列的方式来组织存储阵列,并通过行列地址对数据读写。 C5509的EM

49、IF能支持容量为64Mbit或128Mbit宽度为16位的SDRAM。5、应用举例问题:假定有一个16位宽的异步SRAM接在EMIF的片选空间1(CE1)上,要求将C5509片内DARAM中从地址000060H开始的200个16位的数,写入该SRAM中从地址208800h开始的数据区域中。解:MOV #0 x0000,PORT(#EMI_RST) ;复位EMIF状态机等待100个周期 RPT #99 ;单指令无条件重复,下条指令重复991100次 NOP ;空操作指令,需要的周期数为1 MOV #0 x000f,PORT(#EGCR) ;禁止同步时钟和总线占用请求 MOV #0 x121D,P

50、ORT(#CE1_1) ;MTYPE001,16位异步存储器, ;RSETUP2, RSTROBE7,RHOLD1 MOV #0319,PORT(#CE1_2) ;没有延长保持时间,; ;WSETUP=3,WSTROBE=6,WHOLD=1 MOV #0 x001F,PORT(#CE1_3) ;TIMEOUT31第二章 DSP芯片结构和CPU外围电路 AMOV #000060h,XAR0 AMOV #208800h,XAR2 RPT #199 MOV dbl(*AR0+),dbl(*AR2+) ;利用AR间接寻址,生存地址之后1 NOP第二章 DSP芯片结构和CPU外围电路作业:假定有一个16

51、位宽的异步SRAM接在EMIF的片选空间1(CE1)上,要求如下: 将C5510片内DARAM中从地址000060H开始的100个16位的数,写入该SRAM中从地址208800h开始的数据区域中。 读/写建立、读/写选通、读/写保持时间均为3个DSP时钟周期。 读/写延长保持时间为2个DSP时钟周期设计任务: (1) 画出EMIF与该SRAM接口连接图 (2) 试编写完成设计要求的程序第二章 DSP芯片结构和CPU外围电路2.5 增强型主机接口EHPI C5509DSP有一个16位的增强型主机接口EHPI,可与外部主机相连,使DSP系统受控于外部主机。 EHPI主要有:地址寄存器HPIA,数据

52、寄存器HPID,控制寄存器HPIC和控制逻辑构成。 通过专门的EHPI通道与DSP内的DMA控制器相连,使主机能够访问DSP的片内存储空间和部分外部存储空间。第二章 DSP芯片结构和CPU外围电路一、地址/数据 14位的地址总线HA13:0:可以访问16K16的存储空间 数据总线HD 15:0:用于连接外部主机和内部的数据寄存器HPID,支持8比特、16比特的数据访问。 字节选择信号HBE1:0:用于选择访问的字节 HBE1:000:按字的方式访问,使用16位数据总线HD 15:0 HBE1:001:访问字的高8位,使用数据总线的高8位HD 15:8 HBE1:010:访问字的低8位,使用数据

53、总线的低8位HD 7:0第二章 DSP芯片结构和CPU外围电路二、选通信号 EHPI的选通信号包括 片选信号HCS_:低电平有效,表示地址线和控制线上的输入为有效输入。 数据选通HDS1_和HDS2_:用于控制主机访问期间的数据传递。以两个信号的异或非为准,低电平有效,脉冲宽度至少为2个DSP时钟周期。 地址选通HAS_:只是在复用模式下使用(与地址线HA2共用一个管脚),EHPI在其上升沿有效,将数据总线上的信号锁存到地址寄存器HPIA中。第二章 DSP芯片结构和CPU外围电路三、控制信号1、就绪信号HRDY HRDY为低电平:表示EHPI忙,主机需要插入等待时间 HRDY为高电平:表示EH

54、PI已完成本次数据传输,主机可以再次发起访问。2、读写信号HR/W_ HR/W_为高电平:主机读EHPI 。 HR/W_为低电平:主机写EHPI 。3、主机中断信号HINT_ 用于DSP向主机发送负脉冲形式的中断信号。第二章 DSP芯片结构和CPU外围电路4、寄存器访问选择HCNTL0和HCNTL1(用于选择访问的寄存器) 在非复用模式下只使用HCNTL0 HCNTL0为低电平:访问EHPI控制寄存器HPIC 。 HCNTL0为高电平:访问EHPI数据寄存器HPID。在复用模式下,使用HCNTL0和HCNTL1来选择要访问的寄存器 HCNTL1:0=00:访问EHPI控制寄存器HPIC 。 H

55、CNTL1:0=01:按地址递增的方式访问数据寄存器HPID。 HCNTL1:0=10:访问地址寄存器HPIA。 HCNTL1:0=11:按随机地址方式访问数据寄存器HPID。第二章 DSP芯片结构和CPU外围电路四、EHPI的寄存器 16位的地址寄存器HPIA:用于在复用模式下存放地址。工作于自动递增模式时,HPIA的值在每次访问后自动加1,因此,只需要设置数据块的起始地址,就可以访问一连续存放的数据。 16位的数据寄存器HPID:用于存放读写的数据。 16位的控制寄存器HPIC152:reserved:保留1:DSPINT:主机对DSP的中断,0:清除中断;1:向DSP发送中断请求。0:r

56、eserved:保留第二章 DSP芯片结构和CPU外围电路五、EHPI对DSP的复位 DSP的复位信号来自RESET管脚,当复位信号为低电平时,DSP复位。六、接口时序 主机和DSP有两种接口时序方式:非复用方式和复用方式。第二章 DSP芯片结构和CPU外围电路非复用模式 HPID用于临时存放要通过EHPI传送的数据。如果是读操作,则HPID中装有在DSP存储区中读到的数据;如果是写操作则HPID中装有要写入DSP存储区的数据。 通过配置控制寄存器HPIC可以向DSP发中断,并且可以控制DSP的复位。要访问HPIC必须使HCNTL0信号为低。第二章 DSP芯片结构和CPU外围电路复用模式(a)

57、为信号被使用时的连接 (b)为高电平(不被使用)时的连接 第二章 DSP芯片结构和CPU外围电路七、应用举例 用一片C5509(DSP1)的EMIF与另一片C5509(DSP2)的EHPI相连,DSP1为主机,采用非复用模式于DSP2通信,并由GPIO来选择要访问的对象(HPIC或数据空间)。 要求DSP1向DSP2中的缓冲区写入一段数据后用中断方式通知DSP2对该段数据进行处理。假定DSP1中的数据缓冲区起始地址为000100h,长度为100个字;DSP2中的数据缓冲区的起始地址为000060,长度为200个字。(连接方式如教材32页所示)第二章 DSP芯片结构和CPU外围电路DSP1中完成

58、该任务的程序如下: MOV #0 x000100,XAR0 ;源地址 MOV #0 x200060,XAR1 ;目标地址,采用CE1,起始地址为20000h MOV #0 x0001,port(#IODIR) ;配置GPIO0为输出 MOV #0 x0001,port(#IODATA) ;GPIO0输出高电平 RPT #99 MOV *AR0+, *AR1+ MOV #0 x0000, port(#IODATA) ;GPIO输出低电平,要访问DSP2的HPIC MOV #0 x0003,*AR1 ; DSPINT=1,向DSP2发中断。 RPT #3 Nop MOV #0 x0001,*AR1

59、 ; DSPINT=0,停止向DSP2发中断GPIO0和HCNTL0相连, HCNTL01,访问数据区第二章 DSP芯片结构和CPU外围电路2.6 多通道缓冲串口McBSP一、概述1、McBSP的功能 全双工通信 双缓冲数据寄存器,允许连续的数据流。 收发独立的帧信号和时钟信号 可以与工业标准的编/解码器,以及其它串行A/D、D/A接口 数据传输可以利用外部时钟、或是片内的可编程时钟。 利用DMA为McBSP服务时,串口数据读写具有自动缓冲能力。第二章 DSP芯片结构和CPU外围电路2、其它的特点 可与多达128个通道进行收发; 支持传输的数据字长可以是8bit、12bit、16bit、 20

60、bit、24bit、32bit 内置u律和A律压扩硬件。 对8bit数据的传输,可选择LSB先传,还是MSB先传。 可设置帧同步信号和数据时钟信号的极性。 内部传输时钟和帧同步信号可编程程度高。u律(m-Law)压扩主要用在北美和日本等地区的数字电话通信中。m为确定压缩量的参数,它反映最大量化间隔和最小量化间隔之比。A律(A-Law)压扩主要用在欧洲和中国大陆等地区的数字电话通信中。A为确定压缩量的参数,它反映最大量化间隔和最小量化间隔之比。 第二章 DSP芯片结构和CPU外围电路一、基本结构 C5509有三个多通道缓冲串口McBSP,每个McBSP可以分为收发通道、时钟与帧同步、多通道选择和

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论