DSP第三章

合集下载

第三章 DSP定点运算

第三章 DSP定点运算
第三章 DSP定点运算
数的定标 高级语言 DSP定点算术运算 非线性运算的定点快速实现 小 结
3.1.1 数的定标
在定点DSP芯片中,采用定点数进行数 值运算,其操作数一般采用整型数来表 示。 一个整型数的最大表示范围取决于DSP 芯片所给定的字长,一般为16位或24位。 显然,字长越长,所能表示的数的范围 越大,精度也越高。
虽然有时需要使用混合表示法,但是,更通常 的是全部以Q15格式表示的小数或以Q0格式表 示的整数来工作。 这一点对于主要是乘法和累加的信号处理算法 特别现实,小数乘以小数得小数,整数乘以整 数得整数。 乘积累加时可能会出现溢出现象,在这种情况 下,程序员应当了解数学里面的物理过程以注 意可能的溢出情况。 返回
3.4.2 查表法
在实时DSP应用中实现非线性运算,一般都采取适当 降低运算精度来提高程序的运算速度。查表法是快速 实现非线性运算最常用的方法。 查表法:根据自变量的范围和精度要求事先制作一张 表格,根据输入值确定表的地址,根据地址就可得到 相应的值。 显然输入的范围越大,精度要求越高,则所需的表格 就越大,即存储量也越大。 查表法求值所需的计算就是根据输入值确定表的地址, 因而运算量较小。 查表法比较适合于非线性函数是周期函数或已知非线 性函数输入值范围这两种情况 。
3.3 DSP定点算术运算
定点DSP芯片的数值表示是基于2的补码表示形 式。 每个16位数用1个符号位、i个整数位和15-i个小 数位来表示。 例如数00000010.10100000表示的值为 21 + 2 −1 + 2 −3 =2.625, 这个数可用Q8格式(8个小数位)来表示,它表 示的数值范围为-128~+127.996,一个Q8定点 数的小数精度为1/256=0.004。

数字信号处理DSP第三章3.2 DFT定义

数字信号处理DSP第三章3.2 DFT定义
⎛ 2π j⎜ ⎝ N ⎞ ⎟k ⎠
易知,DFT的变换区间长度N不同, 表示对X(ejω)在区 间[0, 2π]上的采样间隔和采样点数不同, 所以DFT 的变换结果也不同。
jIm(z)
−2 WN −1 WN 0 WN k =0 − ( N −2 ) WN
X (ejω)
X (k )
o
Re[z] o π
W
− ( N −3) N
ω
DFT与序列傅里叶变换、Z变换的关系
例1 已知序列x(n)=δ(n),求它的N点DFT。 解
nk 0 X (k ) = ∑ δ (n)WN = WN =1 n=0 N −1
k=0, 1, …, N-1
对序列δ(n),不论对它进行多少点的DFT,所得结果 都是一个离散矩形序列。
本节将根据周期序列和有限长序列之间的关系, 由周 期序列的离散傅里叶级数表示,给出有限长序列的离散 频域表示,即离散傅里叶变换(DFT)。
一、预备知识 1、余数运算表达式 如果n=n1+mN, m为整数;则有
((n))N=n1, 0≤n1≤N-1
运算符(( ))N表示n被N除,商为m,余数为n1。 n1是((n))N的解, 或称作取余数,或说n对N取模值,简 称取模值,n模N,(n mod N) 。
周期延拓
长度为M的有限长序列x(n)的N点DFT,是有限长序
~
x(n)
N
~ x (n)
DFS
DFS[ ~ x (n) ]
~ X (k )
% (k ) R (k ) 取主值 X N
DFT[x(n)]N
注:以上定义中N长度没有限制!
有限长序列x(n)的N点DFT—即DFT正变换公式
X (k ) = DFT[ x(n)]N = ∑ xN (n)W , 0 ≤ k ≤ N − 1

DSP第三章1节3部分

DSP第三章1节3部分

