dspC55xxch5 应用程序设计

合集下载

C55x系列DSP详解

C55x系列DSP详解
常用的人机接口主要有键盘和显示器 可以通过与其它单片机的通信来构成,也可以与 DSP芯片经FPGA/CPLD构成 主要考虑电压的高低和电流的大小,既要满足电压 的匹配,又要满足电流容量的要求

人机接口的设计


电源和时钟电路的设计

3.原理图设计

原理图的设计是关键的一步

必须清楚地了解器件的特性、使用方法和系统
对每个CE空间,可以按表9-2的参数来配置,每个CE 空间都有控制寄存器1、2、3,包含了可编程参数的 所有位域 如果CE空间控制寄存器1中的MTYPE 位没有设置为 异步存储器,则这些参数会被忽略。

表 9-2 访问外部异步存储器的参数
参数 建立时间 控制位 READ SETUP WRITE SETUP READ STROBE WRITE STROBE READ HOLD WRITE HOLD READ EXT HOLD WRITE EXT HOLD TIMEOUT 定 义 在读选通信号( ARE )和写选通信号( AWE )有效之前产生 地址、片选( CE ) 、地址使能( BE )信号的时间。 读选通或写选通信号的下降沿(有效)和上升沿(无效)之间的 CPU 时钟周期数。 在读写选通信号上升后,地址和 byte 使能信号保持有效的 CPU 时钟周期数。 扩展保持时间时指,在下一次访问之前,EMIF 必须在不同 CE 空 间之间切换, 或者下一次访问要求改变数据方向时, 需要插入额 外 CPU 周期。 在进行读写操作时一次超时的值。

CEn CLKMEM
CS CLK
SSADS
EMIF
SSOE
SSWE
上拉
ADSC ADV OE
BWE
BW[d : a ] SA[N:0]

TMS320C55xDSP原理及其应用第二版课程设计

TMS320C55xDSP原理及其应用第二版课程设计

TMS320C55xDSP原理及其应用第二版课程设计引言TMS320C55xDSP是一款高度集成的数字信号处理器,广泛应用于各种数字信号处理领域,如通信、计算机视觉、音频处理等。

为了更好地掌握其原理和应用,我们在本课程中进行了详细的讲解和实际操作。

本文将介绍TMS320C55xDSP的原理及其应用的第二版课程设计。

课程概述本课程旨在深入了解TMS320C55xDSP的原理、特性、应用及其软件开发环境,通过实际案例,帮助学生掌握TMS320C55xDSP的开发方法。

本课程主要内容包括: - TMS320C55xDSP体系结构和指令集; -TMS320C55xDSP开发环境的搭建; - TMS320C55xDSP应用开发实例; -TMS320C55xDSP与外部设备的接口; - TMS320C55xDSP实现数字信号处理的基本方法; - TMS320C55xDSP常见问题解答。

课程设计本次课程设计分为两个部分,第一部分是软件编程,第二部分是硬件设计。

软件编程在软件编程中,我们使用Code Composer Studio软件进行TMS320C55xDSP的开发实例。

主要编写以下程序: - TMS320C55xDSP基本操作:包括输入输出、运算、延时等; - TMS320C55xDSP数字信号处理实例:包括滤波、FFT及卷积等; - TMS320C55xDSP与外部设备的接口:包括使用ADC采集信号、使用DAC输出信号等。

硬件设计在硬件设计中,我们使用TMS320C55xDSP开发板进行操作。

主要设计以下硬件:- TMS320C55xDSP与外部设备的连接:包括ADC、DAC、LED等; - TMS320C55xDSP实现功能电路的设计:包括音频处理电路、图像处理电路等。

课程目标通过本课程的学习,我们可以实现以下目标: - 掌握TMS320C55xDSP的体系结构和指令集; - 掌握TMS320C55xDSP的开发环境的搭建; - 掌握TMS320C55xDSP的应用开发实例; - 掌握TMS320C55xDSP与外部设备的接口; -掌握TMS320C55xDSP实现数字信号处理的基本方法; - 解决TMS320C55xDSP应用开发过程中出现的常见问题;总结本课程详细介绍了TMS320C55xDSP的原理及其应用的第二版课程设计,通过软件编程和硬件设计,帮助学生深入了解TMS320C55xDSP的应用开发,为学生今后从事数字信号处理方面提供了一定的帮助。

TMS320C55xDSP原理及其应用第二版教学设计

TMS320C55xDSP原理及其应用第二版教学设计

TMS320C55x DSP原理及其应用第二版教学设计一、引言TMS320C55x是德州仪器(TI)公司推出的一种DSP(数字信号处理器)芯片,常用于音频、图像、视频等信号处理领域。

本教学设计对TMS320C55x芯片的原理及应用进行了详细介绍,并提供了相关实验。

