第7章--TMS320C55x硬件设计实例_第1页
第7章--TMS320C55x硬件设计实例_第2页
第7章--TMS320C55x硬件设计实例_第3页
第7章--TMS320C55x硬件设计实例_第4页
第7章--TMS320C55x硬件设计实例_第5页
已阅读5页,还剩114页未读 继续免费阅读

下载本文档

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

文档简介

1、20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用1 120212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用2 2 20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3 37.1 DSP最小系统设计最小系统设计 7.2 A/D与与D/A设计设计 7.3 C55x在语音系统中的应用在语音系统中的应用 7.4 手写系统的实现手写系统的实现 7.5 C55x在软件无线电中的应用在软件无线电中的应

2、用20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用4 420212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用5 520212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用6 620212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用7 720212021年年1111月月2525日日TMS320C55x DSPTMS320C55x

3、DSP原理及应用原理及应用8 8 如果如果DSP系统内包含高频模拟电路,就需要对系统内包含高频模拟电路,就需要对TPS54110的开关频率进行精心选择,这是因为开关频率的的开关频率进行精心选择,这是因为开关频率的倍频可能在模拟信号频率范围之内,如果信号泄漏到模拟电倍频可能在模拟信号频率范围之内,如果信号泄漏到模拟电路之中,将对模拟信号造成干扰,路之中,将对模拟信号造成干扰,TPS54110的开关频率范的开关频率范围从围从280kHz到到700kHz,通过调整图中,通过调整图中R4电阻的阻值就可以电阻的阻值就可以十分容易的改变开关的频率,下面给出了开关频率的计算方十分容易的改变开关的频率,下面给

4、出了开关频率的计算方法:法:s4100500kHz(kHz)R (kf) 在图中在图中R4为为71.5k ,对应的开关频率为,对应的开关频率为700kHz。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用9 9 TPS54110的输出电压可以通过调整的输出电压可以通过调整R1和和R2的阻值来进的阻值来进行调整,下面给出行调整,下面给出R1和和R2的阻值计算公式:的阻值计算公式:21OUT0.8910.891RRV C55x的供电可以通过并联两路的供电可以通过并联两路TPS54110来实现,如果来实现,如果系统对电源的上电顺

5、序有要求,可以通过系统对电源的上电顺序有要求,可以通过TPS54110的的PWRGD和和SS/ENA引脚来控制,接着给出的例子是引脚来控制,接着给出的例子是DSP内内核首先上电,当内核电压稳定后外围接口再上电。核首先上电,当内核电压稳定后外围接口再上电。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用101020212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用1111 在系统上电过程中,如果电源电压还没有稳定,这时在系统上电过程中,如果电源电压还没有稳定,

6、这时DSP进入工作状态可能造成不可预知的后果,甚至引起硬件进入工作状态可能造成不可预知的后果,甚至引起硬件损坏,解决这个问题的方法是损坏,解决这个问题的方法是DSP在上电过程在上电过程 中保持复位中保持复位状态,因此有必要在系统中加入上电复位电路。上电复位电状态,因此有必要在系统中加入上电复位电路。上电复位电路的作用是保证上电可靠,并在用户需要时实现手工复位。路的作用是保证上电可靠,并在用户需要时实现手工复位。 下面给出采用下面给出采用MAX708S构建的构建的DSP复位电路,该复位复位电路,该复位电路可以提供低输入电压保护、复位时间延迟和手工复位等电路可以提供低输入电压保护、复位时间延迟和手

7、工复位等功能。功能。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用1212 图中图中DSPRST为为DSP复位信号,复位信号,INT为为DSP低电压报警低电压报警信号,当信号,当PFI引脚电压低于引脚电压低于2.93V时,复位电路将向时,复位电路将向DSP发出发出低电压中断信号。低电压中断信号。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用1313 C55x系列系列DSP内部具有锁相环电路,锁相环可以对输内部具有锁相环电路,锁相环可以对输入时钟信号