为使捕获单元正常工作,应完成以下寄存器配置: (1)初始化捕获FIFO状态寄存器CAPFIFO,将其适当的状态位 清0。 (2)设置时基通用定时器的控制寄存器T2CON或T3CON,同 时确定它的计数模式。 (3)如必要,应设置相关的通用定时器比较寄存器或通用定时 器周期寄存器。 (4)设置捕获控制寄存器CAPCON。
3.1.3 捕获单元 捕获单元是一种输入设备,用于捕获引脚上电平的变化并记录 它发生的时刻。 普通的微处理器能作到这一点,但需要由CPU完成判断和记录 工作。因此它占用CPU的资源。 而DSP的捕获单元与CPU并行地捕获引脚上电平的变化并记录 它发生的时刻,替代了普通CPU的判断和记录功能。 另外,对于两次间隔很短的跳变的捕获,普通的微处理器就显 得力不从心,这对于快速变化的信号检测、测速等就显得非常的不 方便。 哪么对于时间间隔很短的多次跳变的捕获,DSP是否也可以得 心应手? DSP控制器的捕获单元不需要占用CPU的资源,与CPU并行工 作。同时设置了两级深的FIFO(先入先出)堆栈缓冲器,故对于二 次间隔很短的跳变的捕获得心应手。 DSP控制器共有四个捕获单元,结构示意图如图3.19所示:
为了采集到跳变信号,必须保持输入的当前电平两个CPU时钟 周期。 (6)用户指定的边沿检测方式:可以检测CAPx的上升沿、下 去图 降沿或两者都检测。 (7)对应于每一个捕获单元,都有1个可屏蔽的中断标志位。 (8)捕获单元的操作不影响任何定时器的操作或与任何定时器 相关的比较/PWM输出。 (9)捕获单元4中断标志的置位可以编程用于启动ADC。 通用定时器用作捕获单元的时基时,并不影响它原来的功能, 它仍可实现通用定时器的“定时”或“比较/PWM输出”。 捕获控制寄存器CAPCON和捕获FIFO状态寄存器CAPFIFO各位 的组成定义与说明见表3.11~3.13。

数字信号处理基础pptDSP第3章

数字信号处理基础pptDSP第3章
(2) 补零到L点长 x(m)L、 h((m))LRL(m) (3) 将h((m))LRL(m)翻褶为h((−m))LRL(m) (4) h((−m))LRL(m)与x(m)对应位相乘相加得 yc(0)
(5) 循环右移到h((n−m))LRL(m),与x(m)相乘相加得 yc(n)
例3-6 x(n)= {1, 2, 3},0 n 2;h(n)= {1, 2, 2, 1},0n3。
翻褶 翻褶循环右移1位
§3.2.2 有限长复序列共轭的DFT
DFT[ x*( N n)]N X *(k), 0 k N 1
DFT[ x*(n)]N X *( N k), 0 k N 1
证明:
X*(N
k)
N 1
x(n)W
n0
(N N
k
)n
*
N 1
x(n)W
n0
N
kn
n 4 3 2 1 0 1 2 3 4 5
y(n4) 1 4 9 11 8 3
y(n)
1 4 9 11 8 3
yc1(n)
9 7 9 11
3. 循环卷积定理 x(n)长度M,h(n)长度N,L max(M, N) yc(n) = x(n) L h(n),Yc(k) = X(k)H(k) DFT[x1(n)x2(n)]L = X1(k) L X2(k)/L 0nL1,0kL1
N 4,
X (k)4
1 e j2k 1 e jk 2
4, 0,
k0 1k 3
4 (k),
0 k 3
N 8,
X (k)8
1 e jk 1 e jk 4

0
k
7
N 16,
X (k )16
1 e jk 1 e jk

DSP第三章

DSP第三章

定时器相关的位都被复位为0,因此所有通用定时器的操作
都被禁止,计数方向指示位都置成1。 所有的定时器中断标志位均被复位为0。所有的定时器中断
屏蔽位都被复位为0,因此所有通用定时器的中断都被屏蔽。
所有通用定时器的比较输出都被置为高阻态。
Page 28
比较单元与PWM发生器
事件管理器有3个全比较单元和3个单比较单元。每个单比较 单元对应一根输出引脚CMPy/PWMy(y=7、8、9),
00 仿真挂起时立即停止
01 仿真挂起时当前定时周期结束后停止 10 操作不受仿真挂起的影响
11 操作不受仿真挂起的影响
位13、12、11 六种计数模式选择 001 单增计数模式 011 定向的增/减计数模式 101 连续增/减计数模式
Page 19
000 停止/保持模式 010 连续增计数模式 100 单增减计数模式
Page 24
LDP #00H SPLK #02H IMR 使能内核中断2 SPLK #FFFFH IFR LDP #E8H 清内核中断标志 7400H~747FH
SPLK #80H EVIMRA 定时器1周期中断使能
SPLK #FFFFH EVIFRA 中断标志位清0 SPLK #0042H GPTCON 不启动ADC,T1高有效
Page 14
周期、下溢、上溢中断标志位、中断以及相应的事件产生, 与连续递增计数模式一样。 注意:TMRDIR引脚的输入改变引起计数方向改变要2个 CPU时钟周期。引脚电平状态会在GPTCON的方向指示位 TxSATA中反映出来。 5.单增减模式 由初始值增计数至周期匹配再减计数至0为止,TxCON使
* 16位定时器向上/下计数器TxCNT,可读或写
* 16位定时器比较寄存器(带阴影寄存器、双缓冲)TxCMPR,读或写 * 16位定时器周期寄存器(带阴影寄存器、双缓冲)TxPR,可读或写

DSP原理与应用---第3章 EMIF

DSP原理与应用---第3章 EMIF