二、教学目标1.了解TMS320C55x芯片的结构和工作原理;2.掌握TMS320C55x的编程方法和工具;3.熟悉TMS320C55x的应用实例,具备对信号处理问题进行分析和解决能力。

三、教学内容1. TMS320C55x芯片的原理•TMS320C55x芯片的概述•TMS320C55x芯片的结构和特点•TMS320C55x的工作模式2. TMS320C55x芯片的编程方法和工具•TMS320C55x的编程语言和编译环境•TMS320C55x的程序调试和仿真工具•TMS320C55x的应用示例3. TMS320C55x芯片的应用•声音处理应用•视频处理应用•图像处理应用4. 实验•实验1:TMS320C55x芯片编写“Hello World”程序•实验2:TMS320C55x芯片编写场景模拟程序•实验3:TMS320C55x芯片音频处理应用实验四、教学方法•理论讲解结合实例演示;•系统讲授理论知识,并按照实验内容要求进行编程示范;•每个实验均需学生独立完成并提交报告,教师进行评分。

五、教学时长和安排本教学设计为课内教学,总共需要16个学时。

•前8个学时:讲解TMS320C55x芯片的原理和编程方法;•后8个学时:学生进行实验和编程,并提交报告。

六、教学评估•学生实验报告,占总分的50%;•期末考试,占总分的50%。

七、教学资料准备•TMS320C55x芯片的编程手册;•TMS320C55x芯片应用手册;•TMS320C55x芯片仿真软件;•TMS320C55x芯片编程工具。

八、结语TMS320C55x芯片作为一种DSP芯片,其应用领域广泛,是数字信号处理的一项重要技术。

TMS320C55xDSP并行处理技术分析与应用(精)

TMS320C55xDSP并行处理技术分析与应用(精)

TMS320C55x DSP并行处理技术分析与应用TMS320C55x DSP并行处理技术分析与应用类别:单片机/DSPTMS320C55x DSP是一种高性能的数字信号处理器,其强大的并行处理能力能够进一步提高其运算能力。

本文介绍了C55xDSP的内核结构以及用户自定义并行指令时必须遵守如下3条并行处理基本规则,并介绍了6种典型的并行处理应用。

利用本文介绍的方法使用并行处理能力将有效提高程序执行效率,同时降低系统功耗。

德州仪器公司(TI)的TMS320C55x(简称C55x)DSP内核是在TMS320C54x(简称C54x)基础上开发出来的,并可以兼容C54x的源代码。

C55x 的内核电压降到了1V,功耗降到0.05mW/MIPS,是C54x的1/6。

C55x的运行时钟可以达到200MHz,是C54x的两倍,再加上C55x在C54x结构上作了相当大的扩展,程序执行时可以大量采用并行处理,这样使得C55x的实际运算能力可以达到300MIPS以上。

C55x DSP已越来越多地应用于各种手持便携终端当中。

以下我们将通过详细介绍C55x的CPU内核结构,讨论其并行处理技术的应用。

C55x DSP内核结构C55x DSP是一款采用改良型哈佛结构,高度模块化的数字信号处理器拥有比普通DSP更为丰富的硬件资源,能够有效提高运算能力。

其内核结构如图1所示,整个处理器内部分为5个大的功能单元:存储器缓冲单元(M单元)、指令缓冲单元(I单元)、程序控制单元(P单元)、地址生成单元(A单元)和数据计算单元(D单元),各个功能单元之间通过总线连接。

C55x DSP中有1条32位程序数据总线(P总线),1条24位程序地址总线(PA总线),5条16位的数据总线(B、C、D、E、F总线)和5条24位的数据地址总线(BA、CA、DA、EA、FA总线)。

这种高度模块化的多总线结构使得C55x DSP拥有超强的并行处理能力。

M单元主要管理数据区(包括I/O数据区)与中央处理器(CPU)之间的数据传送,使得高速CPU与外部相对低速的存储器之间在吞吐量上的瓶颈可以得到一定程度的缓解。

DSP教程6.C语言程序设计

DSP教程6.C语言程序设计

; /* 数组声明 */
; /* 指针声明 */
13
6.2.2 关键字
5.volatile
在任何情况下,优化器会通过分析数据流来避免存储器访问。 如果程序依靠存储器访问,则必须使用volatile关键字来指明
这些访问。
14
6.2.3 寄存器变量和参数
寄存器变量就是用register关键字声明的变量。 根据是否使用优化器,C编译器对寄存器变量采用不同的处理 方式。 编译器会尽量分配好所声明的寄存器变量。 整型、浮点型和指针类型对象都可以声明为寄存器变量,而其 它类型对象不行。

NormalANSI模式 K&R C模式 宽松ANSI模式 严格ANSI模式
18
6.2.6 标准ANSIC语言模式的改变(-pk、-pr和- ps选项)
1. NormalANSI模式(默认)
编译器默认的模式是NormalANSI模式,在此模式下:

大多数违反ANSI标准的语句都报错 违反严格ANSI标准的语句给出警告 语言扩展的语句都是允许的
同时,该选项支持ANSI
C语言的新功能,如函数原型、枚举、 初始化和预处理器结构 。
20
6.2.6 标准ANSIC语言模式的改变(-pk、-pr和- ps选项)
3.严格ANSI模式 (–ps选项)
使用-ps选项可以使编译器工作在严格ANSI模式,这种模式下:
会在违反ANSI规则的时候报错,同时可能影响程序严格 形式的语言扩展不可用
C55x支持第二系统堆栈,编译器使用第二堆栈指针SSP来管理第二
系统堆栈。
系统堆栈和第二系统堆栈的大小都由链接器设置。链接器会生成
全局符号_STACK_SIZE和_SYSSTACK_SIZE,并给它们指定一个 等于各自堆栈大小的值。两种默认堆栈大小都是1000字节。在链接 时间内,通过链接器命令中的-stack或-sysstack选项可以改变堆栈大 小。

TMS320C55x应用系统设计课后答案

TMS320C55x应用系统设计课后答案

1.3、DSP芯片与普通单片机相比有什么特点答:与单片机相比,DSP器件一般具有更高的集成度、更快的CPU、更大容量的存储器,内置有波特率发生器和FIFO缓冲器,同时提供高速同步串口和标准异步串口,有的片内还集成了A/D采样电路,用于控制领域的DSP还提供多路PWM输出,用于电机控制,可减少开发人员的工作量。

DSP器件一般采用改进的哈佛结构,具有独立的程序和数据空间,允许同时存取程序和数据。

内置高速的硬件乘法器以及增强的多级流水线,使DSP器件具有高速的数据运算能力1.5、DSP芯片有那些主要特点答:采用哈佛结构、采用多总线结构、采用流水线结构、配有专门的硬件乘法--累加器、具有特殊的寻址方式和指令、硬件配置强、具有较强的接口功能、支持多处理器结构1.8、IT公司的DSP芯片主要有那几大类答:TMS320C2000系列,主要用于数字化控制领域,TMS320C5000系列主要用于图像通信领域,TMS320C6000系列主要用于数字通信和音视频技术领域1.9、TMS320C5000系列DSP芯片有什么特点答:它是16位整数D S P处理器,目前有三代产品。

同代产品使用相似的CPU结构,但拥有不同的片上存储器和外围电路,以满足各种不同用途的要求。

C5000把存储器,外围电路与CPU集成在一个芯片上,构成了一个单片计算机系统,大大地低了整个DSP应用系统的成本和体积,提高了可靠性。

2.1、C55芯片由哪些基本部分组成答:CPU、存储空间、片内外设2.2、C55x的CPU 包含哪些功能单元答:C55x的CPU包含5个功能单元:指令缓冲单元(I单元)、程序流单元(P单元)、地址-数据流单元(A单元)、数据运算单元(D单元)和存储器接口单元(M单元)。

I单元包括32×16位指令缓冲队列和指令译码器。

此单元接收程序代码并放入指令缓冲队列,由指令译码器解释指令,然后再把指令流传给其它的工作单元(P单元、A单元、D单元)来执行这些指令。

第2章 DSP硬件开发系统的使用(C55x DSP)

第2章  DSP硬件开发系统的使用(C55x DSP)

第2章 DSP硬件开发系统的使用 ICETEK-5100USB V2.0A仿真器实物说明如图2-1所示, 其中USB接口负责与计算机USB接口相连接,在计算机开机 时,当仿真器USB接口与计算机USB接口连接好时,红色的 电源指示灯将会亮,如果不亮,请检查是否连接好。JTAG 仿真接口用于与目标板上DSP的JTAG仿真接口的插头相连, 为了防止反插,一般将JTAG接口的6脚堵上,其引脚定义如 图2-2所示。
第2章 DSP硬件开发系统的使用
图2-3 ICETEK–VC5509-AE评估板接口说明实物图
第2章 DSP硬件开发系统的使用 2.1.5 仿真器驱动程序的安装 仿真器使用的驱动软件是Blackhawk XDS510 Driver CCS v3.1.。运行驱动软件BH510-SetupCCS_v3.1.5.1.exe,用 户可以安装在与CCS v3.1同一个目录下,也可以单击Custom Location选择相应的路径。本实验安装在CCS v3.1同一个目 录下,其路径为C:\CCStudio_v3.1,安装界面如图2-4所示。
图2-8 安装驱动软件BH510-SetupCCS_v3.1.5.1.exe界面(五)
第2章 DSP硬件开发系统的使用 (5) 单击OK按钮,就进入了如图2-9所示的安装界面。
第2章 DSP硬件开发系统的使用
图2-9 安装驱动软件BH510-SetupCCS_v3.1.5.1.exe界面(六)
第2章 DSP硬件开发系统的使用 (6) 在图2-9所示的安装界面上点击Install按钮进行安装, 直到安装结束。
第2章 DSP硬件开发系统的使用
图2-11 USB接口的硬件配置
第2章 DSP硬件开发系统的使用 (4) 硬件仿真设置可以在CCS_v3.1仿真环境中进行,可 在主菜单中选择File→Import命令进行导入设置,也可以从 Factory Boads中加入设置,或者从Creats Board选项卡中创 建设置。在这里只介绍从Creats Board选项卡中创建设置, 前两种方法由读者自行研究。

