第8章 TMS320C55x软件设计实例
第6讲TMS320C54x的最小系统设计

入一种已知的状态。
上电后,复位引脚上的低电平必须保持10个时钟周期的时间,
以确保系统的振荡电路起振,时钟信号趋于稳定且处理器的各个部分 被正常初始化。
孔标示内正外负;USB方式可通过跳线开关实现。SPX1117M3-
3.3,及SPX1117M3-1.8分别提供I/O口及内核电压。
13
第十三页,编辑于星期三:二十三点 三十分。
第6章 TMS320C54x最小系统设计
6.3 系统设计与实现
1.电源设计
1117输出后的40uF或者100uF电容起到隔
18
第十八页,编辑于星期三:二十三点 三十分。
第6章 TMS320C54x最小系统设计
6.3 系统设计与实现
2 复位操作及复位系统设计
2).复位状态 TMS320C54x复位期间,处理器进行以下操作: ➢ 单指令重复计数器(RC)被清除。
➢ 产生同步复位信号 SRESET,用于初始化片内外设。
3. 时钟发生器 时钟发生器用来为TMS320C54x 提供时钟信号,它由内部振 荡器和锁相环(PLL)电路组成。 工作时钟的设定:外部输入的时钟经过倍频以后,产生CPU 的工作时钟以及同步接口所需的时钟信号,时钟信号的好坏 直接决定了系统的稳定性,TMS320VC5402提供了内部和外 部两种方式的时钟发生模式。
25
第二十五页,编辑于星期三:二十三点 三十分。
化的高低电平信号,若在规定的时
间内该信号不发生变化,自动复位
电路就认为系统故障,进行复位。
TMS320C54x软件开发过程

2023年10月16日7时21分
DSP原理及应用
17
源程序的汇编
汇编器包括如下功能: ④ 定义和引用全局符号,如果需要可以在列表
文件后面附加一张交叉引用表。
⑤ 对条件程序块进行汇编。
⑥ 支持宏功能,允许定义宏命令。
⑦ 为每个目标代码块设置一个程序计数器SP理及应用
DSP原理及应用
8
2. ’C54x的开发工具
(2)代码调试工具:
C/汇编语言源码调试器:与软件仿真器、评价 模块、软件开发系统、软件仿真器等配合使用。
软件仿真器:是一种模拟DSP芯片各种功能并在 非实时条件下进行软件调试的调试工具,它不需目 标硬件支持,只需在计算机上运行。
初学者工具DSK:是TI公司提供给初学者进行 DSP编程练习的一套廉价的实时软件调试工具。
最佳工具。
评价模块EVM板:是一种低成本的开发板,可
进行DSP芯片评价、性能评估和有限的系统调试。
2023年10月16日7时21分
DSP原理及应用
10
汇编语言程序的编辑、汇编和链接过程
汇编语言源程序可以在任何一种文本编辑器中进 行。如笔记本、WORD、EDIT、TC等。
当汇编语言源程序编写完成后,还必须经过汇编 和链接后才能运行。
2023年10月16日7时21分
DSP原理及应用
13
汇编语言程序的编辑、汇编和链接过程
2. 汇编 常用的汇编命令:
asm500 %1 -s -1 -x
2023年10月16日7时21分
生成一个 交叉汇编表
生成一个 列表文件.lst
将程序所有定义的符号放 在目标文件的符号表中 源文件名
调用汇编器命令
DSP原理及应用
第8章 McBSP