DRAM是Dynamic RAM的缩写,中文含义为动态随机存取存储器, 需要不断的刷新,才能保存数据。而且是行列地址复用的,许多都有 页模式。SDRAM:Synchronous DRAM,即数据的读写需要时钟 来同步。 一个是静态的,一个是动态的,静态的是用的双稳态触发器来保存信 息,而动态的是用电子,要不时的刷新来保持。
DRAM容量大,SRAM容量小


SDRAM的结构
FLASH ROM
Flash-ROM(闪存)已经成为了目前最成功、流行的一种固态内存,与 EEPROM 相比具有读写速度快,而与 SRAM 相比具有非易失、以及价廉等优 势。而基于 NOR 和 NAND 结构的闪存是现在市场上两种主要的非易失闪存技 术。 Intel 于 1988 年首先开发出 NOR flash 技术,彻底改变了原先由 EPROM 和 EEPROM 一统天下的局面。紧接着,1989 年东芝公司发表了 NAND flash 技术(后将该技术无偿转让给韩国 Samsung 公司),强调降低每比特的成 本,更高的性能,并且象磁盘一样可以通过接口轻松升级。 NOR 的特点是芯片内执行(XIP,eXecute In Place),这样应用程序可以直 接在闪存内运行,不必再把代码读到系统 RAM 中。NOR 的传输效率很高,在 1~4MB 的小容量时具有很高的成本效益,但是很低的写入和擦除速度大大影 响了它的性能。 NAND 结构能提供极高的单元密度,可以达到高存储密度,并且写入和擦除的 速度也很快,这也是为何所有的 U 盘都使用 NAND 闪存做为存储介质的原因。 应用 NAND 的困难在于需要特殊的系统接口。
NAND flash和NOR flash的对比
接口差别 NOR 闪存带有SRAM接口,有足够的地址引脚来寻址,可 以很容易地存取其内部的每一个字节。 NAND闪存使用复杂的I/O口来串行地存取资料,各个产品 或厂商的方法可能各不相同。8个引脚用来传送控制、地 址和资料信息。NAND读和写操作采用512字节的块,这 一点有点像硬盘管理此类操作,很自然地,基于NAND的 闪存就可以取代硬盘或其它块设备。

DSP完整课件第3章 共29页

DSP完整课件第3章 共29页

fin
CLKOUT
PLL选择 (SCSR1.11:9)
1500pF PLFF2
退出
2)外部滤波器电路回路
3.2.1 锁相环(PLL)
PLL有2个外接滤波输入引脚:PLLF,PLLF2 PLL模块使用外部滤波电路回路来抑制信号抖动和电磁干 扰,使信号抖动和干扰影响最小。
1 1Ω 0.68μ F
PLLF
(3)当未检测到累加器溢出时,其值为0;当溢出发生时, OV位被置1。
(4)根据被测试位的结果,测试控制标志位(TC)位被置1或0。
2019
退出
3.1.4 累加器(ACC)
存放CALU中的运算结果,其存放的数据可以执行单一的移位 或循环操作。其中的高位或低位字可以进入输出定标移位器进行 移位后再存放进数据存储器。与ACC有关的状态位有: 1)进位标志位C ① 当累加器中的数据相加时,结果有进位或减法无借位时C=1; 相减时,结果有借位或或加法无进位时,C=0 。 ② 当累加器中的数据被移动1位时,累加器中的最低位或最高位 进入C。
(2)外部时钟方式
最小和最大的CLKIN频率分别为4MHz和30MHz(2407A 为40MHz)。
2019
退出
3.2.2 看门狗定时器时钟
当CPU工作于低功耗模式下,看门狗能持续计数 WDCLK引脚为看门狗电路的时钟输入端。 WDCLK的时钟来自于时钟输出引脚CLKOUT。
WDCLK=CLKOUT/512 当CPU的挂起信号有效时,WDCLK将被停止。
2019
退出
3.1.6 状态寄存器ST0和ST1
1) 状态寄存器ST0
OV:溢出标志位。当中央算术逻辑单元发生溢出时,OV=1, 直到发生复位、执行以OV(溢出)或NOV(不溢出)为条件的转 移指令、或执行LST指令时被清0。

哈工程DSP专业课课件第三章