TMS320C55X dsp原理及应用 汪春梅第7章

TMS320C55X dsp原理及应用 汪春梅第7章

一、并行外部存储器(EMIF)加载
8位异步存储器加载连接关系
16位异步存储器加载连接关系
32位异步存储器加载连接关系
二、标准串口加载
McBSP0载入数据时序图(16位) 标准串行加载方式硬件连接
IO4在标准串口下载模式下产生延迟信号
三、串行外设接口(SPI)加载
SPI加载方式硬件连接
SPI加载方式时序关系图
根据MAX1246 的时序图可知: DSP的McBSP发送串口应该工作在:单帧传输,每帧一个字,每个字 长度8位。故应将0x0000送给XCR1_0寄存器。
MOV
#0x0004 , PORT(#XCR2_0)
MOV
#0x0020 ,PORT( #RCR1_0 )
MOV #0x0025 , PORT( #RCR2_0 )
第七章 TMS320C55X硬件设计实例


DSP最小系统设计 A/D与D/A设计 C55x在语音系统中的应用 手写系统的实现 C55x在软件无线电中的应用
7.1 DSP最小系统设计

7.1.1 C55x的电源设计
TPS54110并联上电顺序控制
TPS54110 DC-DC转换电路

L3:
中断服务子程序进行数据存储:
SEND: NOP NOP here: b here
; 此处循环等待 McBSP的串口接收12bits ; A/D采样值到来(RRDY=1;) ,进而引发串口接收中断 ; RINT,再次进入终端服务子程序_RINT_Isr1。
.end
7.2.2 高速并行A/D设计
RPT #0x200 nop MOV
#0x0241 , PORT(#SPCR2_0) ;启动发送器

第七章 TMS320C55x DSP应用实例

第七章 TMS320C55x DSP应用实例

2、程序流程图
开始
用不同参数调 用构造图像的 函数产生图像
调用直方图统 计子程序统计
直方图
直方图统计 子程序
初始化直方图统 计数组(赋0 值)
统计图像中各种像素 (取值0-255)的个数
计算各种像素个数占全 部图像像素的百分比
循环
直方图统计结束
第七章 TMS320C55x DSP应用实例
3、 实验步骤:
二、数字图像的锐化(LAPLACE 算子) 1、实验原理
图像锐化处理的目的是使模糊的图像变得更加清晰。图像的 模糊实质是图像受到平均或积分运算造成的,因此可以对图像进 行逆运算如微分运算来使图像清晰化锐化有两种方法:微分法, 高通滤波器。
第七章 TMS320C55x DSP应用实例
2、程序流程图
开始
设置 。
(5)设置断点:在有注释“break point”的语句设置软件断点。 (6)运行并观察结果 :观察窗口中时域和频域图形。 (7)退出CCS 。
第七章 TMS320C55x DSP应用实例
4、实验结果
通过观察频域和时域图,程序计算出了测试波形的功率谱, 与CCS计算的FFT结果相近。
第七章 TMS320C55x DSP应用实例
④输入数据 起始地址
⑤输入数据 个数
⑥修改数据 类型
第七章 TMS320C55x DSP应用实例
三、基础实例:编写一个以C语言为基础的DSP程序
1、程序设计要求
数值运算
开设三个整型 变量x,y,z
赋初值: x=1,y=2x,y,z
计算x+y
输出结果到z
循环
第七章 TMS320C55x DSP应用实例
(1)实验准备:设置软件仿真模式,启动CCS。 (2)打开工程文件。 (3)编译并下载程序。 (4)设置断点:在有注释“break point”的语句设置软件断点. (4)打开观察窗口:选择菜单View->Graph->Image,选择菜单View->Graph>Time/Frequency设置相应参数。 (5)运行程序观察结果 :观察图像和直方图统计结果 。 (6)退出CCS 。

第8讲 C55x典型应用系统设计