8、进行倍频和分频,并将所产生的信号作为入时钟信号进行倍频和分频,并将所产生的信号作为DSP的的工作时钟。工作时钟。C55x的时钟输入信号可以采用两种方式产生:的时钟输入信号可以采用两种方式产生:第一种是采用外部晶体,利用内部振荡器产生时钟信号,图第一种是采用外部晶体,利用内部振荡器产生时钟信号,图7-4给出了采用内部振荡器的原理图;第二种时钟输入方式给出了采用内部振荡器的原理图;第二种时钟输入方式是从是从X2/CLKIN引脚输入时钟信号,采用这种方式引脚输入时钟信号,采用这种方式X1引脚必引脚必须悬空,不接任何信号。注意当须悬空,不接任何信号。注意当DSP采用的是模拟锁相环时采用的是模拟锁相环时

9、,必须保证输入时钟信号的信号过冲不能超过数据手册所给,必须保证输入时钟信号的信号过冲不能超过数据手册所给出的范围,否则锁相环将可能运行不正常,通过在线路中串出的范围,否则锁相环将可能运行不正常,通过在线路中串联电阻可以防止信号过冲。联电阻可以防止信号过冲。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用1414用外部晶体和内部振荡器产生用外部晶体和内部振荡器产生输入时钟输入时钟20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用1515 JTAG接口是接口

10、是DSP的调试接口,用户可以利用的调试接口,用户可以利用JTAG接口接口完成程序的下载、调试和调试信息输出,通过该接口可以查完成程序的下载、调试和调试信息输出,通过该接口可以查看看DSP的存储器、寄存器等的内容,如果的存储器、寄存器等的内容,如果DSP连接了非易失连接了非易失存储器,如存储器,如Flash存储器,还可以通过存储器,还可以通过JTAG接口完成芯片的接口完成芯片的烧录。烧录。 下面给出下面给出JTAG接口电路的连接图。接口电路的连接图。 20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用1616 C5000系列系

11、列DSP为方便用户使用提供了多种加载方式,为方便用户使用提供了多种加载方式,以以TMS320VC5510为例,为例,TMS320VC5510有增强主机接口有增强主机接口(EHPI)加载方式、并行外部存储器接口()加载方式、并行外部存储器接口(EMIF)加载)加载方式、标准串口加载方式以及支持外围设备接口(方式、标准串口加载方式以及支持外围设备接口(SPI)加)加载方式等多种加载方式。载方式等多种加载方式。 加载方式可以通过预置通用加载方式可以通过预置通用I/O引脚的高低电平来选择引脚的高低电平来选择,在表格中给出了具体的说明。,在表格中给出了具体的说明。20212021年年1111月月2525