哈工程DSP专业课课件第三章
详细描述
在应用实例一中,我们将介绍如何使用数字信号处理算法对信号进行处理。具体来说,我们将实现一个简单的滤 波器,该滤波器可以对信号进行低通滤波、高通滤波和带通滤波等操作。通过这个实例,我们将深入了解数字信 号处理算法的实现原理和应用方法。
应用实例二:数字滤波器设计
总结词
数字滤波器是数字信号处理中的重要组成部分,它可以有效地滤除信号中的噪声和干扰,提高信号的 清晰度和可靠性。
习题三解答
01
总结词:系统设计
02
总结:这道习题要求设计一个简单的 数字信号处理系统,包括信号的采集 、处理和输出。
03
详细描述:首先,需要确定系统的目 标和功能,选择合适的数字信号处理 器和相关硬件。然后,设计系统的数 据流和指令流,以及系统的控制流程 。在系统设计过程中,需要考虑系统 的实时性能、可靠性和可扩展性。最 后,需要对系统进行测试和验证,确 保其满足设计要求。
THANKS
感谢观看
习题二解答
01
总结词:算法实现
02
总结:这道习题要求实现一个简单的数字信号处理算法,如 离散傅里叶变换(DFT)或其快速算法(FFT)。
03
详细描述:首先,需要理解算法的基本原理和数学公式。然后, 根据算法原理,使用编程语言实现算法。在实现过程中,需要注 意算法的效率和精度,并尽可能优化算法性能。最后,需要对算 法进行测试和验证,确保其正确性和可靠性。
详细描述
在应用实例二中,我们将介绍如何设计数字滤波器。具体来说,我们将设计一个简单的低通滤波器和 一个带通滤波器。通过这个实例,我们将深入了解数字滤波器的设计原理和应用方法,并掌握如何根 据实际需求选择合适的滤波器类型和参数。
应用实例三:数字信号处理系统实现

DSP第三章

DSP第三章

50. SQRA 037Fh,
移位乘积)
DAT30
;(DP = 6: 地址 0300h–
;PM = 0: 无
51. SPH 027Fh,
DAT3
;(DP = 4: 地址 0200h– ;PM = 0:
无移位)
52. SPH
* ,AR7
;(PM = 2: 左移四位)
• 控制指令
BIT
(数据位 (15 – 0))
28.BCND
P9, LEQ,C
如果ACC 内容小于等于0,并且进位位置位,程序转到 P9 地址处开始执行,否则PC + 2。
29. INTR K
K: 中断向量值,每个K值(0~31)代表一个中断向量。
INTR
3
;PC + 1 被压入堆栈。 使得程序控制转换到与K值=3对应的地址, 由该地址引导到相应的中断服务程序。
ARP 装载方式: (1) MAR 指令 (2) LST 指令
(3) 任何支持间接寻址的指令
ARP 所指的寄存器被作为当前辅助寄存器或简称为当前AR。 • 间接寻址选项
LF240x 提供四种间接寻址选项:
(1)“ * ” 不增不减 指令用当前AR所指的数据存储器地址中内容装载,但当前 AR 内容不增不减。
POPD 59. POPD
DAT10 ;(DP = 8)
PSHD 60. PSHD
* ,AR1
61. SPM 11)
3
;乘积寄存器移位方式 3 (PM =
• I/O 和存储器指令
BLDD 源, 目的
BLDD # lk, dma 源地址长立即数目的地址直接 BLDD # lk, ind [, AR n] 源地址长立即数目的地址间接

DSP完整课件第3章

DSP完整课件第3章
XF:XF引脚状态位。该位决定XF引脚的状态。SETC指令可对 该位进行置位,CLRC指令可对其进行清0。
15~13
ARB X
12
0
11
X
10
1
9
1
8
1 1
7
1 1
6
1 1
5
1 1
4
XF 1
3
1 1
2 1~0
1 1 PM 00
CNF TC SXM C
CNF:片内DARAM配置位。当CNF=0时,可配置的 DARAM映射到数据存储空间;当CNF=1时,可配置的 DARAM映射到程序存储空间。可通过SETC、CLRC指令对其 进行修改。 2010 退出
2010
退出
3.1 CPU功能模块
CPU是DSP 的核心部件, 主要进行取数、 运算(加、乘、 移位等)、送数 的操作。包括: 输入定标移位 器、中央算术 逻辑单元 (CALU)和乘法 单元等。
2010
退出
3.1.1 输入定标移位器
用于完成不同数据格式之间的转换。 因为240x芯片的数据总线是16位,而中央算术逻辑单元 (CALU)是32位,必须把16位数据转换为32位,实现数据格式转 换。因此,输入定标移位器的16位输入与数据总线相连,32位 输出与CALU单元相连。 输入定标移位器作为从数据总线到CALU之间的数据传输路 径的一部分,不会额外占用CPU的时钟开销。 定标移位器对输入数据进行0-15位左移。 左移时,输出数据的最低有效位(LSB)为0,最高有效位(MSB) 根据状态寄存器ST1的符号扩展控制位SXM的值来决定是否需要 进行符号扩展。 (1)当SXM=1时,高位进行符号扩展; (2)当SXM=0时,高位填0。 移位次数由包含在指令中的常量或临时寄存器(TREG)中的值 来指定。 2010 退出

精品课件-DSP处理器原理与应用(鲍安平)-第3章

精品课件-DSP处理器原理与应用(鲍安平)-第3章
10
(6) DSP开发系统。DSP开发系统是由厂家提供的一个包 含DSP、存储器、常用接口电路的通用电路板和相应软件的软 /硬件系统。通常有两种形式,一种是电路板卡的形式,插入 计算机中;另一种是通过计算机控制端口(如:串口、并口或 者USB接口)连接到计算机,通过计算机的控制端口来控制DSP 的运行。DSP厂家或者其他的第三方公司提供DSK(DSP starter Kit)入门套件和EVM(Evaluation Module)评估模块 等来帮助初学者熟悉DSP处理器的应用。同时,DSK和EVM也可 以作为程序的初步运行对象,以方便调试。
7
为了克服C编译器低效率,在提供标准C库函数的同时,开发 系统也提供了许多针对DSP运算的高效库函数,例如FFT、FIR 、IIR、相关、矩阵运算等,它们一般采用汇编语言来编写, 带有高级语言调用/返回接口。
为了得到高效编程,在系统软件开发中,关键的DSP运算 程序一般都是自行手工用汇编语言编写的,按照规定的接口 约定,由C程序进行调用,这样极大地提高了编程效率。
2
3.1 DSP处理器软、硬件开发工具简介
虽然不同DSP芯片厂家提供了多种不同的开发调试工具, 但它们的功能大体相似。图3-1为DSP处理器软件开发流程图 。
3
ห้องสมุดไป่ตู้
图3-1 DSP处理器软件开发流程图
4
从图3-1中可以看出,DSP软件开发可以分为5个步骤,首 先要根据所设计的硬件情况编写出结构文件;然后用C或者汇 编语言编写源程序,源程序经过C编译器和汇编器后与结构文 件以及库文件在链接器中链接成可执行代码,如果是汇编语 言编写的程序则可以跳过C编译器;可执行代码可以在软件模 拟器模拟运行或者通过硬件仿真器在标准的开发板或者评估 板上运行调试;当软件运行达到要求后,再在用户自己制作 的目标板上调试;调试成功后将可执行代码制作成EPROM码, 目标板脱机运行,完成系统的测试和调试。

DSP原理及应用第三章PPT课件

DSP原理及应用第三章PPT课件
以DP为基准的直接寻址是由DP值确定是512页中 的哪一页,由dmad确定是该页中的哪一个单元。
SP可以指向存储器中的任意一个地址。dmad可 以指向当前页中具体的单元,从而允许访问存储器 任意基地址中的连续的128个单元
15
第15页/共157页
特点
举例
用途
可以在不改 变DP或SP的 情况下,随 机地寻址128 个存储单元 中的任何一 个单元。
EFB:循环缓冲器的有效基地址(EFB)就是用户 选定的辅助寄存器(ARx)的低N位置 0后所得到 的值。
EOB:是通过用BK的低N位代替ARx的低N位得
到。
25
第25页/共157页
26
第26页/共157页
循环缓冲器的指示index就是ARx的低N位, 步长step就是加到辅助寄存器,或从辅助寄存 器中减去的值。循环寻址的算法如下:
特点:指令中包含一个固定的16位地址,能寻 址所有数据、程序和I/O存储空间,但 运行速度慢,需要较大的存储空间。
用途:用于对速度要求较低的场合。
9
第9页/共157页
3.累加器寻址
方法
举例
特点
用累加器 中的数值 作为地址 来读写程 序存储器。
READA Smem WRITA Smem
可用来完成 程序存储器 单元的数据 与数据存储 器单元的数 据进行交换
23
第23页/共157页
1) 循环寻址
许多算法,如卷积,相关和FIR滤波等, 都需要在存储器中实现一个循环缓冲器。在 这些算法中,一个循环缓冲器就是一个包含 了最近的数据的滑动窗口。当新的数据来到 时,缓冲器就会覆盖最早的数据。
循环缓冲器实现的关键是循环寻址的实 现。‘C54x间接寻址中提供了循环寻址的方 式,以%表示。