第8讲 C55x典型应用系统设计
第8讲 C55x典型应用系 统设计
典型DSP板的硬件设计
CPLD电路模块设计
DSP板测试程序
综合设计实例1:自适应系统辨识
综合设计实例2:数字式有源抗噪声耳罩
10.1 典型DSP板的硬件设计
10.1.1 概述
基于TMS320VC5509A的通用数字信号处 理板: 包括VC5509A芯片、复位电路、时钟电路、 JTAG接口电路以及电源电路等基本电路模块。 通过EMIF外扩了FLASH、SDRAM等存储器 模块。 通过McBSP0、McBSP1和I2C外扩了2片 AIC23B,使该系统具有4路模拟输入和4路模拟 输出。
5
SHEILD
USBVSS
R6 1M C22 0.1uF
USBVSS
R13 1M
L1
BEAD
10.1.8 自启动电路模块
3 .3 V
R18 10k SW2
1 2 3 4 8 7 6 5
R20 10k
R22 10k
R23 10k
GP3 GP2 GP1 GP0
SW DIP - 4 R63 1k R64 1k R66 1k R67 1k
DSP_RSTn DSP_RSTn_LED FLASH_RSTn USER_LED1 USER_LED2 USER_LED3 USER_LED4 USER_SW1 USER_SW2 USER_SW3 USER_SW4 FLASH_CEn FLASH_OEn FLASH_WEn FLASH_A13 FLASH_A14 FLASH_A15 FLASH_A16 FLASH_A17 FLASH_A18
132 25 95 130 129 95 125 124 121 98 100 101 102 103 104 105 106 92 91 88 87 86 85 83 82

第4章C55x处理器的软件设计

第4章C55x处理器的软件设计

2019/10/11
DSP原理及应用原理及应用
2
第4章 C55x处理器的软件设计
建立运行 支持库
运行支 持库
C/C++ 源文件
C编译器
汇编 源代码
汇编器
COFF 目标文

链接器
可执行
COFF 文件
宏源文

归档器
宏调用 库
目标文 归档器 件库

C55x处理器软件开发流程
2019/10/11
DSP原理及应用原理及应用
OSTimeDlyResume( )
OSTimeDly ( )
所谓“任务管理”就是在内核的控制下任务在五 OSTimeTick( ) OSStart( )
OSTimeDlyHMSM( )
OSTaskCreate( )
种状态之间切换。 OSTaskCreateExt( )
OSIntExt( ) OS_TASK_SW( )
本章主要介绍了C55x处理器的程序基本结构,C 语言编程以及优化,C语言与汇编语言的混合编程, 通用目标文件格式,最后对C55x处理器的数字信号处 理库和图像、视频处理库进行了介绍。
DSP原理及应用原理及应用
1
第4章 C55x处理器的软件设计
4.1 C55x处理器程序基本结构 4.2 C语言程序开发及优化 4.3 C语言与汇编语言的混合编程 4.4 通用目标文件格式 4.5 C55x处理器的数字信号处理库和图像、 视频处理库
当任务从当前任务切换到另一个任务时,必须保存正在执行 的任务的当前状态。所谓“任务的当前状态”即CPU寄存器中 的所有内容;这些内容被保存在任务自己的堆栈中,以备任务 下次执行时恢复当前状态。在保存完当前任务后,要把下一个 任务的当前状态装入CPU寄存器,并开始下一个任务的运行, 这一过程叫做“任务切换”。

DSP教程7.应用程序设计

DSP教程7.应用程序设计
( 7- 7) ( 7- 8)
xk 1 (n) yk (n)
其中,
( 7- 9)
k 1,2,..., K
注意:
x1 (n) b0 x(n)
(7-10) (7-11)
21
y(n) y k (n)
a[i][k](i=1,2)和b[i][k] (i=0,1,2)分 别为第k(k=0,1,K)个二阶IIR滤波器 环节的系数。 例7-10,采用二维数组编写的IIR滤波器 C语言程序。
溢出还与输入信号的特性和运算法则有关
8
7.1.2 溢出的处理方法
2.C55x的溢出处理机制 C55x有以下几种硬件特性可以处理溢出:
保护位
C55x的每个累加器都有8个保护位(39~32位),允 许连续256次乘加操作而累加器不溢出
溢出标志位
C55x的每个累加器都有相关的溢出标志位,当累加器 操作结果出现溢出时,这个标志位就会置位
Q14
Q15
E000H
E000H
1110 0000 0000 0000b
1110 0000 0000 0000b
-0.5
-0.25
7
7.1.2 溢出的处理方法
1.溢出
如果算术运算结果超出寄存器所能表示的最大数就会出现溢

因为16位定点DSP的动态范围有限,所以在使用时必须注 意动态范围以防溢出

9
7.1.2 溢出的处理方法
饱和方式位SATD和SATA

SATD控制D单元的操作,SATA控制A单元的操作。
如果SATD=1,当D单元发生溢出时,对D单元的结果进 行饱和处理。不管饱和方式位的值是什么,当累加器发生 溢出时,相应的溢出标志位都会被置位

C55x处理器的软件设计

C55x处理器的软件设计