12、日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用1717TMS320VC5510加载方式加载方式 BOOTM3:0加加 载载 方方 式式0000或或1000不加载不加载00100111保留保留0001SPI加载(支持加载(支持24 位地址的位地址的SPI EEROM)1001SPI加载(支持加载(支持18位地址的位地址的SPI EEROM)1010EMIF加载(加载(8 位宽外部异步寄存器)位宽外部异步寄存器)1011EMIF加载(加载(16 位宽外部异步寄存器)位宽外部异步寄存器)1100EMIF加载(加载(32 位宽外部异步寄存器)位宽外部异步寄存器)110

13、1EHPI加载加载1110标准串口加载(标准串口加载(McBSP0口,口,16 位字宽)位字宽)1111标准串口加载(标准串口加载(McBSP0口,口,8 位字宽)位字宽)20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用1818 加载模式可以分为两类:由加载模式可以分为两类:由DSP控制的加载模式和由外控制的加载模式和由外部主机控制的加载模式。并行外部寄存器(部主机控制的加载模式。并行外部寄存器(EMIF)加载、)加载、标准串口加载,以及串行外设接口(标准串口加载,以及串行外设接口(SPI)加载都是由)加载都是由DSP控控

14、制的加载模式。在此类加载模式下,下载程序之前先要生成制的加载模式。在此类加载模式下,下载程序之前先要生成一张载入表。载入表除了携带有代码段和数据段信息外,还一张载入表。载入表除了携带有代码段和数据段信息外,还有向有向DSP下载程序的入口点地址、寄存器配置信息和可编程下载程序的入口点地址、寄存器配置信息和可编程延迟信息,应用这些信息来配置延迟信息,应用这些信息来配置DSP以完成下载过程。图中以完成下载过程。图中给出了载入表的结构。给出了载入表的结构。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用1919载入表的结构载入表的

15、结构 20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用2020 载入表可通过载入表可通过COFF文件文件/十六进制文件专用转换工具十六进制文件专用转换工具HEX55.EXE生成,该转换工具在生成,该转换工具在CCS安装目录安装目录/C5500/cgtools/bin目录下。目录下。HEX55可在命令提示符环境下可在命令提示符环境下运行该命令,举例如下:运行该命令,举例如下: hex55 firmware.cmd -map firmware.map 这是调用这是调用HEX55转换工具的例子,其中转换工具的例子,其中firmw

16、are.cmd为命令文件,为命令文件,-map firmware.map为命令行选项,即生成为命令行选项,即生成map文件文件firmware.map。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用2121 命令文件包含生成下载表的各种信息,下面给出的就命令文件包含生成下载表的各种信息,下面给出的就是命令文件的例子:是命令文件的例子:boot ;创建一个下载表创建一个下载表v5510:2 ;DSP型号:型号:TMS320VC5510,版本号版本号2serial8 ;8位标准串口载入模式位标准串口载入模式reg_confi

17、g 0 x1c00, 0 x2180 ;向地址为向地址为0 x1c00的外设的外设寄存器写入数值寄存器写入数值0Xx2180delay 0 x100 ;延迟延迟256个个CPU时钟周期时钟周期i ;输出数据格式为输出数据格式为Intel格式格式o my_app.io ;输出文件名输出文件名my_app.out ;输入文件名输入文件名20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用2222 外部主机控制的加载模式只有外部主机控制的加载模式只有EHPI加载一种。加载一种。EHPI(Enhanced Host Port Inte

18、rface)是扩展主机接口的英文缩写)是扩展主机接口的英文缩写,它可以使主机通过,它可以使主机通过HPI接口直接访问接口直接访问DSP的存储器,这种的存储器,这种访问是不需访问是不需DSP干预的。在所给出的通过干预的。在所给出的通过EHPI口加载的例口加载的例子中,将给出直接下载子中,将给出直接下载.OUT文件的程序实例,通过该程序文件的程序实例,通过该程序可不必再使用转换工具将可不必再使用转换工具将.OUT文件转换为十六进制格式文文件转换为十六进制格式文件。件。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用2323 并

19、行外部存储器加载是通过外部并行存储器接口(并行外部存储器加载是通过外部并行存储器接口(External Memory Interface)加载程序。所用的外部存储器)加载程序。所用的外部存储器可以是并行可以是并行EPROM、EEPROM、Flash存储器、存储器、FRAM(铁电存储器)等非易失存储器,也可是铁电存储器)等非易失存储器,也可是SRAM、双端口存储、双端口存储器等易失存储器,但当使用易失存储器时,下载表要先通过器等易失存储器,但当使用易失存储器时,下载表要先通过某种方式在某种方式在DSP引导之前存储在存储器上。通常使用的并行引导之前存储在存储器上。通常使用的并行外部存储器加载是将程

20、序固化在非易失存储器上。外部存储器加载是将程序固化在非易失存储器上。 使用使用EMIF加载方式的优点是不需要外部时钟驱动,非加载方式的优点是不需要外部时钟驱动,非易失存储器种类多样,容量较大,除了存储下载表之外还可易失存储器种类多样,容量较大,除了存储下载表之外还可存储系统需要保存的关键数据,以便在掉电时保存信息,这存储系统需要保存的关键数据,以便在掉电时保存信息,这种下载方式的缺点是连线复杂,需要考虑并行非易失存储器种下载方式的缺点是连线复杂,需要考虑并行非易失存储器与与EMIF接口的匹配关系。接口的匹配关系。20212021年年1111月月2525日日TMS320C55x DSPTMS32

21、0C55x DSP原理及应用原理及应用2424 8位异步存储器加载连接关系位异步存储器加载连接关系 20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用2525 16位异步存储器加载连接关系位异步存储器加载连接关系 20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用2626 32位异步存储器加载连接关系位异步存储器加载连接关系 20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用2727 在