DSP完整课件第3章PPT文档30页

DSP完整课件第3章PPT文档30页

DSP完整课件第3章
26、机遇对于有准备的头脑有特别的 亲和力 。 27、自信是人格的核心。
28、目标的坚定是性格中最必要的力 量泉源 之一, 也是成 功的利 器之一 。没有 它,天 才也会 在矛盾 无定的 迷径中 ,徒劳 无功。- -查士 德斐尔 爵士。 29、困难就是机遇。--温斯顿.丘吉 尔。 30、我奋斗,所以我快乐。--格林斯 潘。
66、节制使快乐增加并使享受加强。 ——德 谟克利 特 67、今天应做的事没有做,明天再早也 是耽误 了。——裴斯 泰洛齐 68、决定一个人的一生,以及整个命运 的,只 是一瞬 之间。 ——歌 德பைடு நூலகம்69、懒人无法享受休息之乐。——拉布 克 70、浪费时间是一桩大罪过。——卢梭

DSP第三章.ppt

DSP第三章.ppt
RPT后面的一条指令重复执行多次。
二、程序地址的产生
程序地址产生的情况
▲ 顺序操作:程序的地址来源于PC程序计数器(程序地址+1) ▲ 空(哑)周期:程序的地址来源于PAR (程序地址+1) ▲ 从子程序返回:程序的地址来源于栈顶(TOS) ▲ 从表传送或块传送返回:程序的地址来源于转移或调用指
PSC
TDDR
R-0
D15
PSCH
D8 D7
R/W-0
D0
TDDRH
R-0
R/W-0
一、时钟及系统控制
看门狗及其应用
F2812的看门狗与240x的基本相同,当8位的看门狗计数 器计数到最大值时,看门狗模块产生一个输出脉冲(512个振荡 器时钟宽度)。如果不希望产生脉冲信号,用户需要屏蔽计数 器,或用软件周期向看门狗复位控制寄存器写“0x55+0xAA", 该寄存器能够使看门狗计数器清零。
SUBC(条件减)
希望同学们坚信:
数据存储区中建立一个堆栈。
二、程序地址的产生
堆 栈 例 子
二、程序地址的产生
堆栈例子
二、程序地址的产生