interrupt关键字 interrupt关键字
定义中断函数 中断函数必须返回空并且没有参数传递 中断函数可以定义本地变量并且使用堆栈 定义中断函数举例: 定义中断函数举例:
interrupt void int_handler() { unsigned int flags; ... }
onchip关键字 onchip关键字
利用ioport指针指向 空间的数据的举例 利用ioport指针指向I/O空间的数据的举例: 指针指向I/O空间的数据的举例:
/* 指向ioport数据的ioport指针: */ 指向ioport数据的 数据的ioport指针 指针: ioport int * ioport iop_ptr_to_ioport; ioport int i; ioport int j; void foo (void) { i = 10; iop_ptr_to_ioport = &i; j = *iop_ptr_to_ioport; } 编译结果如下: 编译结果如下: _foo: MOV #10,port(#_i) ; 将10存在_i中 10存在 中 存在_i MOV #_i,port(#_iop_ptr_to_ioport) ; 存储_i的地址 存储_i的地址 MOV port(#_iop_ptr_to_ioport),AR3 ; 载入_i的地址 载入_i的地址 MOV *AR3, AR1 ; 载入_i 载入_i MOV AR1,port(#_j) ; 将10存到_j中 10存到 中 存到_j return
C/C++与汇编语言的接口 C/C++与汇编语言的接口
通用目标文件格式
汇编器和链接器产生的可执行文件所采用的格式 段—编译器产生的可以重新定位的代码和数据块

TMS320C55xDSP应用系统设计教学设计

TMS320C55xDSP应用系统设计教学设计

TMS320C55xDSP应用系统设计教学设计概述本教学设计旨在探讨TMS320C55xDSP应用系统的设计方法以及其在实际应用中的使用。

通过实践和展示,让学生了解该系统的应用及其在各个领域中的应用范围,为学生今后从事相关领域工作提供技术支持和参考。

教学目标1.了解TMS320C55xDSP系统的设计方法和开发过程,掌握该系统的架构和功能。

2.熟悉DSP芯片的应用特征,应用TMS320C55x DSP系统进行数字信号处理。

3.通过实践和应用,提升学生的综合应用能力,为学生今后从事相关工作打下坚实的基础。

教学内容1.DSP系统基础知识:了解数字信号处理的基本概念、器件、算法和应用。

2.TMS320C55xDSP系统架构:介绍TMS320C55x DSP芯片的体系结构、寄存器、内存等方面的基础知识。

3.DSP应用程序设计:深入应用DSP芯片进行数字信号处理、嵌入式软件设计等方面的内容。

4.DSP系统仿真与调试:通过实际应用,全面掌握DSP系统的开发工具、仿真调试和性能优化等方面的技术。

教学方法1.理论教学:通过PPT、视频、案例等形式,为学生讲解相关DSP知识和TMS320C55x DSP系统的基础架构,引导学生掌握DSP系统的基本原理和应用方法。

2.实践教学:通过一系列实践项目,让学生深入实际应用,掌握系统设计、算法开发、仿真调试等相关技术,提升学生的综合应用能力。

3.讨论互动:通过小组讨论、案例分享等形式,引导学生深入了解DSP系统在各个领域中的应用,提高学生的实际应用水平和创新能力。

教学资源1.TMS320C55xDSP开发板:提供实际硬件平台,让学生在实际操作中深入了解TMS320C55xDSP系统的设计和开发。

2.DSP开发工具:提供一系列DSP应用开发工具,包括编译器、仿真器、调试工具等。

3.DSP实验指导书:提供详细的实验指导和程序设计内容,引导学生全面学习和深入实践。

教学评价1.学生成绩评价:包括平时成绩、实验评分、课堂小测、最终考试等。

TMS320C55X_dsp原理及应用第5章

TMS320C55X_dsp原理及应用第5章

之后运行配置函数:
PLL_config(&Config_PLL); 也可以通过函数设置PLL频率: PLL_setFreq (6, 1); 通过PLL_setFreq函数可以复位PLL锁相环,并改变倍频和分频数从而 得到所需的频率
CSL库中PLL_Config锁相环配置结构体声明如下:
CSL库中PLL_Config锁相环配置结构体

使用方法

省电(IDLE)

与省电有关的位是IAI CLKMD引脚为低电平,输出频率等于输入频率; CLKMD引脚为高电平,输出频率等于输入频率的一 半 锁相环对输入时钟跟踪锁定之后,由于其他原因使其 输出时钟发生偏移

DSP复位


失锁


使用方法及实例

利用库函数配置时钟发生器的方法


主机接口


信号采集

采集模拟信号的模/数转换器 提供数字信号输入、输出功能的通用输入/输出 接口 多通道缓冲串口、I2C接口、异步串口、USB接 口以及多媒体卡/SD卡接口 DMA控制器、指令流水线等


通信接口


其他外设

辅助CPU工作,提高DSP的工作效率

片上外设支持库特点:

采用标准协议对外设进行编程
首先要声明PLL配置结构,具体声明如下:
PLL_Config Config_PLL = { 1, /*iai 休眠后重新锁相 */ 1, /*iob 失锁后进入旁路模式并重新锁相 */ 6, /*pllmult CLKIN * pllmult = DSP主时钟*/ 0 /*div CLKOUT= DSP主时钟/(div+1) */ };
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