输入时钟 极性选择
说明
CLKS引脚 CLKSP=0 CLKS引脚上的信号的上升沿,产生CLKG的上升沿 上的信号 CLKSP=1 CLKS引脚上的信号的下降沿,产生CLKG的上升沿
CPU时钟
正极性 CPU时钟信号的上升沿,产生CLKG的上升沿
CLKR引脚 CLKRP=0 CLKR引脚上的信号的上升沿,产生CLKG的上升沿 上的信号 CLKRP=1 CLKR引脚上的信号的下降沿,产生CLKG的上升沿
CLKX引脚 CLKXP=0 CLKX引脚上的信号的上升沿,产生CLKG的上升沿 上的信号 CLKXP=1 CLKX引脚上的信号的下降沿,产生CLKG的上升沿
3.输出时钟信号频率的选择
输入的时钟经过分频产生SRG输出时钟CLKG。分频值由 采样率发生寄存器SRGR1中的CLKGDV字段确定。
CLKG 输出时钟频率 输入时钟频率 CLKGDV 1
8.5 多通道缓冲串口McBSP
8.5.1 McBSP概述
C55x提供高速的多通道缓冲串口(McBSP,Multichannel Buffered Serial Ports),通过McBSP可 以与其它DSP、编解码器等器件相连。
McBSP具有如下特点: 全速双工通信。 双缓存发送,三缓存接收,支持传送连续的数据流。 独立的收发时钟信号和帧信号。 128个通道收发。
DXR
数据、时钟、帧同 步控制与监视存储
器
SPCR RCR XCR SRGR PCR
CLKIN
DSP时钟 产生器
多通道控制与监 视寄存器
MCR RCER XCER
McBSP中断 输入时钟
时钟和帧同 步逻辑
McBSP产生时钟
RINT XINT REVT XEVT
DSP原理及应用-(修订版)--课后习题答案

第一章:1、数字信号处理的实现方法一般有哪几种?答:数字信号处理的实现是用硬件软件或软硬结合的方法来实现各种算法。
(1) 在通用的计算机上用软件实现;(2) 在通用计算机系统中加上专用的加速处理机实现;(3) 用通用的单片机实现,这种方法可用于一些不太复杂的数字信号处理,如数字控制;(4)用通用的可编程 DSP 芯片实现。
与单片机相比,DSP 芯片具有更加适合于数字信号处理的软件和硬件资源,可用于复杂的数字信号处理算法;(5) 用专用的 DSP 芯片实现。
在一些特殊的场合,要求的信号处理速度极高,用通用 DSP 芯片很难实现( 6)用基于通用 dsp 核的asic 芯片实现。
2、简单的叙述一下 dsp 芯片的发展概况?答:第一阶段, DSP 的雏形阶段( 1980 年前后)。
代表产品: S2811。
主要用途:军事或航空航天部门。
第二阶段, DSP 的成熟阶段( 1990 年前后)。
代表产品: TI 公司的 TMS320C20主要用途:通信、计算机领域。
第三阶段, DSP 的完善阶段( 2000 年以后)。
代表产品:TI 公司的 TMS320C54 主要用途:各个行业领域。
3、可编程 dsp 芯片有哪些特点?答: 1、采用哈佛结构( 1)冯。
诺依曼结构,( 2)哈佛结构( 3)改进型哈佛结构2、采用多总线结构 3.采用流水线技术4、配有专用的硬件乘法-累加器5、具有特殊的 dsp 指令6、快速的指令周期7、硬件配置强8、支持多处理器结构9、省电管理和低功耗4、什么是哈佛结构和冯。
诺依曼结构?它们有什么区别?答:哈佛结构:该结构采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输,使取指令操作、指令执行操作、数据吞吐并行完成,大大地提高了数据处理能力和指令的执行速度,非常适合于实时的数字信号处理。
冯。
诺依曼结构:该结构采用单存储空间,即程序指令和数据共用一个存储空间,使用单一的地址和数据总线,取指令和取操作数都是通过一条总线分时进行。
第3_2讲-第2章TMS320C55x的硬件结构-状态寄存器249-12汇总