22、使用并行异步存储器加载时,应注意地址线的连接在使用并行异步存储器加载时,应注意地址线的连接。当使用。当使用8位数据宽的存储器时,位数据宽的存储器时,DSP的地址线是从第的地址线是从第21位位到第到第0位;使用位;使用16位数据宽的存储器时,位数据宽的存储器时,DSP的地址线是从的地址线是从第第21位到第位到第1位;使用位;使用32位数据宽的存储器时,位数据宽的存储器时,DSP的地址的地址线是从第线是从第21位到第位到第2位。位。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用2828 下载表在下载表在DSP中所占空间从中所

23、占空间从0 x200000H(字寻址)开始,(字寻址)开始,即占用即占用CE1空间,对应空间,对应8位、位、16位、位、32位的存储器在位的存储器在HEX55的的命令文件中应设置对应的存储器,其中命令文件中应设置对应的存储器,其中parallel8对应对应8位存位存储器;储器;parallel16对应对应16位存储器;位存储器;parallel32对应对应32位存储位存储器。器。 当使用当使用EMIF加载模式时,加载模式时,DSP将按如下时序设置将按如下时序设置EMIF口。口。l读建立时间为读建立时间为15个周期(个周期(1111b););l读选通时间为读选通时间为63个周期(个周期(1111

24、11b););l读保持时间为读保持时间为3个周期(个周期(11b););l读扩展保持时间为读扩展保持时间为1个周期(个周期(01b)。)。 在选取存储器时必须注意存储器是否满足以上时序关系在选取存储器时必须注意存储器是否满足以上时序关系,如果满足可不连接,如果满足可不连接ARDY信号,如果存储器不满足读取时信号,如果存储器不满足读取时序关系则应连接序关系则应连接ARDY信号,另外插入硬件等待状态。信号,另外插入硬件等待状态。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用2929 标准串口加载程序是指通过标准串口加载程序是

25、指通过McBSP0(多通道缓存串口(多通道缓存串口0)在标准串)在标准串口模式下向口模式下向DSP加载程序。该加载方式的优点是连接信号线较少,缺点是加载程序。该加载方式的优点是连接信号线较少,缺点是需要由外部产生帧同步信号和串行时钟信号。该方式还需要外部逻辑向需要由外部产生帧同步信号和串行时钟信号。该方式还需要外部逻辑向串行存储器发出读指令,无法做到无缝连接。此外,该方式还固定占用串行存储器发出读指令,无法做到无缝连接。此外,该方式还固定占用McBSP0口。口。 在标准串口模式下,在标准串口模式下,McBSP0口将进行如下配置:口将进行如下配置:l每帧一个阶段每帧一个阶段 (RPHASE =

26、0b););l每阶段字数为每阶段字数为1 (RFRLEN1 = 0000000b););l字长为字长为8位或位或16位(位(RWDLEN1 = 000b for 8-bit mode, 010b for 16-bit mode););l数据右对齐,延迟为(数据右对齐,延迟为(RJUST = 00bRDATDLY = 01b););l接收时钟及接收帧信号由外部产生。接收时钟及接收帧信号由外部产生。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3030标准串行加载方式硬件连接标准串行加载方式硬件连接 20212021年年11

27、11月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3131 DSP的接收时钟的接收时钟CLKR0和串行存储器串行时钟和串行存储器串行时钟SCLK由由外部逻辑外部逻辑CLK信号提供,帧信号信号提供,帧信号FSR0由外部逻辑由外部逻辑FRAME信信号提供,串行存储器命令字由外部逻辑号提供,串行存储器命令字由外部逻辑INSO信号提供。信号提供。DSP通用输入通用输入/输出信号输出信号IO4向外部逻辑发出握手信号。下面向外部逻辑发出握手信号。下面给出给出DR0、CLKR0和和FSR0三个信号的时序关系。三个信号的时序关系。McBSP0载入数据时序图(载入数

28、据时序图(16位)位) 20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3232 使用标准串行加载模式时,要求接收时钟必须小于使用标准串行加载模式时,要求接收时钟必须小于DSP主时钟的主时钟的1/8。除此之外,在加载下一个数据之前必须保持。除此之外,在加载下一个数据之前必须保持足够的等待时间,以防止数据溢出。通用输入足够的等待时间,以防止数据溢出。通用输入/输出信号输出信号IO4可作为数据传送的握手信号,当可作为数据传送的握手信号,当DSP还没有准备好接收新数还没有准备好接收新数据时,据时,IO4会保持高电平,直到会保持高