时钟发生器操作状态说明(2)
D:旁路模式。PLL关闭,时钟发生器处于旁路模 式。时钟发生器中的分频器产生一个输出时钟信 号,其频率由CLKMD中的BYPASS DIV bit来定 义。执行Idle命令可使时钟发生器工作在Idle模式 (状态E)。要想改变到锁定模式,或者以其它方 式重新配置时钟发生器,可以写CLKMD 。 E:Idle模式(从旁路模式进入)。执行Idle命令 可使时钟发生器工作在Idle模式。如果从Idle模式 正确退出,时钟发生器会重新进入旁路模式 。
Chip Select Ready Output enable Read enable Write enable Byte enable A[12:0] A13 D[15:0]
DSP的EMIF接口:同步连接
CE0 CLKMEM SDRAS CS CLK RAS
SDCAS
SDWE A0 A13 A12 SDA10 A[10:1] D[15:0] BE[1:0]
时钟模式寄存器(CLKMD)
15 14 13 12 11~7
Rsvd
IAI
IOB
TEST(keep 0)
PLL MULT
R/W-0
R/W-1
R/W-00000
6~5
4
3~2
1
0
PLL DIV
PLL ENABALE
BYPASS DIV
BREAKLN
LOCK
R/W-00
R/W-0
R/W-pin
R-1
R-0
D[15:0] A[13:0] CE[3:0] BE[1:0] ARDY AOE AWE ARE SDRAS SDCAS SDWE SDA10 CLKMEM 同/异步 共享管脚
16位 EMIF
异步 管脚
同步 管脚
DSP的EMIF接口:异步连接
异步连接 CE ARDY AOE ARE AWE BE[1:0] A[13:1] A0 D[15:0]
配置时钟发生器(2)
关闭PLL,时钟发生器进入旁路模式,PLL开始琐相过程 ClearMask(pCMOD -> clkmd, CLKMD_PLLENABLE); while(ReadMask(pCMOD -> clkmd,CLKMD_LOCK)); 置CLKMD中的相应标志位 ClearMask(pCMOD -> clkmd, CLKMD_IAI); SetMask(pCMOD -> clkmd, CLKMD_IOB | CLKMD_BREAKLN); 设置倍频值和分频值 WriteMask(pCMOD -> clkmd, CLKMD_PLLDIV_1 | CLKMD_BYPASSDIV_1, CLKMD_PLLDIV_MASK | CLKMD_BYPASSDIV_MASK); WriteField(pCMOD -> clkmd, dspclk.pllmult, CLKMD_PLLMULT_MASK); 使能PLL,PLL工作在锁定模式 SetMask(pCMOD -> clkmd, CLKMD_PLLENABLE); while(!ReadMask(pCMOD -> clkmd, CLKMD_LOCK)); 输出频率=[PLL MULT/(PLL DIV+1)]×输入时钟频率
CLKMD中重要bit的说明(2)
BREAKLN :失琐标记。BREAKLN指示PLL是否失琐。 另外,如果要置位CLKMD,BREAKLN必须为1。0 PLL 已经失琐;1 重新琐相,或发生了一次写CLKMD。 LOCK :锁定模式标识。LOCK表示时钟发生器是否处于 锁定模式:0 时钟发生器处于旁路模式。输出时钟信号的 频率由BYPASS DIV bit决定,或PLL正在进行琐相的过程; 1 时钟发生器处于锁定模式。PLL相位锁定,输出时钟的 频率由PLL MULT和PLLDIV决定
配置时钟发生器(4)
例:C55x的片内振荡时钟电路产生12MHz的脉冲, CPU工作频率是300MHz。通过配置时钟发生器在 锁定模式下的参数来实现倍频。 300MHz =( PLL MULT/(PLL DIV+1)) ×12MHz 则:PLL DIV=0,PLL MULT=25
5.3 ADC简介
EGCR = 0X220;
CE01 =0X3000; CE11 = 0X1fff;
CE21 =0x1fff;
CE31 =0X1FFF; EMIRST = 0;
SDC1 =0X5958;
SDC2=0X38F; INIT = 0;}
5.2 时钟发生器
时钟发生器,它可以利用数字锁相环(DPLL)分频 或者倍频输入时钟频率(从CLKIN引脚接收),然后分 别送到CPU、外设和C55x DSP内的其他模块,以使它 们工作在所要的时钟频率。 CLKDIV 可编程分频器
EMIF支持以下类型的访问:
◆程序的访问 ◆32位数据的访问 ◆16位数据的访问 ◆8位数据的访问
DSP的EMIF接口:管脚
• 16位EMIF接口 • 支持8M×16位的地址 空间 • 通过CE[3:0]可以独立 选择四个不同的外部 扩展接口 • 支持两种接口
– 异步接口:包括SRAM、 Flash和ROM等 – 同步接口:SDRAM
配置时钟发生器(3)
时钟发生器工作在锁定模式
输出频率 =(PLL MULT/(PLL DIV+1))×输入时 钟频率
选择锁定模式频率的例子
PLL MULT 31 10 2 2 PLL DIV 0 1 2 3 输出频率 31×输入时钟频率 5×输入时钟频率 2/3×输入时钟频率 1/2×输入时钟频率
TMS320VC5509 DSP 内部集成了10位连续逼近式模 数转换器(ADC) 在一个时刻可以对最多4路模拟输入(AIN0~AIN3) 中的一个采样,并用10位数字形式表示 最大采样率为21.5kHz,适合对慢速变化的模拟信号 进行采样 使用采样保持电路来产生均匀间隔的样本 使用引脚AVDD和AVSS上的外部参考电压将转换过程 所使用的电压和系统电源电压隔离
1/4CPU时钟频率
1/6CPU时钟频率 1/8CPU时钟频率
CLKMD中重要bit的说明(1)
IAI :退出IDLE模式后,决定时钟发生器怎样重新琐相(当 CLKMD Idle域重新激活)0 PLL锁定,与进入Idle模式前的过 程相同;1 PLL重新开始琐相过程 。 IOB :只要相位失琐,决定时钟发生器是否初始化PLL琐相 过程。如果PLL的琐相中断:0 时钟发生器不会中断。时钟发 生器会保持在锁定模式,PLL继续输出当前的时钟信;1 时钟 发生器切换到旁路模式,并重新开始PLL的琐相过程 。 BYPASS DIV旁路模式的分频值。在旁路模式下BYPASSDIV 决定输出信号的频率。在DSP复位时,若CLKMD引脚为低, BYPASSDIV复位到00b。若为高,复位到01b(除以2)。 00b 不分频;01b二分频;10b或者11b四分频
SDRAM参数:地址(1)
地址总线
地址译码
数 据 总 线
数据读写
SDRAM参数:地址(2)
地址总线
行地址译码 列 地 址 译 码 数据读写
数 据 总 线
外部存储器接口(EMIF) 外部存储器接口(EMIF)控制DSP和外部存储器之 间的所有数据传输 EMIF为3种类型的存储器提供了无缝接口:
◆异步存储器,包括ROM、FLASH以及异步SRAM ◆同步突发SRAM(SBSRAM),工作在1倍或1/2倍CPU时钟频率 ◆同步DRAM(SDRAM),工作在1倍或1/2倍CPU时钟频率
CAS
WE BA0 BA1 A11 A10 A[9:0] D[15:0] DQMH(L)
VCC
CKE
系统初始化
• 初始化时钟 • 初始化EMIF • 初始化堆栈
ICETECK-VC5509A.GEL
hotmenu SDRAM_init()
{ EBSR = 0xa01; EGCR = 0x220;
AVSS
5.3.2 总的转换时间
总的转换时间 总的转换时间
采 样 点
采样/保持周期
转换周期 (13个转换时钟周期)
AD转换时序图
时间
ADC 时钟 =(CPU 时钟)/(CPUClkDiv+1) ADC 转换时钟 =(ADC 时钟)/(2×(ConvRateDiv+1)(必须 ≤2MHz) ADC 采样保持时间 =(1/(ADC 时钟))/(2 ×(ConvRateDiv+1+ SampTimeDiv))(必须≥40s) ADC 总的转换时间 =(ADC 采样保持时间)+(13 ×(1/(ADC 转换 时钟)))
CLKOUT输出
锁定模式(PLLENABLE=1) 输出频率=
PLL MULT
(PLL DIV+1)
×输入时钟频率
CLKDIV=000b(系统寄存器SYSR)
CLKOUT的频率等于CPU时钟频率
CLKDIV=001b 1/2CPU时钟频率
CLKDIV=010b
CLKDIV=011b CLKDIV=100b
CLKIN CPU时钟 DSP时钟发生器
÷
CLKOUT
CPU、外设或者生器有一个时钟模式寄存器CLKMD,用来控 制和监视时钟发生器。可以通过写CLKMD中的 PLLENABLE bit,来触发两种主要的操作模式: 旁路模式 PLL(Phased-Lock Loop,琐相环)被旁路掉,输出时钟 的频率就等于输入时钟的频率除以1、2、4(由BYPASS bit装入的值来决定)。因为PLL模块被关闭了,因此这种 模式可以用来降低功耗。 锁定模式 时钟发生器既可以乘以或除以一个系数来获得期望的输出 频率,并且输出时钟相位与输入信号锁定。如果时钟模式 寄存器CLKMD中的PLLENABLE bit置位,且琐相过程已 经完成,就进入锁定模式(在琐相过程中,时钟发生器处 于旁路模式)。
相关文档
最新文档