– CPL=0,DP直接寻址模式 • 与数据页寄存器 DP 相关。 – CPL=1,SP直接寻址模式
• 与数据堆栈指针 SP 相关。DSP称为运行在编译模式。
18
• 注意 – 对I/O空间的直接寻址,总是与外设数据页寄存器 (PDP)相关。 • 可用以下指令和伪指令来改变寻址模式: BCLR CPL .CPL_off ;清零CPL(运行时) ;告知汇编器CPL=0
16
• 可用以下指令或伪指令来改变模式: BCLR C54CM ;清零C54CM(运行时) .C54CM_off ;告知汇编器C54CM=0
BSET C54CM ;置位C54CM(运行时) .C54CM_on ;告知汇编器C54CM=1
17
15 ST1_55 BRAF R/W-0 7 C16 R/W-0
– 装入ST0_55,但不改DP位域的值,可用OR或AND指令
9
test/control bit
4. 测试/控制位
14 ACOV3 R/W-0 13 TC1 R/W-1 12 TC2 R/W-1 11 CARRY R/W-1 10 ACOV0 R/W-0 9 ACOV1 R/W-0 8~0 DP R/W-000000000
13
15 ST1_55 BRAF R/W-0 7 C16 R/W-0
14 CPL R/W-0 6 FRCT R/W-0
13
2. BRAF位
12 11 HM R/W-0 INTM R/W-1
10 M40 R/W-0 4~0 ASM R/W-00000
9 SATD R/W-0
8 SXMD R/W-1
XF R/W-1 5 C54CM R/W-1
15 ST0_55 ACOV2 R/W-0
《DSP原理及应用(修订版)》邹彦主编课后答案(个人终极修订版)