29、电平,直到DSP准备接收新数据,下图准备接收新数据,下图就说明了这种时序关系。就说明了这种时序关系。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3333IO4在标准串口下载模式下产生延迟信号在标准串口下载模式下产生延迟信号20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3434 串行外设接口标准(串行外设接口标准(SPI)是)是Motorola公司提出的一公司提出的一种串行总线标准,该标准具有连接简单,控制方便等特点种串行总线标准,该标准具有连接简

30、单,控制方便等特点,同时针对该标准,同时针对该标准,Atmel等公司研制了等公司研制了SPI口的口的EEPROM,而,而C55x系列系列DSP也提供了也提供了SPI接口加载功能。接口加载功能。 SPI接口只用三根线就可完成串行数据传输,接口只用三根线就可完成串行数据传输,DSP作为作为主方控制主方控制SPI接口。这种加载方式不需外部时钟和外部逻接口。这种加载方式不需外部时钟和外部逻辑,可以做到无缝连接。辑,可以做到无缝连接。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3535SPI加载方式硬件连接加载方式硬件连接202

31、12021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3636SPI加载方式时序关系图加载方式时序关系图 20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3737 C55x的的EHPI接口是在接口是在C54x系列系列HPI接口的基础上发展起来的。接口的基础上发展起来的。EHPI接口提供了接口提供了EHPI地址线,将地址线,将HPI口的数据口的数据/地址复用模式改为数地址复用模式改为数据、地址非复用模式,提高了数据的传输速率,简化了系统的软据、地址非复用模式,提高了

32、数据的传输速率,简化了系统的软/硬件硬件设计,并且实现了设计,并且实现了DSP与主机间的无缝连接。为保持继承性,与主机间的无缝连接。为保持继承性,EHPI接接口还保留了复用模式;但复用模式必须在软、硬件设计上采取特殊设口还保留了复用模式;但复用模式必须在软、硬件设计上采取特殊设计,并且降低了数据的传输速率,因此这里推荐采用非复用模式。计,并且降低了数据的传输速率,因此这里推荐采用非复用模式。 在许多系统中是微控制器(在许多系统中是微控制器(MCU)和数字信号处理器()和数字信号处理器(DSP)联)联合工作。微控制器作为主机主要起控制作用,而主机与合工作。微控制器作为主机主要起控制作用,而主机与

33、DSP最直接的最直接的连接方式就是通过连接方式就是通过EHPI接口,通过该接口主机可以直接访问接口,通过该接口主机可以直接访问DSP内存内存而无需而无需DSP干预。如果主机接入了干预。如果主机接入了DSP的的EHPI口,则采用口,则采用EHPI口加载口加载方式是十分方便的。由于这种加载方式是由主机的软件控制,相比其方式是十分方便的。由于这种加载方式是由主机的软件控制,相比其他方式更加便利、灵活。他方式更加便利、灵活。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3838 EHPI加载模式下加载模式下ARM7与与DSP的连

34、接的连接20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用3939 由于由于EHPI口的读口的读/写信号和地址锁存信号之间要保持写信号和地址锁存信号之间要保持一定的时间间隔,因此在这里使用一定的时间间隔,因此在这里使用ARM7处理器的通用输处理器的通用输入入/输出引脚输出引脚IO1向向DSP发出读发出读/写信号,这样的连接只需在写信号,这样的连接只需在读读/写写EHPI接口之前预置接口之前预置IO1的输出电平即可。如果将的输出电平即可。如果将NEW信号直接接到信号直接接到HR/W上,有可能出现地址锁存错误的上,有可能出现地址

35、锁存错误的情况。情况。 编写的程序在编译环境中一般都直接生成编写的程序在编译环境中一般都直接生成.out文件。文件。如果能够直接向如果能够直接向DSP中下载中下载.out文件,将省去转换的过程。文件,将省去转换的过程。这样做的缺点是这样做的缺点是.out文件包含编译信息,有可能比经过文件包含编译信息,有可能比经过HEX55转换后的文件占用非易失存储器更多的空间,这可转换后的文件占用非易失存储器更多的空间,这可以通过生成以通过生成release型型.out文件解决。文件解决。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用4