堆 ▲ 一级深、16位宽,操作不可见,即无指令,只有程序

地址产生逻辑才能够使用微堆栈。
▲ 程序地址产生逻辑在执行BLDD、BLPD、MAC、MACD、 TBLR 和TBLW 这些串(块)操作指令时利用微堆栈保 存返回地址。
WDCHK
R/W-0
R/W-0
D0
WDCNTR
R/W-0
D0
WDKEY
R/W-0
D8
D3 D2
D0
R/W-0WDPS
二、程序地址的产生

西工大DSP第三章

西工大DSP第三章
kn N -j 2p kn N
WN = e
W =e
N称为DFT变换区间长度
4 PDF created with pdfFactory Pro trial version
DFT 导出的图形解释
x(n)
~ x (n)
IDFS n
% (n) = x ((n)) N x
一、问题的提出: 有限长序列的傅立叶变换在频域是关于频率的连续函数,为 了适用于计算机的运算,希望将连续的频率函数也能离散化,如 何解决这一问题呢?
二、如何解决问题: 引出了 离散傅立叶变换
回忆傅里叶变换几种形式
2 PDF created with pdfFactory Pro trial version
1
x ((1 - m)) R ( m)
2 N N
m
0 1 2 3 4 5 6 7
2 N
x (( 2 - m)) R ( m )
N
m
两个长度为N的序列的循环卷积长度仍为N
4 2
0 1 2 3 4 5 6 7
x (n )
n
0 1 2 3 4 5 6 7
3、循环卷积定理 有限长序列 x1(n) 和 x2(n),长度分别为N1和N2, x1(n) 和 x2(n)的N 点DFT分别为 X1(k) 和 X2(k) , N=max[N1,N2]
1 PDF created with pdfFactory Pro trial version
§3.0 引言
DFT使信号在频域离散化,从而使计算机能在频 域进行信号处理,特别是DFT有多种快速算法可使信 号处理的速度大大提高。因而离散傅立叶变换在各种 数字信号处理的算法中起着核心作用。
3.2.4

DSP第三章1节1部分

DSP第三章1节1部分

GPTx 控制寄存器 T CON
与通用定时器相关的引脚(x=1,2,3,下同)
1、TMRDIR:用于确定通用定时器计数增/减方式,高电平为 去图 增计数,低电平为减计数。
2、TMRCLK:外部时钟引脚,最大频率是CPU时钟频率的1/4。 3、TxPWM/TxCMP:通用定时器输出引脚。平时高阻,在通 用定时器的比较输出操作被开启时该引脚起作用。 4、ADC—Start:它是A/D转换的启动信号。当定时时间到时自 动发出。
TMRCLK引脚提供外部时钟输入。 EV模块所有输入均与内部CPU时钟同步。 应当注意,在被EV确认之前,当前转换必须保持,直到遇到 CPU时钟的两个上升沿。即所有要求输入的信号跳变至少应保持2 个CPU时钟周期。 因此,为了可靠,我们推荐任何转换都应保持至少两个CPU时 钟周期。 与事件管理模块有关的引脚说明如表3.1所示。
周期寄存器 TxPR (双缓冲)
周期寄存器 T1PR (双缓冲)
MUX
GPTCON 通用定时器 控制寄存器
比较寄存器 TxCMP (双缓冲)
比较逻辑
对称/非对称 波形发生器
TxPWM
输出逻辑
TxCMP
中断标志
TxCNT 通用定时计数器
ADC启动 内部CPU时钟 控制逻辑 TMRCLK TMRDIR 图3.2 通用定时器的结构示意图
在通用定时器的比较输出操作被开启时,还将使引脚 TxPWM/TXCMP产生跳变。
定时周期寄存器 TxPR 与定时比较寄存器 TxCMPR 类似,它存 放周期值,也是双缓冲结构,可在任何时候对它的缓冲寄存器进行 读写。 定时周期缓冲寄存器的内容装载到它的工作寄存器,只能在计 去图 数寄存器的值为0时进行。
去图2
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