第一章1、数字信号处理实现方法一般有几种?答:课本P2(2.数字信号处理实现)2、简要地叙述DSP芯片的发展概况。
答:课本P2(1.2.1 DSP芯片的发展概况)3、可编程DSP芯片有哪些特点?答:课本P3(1.2.2 DSP芯片的特点)4、什么是哈佛结构和冯诺依曼结构?他们有什么区别?答:课本P3-P4(1.采用哈佛结构)5、什么是流水线技术?答:课本P5(3.采用流水线技术)6、什么是定点DSP芯片和浮点DSP芯片?它们各有什么优缺点?答:定点DSP芯片按照定点的数据格式进行工作,其数据长度通常为16位、24位、32位。
定点DSP的特点:体积小、成本低、功耗小、对存储器的要求不高;但数值表示范围较窄,必须使用定点定标的方法,并要防止结果的溢出。
浮点DSP芯片按照浮点的数据格式进行工作,其数据长度通常为32位、40位。
由于浮点数的数据表示动态范围宽,运算中不必顾及小数点的位置,因此开发较容易。
但它的硬件结构相对复杂、功耗较大,且比定点DSP芯片的价格高。
通常,浮点DSP芯片使用在对数据动态范围和精度要求较高的系统中。
7、DSP技术发展趋势主要体现在哪些方面?答:课本P9(3.DSP发展技术趋势)8、简述DSP系统的构成和工作过程。
答:课本P10(1.3.1DSP系统的构成)9、简述DSP系统的设计步骤。
答:课本P12(1.3.3DSP系统的设计过程)10、DSP系统有哪些特点?答:课本P11(1.3.2DSP系统的特点)11、在进行DSP系统设计时,应如何选择合理的DSP芯片?答:课本P13(1.3.4DSP芯片的选择)12、TMS320VC5416-160的指令周期是多少毫秒?它的运算速度是多少MIPS?解:f=160MHz,所以T=1/160M=6.25ns=0.00000625ms;运算速度=160MIPS第二章1、TMS320C54x芯片的基本结构都包括哪些部分?答:课本P17(各个部分功能如下)2、TMS320C54x芯片的CPU主要由几部分组成?答:课本P18(1.CPU)3、处理器工作方式状态寄存器PMST中的MP/MC、OVLY和DROM3个状态位对’C54x 的存储空间结构有何影响?答:课本P34(PMST寄存器各状态位的功能表)4、TMS320C54x芯片的内外设主要包括哪些电路?答:课本P40(’C54x的片内外设电路)5、TMS320C54x芯片的流水线操作共有多少个操作阶段?每个操作阶段执行什么任务?完成一条指令都需要哪些操作周期?答:课本P45(1.流水线操作的概念)6、TMS320C54x芯片的流水线冲突是怎样产生的?有哪些方法可以避免流水线冲突?答:由于CPU的资源有限,当多于一个流水线上的指令同时访问同一资源时,可能产生时序冲突。
DSP原理及应用-邹彦--课后习题答案
第一章:1、数字信号处理的实现方法一般有哪几种?答:数字信号处理的实现是用硬件软件或软硬结合的方法来实现各种算法。
(1) 在通用的计算机上用软件实现;(2) 在通用计算机系统中加上专用的加速处理机实现;(3) 用通用的单片机实现,这种方法可用于一些不太复杂的数字信号处理,如数字控制;(4)用通用的可编程 DSP 芯片实现。
与单片机相比,DSP 芯片具有更加适合于数字信号处理的软件和硬件资源,可用于复杂的数字信号处理算法;(5) 用专用的 DSP 芯片实现。
在一些特殊的场合,要求的信号处理速度极高,用通用 DSP 芯片很难实现( 6)用基于通用 dsp 核的asic 芯片实现。
2、简单的叙述一下 dsp 芯片的发展概况?答:第一阶段, DSP 的雏形阶段( 1980 年前后)。
代表产品: S2811。
主要用途:军事或航空航天部门。
第二阶段, DSP 的成熟阶段( 1990 年前后)。
代表产品: TI 公司的 TMS320C20主要用途:通信、计算机领域。
第三阶段, DSP 的完善阶段( 2000 年以后)。
代表产品:TI 公司的 TMS320C54 主要用途:各个行业领域。
3、可编程 dsp 芯片有哪些特点?答: 1、采用哈佛结构( 1)冯。
诺依曼结构,( 2)哈佛结构( 3)改进型哈佛结构2、采用多总线结构 3.采用流水线技术4、配有专用的硬件乘法-累加器5、具有特殊的 dsp 指令6、快速的指令周期7、硬件配置强8、支持多处理器结构9、省电管理和低功耗4、什么是哈佛结构和冯。
诺依曼结构?它们有什么区别?答:哈佛结构:该结构采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输,使取指令操作、指令执行操作、数据吞吐并行完成,大大地提高了数据处理能力和指令的执行速度,非常适合于实时的数字信号处理。
冯。
诺依曼结构:该结构采用单存储空间,即程序指令和数据共用一个存储空间,使用单一的地址和数据总线,取指令和取操作数都是通过一条总线分时进行。
VHDL——出租车计价器
该系统利用VHDL语言、PLD设计出租车计费系统,以MAX+PLUSⅡ软件作为开发平台,设计了出租车计费器系统程序并进行了程序仿真。
使其实现计费以及预置和模拟汽车启动、停止、暂停等功能,并动态扫描显示车费数目。
关键词: 出租车计费器;计数器;VHDL语言;MAX+PLUSⅡ;一、实验任务及要求1.能实现计费功能,计费标准为:按行驶里程收费,起步费为10.00元,并在车行3公里后再按2元/公里,当计费器计费达到或超过一定收费(如20元)时,每公里加收50%的车费,车停止不计费。
2. 实现预置功能:能预置起步费、每公里收费、车行加费里程。
3. 实现模拟功能:能模拟汽车启动、停止、暂停、车速等状态。
4. 设计动态扫描电路:将车费显示出来,有两位小数。
5. 用VHDL语言设计符合上述功能要求的出租车计费器,并用层次化设计方法设计该电路。
6. 各计数器的计数状态用功能仿真的方法验证,并通过有关波形确认电路设计是否正确。
7. 完成电路全部设计后,通过系统实验箱下载验证设计的正确性。
二、实验原理系统顶层框图:计费器按里程收费,每100米开始一次计费。
各模块功能如下:(1) 车速控制模块当起停键为启动状态时(高电平),模块根据车速选择和基本车速发出响应频率的脉冲驱动计费器和里程显示模块进行计数;当处于停止状态时暂停发出脉冲,此时计费器和里程显示模块相应的停止计数。
(2) 里程动态显示模块其包括计数车速控制模块发出的脉冲以及将计数显示动态显示出来,每来一个脉冲里程值加0.1(控制器每发一个脉冲代表运行了0.1公里)。
(3) 计费动态显示模块其初值为10元,当里程超过3公里后才接受计数车速控制模块发出的脉冲的驱动,并且计数显示动态显示出来,每来一个脉冲(代表运行了0.5公里)其数值加1元,当收费超过20时数值加1.5元。
三、出租车计费系统的实现3.1系统的总体模块图:3.2系统各功能模块的实现:(1)模块MS的实现模块MS,输入端口CK0、CK1为两个不同的时钟信号,来模拟汽车的加速和匀速,JS加速按键。
第7章TMS320C54XDSP片内外设10
辅助寄存存器0 辅助寄存存器1 辅助寄存存器2 辅助寄存存器3 辅助寄存存器4 辅助寄存存器5 辅助寄存存器6 辅助寄存存器7 堆栈指针寄存器 循环缓冲大小寄存器 块重复计数寄存器 块重复首址寄存器 块重复尾址寄存器 处理器方式状态寄存器 扩展程序计数寄存器 保留
6
外设映射寄存器 DRR20 DRR10 DXR20 DXR10 TIM0 PRD0 TCR0 32 33 34 35 36 37 38 20 21 22 23 24 25 26 McBSP0缓冲串口数据接收寄存器2 McBSP0缓冲串口数据接收寄存器1 McBSP0缓冲串口数据发送寄存器2 McBSP0缓冲串口数据发送寄存器1 定时器0减计数寄存器 定时器0周期寄存器 定时器0控制寄存器
能被辅助寄存器算术单元ARAU修改,其主要功能是产生16位的数据 空间地址,也能用来作为通用寄存器和计数器。
l 循环缓冲寄存器(BK) 循 环缓冲寄存器(BK)被用来通过ARAU在循环寻址中确定数据循
环区的大小。
l 块循环寄存器(BRC、RSA、REA) 块循环寄存器(BRC)在块循环时确定一段代码所需循环的次数;
PLL MUL PLL 乘 数
11
PLL DIV
PLL 除 数
10-3
PLL COUNT
PLL 计 数 器
2
PLL ON/OFF
通 断 位 PLL /
1
PLL NDIV
方 式 选 择 PLL
0
PLL STATUS
状 态 位 PLL
例:
STM
#9007H, CLKMD
13
字段位
15—12
字段名称
PLL MUL
2PLL ON/OFF源自1PLL NDIV
dsp课后习题答案
第一章1.简述典型实时数字信号处理系统组成部分。
答:包括:抗混叠滤波器(Anti-aliasing filter)、模数转换器ADC(Analog-to-DigitalConverter)、数字信号处理、数模转换器DAC(Digital-to-Analog Converter)和抗镜像滤波器(Anti-image filter) 。
2.简述X86处理器完成实时数字信号处理的优缺点。
答:利用X86处理器完成实时数字信号处理。
特点是处理器选择范围宽,主板及外设资源丰富,有多种操作系统可供选择,开发、调试较为方便;缺点是数字信号处理能力不强,硬件组成较为复杂,系统体积、重量较大,功耗较高,抗环境影响能力较弱。
3.简述数字信号处理器的主要特点。
答:(1)存储器采用哈佛或者改进的哈佛结构;(2)内部采用了多级流水;(3)具有硬件乘法累加单元;(4)可以实现零开销循环;(5)采用了特殊的寻址方式;(6)高效的特殊指令;(7)具有丰富的片内外设。
4.给出存储器的两种主要结构,并分析其区别。
答:存储器结构分为两大类:·诺依曼结构和哈佛结构。
·诺依曼结构的特点是只有一个存储器空间、一套地址总线和一套数据总线;指令、数据都存放在这个存储器空间中,统一分配地址,所以处理器必须分时访问程序和数据空间。
哈佛结构程序存储器空间和数据存储器空间分开,具有多套地址、数据总线,哈佛结构是并行体系结构,程序和数据存于不同的存储器空间,每个存储器空间独立编址、独立访问。
5.简述选择数字信号处理器所需要考虑的因素。
答:应考虑运算速度、算法格式和数据宽度、存储器类型、功耗和开发工具。
6.给出数字信号处理器的运算速度指标,并给出其具体含义。
答:常见的运算速度指标有如下几种:(1)指令周期:执行一条指令所需的最短时间,数值等于主频的倒数;指令周期通常以ns(纳秒)为单位。
例如,运行在200MHz的TMS320VC5510的指令周期为5ns。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
int size = BUFSIZE;
int ain = MINGAIN; int zhy=0; int sk=64; /*sk代表所设置的bufsize大小,需修改它。输入文件 sine.dat为32点,sine11.dat, sin22.dat, sin33.dat, sin44.dat为64点的输入波形.*/
2013-8-7 东华理工大学信息与电子工程学院
8
2
3
–卷积算法的DSP实现 (1)processing1(int *input2, int *output2)
–参数:intput2、output2为两个整型指针数组。 –返回值:返回了一个“TRUE”,让主函数的while循环保 持连续。 –功能说明:对输入的input2 buffer波形进行截取m点,再 以零点的Y轴为对称轴进行翻转,把生成波形上的各点的值 存入OUTPUT2指针指向的一段地址空间中。(m点依Y轴 翻转、保存)
2013-8-7 东华理工大学信息与电子工程学院 8
/* loop forever */ while(TRUE) { /* Read input data using a probe-point connected to a host file. Write output data to a graph connected through a probe-point. */
static int processing4(int *input2, int *output1);
static void dataIO1(void); static void dataIO2(void); /* ======== main ======== */
2013-8-7 东华理工大学信息与电子工程学院 7
2013-8-7 东华理工大学信息与电子工程学院 5
#include <stdio.h> #include "volume.h"
/* Global declarations */
int inp1_buffer[BUFSIZE]; /* processing data buffers */ int inp2_buffer[BUFSIZE]; int out1_buffer[BUFSIZE]; int out2_buffer[BUFSIZE]; int out3_buffer[BUFSIZE]; int out4_buffer[BUFSIZ设计实例
FIR滤波器差分方程如下,x(n)为输入序列, y(n)为输出序列,h(k)为滤波器系数,N为滤波 N 1 器阶数。
y ( n) h( k ) x ( n k )
0
FIR滤波器的结构图
2013-8-7
东华理工大学信息与电子工程学院
16
• FIR的MATLAB设计
2013-8-7 东华理工大学信息与电子工程学院 14
8.2 有限冲激响应滤波器(FIR)的实现
• 特点和结构
– 容易实现线性相位
– 可以实现任意形状滤波器(多通带、多阻带)
– 稳定性好
– 无法直接设定阻带衰减指标
– 阶数较大
– 过渡带性能和实时性之间存在矛盾
2013-8-7 东华理工大学信息与电子工程学院 15
2013-8-7 东华理工大学信息与电子工程学院 9
} /*======== processing ======== FUNCTION: apply signal processing transform to input signal. PARAMETERS: address of input and output buffers. RETURN VALUE: TRUE. */
/* additional processing load */
// load(processingLoad); return(TRUE); }
2013-8-7 东华理工大学信息与电子工程学院 11
static int processing2(int *output2, int *output3) { //此过程将output2波形n点移位后存入output3
12
static int processing3 //此过程进行卷积运算后存入output4指向的空间 (int *input1,int *output2,int *output4) { int m=sk; m=sk; int y=zhy; y=sk1; int z,x,w,i,f,g; w=mzhy1; for(;(my)>0;) for(;m>0;m ) { i=y; { x=0; y ; i=y; z=sk1; z=0; x=0; f=sky; f=y; for(;i>0;i ,z ,f++) for(;i>=0;i ) {g=input1[z]*output2[f]; {g=input1[z]*output2[f]; x=x+g; x=x+g; } z++; out4_buffer[w]=x; f ; w++; } } *output4++ = x; //load(processingLoad); y++; return(TRUE); } } 2013-8-7 13 东华理工大学信息与电子工程学院
void main() { int *input1 = &inp1_buffer[0]; int *input2 = &inp2_buffer[0]; int *output1 = &out1_buffer[0];
int *output2 = &out2_buffer[0];
int *output3 = &out3_buffer[0]; int *output4 = &out4_buffer[0]; puts("volume example started\n");
dataIO1() ; // break point dataIO2() ; // break point /* apply gain */ processing4(input2,output1); processing1(output1, output2); processing2(output2, output3); processing3(input1,output2,output4) ; }
static int processing4(int *input2,int *output1) { int m=sk; //此过程取m点的值存入output1指向的空间 for(;m>=0;m ) { *output1+ + = *input2++ * ain; } for(;(sizem)>0;m++) {output1[m]=0; } // load(processingLoad); return(TRUE); }
• 卷积算法的MATLAB实现
– 函数conv用于计算两个有限长序列之间的卷积
2013-8-7 东华理工大学信息与电子工程学院 2
例如:已知两个序列: x(n) = [3,11,7,0,-1,4,2], -3 n 3; h(n) = [2,3,0,-5,2,1], -1 n 4 求卷积y(n)=x(n)h(n)。 要作该例子的卷积,就能用 >> x = [3, 11, 7, 0, -1, 4, 2]; >> h = [2, 3, 0, -5, 2, 1]; >> y = conv(x,h) y = 6 31 47 6 -51 -5 41 18 -22 -3 得到正确的y(n)值。
2013-8-7 东华理工大学信息与电子工程学院 4
(3)processing3(int *input1,int *output2,int*output4)
–参数:output2、output4、input1为三个整型指针数组
–功能:对输入的input2 buffer波形和输入的input1 buffer作 卷积和运算,然后把生成的波形上的各点的值存入OUTPUT4指 针指向的地址空间中。(求卷积和、保存)
• 算法
(1)翻转:先在变量坐标m上作图x(m)和h(m),将h(m)以
m=0的垂直轴为对称轴翻转成h(-m)。
(2)移位:将h(-m)移位n,即得h(n-m)。当n为正整数时, 右移n位。当n为负整数时,左移n位。
(3)相乘:再将h(n-m)和x(m)相同m值的对应点值相乘
(4)相加:把以上所有对应点的乘积叠加,即得y(n)值。
第8章 TMS320C55x软件设计实例
• 卷积算法 • 有限冲激响应滤波器(FIR)的实现 • 无限冲激响应滤波器(IIR)的实现 • 快速傅里叶变换(FFT) • 语音信号编码解码(G.711) • 数字图像的锐化 • Viterbi译码
2013-8-7 东华理工大学信息与电子工程学院 1
8.1 卷积算法
(2)processing2(int *output2, int *output3)
–参数:output2、output3为两个整型指针数组。 –返回值:返回了一个“TRUE”,让主函数的while循环保 持连续。 –功能:对输出的output2 buffer波形进行作n点移位,然 后把生成的波形上的各点的值存入OUTPUT3指针指向的地 址空间中。 (n点移位、保存)
2013-8-7 东华理工大学信息与电子工程学院 /* volume control variable */ 6
//unsigned int processingLoad = 1; /* processing routine load value */
/* Functions */