36、040 .out文件采用文件采用COFF文件格式。这种文件格式包含文件文件格式。这种文件格式包含文件头信息、段信息、代码段和数据段、重置信息、行号表以及头信息、段信息、代码段和数据段、重置信息、行号表以及符号表,首先定义各种结构以方便调用。符号表,首先定义各种结构以方便调用。首先定义文件头首先定义文件头:typedef _packed struct INT16U Version_ID;/COFF文件版本号INT16U Num_SectHead;/段头的数量INT32U Time_File;/文件生成时间INT32U File_Pointer; /文件指针;存放符号表起始地址INT32U Ent

37、ry_Symbol;/符号表入口数量INT16U Num_OptHeader; /可选头字节数INT16UFlags;/标志INT16U Target_ID; /目标号;表示该文件适合的处理器类型 FileHeader;20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用4141定义可选头结构:定义可选头结构:typedef _packed struct INT16S Magic_Num;/ SunOS或HP-UX 为108h ;DOS 为 801hINT16S Version_Stamp;/版本标志INT32S Size_E

38、xe_Code;/执行代码的长度(字节)INT32S Size_Data_Sec; /初始化段.data段的长度(字节)INT32S Size_Bss_Sec;/非初始化段.bss段的长度(字节)INT32S Size_Entry_Point;/入口点INT32S Begin_Addr_Exec;/可执行代码起始地址INT32S Begin_Addr_Inidat; /初始化数据段起始地址 OptFileHeader;20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用4242定义段头结构:定义段头结构:typedef _pa

39、cked struct char sect8;/当段名小于八个字符时这里存放段名,大于八个字符 /时存放指向该段名的指针INT32S Sec_PhyAddress;/段的物理地址INT32S Sec_VirAddress;/段的虚拟地址INT32S Sec_Size;/段的长度(字节)INT32S Pointer_Rawdata;/指向代码的文件指针INT32S Pointer_ReEntry;/指向重置入口的文件指针INT32S Pointer_LineEntry; /指向行号入口的文件指针INT32U Num_ReEntry;/重置入口数量INT32U Num_LineEntry;/行号入

40、口数量INT32U Flag;/标志INT16S Reserved; /保留INT16U Mem_Page_Num;/内存页号 SectionHeader;20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用4343 程序假设程序假设.out文件已经存在非易失存储器当中,文件已经存在非易失存储器当中,Dsp_BaseAddre是是DSP内存映射在内存映射在ARM上的启始地址,上的启始地址,DspPro为指向为指向.out文件的指针。文件的指针。void LoadDSP(uint32 Dsp_BaseAddre,uint16 *

41、DspPro)char *filestruct;uint16 *Source,*Target;FileHeader *file_header1;SectionHeader *section_header1;uint16 size,offset;int i,j;20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用4444/ DSP RESET /mask=mask |DSPRW| DSPRSTPIN | HCNTL0PIN;open _pio_ (mask , PIO_OUTPUT ) ;Pio_data=read _pio (

42、&PIO_DESC);Pio_data |=DSPRSTCLR|DSRREAD;write _pio ( mask, Pio_data ) ; for(i=0;i10;i+)/等待 10ms for(j=0;jNum_OptHeader=0)offset=size;elseoffset=size+28;size=sizeof(section_header1);section_header1=(SectionHeader *)&DspPro+offset;20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用464

43、6for(i=1;iNum_SectHead;i+)Source=(uint16 *)&DspPro+section_header1-Pointer_Rawdata;Target=(uint16 *)Dsp_BaseAddre+section_header1 -Sec_PhyAddress/2;for(j=0;jSec_Size/2;j+)Targetj=Sourcej;section_header1 += size;20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用4747/DSP begins to run/Ta

44、rget=(uint16 *)Dsp_BaseAddre;Target0=0 x1;Pio_data= read_pio(&PIO_DESC);Pio_data |= HCNTL0MEM;write_pio ( mask, Pio_data ) ;20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用484820212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用4949 信号处理标准结构信号处理标准结构 A/D采样芯片按数字接口分类可以分为串行接口和并行采

45、样芯片按数字接口分类可以分为串行接口和并行接口两大类,串行接口接口两大类,串行接口A/D转换芯片主要适用于转换芯片主要适用于100kHz以以下采样速率,对于下采样速率,对于100kHz以上采样率一般采用并行接口以上采样率一般采用并行接口A/D转换芯片。转换芯片。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用505020212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用5151串行采样芯片与串行采样芯片与DSP的连接的连接20212021年年1111月月25