下一个定时周期;
定时中断周期和频率?
定时中断周期:
其中:TTINT为定时周期,单位是s(秒); TCLKOUT为CPU的时钟周 期,即主频的倒数。 定时中断频率:
初始化定时器的步骤:
根据fTINT和fCPUCLK计算PRD和TDDR的值,
设置好TCR 和PRD, 其中TRB=1(自动载入初值)和TDDR=1(先停 止定时器); TIM清零; 开启定时器, 设置TCR的TSS=0。
2. 中断响应
硬件或软件中断发送了一个中断请求后, CPU必须决定是否响应该中断请求。
5 TRB
4
3-0
TDDR TDDR
Free Reserved Soft Soft Free Reserved
TRB TSS TSS
定时器工作过程?
TSS=0时,开启定时器,PSC在CPU时钟(CLKOUT) 作用下作减1计数
PSC减为0时,产生借位信号,使TIM减1,同时TDDR
的值装载到PSC,开始下一次预计数; 重复步骤(2),反复驱动TIM减1计数,直到TIM减为0时, TIM产生借位信号,此借位信号作CPU的定时中断TINT 和定时脉冲输出TOUT,同时PRD的值装载到TIM开始
产生CPU运行 主时钟,同时受 BSCR(分区转换 寄存器,地址 0x29)的DIVFCT 位分频控制,通 过引脚CLKOUT 对外输出主时钟。
1,通过定时器为定时 中断产生中断脉冲, 并可通过引脚TOUT 对外输出定时时钟. 2,通过McBSP等多 通道缓冲串口相关 寄存器设置,产生 串口所需的各类时钟.
R/W R/W R/W R/W R/W R
11
10 ——3
2
1
0
PLLON/OFF : PLL打开或关闭控制。与 PLLDIV : 分频因子,与 PLLDIV 及 PLL PLLSTATUS 状态位,指示 工作 PLLCOUNT : 延时计数器, PLLCOUNT PLLMUL : PLL 倍频因子,与 PLLDIV 及 PLLNDIV : PLL 工作选择位。为0时为 PLLNDIV 共同决定 PLL 是否工作,当两者均为 共同确定频率系数,见表 3.3 。 状态(只读),为 0 时表示 PLL 工作在 DIV 方式, 是一个减法计数器,每输入 16个 CLKIN 时钟, PLLNDIV 共同确定频率系数,见表 3.3 。 分频( DIV )方式,为 1时为 PLL方式。 0 时, PLL 关闭,否则 PLL 工作。 为 1时工作在PLL 方式。 计数器的值减 1。当 PLLCOUNT减到0时,PLL 锁定输出时钟。这时,CPU可以按新的时钟频率工作。
软件中断请求
INTR指令:该指令允许执行任何一个中断服务程序。指令 操作数K(中断号)表示CPU分支转移到哪个中断向量地址。 表3.5列出了用于指向每个中断向量位置的操作数K。 当响 应INTR中断时, ST1寄存器的中断模式位(INTM)被设置为1 , 并用于禁止可屏蔽中断。 TRAP指令:该指令执行的功能与INTR指令一致, 但不用 设置INTM位。 RESET指令:该指令执行一个非屏蔽软件复位, 可以在任 何时候被使用并0的优先级最高。
中断屏蔽寄存器(IMR)
2. 中断标志寄存器(IFR)



