版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、信息侦察与处理教研室信息侦察与处理教研室本课程将以本课程将以TMS320C31为例介绍为例介绍DSP的工作原理的工作原理及其开发应用等方面的内容,希望达到以下目标:及其开发应用等方面的内容,希望达到以下目标:了解了解DSP的基本特征、发展历史与现状;的基本特征、发展历史与现状;熟悉熟悉DSP的性能指标和应用系统设计开发方面的的性能指标和应用系统设计开发方面的有关问题及其解决步骤、方法与手段;有关问题及其解决步骤、方法与手段;了解一款了解一款DSP芯片的结构原理,掌握学习其它型芯片的结构原理,掌握学习其它型号号DSP的一般方法和要点。的一般方法和要点。熟悉熟悉CCS软件,掌握基本的软件,掌握基本
2、的DSP编程、调试方法;编程、调试方法;了解了解DSP应用系统软、硬件设计基本技术。应用系统软、硬件设计基本技术。l课程特点课程特点l课程学习需要注意的几个问题课程学习需要注意的几个问题l课程安排课程安排l参考书参考书l考核考核第第1章章 概述概述第第2章章 结构原理结构原理 第第3章章 程序流控制程序流控制 第第4章章 流水线操作流水线操作第第5章章 应用电路设计应用电路设计第第6章章 指令指令1.1 数字信号处理的实现数字信号处理的实现一数字信号处理的特点一数字信号处理的特点二数字信号处理的实现方法二数字信号处理的实现方法1.2 DSP芯片介绍芯片介绍 一系统设计对一系统设计对DSP的要求
3、的要求 二二DSP芯片的特点芯片的特点 三三DSP的用户要求及性能指标的用户要求及性能指标 四系统的设计过程和运算量的确定四系统的设计过程和运算量的确定数字信号处理(数字信号处理(Digital Signal Processing)是)是利用数字器件或装置,以数字或符号的形式表示信号,利用数字器件或装置,以数字或符号的形式表示信号,通过对信号进行滤波、变换等运算得到符合人们需要通过对信号进行滤波、变换等运算得到符合人们需要的信号形式,以达到检测、估值、增强、压缩、识别的信号形式,以达到检测、估值、增强、压缩、识别等目的。等目的。 数字信号处理是一门涉及许多学科知识且广泛数字信号处理是一门涉及许
4、多学科知识且广泛应用于许多领域的学科。应用于许多领域的学科。与之相对应的信号处理方式是模拟处理。与之相对应的信号处理方式是模拟处理。一、数字信号处理的特点一、数字信号处理的特点1、优点、优点l数字运算形式多。可以实现模拟处理很难实现,甚至无法实现的数字运算形式多。可以实现模拟处理很难实现,甚至无法实现的功能功能l数字系统稳定性、可靠性好。元器件性能不易受外部温度、湿度、数字系统稳定性、可靠性好。元器件性能不易受外部温度、湿度、振动等因素变化的影响,性能稳定。抵抗外部干扰的能力强,工振动等因素变化的影响,性能稳定。抵抗外部干扰的能力强,工作可靠。作可靠。l数字系统易于模拟仿真。实验方便、成本低,
5、设计周期短。数字系统易于模拟仿真。实验方便、成本低,设计周期短。l可重复性好。数字系统便于测试,调试和大规模集成、生产。可重复性好。数字系统便于测试,调试和大规模集成、生产。l接口、编程方便灵活,精度高等。接口、编程方便灵活,精度高等。2、 缺点缺点 处理处理(运算运算)速度慢,某些场合中应用成本显高速度慢,某些场合中应用成本显高1.1 数字信号处理的实现数字信号处理的实现二、数字信号处理的实现方法二、数字信号处理的实现方法l 通用数字器件综合通用数字器件综合l 通用可编程逻辑器件(通用可编程逻辑器件(FPGAFPGA、CPLDCPLD)l 专用专用DSPDSP芯片芯片l 专用专用ASICAS
6、IC芯片芯片l 通用微机软件通用微机软件l 通用单片机、通用单片机、ARMARMl 通用可编程通用可编程DSPDSP芯片芯片l 以上几种方法结合以上几种方法结合1.1 数字信号处理的实现数字信号处理的实现1.2DSP芯片介绍芯片介绍一、工程应用对一、工程应用对DSPDSP的要求的要求因为数字信号处理的优点,工程设计中就有了需求。因为数字信号处理的优点,工程设计中就有了需求。其他几种实现方法往往不能满足实时系统的应用要求,于其他几种实现方法往往不能满足实时系统的应用要求,于是就诞生了专门设计是就诞生了专门设计DSPDSP芯片厂商。芯片厂商。起初,起初,DSPDSP芯片的目标是要克服其他方法速度慢
7、芯片的目标是要克服其他方法速度慢, ,精度精度差的缺点,提高芯片性能。差的缺点,提高芯片性能。近来,近来,DSPDSP厂商着重于应用领域,即提供一个所谓的厂商着重于应用领域,即提供一个所谓的“基于基于DSPDSP的的系统解决方案系统解决方案”。 二、二、DSPDSP芯片的特点芯片的特点 DSPDSP芯片就是把适合于数字信号处理的芯片就是把适合于数字信号处理的CPUCPU及其它有及其它有关部件集成在一块关部件集成在一块ICIC芯片的微处理器(区别于微型计算机芯片的微处理器(区别于微型计算机芯片、单芯片计算机)。芯片、单芯片计算机)。下面以下面以TMS320C3XTMS320C3X的功能框图来介绍
8、的功能框图来介绍DSPDSP芯片的特点。芯片的特点。TMS320C3XTMS320C3X方块图方块图TMS320C30TMS320C30方块图方块图总结:总结: 哈佛结构哈佛结构 流水线结构流水线结构 专用乘法器专用乘法器 特定硬件操作特定硬件操作 高速时钟高速时钟 显然,显然,DSPDSP芯片的设计思想是从芯片硬件资源建芯片的设计思想是从芯片硬件资源建立、配置、协调使用等方面尽量提高速度立、配置、协调使用等方面尽量提高速度 。在精度。在精度方面:运算时,定点、浮点可达到方面:运算时,定点、浮点可达到4040位。存储时,位。存储时,分别为分别为1616、3232位。位。1、运算速度、运算速度l
9、 指令周期:执行一条指令的时间(指令周期:执行一条指令的时间(ns)l MAC时间:完成一次乘法和一次加法的时间,大时间:完成一次乘法和一次加法的时间,大部分在一个指令周期内完成。部分在一个指令周期内完成。l FFT时间时间l MIPS:每秒执行百万条指令:每秒执行百万条指令l MOPS:每秒执行百万条操作:每秒执行百万条操作2、运算精度、运算精度l 定点定点16、24位位l 浮点浮点32 位位在产品设计指标要求和厂商提供的技术指标之间在产品设计指标要求和厂商提供的技术指标之间的权衡、比较。(如新产品与升级产品的不同设计考虑)的权衡、比较。(如新产品与升级产品的不同设计考虑)运算速度。运算速度
10、。运算精度。运算精度。芯片提供的硬件资源:内、外存储空间的大小、芯片提供的硬件资源:内、外存储空间的大小、总线接口、片内设备等。总线接口、片内设备等。功耗、体积、封装等结构、工艺指标。功耗、体积、封装等结构、工艺指标。开发工具。开发工具。价格。价格。其他:供货、生命周期、质量标准等。其他:供货、生命周期、质量标准等。 选择DSP芯片软件系统硬件设计软件调试硬件调试系统集成定义系统的性能指标系统测试和调试DSP应用DSP系统设计中要考虑的几个因素: lDSP系统处理的模拟带宽。l实时性要求。l算法的复杂度。lDSP系统处理精度要求。l成本要求。l可靠性要求。l方便开发和使用。l 按样点计算:一个
11、输入数据的采样周期不小于一个输按样点计算:一个输入数据的采样周期不小于一个输出数据需要的全部计算时间。出数据需要的全部计算时间。l 按帧计算:一帧输入数据的采样时间不小于与其运算按帧计算:一帧输入数据的采样时间不小于与其运算时间。时间。l 按任务计算:每个任务每秒的运算量(按任务计算:每个任务每秒的运算量(MIPS)按照上)按照上述方法计算,然后相加。述方法计算,然后相加。自从自从DSP芯片诞生以来,得到了飞速的发展。在短短的十多芯片诞生以来,得到了飞速的发展。在短短的十多年时间,年时间,DSP芯片已经在信号处理、通信、雷达等许多领域得到广泛芯片已经在信号处理、通信、雷达等许多领域得到广泛的应
12、用。目前,的应用。目前,DSP芯片的价格也越来越低,性能价格比日益提高,芯片的价格也越来越低,性能价格比日益提高,具有巨大的应用潜力。具有巨大的应用潜力。DSP芯片的主要应用有:芯片的主要应用有: l 信号处理信号处理-如,数字滤波、自适应滤波、快速傅里叶变换、相关运如,数字滤波、自适应滤波、快速傅里叶变换、相关运算、频谱分析、卷积等。算、频谱分析、卷积等。 l 通信通信-如,调制解调器、自适应均衡、数据加密、数据压缩、回坡如,调制解调器、自适应均衡、数据加密、数据压缩、回坡抵消、多路复用、传真、扩频通信、纠错编码、波形产生等。抵消、多路复用、传真、扩频通信、纠错编码、波形产生等。l 语音语音
13、-如语音编码、语音合成、语音识别、语音增强、说话人辨认、如语音编码、语音合成、语音识别、语音增强、说话人辨认、说话人确认说话人确认 、语音邮件、语音储存等。、语音邮件、语音储存等。l 图像图像/图形图形-如二维和三维图形处理、图像压缩与传输、图像增强、如二维和三维图形处理、图像压缩与传输、图像增强、动画、机器人视觉等。动画、机器人视觉等。l 军事军事-如保密通信、雷达处理、声纳处理、导航等。如保密通信、雷达处理、声纳处理、导航等。l 仪器仪表仪器仪表-如频谱分析、函数发生、锁相环、地震处理等。如频谱分析、函数发生、锁相环、地震处理等。l 自动控制自动控制-如引擎控制、深空、自动驾驶、机器人控制
14、、如引擎控制、深空、自动驾驶、机器人控制、磁盘控制。磁盘控制。l 医疗医疗-如助听、超声设备、诊断工具、病人监护等。如助听、超声设备、诊断工具、病人监护等。l 家用电器家用电器-如高保真音响、音乐合成、音调控制、玩具与如高保真音响、音乐合成、音调控制、玩具与游戏、数字电话游戏、数字电话/电视等。电视等。2.1管脚及信号说明管脚及信号说明2.2中央处理单元中央处理单元(CPU)2.3存储器存储器2.4引导装载功能引导装载功能2.5外部总线外部总线2.6外围外围2.7直接存储器访问直接存储器访问(DMA)注意:注意:1、管脚、信号名、管脚、信号名、输入出输入出Z、说、说明(查手册)。明(查手册)。
15、2、信号上面的横、信号上面的横线表示低电平有效。线表示低电平有效。3、脚不能连、脚不能连接。接。4、所有上拉电阻、所有上拉电阻必须为必须为20K,电,电源、地必须分别共源、地必须分别共同连接在一起。同连接在一起。2.1管脚及信号说明管脚及信号说明一、一、CPU组成及功能组成及功能CPU主要完成算术逻辑运算、乘法运算、寻址运算,主要完成算术逻辑运算、乘法运算、寻址运算,以及以及DSP芯片资源的全局管理等芯片资源的全局管理等。包括如下包括如下操作单元:操作单元:l ALU:单周期,:单周期,32位整数,位整数,40位浮点位浮点lultiplier:单周期,浮点:单周期,浮点 入入32位位/出出40
16、位,整数位,整数 入入24位位/出出32位,和位,和ALU并行并行l ARAUs:单周期,计算出各种寻址方式所要的两个地址。:单周期,计算出各种寻址方式所要的两个地址。(如偏移、变址、循环、码位倒置寻址等)。并行操作。(如偏移、变址、循环、码位倒置寻址等)。并行操作。l CPU1、2REG1、2总线:可传送四个操作数。总线:可传送四个操作数。l 32位桶式移位器:单周期位桶式移位器:单周期32位左右移位。位左右移位。l 寄存器组:寄存器组:28个。个。二、二、CPU寄存器组(寄存器组(29个)个)1、扩展精度寄存器(、扩展精度寄存器(R0R7) 特别适于维持扩展精度浮点结果。特别适于维持扩展精
17、度浮点结果。 2、辅助寄存器(、辅助寄存器(AR0AR7) CPU存取,存取,ARAU修改,主要是产生修改,主要是产生24 bit的地址。的地址。esf3932313003932310无用 有(无)符号整数3、数据页指针(、数据页指针(DP) 8个最低有效位在直接寻址方式中作为所寻址页码的指个最低有效位在直接寻址方式中作为所寻址页码的指 针数据针数据 831bit被用户保留且总保持为零,被用户保留且总保持为零,16M空间被分空间被分为为256页页64K字数据。字数据。4、变址寄存器(、变址寄存器(IR0、IR1) 被被ARAU用于指引地址。用于指引地址。5、块模寄存器(、块模寄存器(BK) 被
18、被ARAU用于循环寻址。用于循环寻址。6、系统堆栈指针(、系统堆栈指针(SP) 保存系统栈顶地址,只用后保存系统栈顶地址,只用后24bit,中断陷阱调用,返回,中断陷阱调用,返回以及以及PUSH,PUSHF,POP,POPF,指令均使用,指令均使用SP.7、状态寄存器(、状态寄存器(ST) CPU状态的全局信息,复位时置状态的全局信息,复位时置0,可存取,也可被硬件,可存取,也可被硬件改变。格式如下:改变。格式如下:8、CPUDMA中断允许寄存器(中断允许寄存器(IE) CPU占占100bit,DMA用用2616bit,置,置1,则允许,则允许相应的中断,复位时置相应的中断,复位时置0,格式如
19、下:,格式如下:9、CPU中断标志寄存器(中断标志寄存器(IF) 中断发生时,相应位置中断发生时,相应位置1,软件中断也能使,软件中断也能使IF位置位置1,复位时写复位时写0,可读写,格式如下:,可读写,格式如下:10、IO标志寄存器(标志寄存器(IOF) 设置设置XF0.XF1为输入出,可读写,格式如下:为输入出,可读写,格式如下:11、重复计数器(、重复计数器(RC)和块地址寄存器()和块地址寄存器(RS、RE) 重复工作方式时,重复工作方式时,RC重复次数。重复次数。RS起始地址,起始地址,RE结束结束地址(程序的)。地址(程序的)。12、程序计数器(、程序计数器(PC) 下一条被取指令
20、的地址,可被程序流指令修改。下一条被取指令的地址,可被程序流指令修改。指与指与DSP有关的所有存储空间。用来存贮程序、有关的所有存储空间。用来存贮程序、数据(常数、中间变量、结果等)。数据(常数、中间变量、结果等)。一、有关术语一、有关术语 ROM:PROM、EPROM; EEPROM、FLASH。 RAM:SRAM、DRAM、SBRAM、SDRAM等。等。 存储器的宽度、读写时间。存储器的宽度、读写时间。 物理空间、逻辑空间的概念。物理空间、逻辑空间的概念。 程序空间、数据空间与程序空间、数据空间与IO空间的概念。空间的概念。二、二、 C3X存储空间的地址(逻辑)分配存储空间的地址(逻辑)分
21、配 32位位Data Bus宽度:程序、数据及宽度:程序、数据及IO字字(word)大小)大小 。 24位位Address Bus宽度:寻址能力达宽度:寻址能力达16M字,字,程序空间、数据空间与程序空间、数据空间与IO空间三个空间统空间三个空间统一编址。一编址。 C3X存储器分配有存储器分配有2种方式:微处理器方式种方式:微处理器方式与微计算机方式。它与与微计算机方式。它与DSP工作方式有关。工作方式有关。C3X存储器有存储器有2种分配方式种分配方式 DMA CONTROLLER REGISERS (16) RESERVED (15) TIMER 0 REGISTERS (16) TIMER
22、 1 REGSTERS (16) SERIAL PORTO REGISTERS (16) SERIAL PORT1 REGISTERS+ (16)PRIMARY AND EXPANSIOPORT REGISERS (16) RESERVED 808000H 808010H 80800FH 808010H 80801FH 80802FH 808030H 80803FH 808040H 80804FH 808050H 80805FH 808060H 80806FH 808070H 808010 808000H 808010H 80800FH 808010H 80801FH 80802FH 8080
23、30H 80803FH 808040H 80804FH 808050H 80805FH 808060H 80806FH 808070H 808010 808000H80800FH 808010H80801FH 808070H8097FFH外设总线的分配外设总线的分配三、指令高速缓冲存储器(三、指令高速缓冲存储器(Cache) 存储那些存取时间严格限制的代码。存储那些存取时间严格限制的代码。 即:外部存取时间影响代码执行结果即:外部存取时间影响代码执行结果省时间;常用代省时间;常用代码码不需重复取。能以完全自动的方式工作而无需用户干预,不需重复取。能以完全自动的方式工作而无需用户干预,其结构,算
24、法可参考手册。其结构,算法可参考手册。 注意两点:是当使用自修改代友时,一条指令驻留在注意两点:是当使用自修改代友时,一条指令驻留在Cache中,主存储器被修改,则不修改中,主存储器被修改,则不修改Cache中的指令。能中的指令。能通过在通过在32个字地址边界上安排程序代码触够更加有效地使用个字地址边界上安排程序代码触够更加有效地使用Cache,在对汇编语言编码时使用,在对汇编语言编码时使用ALIGN伪指令可完成。伪指令可完成。 Cache的控制位的控制位 Cache的控制位:的控制位: CPUST寄存器有寄存器有3个控制位:清除位(个控制位:清除位(CC),有效位(),有效位(CE)和冻结位
25、(和冻结位(CF)、(写)使)、(写)使Cache无效,无效,CC0,CacheCPU清零,取出为清零,取出为0;如复信时如复信时,如此如此,CE=1(写)使(写)使Cache有效,有效,,禁禁止写止写Cache,当当CE0时时,(写)(写),则清除则清除Cache,之后之后CC0(写)(写)则清除则清除Cache,复位复位CF0. 2.4 C31引导引导功能的实现功能的实现 C31具有程序引具有程序引导功能,这使得导功能,这使得C31的硬件系统设计极为的硬件系统设计极为灵活和方便。灵活和方便。C31实实时运行的程序和数据时运行的程序和数据可以从外部低速可以从外部低速EPROM中装入,也中装入
26、,也可以从可以从C31的串行口的串行口输入。(输入。(MBCL方式方式的存储器映象如右图的存储器映象如右图所示)。所示)。 激活 0X809BFF 中断位置(boot)及保留(192)自引导程序BOOT1BOOT2外部STRB激活保留32K字外设总线存储器映象寄存器(6K内部)RAM块(1K)RAM块(1K-64)内部用户程序中断 trap 及 跳转BOOT3外部0X0000000X0000BF0X0000C00X000FFF0X0010000X400000 0X8000000X807FFF0X8080000X8097FF0X8098000X809C000X809FC00X809FC10X80
27、9FFF0X80A0000XFFFFFF0X7FFFFF0XFFF000一、主总线控制寄存器一、主总线控制寄存器6个字段占低个字段占低13 bitl 主总线周期定义为信号主总线周期定义为信号H1的下降沿到下一个的下降沿到下一个H1的下降的下降沿。零等待状态时,读用沿。零等待状态时,读用1个个H1周期,写用周期,写用2个周期,如个周期,如果写跟在读后面则三个周期。果写跟在读后面则三个周期。l 信号信号H1、H3的周期相同,相位相反,都等于的周期相同,相位相反,都等于DSP时钟时钟周期的一半。周期的一半。l 主总线的操作时序详情请参考数据手册。主总线的操作时序详情请参考数据手册。R/W R/W R
28、/W R/W R/W R xx xx xx BNKCMP WTCNT SWW HIZ NOHO HOL15 14 13 12 - 8 7 6 5 4 3 2 1 0HOLDST: 保持状态位。置位保持状态位。置位(1)接口处于保持,接口处于保持,表示没有处于保持表示没有处于保持.NOHOLD: 接受保持信号。接受保持信号。(表示表示c3x接受并控制外部接受并控制外部总线,而不管外部器件的请求,当接受了总线,而不管外部器件的请求,当接受了HOLD时,除非时,除非HIZ1,否则不建立保持,否则不建立保持响应响应(HOLDA)。H IZ:内部保持。内部保持。HIZ1则接口处于保持方式则接口处于保持方
29、式, 三态时三态时LDA0。SWW: 软件等待状态产生器和软件等待状态产生器和WTCNT向配合向配合, 该字段定义了等待状态发生的方式该字段定义了等待状态发生的方式 。WTCNT: 软件等待状态周期数软件等待状态周期数.范围是范围是0-7个个H1/H3周期。周期。BNKCMP: 分组比较分组比较.定义分组规模的基址线最高有定义分组规模的基址线最高有效数目效数目(MSBS) 。SWW00: 外部器件产生的外部器件产生的RDY.SWW01: WTCNT产生的产生的DRY WTCNTSWW10: DRT与与RDTWTCNT信号的逻信号的逻辑与辑与.(两者任意为低两者任意为低) SWW11: RDT与
30、与RDYWTCNT信号的逻信号的逻辑或辑或(两者都为低时效两者都为低时效)808864H,WTCNT? SWW=01, BNKCMP? 其他为其他为000000E8H 二、扩展总线控制寄存器二、扩展总线控制寄存器扩展总线控制寄存器是一个扩展总线控制寄存器是一个32位寄存器,它包含位寄存器,它包含了扩展总线操作的各控制位,具体如下图:了扩展总线操作的各控制位,具体如下图:保留位保留位 31 8 7 6 5 4 3 2 1 0 XX WTCNT SWW XX XX XX R/W R/W软件的等待方式。这三位字段规定了在软等待方式下,位产生内部等待状态所用的周期软件等待状态发生器。和WTCNT连接在
31、一起,这两位字段定义等待状态发生器的方式。复位功能读作位名称 复位值保留 0-2 000 3-4 SWW 115-7 WTCNT 111 三、可编程等待状态三、可编程等待状态SWW字段是用来选择等待状态产生的方式,字段是用来选择等待状态产生的方式,WTCNT字段是用来加载一个用于产生等待状态的内部定时器。字段是用来加载一个用于产生等待状态的内部定时器。SWW=11时等待状态的产生 RDY RDYwtcnt RDYint 0 0 0 0 1 1 1 0 1 1 1 1 RDY RDYwtcnt RDYin 0 0 0 0 1 1 1 0 0 1 1 1 RDY RDYwtcnt RDYint 0
32、 0 0 0 1 0 1 0 0 1 1 1 RDY RDYwtcnt RDYint 0 0 0 0 1 1 1 0 1 1 1 1SWW=0时等待的状态产生SWW=01时等待状态发生器SWW=10时等待状态的产生 WTCNT是是07的任何值,外部寻址开始时,其值被加的任何值,外部寻址开始时,其值被加载到计数器,计数器是每一个载到计数器,计数器是每一个H1H3时钟周期减少直到时钟周期减少直到0,并保持到下次寻址,计数器不是并保持到下次寻址,计数器不是0,RDYwtcnt=1,计数为时,计数为时,RDYwtcnt=0。2.5 外围设备外围设备一、定时器一、定时器 32 bit定时计数电踟,有内外
33、部两种时钟源,定时计数电踟,有内外部两种时钟源,产生两种信号形式:脉冲,时钟,在芯片上有一个产生两种信号形式:脉冲,时钟,在芯片上有一个IO引脚。引脚。 能够按规定间隔和能够按规定间隔和CPU或外通信,或对外部事或外通信,或对外部事件计数。件计数。 如启动如启动AD,启动一次通信产生一个时钟等。,启动一次通信产生一个时钟等。1、寄存器、寄存器 (1) 总体控制中存器确定定时器的操作方总体控制中存器确定定时器的操作方式,监视定时器的状态,控制式,监视定时器的状态,控制IO引脚的功能。引脚的功能。 (2) 周期寄存器规定了定时器发出信号的周期寄存器规定了定时器发出信号的频率。计数寄存器包含增值计数
34、器的现行状态,频率。计数寄存器包含增值计数器的现行状态,在输入时钟的上升或下降湍增加,其值等于周在输入时钟的上升或下降湍增加,其值等于周期寄存器的值时则自动清零。期寄存器的值时则自动清零。 2、时间脉冲发生器、时间脉冲发生器脉冲方式:脉冲方式:f=f(定时器时钟)周期寄存器。(定时器时钟)周期寄存器。脉宽脉宽1/f(H1) 时钟方式:时钟方式:f=f (定时器时钟)(定时器时钟) (2*周期周期寄存器)寄存器)占空比占空比50。定时器时钟定时器时钟f 有以下有以下2种:种:内部时钟源:内部时钟源:f= f(H1)2外部时钟源:外部时钟源:ff(H1)23、定时器操作方式、定时器操作方式即定时器
35、输入、输出的连接方式。即定时器输入、输出的连接方式。通过对字段通过对字段CLKSRC FUNC和和IO 的的设置,可配置成四种操作方式。设置,可配置成四种操作方式。4、定时器中断、定时器中断 计数寄存器复位到计数寄存器复位到0时会产生一个中断。当定时器计时会产生一个中断。当定时器计数寄存器等于或大于定时器周期寄存器中的值时,数寄存器等于或大于定时器周期寄存器中的值时,定时器的计数寄存器恢复为到零,定时中断能用来定时器的计数寄存器恢复为到零,定时中断能用来中断中断CPU或或DMA。每一个定时器的终端都允许控制,。每一个定时器的终端都允许控制,对于对于CPU 或或DMA都可在都可在CPU/DMA中
36、断允许寄存器中断允许寄存器中找到。中找到。当定时器中断出现时,如果定时总体控制寄存器当定时器中断出现时,如果定时总体控制寄存器中的中的FUNC=1和和CLKSRC=1 则相应的则相应的TCLK插谮上看到一插谮上看到一个状态的改变。状态的严格的改变还依赖于个状态的改变。状态的严格的改变还依赖于 C/P位的位的状态。状态。5、定时器初始化重置的步骤。、定时器初始化重置的步骤。 (1) 清除定时器总体控制寄存器的清除定时器总体控制寄存器的GO/HLD位使定时器处于保持。这能用写位使定时器处于保持。这能用写0到定到定时器总体控制寄存器来完成。请主义时器总体控制寄存器来完成。请主义 在复位使在复位使定时
37、器处于保持状态。定时器处于保持状态。 (2) 如果必要的话,可通过定时器总体控制如果必要的话,可通过定时器总体控制寄存器(用寄存器(用GO=HLD=0)以及定时器计数寄存)以及定时器计数寄存器和定时器周期寄存器重构定时器。器和定时器周期寄存器重构定时器。 (3)由设置定时器的总体控制寄存器的由设置定时器的总体控制寄存器的GO/HLD位启动定时器。位启动定时器。二、串行口二、串行口数据的同步串行传输端口,数据可以是数据的同步串行传输端口,数据可以是8、16、32bit也可以是帧任意数目的数据。有也可以是帧任意数目的数据。有6 个个IO引脚引脚用于和外部构成串行数据通信。用于和外部构成串行数据通信
38、。 在下面的内容学习中,请大家注意这样几个问在下面的内容学习中,请大家注意这样几个问题:题: 该串行口提供了什么样的功能?并由此可以推该串行口提供了什么样的功能?并由此可以推断它能和哪些现行的通信协议接口?断它能和哪些现行的通信协议接口? 串行通信协议中的指标(如数据率、帧同步、串行通信协议中的指标(如数据率、帧同步、位同步、码型、单双等)如何实现位同步、码型、单双等)如何实现? 对串行的介绍分几个部分对串行的介绍分几个部分,为详细查阅手册作引为详细查阅手册作引导。导。 串行口方块图串行口方块图1、寄存器组、寄存器组包括包括8个存储器映射寄存器,它们完整地个存储器映射寄存器,它们完整地提供了串
39、行通信所需的全部操作。提供了串行通信所需的全部操作。 总体控制寄存器总体控制寄存器控制串行口的总体功能,并确定串控制串行口的总体功能,并确定串行口的操作方式。行口的操作方式。 DRP DXP CLKRP CLKX RFSM XFSM RVA XVA31 28 27 26 25 24 23 22 21 20 19 18 17 16 X PR XR RI RT XI XT RL XL FSR FSXSerial Port Global Control Reg 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 RLCK XCLK HS RSR XSR FSX XRDY RR
40、DY位位 名称名称 复位复位 R/W0 RRDY O R1 XRDY 1 R 功能功能 RRDY1,接收缓冲器里有新的,接收缓冲器里有新的数据并准备读出。从数据并准备读出。从DRR读出到读出到RRDY1将会出现将会出现3个个H1H3周期的周期的延迟,这个信号的上升沿将延迟,这个信号的上升沿将RINT置置位。若位。若RRDY0从最后一次读出以后从最后一次读出以后接收没有新的数据,接收缓冲器读以接收没有新的数据,接收缓冲器读以后置后置0。 XRDY1,发送缓冲器己把数据,发送缓冲器己把数据的最后一位写到了移位器并准备了一的最后一位写到了移位器并准备了一个新的字,从发送移位器加载到个新的字,从发送移
41、位器加载到XRDY1出现出现3个个H1H3周期的延迟周期的延迟这个信号的上升沿将这个信号的上升沿将XINT置位。若置位。若XRDY0,发送缓冲器没有把数据最,发送缓冲器没有把数据最后一位写到发送移位器中同时也还没后一位写到发送移位器中同时也还没有准备好新的字。有准备好新的字。 FSXOUT=0(&1)把把FSX引脚置成输入引脚置成输入(出)(出)XSREMPTY0(或(或1)说明发送移位寄)说明发送移位寄存器空(没空)存器空(没空) RSRFULL1,出现了接收器的超出,出现了接收器的超出,连续方式下,当连续方式下,当RSR和和DRR两者都满时两者都满时RSRFULL1,非连续方式中,
42、当,非连续方式中,当RSR和和DRR完满而上一个新的完满而上一个新的FSR被接收时,被接收时,RSRFULL1,一个读,系统复信串行,一个读,系统复信串行口接收复位(口接收复位(RRESET1)将置)将置0。HS1,允许手动方式,允许手动方式,HS0,手动方,手动方式被禁止式被禁止2. 2 FSXOUT 0 R/W3 XSREMPTY 0 R4 RSRFULL 0 R5 HS 0 CLKXFUNC=1 CLKI/o, CLKXDATOU=FSX/DX/CLKX: CLKXDATIN= DXFUNC=1 DXI/O=DXDATOUT= DXDATIN= FSFUNC=1FSXI/O= FSXDA
43、TOUT= FSXDATIN= 808043H: CLKRFUNC= CLKI/O= CLKRDATOUT= FSR/DR/CLKR: CLKRDATIN= DRFUNC=1, DRI/O= DRDATOUT= DRDATN= FSRFUNC=1 FSRI/O= FSRDATOUT= FSRDAT/N= 808042H: XGO XHLD XC/P接受发定时器控接受发定时器控 XCLKSRCXTSAT= RGO= RHLD RC/P RCLKSRC RTSTAT 808045H Receive Counter 31-16 接收接收/发定时的计数器发定时的计数器 Transmit Counter
44、 15-0808046H Receive Period 31-16接收接收/发周期发周期 Transmit Period 15-0808044H RRDY0, XRDY0, FSXOUT=? XSREMPTY= RSRFULL= HS= XCLKSRCE= RCLKSRCE= XUAREN=0 RVAREN=0 XFSM=0,? RFSM=0? C L K X P = C L K R P = D X P = DRP= FSXP= FSRP=XLEN=01 RLEN=? XTINT=0XINT=0 RTINT= RINT=XRESET= RRESET= 808040HFSX/DX/CLKX 接口
45、控制寄存器接口控制寄存器控制了串行口引脚控制了串行口引脚 功能。功能。FSR/DR/CLKR接口控制寄存器接口控制寄存器接收发送定时器计数寄存器接收发送定时器计数寄存器 接收发送定时器计数寄存器接收发送定时器计数寄存器接收发送定时器周期及存储器接收发送定时器周期及存储器 数据发送寄存器数据发送寄存器 数据接收寄存器数据接收寄存器2、时钟与定时器、时钟与定时器 3、串行口的定时、串行口的定时 内部时钟源产生的串行口同步时钟频率的计算内部时钟源产生的串行口同步时钟频率的计算: f(脉冲方式)(脉冲方式)f(定时器时钟)周期寄存器(定时器时钟)周期寄存器 f(时钟方式)(时钟方式)f(定时器时钟)(
46、定时器时钟)(2X周期寄存器)周期寄存器) 外部时钟源产生的串行口时钟详见手册(串行口定时)外部时钟源产生的串行口时钟详见手册(串行口定时)4、中断源、中断源5、串行口初始化重构、串行口初始化重构2.7直接存储器访直接存储器访问问一一DMA总体控制寄存器总体控制寄存器二目的和源地址寄存器二目的和源地址寄存器三传输计数器寄存器三传输计数器寄存器四四CPU/DMA中断允许寄存器中断允许寄存器五五DMA存储器传输存储器传输六六DMA通道的同步通道的同步七七DMA中断中断八初始化重置的步骤八初始化重置的步骤 DMA控制器触够在没有控制器触够在没有CPU操作干预下执行输入输出功操作干预下执行输入输出功能
47、,它与外部存储器、外围设备接口,不会降低能,它与外部存储器、外围设备接口,不会降低CPU的计算速的计算速度。一个度。一个DMA传输包含两个操作:从任意一个存储器位置读传输包含两个操作:从任意一个存储器位置读出并写入到另一个任意的存储器位置。出并写入到另一个任意的存储器位置。 DMA操作由下列存储器映射的寄存器控制操作由下列存储器映射的寄存器控制:(一)(一)DMA总体控制寄存器总体控制寄存器(二)目的和源地址寄存器(二)目的和源地址寄存器(三)传输计数器寄存器(三)传输计数器寄存器(四)(四) CPUDMA 中断允许寄存器中断允许寄存器(五)(五)DMA存储器传输存储器传输 一次一次DMA传输
48、包含两个操作:从传输包含两个操作:从DMA源寄存器规定的源寄存器规定的地址读数据,把己读数据写入地址读数据,把己读数据写入DMA目的寄存器规定的地址。目的寄存器规定的地址。 传输受目的和源地址对象的性质而变化,即存储器在片传输受目的和源地址对象的性质而变化,即存储器在片内还是片外影响传输速率(读写周期数目、等待状态数目)。内还是片外影响传输速率(读写周期数目、等待状态数目)。 (六)(六)DMA通道的同步通道的同步 通过使用中断来同步,通过使用中断来同步,DMA总体控制中存器的总体控制中存器的SYNCH位规定位规定34种同步机构。种同步机构。不同步(不同步(00);源同步();源同步(01);
49、目的同步();目的同步(10);源);源和目的都同步(和目的都同步(11)。)。 (七)(七)DMA中断中断 当传输计数器达到零时,可以产生一个以当传输计数器达到零时,可以产生一个以CPU的的DMA中断,与此有关的操作:中断,与此有关的操作:CPUDMA中断允许寄存器(中断允许寄存器(IE)的的EDINT位,位,DMA全局寄存器的全局寄存器的TCINT位和位和TC位。位。 (八)初始化重置的步骤(八)初始化重置的步骤 用总体寄存器的用总体寄存器的START位保持。位保持。 (2)设置。)设置。 (3)START启动。启动。 3.1 加载程序指令的顺序加载程序指令的顺序3.2 重复指令重复指令R
50、PTB和和RPTS3.3 转移指令转移指令3.4 调用陷阱和返回调用陷阱和返回3.5 互锁互锁3.6 复位复位3.7 中断中断控制程序流的途径有两种:软件控制和控制程序流的途径有两种:软件控制和硬件控制。软件控制包括:重复、转移硬件控制。软件控制包括:重复、转移(标准标准的和延迟的的和延迟的)、调用、陷阱和返回。硬件控制、调用、陷阱和返回。硬件控制包括:操作、复位和中断。包括:操作、复位和中断。程序流控制的目标是使得程序流在每一程序流控制的目标是使得程序流在每一个指令的工作都能达到预期的目的。个指令的工作都能达到预期的目的。本章讨论在本章讨论在C3X上如何控制程序的执行上如何控制程序的执行顺序
51、以及影响程序执行的因素。顺序以及影响程序执行的因素。3.1 加载程序指令的顺序加载程序指令的顺序 给给C3XC3X芯片加电后芯片加电后, ,如果芯片复位引脚配置正确如果芯片复位引脚配置正确, ,芯片会自动执行复位操作。然后检查工作方式引脚芯片会自动执行复位操作。然后检查工作方式引脚的配置。在微机方式下,的配置。在微机方式下,DSPDSP按照中断引脚的配置,按照中断引脚的配置,自动选择程序引导方式,装载用户程序。之后,按自动选择程序引导方式,装载用户程序。之后,按照程序给出的指令依次顺序执行。照程序给出的指令依次顺序执行。CPUCPU的的PCPC计数器记计数器记录着下一条程序指令的地址。在遇到重
52、复、转移、录着下一条程序指令的地址。在遇到重复、转移、调用、陷阱和返回指令时,程序计数器调用、陷阱和返回指令时,程序计数器PCPC将被重新将被重新加载而改变程序的执行方向。加载而改变程序的执行方向。 RS、RE、RC、PC状态寄存器的状态寄存器的RM位及隐含的位及隐含的S位都被使用。软位都被使用。软件中件中RPTB的典型用法的典型用法: LDI SCR,RC (SCR0) RPTB loop。loop:。硬件中硬件中 , PC+1 RS loopRE 1RM 0S 可被中断,可被中断,RM=0 时,硬件对时,硬件对RC不作修改。不作修改。 RPTS的用法:的用法: 指令指令 RPTS scr
53、该指令不能被中断该指令不能被中断硬件如下硬件如下:PC+1 RSPC=1 RE1 RM1 S 这两条指令是四周期指这两条指令是四周期指 令令Src R 通过对通过对RC写入写入0或对或对RM位写入位写入0均可提停止前回路的重均可提停止前回路的重复。由于块重复方式修改复。由于块重复方式修改PC,则其他指令就不能同时修改,则其他指令就不能同时修改PC,因而产生以下约束因而产生以下约束:1、程序块中最后一条指令不能是、程序块中最后一条指令不能是Bcond,BR ,Bdcond, Cau,Callcond TRAPcons RETScond IDLE, RPTB或或RPTS.2、从程序块底部数起的四条
54、指令种的任何一条指令不能是、从程序块底部数起的四条指令种的任何一条指令不能是Bcond ,BRD 或或DbcondD。块重复可以嵌套块重复可以嵌套,但要保留和恢复但要保留和恢复RS, RE、RC和位。和位。尤其是在中断服务程序中,使用块重复可以通过检测位尤其是在中断服务程序中,使用块重复可以通过检测位来判断是有块嵌套。来判断是有块嵌套。3.3 转移指令转移指令 标准转移在执行转移之前刷新流水线,一而标准转移在执行转移之前刷新流水线,一而是占用四指令周期是占用四指令周期 延迟转移保证期后三条指令的执行发生在程延迟转移保证期后三条指令的执行发生在程序技术的被转移修改字之前。它禁止中断直到跟序技术的
55、被转移修改字之前。它禁止中断直到跟随延迟转移的那三条指令执行完,随延迟转移的那三条指令执行完,CPU被修改之被修改之后)这三条指令不能是:后)这三条指令不能是: Bcond,BcondD,BR,BRD,DbconelD,CAU,Callcond,TRAPcond,RETJcond,RPTB,RPT或或IDLE。3.4 调用、陷阱和返回调用、陷阱和返回 调用和陷阱(软中断)提了执行了一个子程序或函调用和陷阱(软中断)提了执行了一个子程序或函数的方法,同时也提供了返回。在数的方法,同时也提供了返回。在CALL,CALLcond和和TRAPcond 改变改变PC内容之前在堆栈中保留了内容之前在堆栈中
56、保留了PC之值。若之值。若使用使用RETScond,或或RETIcond指令,堆栈就可提供返回。指令,堆栈就可提供返回。 CALL将下一个将下一个PC值压栈之将操作数值压栈之将操作数SIC放入放入PC。 CALLcond与与CALL的区别有两点:的区别有两点:一个特殊状态为真一个特殊状态为真,才执行才执行CALL。SIC是与是与PC值有类的偏移量或用寄存口寻址值有类的偏移量或用寄存口寻址。 TRAPcond与与CALLcond的区别是:的区别是:中断被禁止,中断被禁止,ST的的GIE0,下一个下一个PC值被压栈。值被压栈。从从20h3Fh的鞭一地址单元中检索一个矢量关加载的鞭一地址单元中检索一
57、个矢量关加载到到PC,该地址值由指令,该地址值由指令A的陷阱数值确认。的陷阱数值确认。 RETScond要求一个特殊的状态必须为真时,将栈顶要求一个特殊的状态必须为真时,将栈顶弹出到弹出到PC,并立即执行该,并立即执行该PC值指出的指令。用来执行值指出的指令。用来执行调用的返回。调用的返回。 RETIcond与与RETScond的区别是执行的区别是执行RETScond的全的全部操作并置部操作并置GIE1,允许中断,用来执行陷阱,中断的,允许中断,用来执行陷阱,中断的返回。返回。 互重常见的多重处理结构之一是多个处理器共享全局存储互重常见的多重处理结构之一是多个处理器共享全局存储器为了允许多个处
58、理器取这个全局存储器,并且以紧凑相干方器为了允许多个处理器取这个全局存储器,并且以紧凑相干方式共享数据,需要一种形式的仲裁或握手这种仲裁需要就是式共享数据,需要一种形式的仲裁或握手这种仲裁需要就是TMS320C3X互锁操作的目的。互锁操作的目的。助记符描述操作LDFI把浮点数值装载到寄存器 信号互锁 src-dstDII 把整形数装载到寄存器,互锁信号互锁src-dst SIGI信号,互锁信号互锁,清除互锁STFI 把浮点数值存到存储器,互锁src-dst清除互锁STII 把整形数存储到存储器,互锁src-dst清除互锁3.6 复位复位 CPU CPU、外设被复位。、外设被复位。 ST ST,
59、IEIE,IFIF,IOFIOF被载装被载装0 0, 复位矢量读自存储器复位矢量读自存储器0h0h单元并装载到单元并装载到PCPC 执行开始。执行开始。 由相同的系统时钟驱动多个由相同的系统时钟驱动多个C3XC3X,则它它们可以,则它它们可以被同步复位,当被同步复位,当RESTREST发生从发生从1 1到的转变时各处理器被置到的转变时各处理器被置在一个规定好的内部相位上。在一个规定好的内部相位上。 中断按来源分为内部、外部;按响应模式分为可屏中断按来源分为内部、外部;按响应模式分为可屏蔽、不可屏蔽。蔽、不可屏蔽。中断具有优先级之分,可以使能或关闭,触发中断中断具有优先级之分,可以使能或关闭,触
60、发中断必须使用正确的信号形式,中断标识符由硬件置位,指必须使用正确的信号形式,中断标识符由硬件置位,指明了中断是否发生。明了中断是否发生。CPUCPU、DMADMA都可以提供中断服务。都可以提供中断服务。中断服务程序中,中断处理前后必须保护和恢复现中断服务程序中,中断处理前后必须保护和恢复现场,包括中断处理中使用的各个寄存器,尤其是场,包括中断处理中使用的各个寄存器,尤其是CPUCPU状状态寄存器。中断一旦被使能,就自动进入中断服务,但态寄存器。中断一旦被使能,就自动进入中断服务,但必须由程序返回。使用多个中断时,可能发生中断嵌套,必须由程序返回。使用多个中断时,可能发生中断嵌套,会使现场扩大,有必要
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 化工生产现场技术员岗前工作合规考核试卷含答案
- 重冶湿法冶炼工安全操作考核试卷含答案
- 2026年餐厨垃圾合同
- 中药材种植员道德评优考核试卷含答案
- 甲烷合成工班组安全竞赛考核试卷含答案
- 气体分馏装置操作工岗前安全综合考核试卷含答案
- 初中数学教学中数学思维可视化教学的应用研究课题报告教学研究课题报告
- 投资入股合作协议合同
- 电子电气产品能效检验员岗前任职考核试卷含答案
- 无人机航拍服务委托协议
- 施工安全专项方案编制依据
- 2025年人事行政经理年底工作总结及2026年工作计划
- 病理报告撰写规范指南
- 机器人直销合同范本
- 河南青铜鸣大联考2025-2026学年上学期高二期中考试物理(A)试卷(含解析)
- 幼儿园保育员午睡管理培训
- (独家!)“十五五”防震减灾发展规划
- 2025年国家开放大学《现代汉语》期末考试复习试题及答案解析
- 2025秋新教科版三年级上册科学全册知识点(新教材专用 )
- 2025版中风早期症状识别及急救培训
- 工程伦理-形考任务二(权重20%)-国开(SX)-参考资料
评论
0/150
提交评论