46、25日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用5252信号采集过程如下:信号采集过程如下:(1)首先关闭所有中断。)首先关闭所有中断。(2)处理器设置串口)处理器设置串口McBSP0。MOV#0 x0000,PORT(#SPCR1_0) ;/* spcr1 */ ; DBL =0 (关闭闭环模式) ; RJUST=00b (接收数据右对齐,不进行符号扩展) ; CLKSTP=00b (关闭时钟停止模式) ; Reserve=000b ; DXENA=0 (关闭DX延迟) ; ABIS=0 (关闭ABIS模式) ; RINTM=00b (收到数据CPU发出中

47、断) ; RSYNCERR=0 ; RFULL=0 ; RRDY=0 ; RRST=0 (处于RESET状态) ; 0000000000000000b=0000h20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用5353MOV #0 x200,PORT(#SPCR2_0) ; Reserve=000000b ; FREE=1 ; SOFT=0 (McBSP发送和接收时钟继续运行) ; FRST=0 (打开帧同步逻辑) ; GRST=0 (采样率产生器处于RESET状态) ; XINTM=00b (XRDY由0变1,发出XIN

48、T信号) ; XSYNCERR=0 ; XEMPTY=0 ; XRDY=0 ; XRST=0 (处于RESET状态) ; 0000001000000000b=0200h20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用5454MOV#0 x0a03,PORT(#PCR0) ;/* pcr */ ; Reserve=0 ; IDLE_EN=0 ; XIOEN=0 ; RIOEN=0 ; FSXM=1(McBSP内部产生发送帧同步信号) ; FSRM=0 (接收帧同步信号由外部产生) ; CLKXM=1(发送时钟信号由采样率产生

49、器产生) ; CLKRM=0(接收时钟信号由采样率产生器产生) ; SCLKME=0(CPU clock) ; CLKS_STAT=0 ; DX_STAT=0 ; DR_STAT=0 ; FSXP=0(发送帧同步信号高有效) ; FSRP=0(接收帧同步信号高有效) ; CLKXP=1(发送时钟下降沿有效) ; CLKRP=1(接收时钟翻转) ; 0000 10100000 0011=0A03h20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用5555MOV#0 x00cb,PORT(#SRGR1_0); /* srgr1

50、*/ ; FWID = 0000 0000 (帧同步信号脉冲宽度为1) ; CLKGDV= 1100 1011b(203) ; 0000 0000 1100 1011b=00CBhMOV#0 x301f,PORT(#SRGR2_0); /* srgr2 */ ; GSYNC=0 (无外部时钟同步) ; CLKSP=0 ; CLKSM=1 (CPU clock) ; FSGM=1 (采样率产生器产生帧信号) ; FPER=0000 0000 1111 (31) ; 0011 0000 0000 1111=300fh MOV#0 x0020,PORT(#XCR1_0); /* xcr1 */ ;

51、Reserve=0 ; XFRLEN1=0 (单字) ; XWDLEN1=001 (16bits) ; Reserve=0 0000 ; 0000 0000 0010 0000b=0020h20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用5656MOV#0 x0004,PORT(#XCR2_0); /* xcr2 */ ; XPHASE=0 (单相帧) ; XFRLEN2=000 0000(单字) ; XWDLEN2=000 (8bits) ; XCOMPAND=00 (非压缩模式) ; XFIG=1 (忽略错误FSR脉冲

52、) ; XDATDLY=00 (延迟0bit) ; 0000 0000 0000 0100b=0004hMOV#0 x0020,PORT(#RCR1_0); /* rcr1 */ ; Reserve=0 ; RFRLEN1=000 0000b(单字) ; RWDLEN1=001b 12bits ; Reserve=00000b ; 0000 0000 0010 0000b=0020H20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用5757MOV#0 x0025,PORT(#RCR2_0); /* rcr2 */ ; RPH