IFR可以识别和清除有效的中断, 其结构与IMR相同, 当 一个中断出现时, IFR中的相应的中断标志位置1, 直到 CPU处理该中断为止。 以下4种情况可清除中断标志: (1) DSP复位(RS引脚为低电平); (2) 中断得到处理; (3) 将0写到IFR中的适当位, 相应的尚未处理的中断被 清除; (4) 利用合适的中断号执行INTR指令。
可见, TDDR可取15=0x0F, PRD可取62499=0xF423, 此外再用一个变量保存系数4。
3.2.2 定时器的多时钟应用 时钟级程序由时间表启动, 时间表由 时间计数器、 屏蔽表、 转移表组成, 如下 图所示。
在时间级调度中, 通常以一种中断时钟为 时基(1ms),以此计 算中断所需的脉冲数, 其他时钟中断为它的整 数倍,用软件实现调度。 有以下四个步骤: (1) 建立执行时间表。 (2) 建立屏蔽表。
第3章
TMS320C54x DSP片内外设
时钟发生器
定时器
外部总线操作
中断系统
DMA控制器
通用I/O接口
主机接口
McBSP用作SPI接口
多通道缓冲串口McBSP
3.1
A
内部振荡器 及锁相环 (PLL)
时钟发生器
B
VC5416与时钟 有关的内部单元 有哪些? 内部时钟
时钟发生器为DSP的内部各单元和外部器件提供时钟
6
其中配置输出时钟计算公式 CLKOUT=CLKIN×倍频因子
倍频因子与PLLNDIV、 PLLDIV和PLLMUL之间的关系
PLLNDIV 0 0 1 1 1 1
PLLDIV × × 0 0 1 1
PLLMUL 0-14 15 0-14 15 0 或偶数 奇数
倍频因子 0.5 0.25 PLLMUL+1 1 (PLLMUL+1)/2 PLLMUL/4
0
0
1
9007H
PLL×10
指CPU的时钟频率等于晶体振荡器频率或外部时钟频率乘以系 数10,此时PLL工作
3.1.2 软件配置锁相环
若需要改变硬件配置的时钟频率,可用软件编程 方式修改CLKMD的值,使PLL输出所需的CPU时钟
5416的CLKMD的结构:
15 -12
PLL PLL PLL PLL PLL PLL PLL PLL PLL PLLCOUNT PLL PLLCOUNT PLLCOUNT DIV ON/OFF ON/OFF NDIV MUL DIV NDIV STATUS STATUS MUL
(3) 转移表。 (4) 执行频率分析。
3.3 中断系统
中断可以由硬件或者软件触发, 使DSP暂停正在执行的 程序,进入中断服务程序。 C54x DSP既支持硬件中断,也支持软件中断。 软件 中断 硬件 中断 由程序指令(INTR、 TRAP 或RESET等)请求的中断 由外部物理设备 信号请求的中断 受外部中断 信号触发的 外部硬件中断 受片内外设 信号触发的 内部硬件中断
VC5416复位时的时钟配置
CLKMD1 CLKMD2 CLKMD3 0 0 0 1 1 1 1 0 0 1 0 1 1 0 0 1 0 0 0 1 1
复位时CLKMD的值 0000H 9007H 4007H 1007H F007H 0000H F000H
时钟模式 1/2, PLL不工作 PLL×10 PLL×5 PLL×2 PLL×1 1/2, PLL不工作 1/4, PLL不工作
3.2
定时器
C54x的定时器是一个减1计数器。 每来1个时钟周期自动减1,当计数器减到0时产生定时中断。
TCR 3个寄存器 PRD
定时控制寄存器,地址为0x26
定时周期寄存器,地址为0x25
TIM
定时设定寄存器,地址为0x24
3.2.1
定时器工作原理
TCR寄存器的结构
15-12 11
10
9-6
PSC PSC
举例:
如果时钟设置为PLL×2模式,则CLKMD的值应为多少?
分析如下
参照倍频因子与PLLNDIV、PLLDIV和PLLMUL之 间的关系,很显然应选择如下关系: PLLDIV 0 PLLMUL 0-14 倍频因子 PLLMUL+1
PLLNDIV 1
1
0
PLL锁定时间
1
1
1
工作在PLL模式
PLL锁定时间的计算方法
参考时钟的输入可以有以下两种方式: ①在X1和X2/CLKIN引脚外接晶振,然后通过内 部晶体振荡器产生时钟; ②在X2/CLKIN引脚直接引入外部参考时钟,X1 引脚悬空. C54x 内部时钟关系
3.1.1 硬件配置锁相环
VC5416硬件复位后,通过读取CLKMD1~CLKMD3这三个引 脚电位配置,确定锁相环的初始配置
3.3.3
中断请求及中断处理
1. 接收中断请求
一个中断的完成是由硬件电位和软件指令请求 来实现的。 当产生一个中断请求时, IFR寄存 器中相应的中断标志位被置1。 当相应的中断 被响应后, 该标志位自动被清除。 硬件中断 外部硬件中断请求是由外部中断口的信号发出, 而内部硬件中断请求是由片内外设的信号发出 的。
3.3.2
中断屏蔽寄存器(IMR)和中断标志寄存器(IFR)
1.中断屏蔽寄存器IMR

IMR是5416的一个映射寄存器, 可以用来屏蔽或开放相 应的中断 状态寄存器ST1中的INTM=0(开放所有中断), 且IMR的 某位为1, 就使能该比特位对应的中断
各中断优先级依比特位的顺序,
从低到高排列,
(0-255)×16×CLKIN
注:不同的CLKOUT时钟,锁定时间不同。最简单的方
法是设定在最大值,PLLCOUNT=0xFF。 时钟发生器的模式转换
时钟发生器可以直接从PLL模式切换到分频DIV模式,没有 PLLCOUNT延时,只需短暂延时即可,CPU运行不受影响。 从分频DIV切换到PLL方式的过程中,仍工作在DIV方式,直到 PLLCOUNT减为0,且CLKMD的PLLSTATUS为1时,才输出新时 钟供CPU使用。 从一个PLL方式切换到另一个PLL方式(倍频因子不同),不允许 直接切换,中间需经过DIV状态,即先切换到DIV模式,再切换到新 PLL模式。
使用定时器中断TINT的步骤:
将IFR中的TINT位置0,
以清除尚未完成的定时
器中断;
将IMR中的TINT位置1, 将ST1中的INTM位清0,
开放定时器中断;
相关文档
最新文档