53、ASE=0 (单相帧) ; RFRLEN2=000 0000b(单字) ; RWDLEN2=001b 12bits ; RCOMPAND=00b (不压缩,首先接收高位) ; RFIG=1 (忽略错误FSR脉冲) ; RDATDLY=01b (延迟1bit) ; 0000 0000 0010 0101b=0025hMOV#0 x0001,PORT(#MCR1_0);无需多个通道MOV#0 x0001,PORT(#MCR2_0)MOV#0 x0001,PORT(#RCERA_0) ;选择通道0MOV#0 x0001,PORT(#XCERA_0) ;选择通道0MOV#0 x0240,PORT(#S

54、PCR2_0) ;GRST=1,启动采样率发 ;生器RPT #0 x200NOP20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用5858MOV#0 x0241,PORT(#SPCR2_0) ;XRST=1,启动发送器MOV#0 x0001,PORT(#SPCR1_0);RRST=1,启动接收器MOV#0 x9f,PORT(#DXR1_0)MOV#0 x02C1,PORT(#SPCR2_0);FRST=1,启动帧同步(3)允许中断。)允许中断。(4)中断服务子程序进行数据存储。)中断服务子程序进行数据存储。_RINT_Isr

55、1:PSH AC0PSH AC1PSHBOTH XAR0PSHT0BCLRCPLMOVport(#DRR1_0),AC1;读采样值20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用5959MOV STATUE,T0;判断通道号SUB#1,T0,AC0BCCL1,AC0=0 SUB #2,T0,AC0BCC L2,AC0=0SUB#3,T0,AC0BCCL3,AC0=0MOV0XD0, port(#DXR1_0);发下次采样命令字MOVADD0,AC0MOVAC0,AR0MOV AC1,*AR0+MOV AR0,ADD0MOV

56、#1, STATUEBSENDL1:MOV0XA0, port(#DXR1_0);发下次采样命令字20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用6060MOVADD1,AC0MOVAC0,AR0MOV AC1,*AR0+MOV AR0,ADD1MOV#2, STATUEBSENDL2:MOV0XE0, port(#DXR1_0) ;发下次采样命令字MOVADD2,AC0MOVAC0,AR0MOV AC1,*AR0+MOV AR0,ADD2MOV#3, STATUEBSEND20212021年年1111月月2525日日TM

57、S320C55x DSPTMS320C55x DSP原理及应用原理及应用6161L3:MOV0X90, port(#DXR1_0) ;发下次采样命令字MOVADD3,AC0MOVAC0,AR0MOV AC1,*AR0+MOV AR0,ADD3MOV#0, STATUERETI20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用6262 20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用6363并行采集系统框图并行采集系统框图 20212021年年1111月月

58、2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用646420212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用6565并行采样时序关系图并行采样时序关系图 20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用66661中断方式中断方式 中断方式是通过外部引脚中断方式是通过外部引脚INT3引发硬件中断,中断服引发硬件中断,中断服务子程序将数据导入内存,其程序如下。务子程序将数据导入内存,其程序如下。 首先设置寻址状态首先设置

59、寻址状态BSET 0,ST2_55 ;设置AR0处在循环寻址状态MOV #0 x6000,mmap(BSA01);循环首地址0 x6000MOV #0 x400,mmap(BK03) ;循环块长度1024MOV #0 x6000,AC0MOV AC0,XAR0;XAR0存入循环首地址20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用6767中断服务程序中断服务程序Int3Isr:MOV 0 x600000,AC0MOV AC0,*AR0+RETI1DMA方式方式 DMA方式是把方式是把INT3引脚的低电平信号作为引脚的低电平

60、信号作为DMA同步事件,由同步事件,由它引发它引发DMA传送,从而将采样数据导入处理器存储器,该方式的优传送,从而将采样数据导入处理器存储器,该方式的优点是不需处理器干预,并且在数据区存满后还可向点是不需处理器干预,并且在数据区存满后还可向DSP发出中断通发出中断通知数据区满。知数据区满。20212021年年1111月月2525日日TMS320C55x DSPTMS320C55x DSP原理及应用原理及应用6868 采用采用DMA方式进行数据采集时,处理器在开始数据采方式进行数据采集时,处理器在开始数据采集前首先要初始化集前首先要初始化DMA控制器,主要包括设置数据传输所控制器,主要包括设置数据传输所要占用的要占用的DMA

温馨提示

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

评论

0/150

提交评论