范文一:dsp芯片的原理与应用概念及重点
第一章:
1. DSP 定义 :是指利用计算机,微处理器或专用处理设备,以数字形式对信号进 行的采集,交换,滤波,估值,增强,压缩,识别等处理。
2. DSP 实现的方法 :1,在通用的计算机上用软件实现; 2,在通用的计算机系统 上加上专用的加速处理机实现; 3,用通用的单片机实现; 4,用通用的可编程 DSP 芯片实现; 5,用专用的 DSP 芯片实现。
3.DSP 芯片的优点 :1,在一个指令周期内一般至少可以完成一次乘法和一次加 法; 2,程序空间和数据空间分开,可以同时访问指令和数据; 3,片内具有快速 RAM , 通常可通过独立的数据总线在两块中同时访问; 4, 具有低开销或无开销循 环及跳转的硬件支持; 5,快速的中断处理和硬件 I/O支持; 6,具有在单调周期 内操作的多个硬件地址生产器; 7, 可以并行执行多个操作; 8, 支持流水线操作, 使取值,译码和执行等操作可以并行执行。
4. DSP 芯片的特点 :1,哈佛结构; 2,流水线操作; 3,专用的硬件乘法器; 4, 高效的 DSP 指令; 5,快速的指令周期。
5.DSP 芯片运算速度衡量标准 :1,指令周期; 2, MAC 时间; 3, FFT 执行时间; 4, MIPS ; 5, MOPS ; 6, MFLOPS ; 7, BOPS
第二章
DSP 芯片的基本结构 大致可以分 CPU 、总线、存储器以及集成外设与专用硬件电 路等部分。
TMS320系列 DSP芯片的 CPU 主要组成 :指令解码部分、运算与逻辑部分、寻址 部分;
运算与逻辑部分一般包括 :算术逻辑单元、累加器 ACC 、桶形移位寄存器、乘累 加单元(MAC )
哈佛结构 :主要特点是将程序和数据存储在不同的存储空间中, 即程序存储器和 数据存储器是两个相互独立的存储器, 每个存储器独立编址, 独立访问。 与两个 存储器相对应的是系统中设置了程序总线和数据总线两条总线, 从而使数据得吞 吐率提高了一倍。 (加图)
哈佛结构的改进 :1. 允许数据存放在程序存储器中, 并被算数运算指令直接使用 增强了芯片的灵活性; 2. 指令存储在高速缓冲中, 当执行此指令时, 不需要再从
存储器中读取指令,节约了一个指令周期的时间。
流水线操作原理 :将指令分为几个子操作, 不同子操作由不同的单元完成, 每隔 一个时钟周期, 每个单元就可以进入一条新指令。 因此在同一个时钟周期内, 在 不同的单元可以处理多条指令,相当于并行执行了多条指令。
TMS320C54x 采用 6级流水线
在程序空间的前 192个地址单元内(0000h~00BFh)也有相对应的一个块,建议 不要将代码写入这些地址中。
片内定时器包括 3个基本的寄存器 :定时周期寄存器, 定时控制寄存器和定时寄 存器
定时器工作原理 :·定时寄存器(TIM ) :位于数据空间的 0024h 单元。其中数据 进行自减操作。 ·定时器周期寄存器(PRD ) :位于数据空间的 0025h 单元。每次 复位或 TINT 中断时将内容装入 TIM 寄存器。 ·定时控制寄存器 (TCR ) :位于数据 空间的 0026h 单元,包含了定时器的控制位和状态位。
定时器:片内定时器是一个软件编程的计数器, 通常包括以下 3个几本的寄存器:定时周期寄存器、 定时控制寄存器和定时寄存器。 通过设定定时周期寄存器、 定 时控制寄存器中的值可以改变定时间隔。
TMS320C54x 特点:
1)运算速度快。 2)优化的 CPU 结构。 3)低功耗方式。 4)智能外设。 TMS320C54x 特点:功耗低、优越的性能。
第三章
DSP 芯片包括定点芯片和浮点芯片两大类 ,其中,定点芯片的操作数一般是整型 数,而浮点芯片的操作数可以是整型数,也可以是小数。
数的定标 :在定点 DSP 芯片中, 采用定点数进行数值运算, 其操作数一般采用整 型数来表示。 一个整型数的最大表示范围取决于 DSP 芯片所给定的字长, 一般为 16位或 24位。字长越长,所能表示的数的范围越大,精度也越高。
第六章:
1.DSP 芯片 一般都具有 64K 字的程序空间, 64K 字的数据空间和 64K 字的 I/O空 间。
2. DSP 数据空间的前 60h 个地址单元内,包含有 CPU 和片内外设的映射寄存器 。
3. COFF 目标文件应包含三个默认的块:① .text 块 通常包含可执行代码② .data 块 通常包含已初始化的变量;③ .bss 块通常为未初始化的变量保留空间。
第七章:
1.C54x 的指令集 包含了 4种基本类型的操作:
1)算术指令。 2)逻辑指令。 3)程序控制指令。 4)装载和存储指令。
数据寻址方式 :1) 立即数寻址 2) 绝对地址寻址 3) 累加器寻址 4) 直接寻址 5) 间接寻址 6)存储区映射寄存器寻址 7)堆栈寻址
2. ADD
语法:1:ADD Smem, src
2:ADD Smem, TS , src
3:ADD Smem, 16, src [, dst]
4:ADD Smem, [,SHIFT],src[,dst]
5: ADD Xmem, SHIFT, dst
6: ADD Xmem, Ymem,dst
7: ADD #1k [,SHIFT],src [,dst]
8:ADD #1k, 16 , src [,dst]
9:ADDsrc [,SHIFT] [,dst]
10:ADDsrc, ASM [,dst]
说明:将一个 16位的数加到选定的累加器中。
FIRS
语法:FIRS Xmem, Ymen , pmad
说明:该指令实现一个对称的有限冲激响应 (FIR)滤波器。首先累加器 A 的高端 (32-16位)和由 pmad 寻址得到的 Pmem 相乘,乘法结果与累加器 B 相加并存放 在累加器 B 中。同时, Xmem 和 Ymem 相加后的结果左移 16位放入累加器 A 中。 在下一个循环, pmad 加 1。一旦循环流水线启动,指令成为单周期指令。
指令受 OVM,FRCT 和 SXM 状太标志位的影响,执行结果影响 C , OVA 和 OVB 。 LD
语法:1.LD Smem, dst
2.LD Smem, TS , dst
3.LD Smem, 16, dst
4.LD Smem [, SHIFT], dst
5.LD Xmem, shift , dst
6.LD #K, dst
7.LD #lk [, shift], dst
8.LD #1k, 16, dst
9.LD src, ASM[, dst]
10.LD src [, shift][, dst]
说明:将一个数据存储区操作数或一个立即数装入累加器 dst ,若未确定 dst 时 装入 src 中。 该指令支持各种不同方式的位移操作。 另外, 指令还支持源累加器 src 内容移位后搬移到目的累加器 dst 。注意所有的累加器装载指令都受 SXM 影 响。有 SHIFT 或 ASM 移位的装载指令受 OVM 影响,同时影响 OVdst (dst=src时 影响 OVsrc )
LD||MAC[R]
语法:LD Xmem, dst
||MAC[R] Ymem [,dst_]
说明:并行指令。将 Xmem 左移 16位放入 dst 高端(31-16位) :同时 Ymen 与 T 寄存器内容相乘,乘积与 dst_内容相加后存入 dst_。如果使用了 R 后缀,则还 需进行舍入操作, 此时乘累加结果与 2的 15次方相加, 然后将低 16位清零后的 值存入 dst_中。 指令受 OVM , FRCT 和 SXM 状态标志位的影响, 执行结果影响 OVdst_。 MAC[R]
语法:1.MAC[R] Smem, src
2.MAC[R] Xmem, Ymem , src[, dst]
3.MAC #1K, src[, dst]
4.MAC Smem, #1k, src [,dst]
说明:该指令实现乘累加运算,想成结果和 src 相加,运算结果存放在 dst 中。 若没有定义 dst ,则存放在 src 中。对于第一种和第 3种语法,其中一个乘数在 T 寄存器中,对于第 2种语法,指令结束后, Xmem 中的值存放在 T 寄存器中。对 于第 4种语法,指令结束后, Smem 中的值存放在 T 寄存器中。如果使用了 R 后 缀,则对乘累加值进行舍入处理。指令受 FRCT 和 SXM 状态标志位的影响,只想 结果影响 OVdst 。
MVDD
语法:MDD Xmem, Ymem
说明:将通过 Xmem 寻址的数据存储区单元的值复制到 Ymem 殉职的数据存储区单 元中去
ST||LD
语法:1.STsrc, Ymem ||LD Xmem, dst 2. ST src, Ymem ||LD Xmem, T 说明:src 左移(ASM-16)位后存放到 Ymem 中;同时并行执行 Xmem 左移 16位 后装入 dst 或 Xmem 直接装入 T 寄存器中。若 src 与 dst 为同一累加器,则存放 到 Ymem 中的值为 src 修改前的值。指令受 OVM 和 ASM 状态标志位的影响,执行 结果影响 C 。
DADD
语法:DADD Lmem, src [,dst]
说明:将 32位操作数 Lmem 与 src 内容相加, 加法结果放入 dst 中。 若没有指定
dst ,结果放入 src 中。
第九章:
中断 是处理器的 CPU 和外部设备进行输入 /输出的有效方法。
根据能否被屏蔽,可以将 中断分为三种类型 ,即复位(RESET )中断,不可屏蔽 中断和可屏蔽中断。
中断响应:当 CPU 检测到有效的中断源信号后, CPU 会自动停止当前指令的执行, 转而去处理和该中断源相关的任务 -中断服务程序,这个过程称为中断响应 TMS320C54x 串行口 :标准同步串行口、缓冲串行口、时分复用串行口、多通道 缓冲串行口
DSP 应用系统包括硬件系统(基础)和软件系统。
DSP 硬件系统设计分为最小硬件系统设计和外围硬件接口设计。 最小硬件系统只 包括了 DSP 的基本电路模块。
DSP 基本硬件系统 包括复位电路、 电源电路、 时钟电路、 JTAG 电路以及其他基本 外设。
例 9.6
C54x DSP芯片的工作时钟为 100MHz ,要求生产一个 100us 的定时中断,利用这 个固定时间周期进行外部信号检测和处理。此时分频比为 10000,因此可以分别 对 TDDR 和 PRD 赋值为 3和 2499。例程中没有给出中断服务程序代码。
TIMER_ini:
STM #10h,TCR ; 停止定时器
NOP
STM #2499,PRD ; 对 PRD 赋值
ORM #23h,TCR ; 对 TDDR 赋值,重置定时器
NOP
NOP
ANDM #0ffefh,TCR ; 启动定时器
主机接口(HPI )在利用 DSP 芯片构建多机系统时,芯片之间需要共享数据。为 此, DSP 芯片设计了主机接口,勇于外部处理器对 DSP 的存储器资源进行访问。
此时, 主机控制着改接口的主控权, 通过它直接访问 DSP 的存储空间和外围设备。 DSP 作为从机,向主机开放总线的控制权。 HPI 为 DSP 芯片的接口开发,尤其是 多机协同工作提供了一种极为方便的途径。
范文二:dsp原理与应用
Test-1
一 . 填空题 (共 20题 ,100分)
1. 在 CCS 中,需要创建一个新的()文件,再在改文件中,添加系列程序文件
2.50MIPS 的意思是()
3.DSP 芯片的基本结构有哪四部分()
4. 当进行双数据读系数读时,工作的总线有()共 6条。
5. 当 SXM =1时,数据存储器操作数 80FFH 扩展为 40位后,变成()
6. 当 OVM=1(需进行饱和处理) ,若 ALU 的运行结果为 0E 0020 0000H,则调整为(00 7FFF FFFF H)
7. 累加器 A 和 B 唯一的区别是()
8.CPU 中的 CSSU 单元是指()
9.CPU 三个状态和控制寄存器是指()
10. 处理器工作模式状态寄存器中的()共三个位域可影响存储器的结构。
11.C5416系列 DSP 的程序存储空间为() M, 其地址线有()根。
12. 数据存储器的分页:是将()的数据空间共分成()页,每页()个存储单元,数据页指针为() 。 13.C5402系列 DSP 芯片的程序存储器分页是:把()的程序空间分成()页,每页()个存储单元,扩展 程序寄存器()来作为页指针,该寄存器的长度是()位。
14.DSP 芯片内发 RAM 有两种类型:()和()
15. 访问 IO 空间有两条特殊指令,即()和() , IO 空间共()字。
16.MMR 代表() 。
17.C5402 的 CPU 寄存器驻留在()存储空间的()地址范围。
18. 累加器 A 由三部分组成,即() 。
19.FRCT=1表示() 。
20.C5000 DSP芯片是()点 DSP 芯片。
Test-2:
一 . 单选题 (共 10题 ,70分)
1. 在指令 MAC *AR3+,*AR4+,A 中,操作数共有()个?
A 、 4
B 、 3
C 、 2
D 、 1
2. 下列操作数缩写符号中,不属于数据存储器操作数的是()
A 、 dmad
B 、 Xmem
C 、 Smem
D 、 pmad
3. 在指令 “MPYA B 中,两个乘数分别由()和()提供?
A 、 累加器 B (32-16) , T
B 、 累加器 A (32-16) , T
C 、 累加器 B (32-16) , 累加器 A (32-16)
D 、 累加器 A (31-16) , 累加器 A (15-0) ,
4. 下列()是程序计数器和()堆栈指针?
A 、 SP, PC
B 、 SP, XPC
C 、 PC, SP
D 、 PC,XPC
5. 指令 ”PORTR 1, 1中,第一个操作数 “1” 表示()
A 、 I/O端口 16位绝对地址(0001)
B 、 数据存储器低 7位偏移地址(01)
C 、 程序存储器低 7位偏移地址(01)
D 、 I/O端口低 7位偏移地址(01)
6. 指令 ”ST #1000H, 1中,第二个操作数 “1” 表示()
A 、 数据存储器 16位绝对地址(0001)
B 、 程序存储器 16位绝对地址(0001)
C 、 数据存储器低 7位偏移地址(01)
D 、 程序存储器低 7位偏移地址(01)
7. 指令 “READA *AR3+ 用到了哪两种寻址方式?
A 、 累加器寻址和间接寻址
B 、 累加器寻址和绝对寻址
C 、 间接寻址和绝对寻址
D 、 读寻址和直接寻址
8. 绝对寻址的指令至少为()个字长?
A 、 1
B 、 2
C 、 4
D 、 不确定
9. 指令 ”PSHD *AR2 指令完成了()功能?
A 、 SP 所指堆栈单元的数据出栈,存储到数据存储器 AR2为地址的存储单元,同时 SP 的值加 1
B 、 SP 的值减 1,数据存储器 AR2为地址的存储单元数据入栈
C 、 SP 所指堆栈单元的数据出栈,存储到 AR2寄存器中,同时 SP 的值加 1
D 、 SP 的值减 1, AR2寄存器中的数据入栈
10.“ *AR3+0 的含义是()
A 、 寻址 AR3 所指数据存储器地址单元,访问结束后, AR3寄存器的值减 AR0
B 、 寻址 AR3+AR0 所指数据存储器地址单元, AR3寄存器的值变为 AR3+AR0
C 、 寻址 AR3 所指数据存储器地址单元,访问结束后, AR3寄存器的值加 AR0
D 、 寻址 AR3+AR0 所指数据存储器地址单元, AR3寄存器的值变为 AR3-AR0
二 . 多选题 (共 3题 ,30分)
1. 下列哪些是数据寻址方式() ?
A 、 程序寻址
B 、 绝对寻址
C 、 累加器寻址
D 、 间接寻址
2. 三大存储空间包括()
A 、 I/O空间
B 、 程序存储空间
C 、 总线空间
D 、 数据存储空间
3. 下列属于算术运算指令的是()
A 、 加法指令
B 、 减法指令
C 、 乘法指令
D 、 除法指令
Test-3:
一 . 单选题 (共 10题 ,70分)
1. RPT #10 MVPD table, *AR1+上面指令中,用到了重复指令 RPT ,表示该指令的下一条指令重复执行的次数 为:
A 、 9次
B 、 10次
C 、 11次
D 、 17次
2. STK .usect .stack, 10h表示定义了一个堆栈段,其首地址为:
A 、 .usect
B 、 STK
C 、 .stack
D 、 10h
3. CALL addst:STL A,*y STHA,*y+1end: B endadd: LD #1000H, B .................. RET以上程序中,执行 “CALL add” 指 令时,返回地址需入栈,请问,此时的返回地址是() :
A 、 st
B 、 end
C 、 add
D 、 RET
4. 以下哪个是块重复计数器?
A 、 PC
B 、 XPC
C 、 BRC
D 、 RC
5. LD #9200H, 16, A以上指令执行后,累加器 A 的值为:
A 、 00 9200 0000 H
B 、 FF FFFF 9200 H
C 、 00 0000 9200 H
D 、 FF 9200 0000 H
6. WRITA *AR1+以上指令完成了()到()之间数据的传送
A 、 程序存储器,数据存储器
B 、 数据存储器,程序存储器
C 、 数据存储器,数据存储器
D 、 程序存储器,程序存储器
7. MPY *a1, B该指令完成两个数相乘,一个乘数是 *a1,另一个乘数是()
A 、 *(x1)
B 、 累加器 A 的高端
C 、 累加器 B 的高端
D 、 T
8. 定点数由()个符号位、 i 个整数位,以及()个小数位组成。
A 、 1, 15-i
B 、 2, 14-i
C 、 15-i, 1
D 、 14-i, 2
9. C000H, 如果其定标值为 Q15,则表示十进制的()?
A 、 -0.25
B 、 0.25
C 、 0.5
D 、 -0.5
10. 小数相乘时,需设置小数方式控制位()为 1,表示乘法器的输出左移一位,且相应的定标值加 1。
A 、 CPL
B 、 FRCT
C 、 SXM
D 、 OVLY
二 . 多选题 (共 3题 ,30分)
1. 以下哪些是段定义伪指令?
A 、 .text
B 、 .set
C 、 .usect
D 、 .data
2. 以下哪些是 C 编译器产生的已初始化段?
A 、 .stack
B 、 .cinit
C 、 .const
D 、 .text
3. 以下哪些属于程序控制指令?
A 、 B loop
B 、 BANZ loop, *AR2-
C 、 CC SUB1, BNEQ
D 、 STL A, *AR2-
课堂测试 -1:(3章)
1、 CCS 编写的源文件,可以是以下几种情况:()
A 、 C 源文件 B 、汇编语言源文件 C 、 Java 语言源文件 D 、宏源文件 2、存储器映像文件的扩展名为:()
A 、 .map B 、 .lst C 、 .asm D 、 .out
3、以下哪些属于定义已初始化段的伪指令:()
A 、 .sect B 、 .usect C 、 . text D 、 .data
4、以下哪些段中可包含已初始化数据?()
A 、 .bss B 、 .sect C 、 . text D 、 .data
5、段定义指令“ STA .usect “.stack”, 20”中,段名是()
A 、 STA B 、 .usect C 、 .stack D 、 20
6、下面指令,定义了一个()初始化段,其存放内容是()
.data
.word 9,10,11,23
A 、 已,四个字的数据 B 、 未,四个字节的数据
C 、 未,四个字的数据 D 、 已,四个字节的数据
判断:
1、 汇编语言源程序是按段进行组织的。 ()
A 、 文件 B 、 代码 C 、 段 D 、 数据
2、 TI 公司的汇编器和链接器都会生成目标文件, 其格式公共目标文件格式 (也即 COFF ) ()
答案:
1.ABD 2.A 3.ACD 4.BD 5.C 6.A
判断:
1. √ 2. √
课堂测试 -2:(5章)
一、 下面的“ 60h ”分别代表什么存储器的哪个地址单元(请写出 16位绝对地址)
(1) LD #40H,DP
STL A, 60H (数据存储器, 2060H 存储单元)
(2) STM #2000H,AR1
MVDK *AR1,60H (数据存储器, 0060H 存储单元)
(3) MVDP *AR1,60H (程序存储器, 0060H 存储单元
(4) SSBX CPL
STM #2000H,SP
ST #9876h, 60H (数据存储器, 2060H 存储单元)
二、 请写出红色标注的操作数(或指令)所用的数据寻址方式
DDAT1 .set 1000H
PDAT1 .set 2000H
RSBX CPL
ST #5678h, *(DDAT1) (立即数寻址、绝对寻址)
LD #PDAT1,A
LD #4, DP
READA 2H (累加器寻址、直接寻址)
STM #DDAT1,AR2 (存储器映像寄存器寻址)
ST #9876h,*AR2 (间接寻址)
MVDK 3H,DDAT1 (直接寻址、绝对寻址)
PSHM T (堆栈寻址、存储器映像寄存器寻址)
MVPD 1000H,*AR0+ (绝对寻址)
STL A, *(0200H) (绝对寻址)
课堂测试 -3:(6章)
选择题:
1.FIR 数字滤波器的 DSP 实现中, Z -1算法的实现有哪两种方法?
A. 线性缓冲区法 B. 低通滤波法 C. 循环缓冲区法 D. 带通滤波法
2. 对于 N 级 FIR 滤波器,在数据存储器中需开辟()个单元的缓冲区,用来存放最新的 输入样本。
A.N-1 B. N C. N+1 D. 不确定
3. 以下()指令可实现存储器延迟?
A.MPY B. MAC C. MACD D.DELAY
4. 以下()寄存器是循环缓冲区长度寄存器?
A.PC B. XPC C. BK D.BRC
5. 从端口读取数据需用()指令?
A.PORTR B. READA C. PORTW D.WRITA
判断题
1. 线性缓冲区只能定位在 DARAM 存储器; ()
2. 循环缓冲区法,计算完一个 y(n)值后,输入最新样本代替最老样本,而其他数据位置是不 变的; ()
3. 循环缓冲器法,每取一个样本数据后,样本需向下移位; ()
4. 指令“ x .usect “ x ” , 8”所定义的段名为 8; ()
5. 线性缓冲区法的程序实例中,滤波器系数存放在程序存储器起始地址为 COEF 的单元。 ()
范文三:dsp原理与应用论文
黑龙江八一农垦大学
HEI LONG JIANG BAYI AGRICULTURAL
UNIVERSITY
“DSP原理与应用”课程结题设计论文
项目名称: 基于DSP技术的MP3播放器的研究与设计
任课教师:荣丽红
专业班级:电气工程及其自动化一班
学生姓名:李鸿升
学 号:20084073126
2011年11月
摘要:随着数字编解码及压缩技术的发展,语音文件也朝着高压缩比、高保真的方向发展,从MP1、MP2到目前的MP3格式。本文设计了一种廉价基于DSP的MP3播放器,利用硬件存储语音文件,并能够从PC 机下载,从而可以随时更新MP3音乐。该MP3播放器同时附加了文本阅读的功能,可做到语音和文本的同步输出。
关键词: MP3播放器 DSP 编码 前言
现在市场上推出了各种型号的MP3随身听,它们采用先进的智能控制技术,利用先进的芯片,不仅实现了MP3格式语音的播放,而且集多种功能于一身。 但这些精巧的随身听价格较昂贵,因此本文根据要求设计了一种廉价MP3播放器,利用硬件存储语音文件,并能够从PC 机下载,从而可随时更新MP3音乐。该MP3播放器同时附加了文本阅读的功能,可做到语音和文本的同步输出。
MP3播放器中,DSP芯片的Bootloader采用了HPI口方式。由于在硬件上HPI引脚与DSP的数据、地址总线引脚是相互独立的,同时HPI口内部又有控制机制,所以外部主机通过HPI口访问DSP内部RAM时不会影响DSP的正常运行。HPI利用DSP芯片上1000H地址开始的一块具有共享存储器功能的2K字RAM,来实现主机与从机间的数据交换。
DSP扩展了一片64K字高速静态RAM(CY7C1021V33-10),作为DSP芯片的片外RAM,用以适应各种音频处理算法对存储器容量的要求。
DSP芯片处理后的信号由D/A输出到耳机,我们就可听到MP3音乐。D/A变换由LM4545实现,它具有48K字转换速度,可直接和DSP芯片的输出相连。而MPU主要完成三项功能,分别是LCD显示,控制DSP芯片的运行和文件的串口下载。MPU用来访问FLASH的
地址线由P0口和P2.0,P2.5组成。这14根地址线既提供14位页内地址又提供5位的页码地址,P0口同时与两片74LS373相连,分别以P3.5和ALE作为这两个芯片的片选信号;第一片74LS373A输出信号的低5位作为5位页码地址与29F040B的A14,A18连接,第6位作为片选信号连接29F040B的CS,后两位则留作以后扩展用;第二片74LS373B的8位输出连接29F040B的A0~A7;89C51的P2.0,P2.5直接连接29F040B的A8~A13,和74LS373B的8位输出共同构作14位的页内地址。 相应的寻址过程(假设访问地址1FFFFH)是:第一步,先将P3.5置1,打开74LS373A,再向 P0口写入所要寻址的页码地址,1FFFFH的页码为7H;第二步,再将P3.5置0,关闭74LS373A,向P0口和P2口写入14位页内地址,1FFFFH的页内地址为3FFFH。因为74LS373B由ALE片选,每次MPU访问外设时自动打开,所以这两步骤次序不能颠倒,否则访问的地址就出错。
软件设计
能够从PC机下载音乐是MP3播放器的特点,这一功能由MPU与PC机的串口通信来实现。而且设计所需的下载软件要求能够下载书籍文本,要求能够中文字符的串口通信。因此实现中文传输也是本设计的程序部分的关键。
在各种通信设备中,实时的语音压缩通常在DSP上实现。单一编码算法,由于码率和算法固定,系统的灵活性较差。越来越多的通信服务要求能实现多种、多路编码算法,提供一定范围内的编码速率和编码算法的多种选择,例如软件无线电、IP电话、多媒体终端等。
G.729a是ITU制定的一种高质量的中速率语音编码标准,编码速率为8kbps,目前已在许多通信系统中得到了应用。16/32kbps的CVSD是一种抗信道误码非常好的语音编码算法,在军事通信、宇航通信中得到了广泛的应用。32kbps的ADPCM是一种算法较简单的波形编码,具有良好的话音质量和抗噪性能,在卫星通信、数字话路倍增系统中得到了
广泛应用。综合了这三种算法的编码系统,在8kbps,32kbps码率具有较高的灵活性。
由于语音压缩的运算量、存储量和精度要求都不太高,在考虑价格因素的基础上,定点DSP足以胜任语音编解码的要求。本文采用了TI公司的TMS320VC5409定点DSP实现了上述三种语音编解码算法。算法DSP的实现通过了有关测试。其中G.729a和ADPCM采用ITUT有关建议提供的测试序列进行了测试,CVSD按照我国有关标准进行了测试。
本文对以上三种语音编码和TMS320VC5409做简单介绍后,对算法的软件和硬件实现进行介绍,并给出算法所需运算量以及所占用的硬件资源。 1 DSP芯片和语音编码算法
(1)TMS320VC5409简介
TMS320VC5409是TI公司生产的一种性价比较高的定点DSP芯片,运算速度为80MIPS/100MIPS。它拥有改进的喻佛结构、一个CPU、片上存储区(32KB的ROM和64KB的DARAM)、片上外设以及专用的指令结构。它具有以下主优点:
?1条程序总线和3条数据总线。配合存储区的双操作数读取能力,可以支持单周期,三操作数指令,提高了程序的运行和通用性;
?先进的针对应用设计的CPU硬件逻辑提高了芯片的性能;
?高度专用的指令结构提供了更快的算法实现和更方便的优化;
?片上外设包括3个McBSP(多通道缓冲串口)、一个6通道的DMA控制器、8bit HPI口及锁相环时钟发生器;
?模块化结构方便了快速的后续发展;
?先进的IC处理技术实现了高性能和低功耗,5V静态CMOS技术进一步降低了功耗。
(2)G.729a算法
G.729是ITU在8kbps速率上的标准,采用“共轭结构代数码来激励线性预测编码方案”(C-ASCELP)算法。这种算法综合了波形编码和参数编码的优点,以线性预测编码技术为基础,采用了矢量量化、分析合成和感觉加权等技术。G.729a只在G.729的基础上减少了一些运算量,保持了兼容性,质量也基本没有下降。
(3)32kbps ADPCM算法
G726是ITU制定的自适应差分脉冲编码算法标准,有4种速率。在此项目中,使用32kbps的速率。ADPCM算法是一种波形编码,它在PCM编码的基础上引入了预测和差分的概念,仅对实际值民预测值之间的差值进行编码。在编码过程,用过去样点的值对当产点进行预测,并自适应地调整预测系数数,使预测误差很小,从而在降低码率的同时,保持了很高编码质量。
(4)CVSD(32kbps/16kbps)算法
连续可变分辩率增量调制,是一种1bit的差分波形编码方式。自适用的量阶随信号统计特性的变化而变化,在信号很大动态范围内,可获得最大信噪比。并且易于实现,电路结构简单。
主要技术:三连0/三连1检测,即若检测到码流中有三连0或三连1,则表示信号在骤升或骤降,调整量阶以适应信号变化。
2 硬件系统
(1)硬件板介绍
在发端,模拟信号通过前端处理电路和A/D采样,转换成8bit A-law PCM信号。对数PCM信号在TMS320VC5409中转换线性码,并进行压缩编码。输出的G.729a/ADPCM/CVSD编流在信道上传输。
接收端接收到的压缩码流在DSP中被解码成对数PCM信号,再经过D/A变换和用户电路,最终得到模拟话音。其中CPLD用来产生8kHz的帧同步信号,使各硬件芯片之间协同工作。
A/D、D/A部分采用单片MC14557芯片。单路信号的硬件系统框图如图1所示。
(2)算法的硬件选择
程序定义了两个标志变理flag1、flag2。利用VC5409提供的可屏蔽中断INT0,INT3,在中断服务例程中对2个标志位进行设置,从而控制主程序的跳转。
系统加电后,INT0,INT3其中一个管脚给出中断请求信号,程序执行中检测到哪个中断,就执行该中断对应的编码算法。接着,主程序对IMR寄存器置位以屏蔽这些中断,直至下次系统复位。其中INT0中断在测试中是无编码转换的跳转,但在应用中用于选择32kbps的CVSD算法。表1是算法选择的硬件中断与标志位设置。
表1 算法选择的硬件中断与标志位设置
INT0 直通,无编码转换 flag2=0 flag1=0
INT1 G.729a flag2=0 flag1=1
INT2 16kbps CVSD flag2=1 flag1=0
INT3 32kbps ADPCM flag2=1 flag1=1
(3)数据流输入和输出
VC5409提供了3个McBSP(Multichannel Buffered Serial Ports),并在其中集成了硬件对数PCM编解码器。串口的双缓冲区发送、三缓冲区接收能保证数据的连续性。收发的数据流字长可以是8、12、16、20、24、32bit,每帧最多可以有128个字。表2是本项目采用的串口配置。
表2 串口配置
同步事件/串口 数据流 字长(bit) 帧长(word) 读/写控制 中断 McBSP0 PCM 8 4×1 DMA REVT/XEVT McBSP1 G.729a 16 4×1 DMA REVT/XEVT McBSP2 ADPCM/CVSD 32 2or4×8bit CPU RINT/XINT
对每种算法,4路编解码器都要求全双工工作,因此,对3个McBSP都进行了配置。其中,McBSP0负责PCM码流的收发。PCM码流是4路8bit的A-law信号,因此定义字长为8位;McBSP1收发G.729的码流。G.729分帧编码,帧长10ms,每帧80bit。为了数据能够方便、有效地收,定义串口的字长为16bit,这样,每5个帧同步收全一个G.729帧,共16×5×4(路)=80×4bit。
为了取得数据格式的一致性,方便串口收发码流,对ADPCM和CVSD定义了相同的码流格式,并由McBSP2收发。如图2所示。
32kbps ADPCM每样点用4bit编码,规定其码流为每样点的码字重复2次,即占8bit。4路信号其32bit;16kbps和32kbps的CVSD是每样点2bit和4bit编码,故规定其码流为每比特编码码字分别重复4次和2次,即均占8bit。4路信号也是32bit。
(4)数据流的传输(串口与存储区)
VC5409提供了6个DMA通道,用户可以设置每个DMA通道的源地址、目的地址、一次传输的数据量、同步事件和中断方式等。
表3是本项目中各DMA通道的配置情况。
表3 DMA配置
中断方式(缓冲通道 比特流 源地址 目的地址 缓冲区(字) 区) DMA2 G.729a(收) DRR11 DM 4×5×2 全满/半满 DMA3 G.729a(发) DM DXR11 4×5×2 全满/半满
*1 DRR10 DM 4×1 全满 DMA4 PCM(收)
*2 DRR10 DM 4×80×2 全满/半满
*1 DM DXR10 4×1 全满 DMA5 PCM(发)
*2 DM DXR10 4×80×2 全满/半满
DM:数据存储区
*1:对ADPCM/CVBSD编码
*2:对G.729a编码
(5)数据传输的控制
如图3所示,串行数据流在McBSP的DR管脚接收,DX管脚发送。数据收发由帧同步信号触发。帧同步由CPLD提供,位时钟由外部晶振提供。
串口与存储区之间的数据交换由CPU或DMA控制器完成。接收寄存器DRR满(发送寄存器DXR空)时,串口向DMA发出同步事件(REVT/XEVT)或向CPU发出中断请求(RINT/XINT),智能DMA或CPU数据传输已准备好。
对PCM和G.729码流,串口(McBSP0/McBSP1)的数据读写为DMA方式。
由于G.729采用分帧编码,一次编解码待处理的数据量较大。为了避免DMA读取数据过程中连续码流溢出,设计缓冲区为双倍大小。这2块缓冲区以乒乓方式工作,即DMA传递其中块缓冲区数据时,另一块缓冲区接收来自串口或CPU的下一组数据。由于VC5409的DMA支持缓冲区全满或半满都产生中断的方式,所以只要将这2块缓冲区设计成连续,就可以方便地实现乒乓工作,而不产生数据溢出。
对ADPCM/CVSD码流,由于每次处理的码流长度较短(32bit),故在中断服务例程中由CPU直接读写串口(McBSP2),而不采取DMA方式。
图3 数据流的收发和传输
3 软件系统
(1)CVSD算法的修正
CVSD是每样点1bit的编码方式,所以32kbps和16kbps的CVSD输出信号分别由32kHz和16kHz采样的PCU信号编码得到。而实际CVSD编码器的输入总是8kHz的采样信号,为了满足算法要求。对输入PCM码流进行插值滤波。
根据插值这理,可以选择低通滤波器无失真地恢复原始信号。为了取得信号质量和运算量的折中,设计了5阶的椭圆型IIR滤波器。
1:2插值(16kbps)
分子多项式系数:
[1.02295e-01,1.14533e-01,2.41943e-01,
2.41943e-01,1.45325e-01,1.02295e-01]
每母多项式系数:
[1.00000e+00,-1.26125e+00,1.91846e+00,-1.21680+00,6.79321e+01,-1
.54358e+01]
1:4插值(32kbps)
分子多项式系数:
[4.48200e+02,-6.9309e+02,4.68041e+02,4.6041e+02,-6.9309e+02,4.48
200e+02]
分母多项式系数:
[1.00000e+00,-3.56926e+00,5.66631e+00,-4.83285e+00,2.20789e+00,-
4.2822e+01]
另外,在对编解码后的信号进行频谱测试时,发现在3kHz处,信号的幅度超出要求3db左右。为此在编码端加入了谱调整的模块,使3kHz处频谱下降3db,作为补偿。
(2)G.729算法的回声抵消模块
G.729算法编码延时为15ms,回声现象比较明显,必须引入加声抵消算法加以抑制。
自适应回声抵消器的一般算法中,所需运算量最大的是更新参数部分。阶数越大,运算量越大。考虑到DSP的性能和算法的运算量要求,采用128阶的自适应滤波器进行回声抵消。
回声抵消模块的输入是当前一帧输入语音信号与以前解码器输出的一阶合成语音。回声抵消器利用解码器输出的合成语音信号对一帧输入信号进行回声抵消,然后将抵消掉回声的一帧输入语音信号提供给编码器作为输入信号。
(3)存储区的优化
?由于使用DP寻址,变量名仅指示偏移量;而4路信号分时处理,各路所用变量与程序代码相同,所以可以使用不同页上同名变量,在不混淆各路信号数据存储区的前提下,简化程序存储区大小。
对于ADPCM程序,编解码器的有状态变量各占25字,编解码器都使用的变量占14字。鉴于DP一页有128字,所以可以考虑前两路编解码器变量共用一页存储区;后两路编解码器变量共用一页存储区。这样,2路编解码器的存储量有25×2×2+14=114字<128字,可以存储在同一页上。>128字,可以存储在同一页上。>
为了区分同一页上的2路变量以及同一路的编解码器变量,它们的名称应有不同。因此,编解码的程序模块各需要2个版本,即总的程序存储量=单路程序量×2。
?对CVSD和ADPCM算法,由于输入输出信号不分帧(逐样点处理),而码流格式又取得了一致,所以可以共享输入输出存储单元。
(4)代码的优化
TMS320C54xx提供了强大的硬件结构和指令体系以支持基本的数据处理操作。对汇编语言,充分挖掘指令集的潜力,能大幅度降低程序的复杂度,提高运行速度。如:使用乘累加指令MAC、MAS等,在一个时钟周期内实现1次乘法和1次加(减)法;使用DELAY指令,在一个周期内实现变量更新,简化了滤波器的实现;使用循环寻址,对FIR和IIR滤波器只要在主程序中设置一次基地址,降低了开销;使用PRT+MVDD指令,进行块搬移,减少频繁内存读定的开销;使用双字运算指令DADD、DADSUB等指令对32位的变进行操作;使用EXP+NORM指令快速计算定点数的指数和尾数;使用RPT+DSUBT指令高效实现定点数除法;使用RPT+FIRS指令高效实现FIR滤波计算。 4 实现结果
各算法的复杂度和存储量如表4所示,实现所用资源。
表4 各算法的复杂度和存储量
存储量(千字)
算 法 复杂度(MIPS)
Program Data
G.729 60 8.32 18.53
CVSD 12 1.54 0.52
ADPCM 15.5 2.048 0.28
总的复杂度=MAX(60,12,40)=60MIPS;
总的存储量=(8.32+18.53+1.54+0.52+2.048+0.28)=31.24千字;
因此,一片VC5409上的硬件资源可以满足算法要求。实际系统的各算法性能也通过了相关的标准测试。
结语
该MP3播放器基于DSP技术,采用慢速大容量外存加高速小容量外存的组合方式,音乐文件先从慢速外存下载至高速外存再载入DSP的高速RAM,下载一部分处理一部分。采用与PC机的串口通信方式实现文件的下载速度较慢,也可利用USB接口进行高速的通信。另外系统中连接的电话线可充作电话的录音。
实践证明,这种方法设计的MP3播放器成本较低,同时附加文本阅读的功能做到
语音和文本的同步输出,能满足特殊的需要。
范文四:dsp课后答案 DSP原理与应用课后答案邹彦主编
导读:就爱阅读网友为您分享以下“DSP原理与应用课后答案邹彦主编”的资讯,希望对您有所帮助,感谢您对92to.com的支持!
第一章 绪论
1、简述DSP系统的构成和工作过程。 答:DSP系统的构成:
一个典型的DSP系统应包括抗混叠滤波器、数据采集A/D转换器、数字信号处理器DSP、D/A转换器和低通滤波器等。 DSP系统的工作过程:
?将输入信号x(t)经过抗混叠滤波,滤掉高于折叠频率的分量,以防止信号频谱的混叠。 ?经过采样和A/D转换器,将滤波后的信号转换为数字信号x(n)。 ?数字信号处理器
1
对x(n)进行处理,得数字信号y(n)。 ?经D/A转换器,将y(n)转换成模拟信号;
?经低通滤波器,滤除高频分量,得到平滑的模拟信号y(t)。 9、简述DSP系统的设计步骤。
答:?明确设计任务,确定设计目标。 ?算法模拟,确定性能指令。 ?选择DSP芯片和外围芯片。 ?设计实时的DSP芯片系统。 ?硬件和软件调试。 ?系统集成和测试。
第二章 TMS320C54x硬件结构
1、 TMS320C54X芯片的基本结构都包括哪些部分, 答:?中央处理器 ?内部总线结构 ?特殊功能寄存器 ?数据存储器RAM ?程序存储器ROM ?I/O口 ?串行口
?主机接口HPI ?定时器 ?中断系统
2、TMS320C54X芯片的CPU主要由哪几部分组成, 答:?40位的算术运算逻辑单元(ALU)。 ?2个40位的累加器(ACCA、ACCB)。 ?1 个运行-16至31位的桶形移位寄存器。
2
?17×17位的乘法器和40位加法器构成的乘法器-加法器单元(MAC)。 ?比较、选择、存储单元(CSSU)。 ?指令编码器。
?CPU状态和控制寄存器。
3、TMS320VC5402共有多少可屏蔽中断,它们分别是什么,RS和NMI属于哪一类中断源,
答:TMS320VC5402有13个可屏蔽中断,RS和NMI属于外部硬件中断。 4、试分析下列程序的流水线冲突,画出流水线操作图。如何解决流水冲突, STLM A,AR0 STM #10,AR1 LD *AR1,B 解:流水线图如下图: 1 2 3 4 5 6 7 8 预取取指 译码 寻址 读数 执行
指 STLM A,AR0
STM #10,AR1 (1st Word)
STM #10,AR1 (2nd Word)
3
LD *AR1,B
预取
取指
译码
寻址
读数
执行
9
预取指 取指 译码 寻址 读数
4
执行
预取取指 译码 寻址 读数 执行 解决流水线冲突:
最后一条指令(LD *AR1,B)将会产生流水线冲突,在它前面加入一条NOP指令可以解决流水线冲突。
5、试根据等待周期表,确定下列程序段需要插入几个NOP指令。 ?LD @GAIN, T STM #input,AR1 MPY
*AR1+,A
解:本段程序不需要插入NOP指令 ?STLM B,AR2 STM #input ,AR3
MPY *AR2+,*AR3+,A
解:本段程序需要在MPY *AR2+,*AR3+,A语句前插入1条NOP指令 ?MAC @x, B STLM B,ST0
ADD @table, A, B
5
解:本段程序需要在ADD @table, A, B语句前插入2条NOP指令
第三章 TMS320C54x指令系统
1、已知(80H)=50H,AR2=84H,AR3=86H,AR4=88H。 MVKD 80H,*AR2 MVDD *AR2,*AR3 MVDM 86H, AR4
运行以上程序后,(80H)、(84H)、*AR3和AR4的值分别等于多少, 解:(80H)=50H,(84H)=50H,*AR3=50H,AR4=50H 2、已知,(80H)=20H、(81H)=30H。 LD #0,DP
LD 80H,16,B ADD 81H,B
运行以上程序,B等于多少, 答:(B)=200030H
3、阅读以下程序,分别写出运行结果。 .bss x,4 .data
table:.word 4,8,16,32 ……
6
STM #x,AR1 RPT #2
MVPD table,*AR1+
解:数据表table中的常量4传送到以变量x 的地址为地址的存储单元中;数据表table中的常量8传送到以变量x+1 的地址为地址的存储单元中;数据表table中的常量16传送到以变量x+2 的地址为地址的存储单元中; .bss x,4 .data
table: .word 4,8,16,32 ……
STM #x,AR1 RPT #2
MVPD table,*+AR2
解:数据表table中的常量4传送到以变量x+1 的地址为地址的存储单元中;数据表table中的常量8传送到以变量x+2 的地址为地址的存储单元中;数据表table中的常量16传送到以变量x+3 的地址为地址的存储单元中;
第四章 汇编语言程序的开发工具及CCS集成开发环境
7
1、软件开发环境有哪几种?在非集成开发环境中,软件开发常采用哪些部分?
答:可以在两种开发环境中进行C54X的开发:非集成的开发环境和集成的开发环境。在非集成开发环境中,软件开发常采用:编辑、汇编、链接、调试等部分。 2、链接器对段是如何处理的? 答:链接器将一个或多个COFF目标文件中的各种段作为链接器的输入段,经过链接后在一个可执行的COFF输出模块中建立各个输出段,通过情况下是将不同目标文件中的同名段进行合并,并为各个输出段分配进具体的存储器中。
3、链接器能完成什么工作?链接器命令文件中,MEMORY命令和SECTIONS命令的任务是什么?
答:链接器将各个目标文件合并起来,并完成如下工作: (1)将各个段配置到目标系统的存储器。
(2)对各个符号和段进行重新定位,并给它们指定一个最终的地址。 (3)解决输入文件之间的未定义的外部引用。 MEMORY命令的作用:
8
9
范文五:dsp原理与应用实验报告总结
DSP原理与应用
定时器
姓 名
班 级 0120808
专 业 电子信息工程
2011 年 12 月
DSP的定时器实验报告 一、 实验目的
1. 通过实验熟悉VC5509A的定时器;
2. 掌握VC5509A定时器的控制方法;
3. 掌握 VC5509A 的中断结构和对中断的处理流程;
4. 学会 C 语言中断程序设计,以及运用中断程序控制程序流程。 二、 实验设备
计算机,ICETEK-VC5509-A 实验箱(或 ICETEK 仿真器+ICETEK–VC5509-A 系统板+相关连线及电源)。
三、实验原理
1. 通用定时器介绍及其控制方法
TMS320VC5509A 内部有两个 20 位通用定时器(GP):
*每个通用定时器包括:
- 一个 16 位的减计数的计数器 TIM;
一个 16 位的定时器周期寄存器 PRD; -
- 一个 16 位的定时器控制寄存器 TCR;
- 一个 16 位的定时器预定标寄存器 PSCR; 2.中断响应过程
外设事件要引起 CPU 中断,必须保证:IER 中相应使能位被使能,IFR 相应中断也被使能。在软件中,当设置好相应中断标志后,开中断,进入等待中断发生的状态;外设(如定时器)中断发生时,首先跳转到相应中断高级的服务程序中(如:定时器 1 会引起 TINT中断) ,程序在进行服务操作之后,应将本外设的中断标志位清除以便能继续中断,然后返回。
3. 中断程序设计
- 程序中应包含中断向量表,VC5509A默认向量表从程序区 0 地址开始存放,根据 IPVD 和IPVH 的值确定向量表的实际地址。
- 注意观察程序中 INTR_init()函数的定义部分,其中 IPVD 和 IPVH 的值都为0x0d0;同时观察配置文件 ICETEK–VC5509-AE.cmd 中的 VECT 段描述中 o=0x0d000。
- 向量表中每项为 8 个字, 存放一个跳转指令, 跳转指令中的地址为相应服务程序入口地址。第一个向量表的首项为复位向量,即 CPU复位操作完成后自动进入执行的程序入口。
- 服务程序在服务操作完成后,清除相应中断标志,返回,完成一次中断服务。
4. 定时器中断实验程序流程图
5.1 定时器结构框图
T=clockin*(PRD+1)*(TDDR+1)
5.2 时钟部分
定时器的工作时钟可以来自DSP内部的CPU时钟,也可以来自从TIN/OUT管脚输入的外部时钟。具体时钟源的选择和TIN/TOUT脚的功能由控制寄存器TCR中的FUNC字段确定,如下图所示
由表可见,C5509的定时器有4种工作模式:
? 当FUNC=00时,TIN/TOUT为高阻态,时钟源为CUP时钟。该模式为复位后
的缺省模式。
? 当FUNC=01时,TIN/TOUT为定时器输出,时钟源为CPU时钟。此时,TIN/TOUT作为三个定时器事件中的一个,可以输出时钟信号或脉冲信号。
? 当FUNC=10时,TIN/TOUT为通用输出,时钟源为CPU时钟。此时,TIN/TOUT作为通用输出(General Output),其电平有控制寄存器TCR中的DATOUT字段确定。
? 当FUNC=11时,TIN/TOUT为时钟源输入,定时计数器将在其上升沿递减。
5.3 计数器部分
C5509定时器的计数器分为两类,一类用于定时器工作,一类用于CUP设置定时长度。它的定时长度为20bit:4bit的预定标器和16bit的主计数器。其中,4bit的预定标值由预定寄存器PRSC中的TDDR定义;16bit主计数器的值由定时周期寄存器PRD定义。相关寄存器的格式如下表所示。
假定定时器的工作时钟周期为clockin,则定时长度T可用下式计算:
T=clockin*(PRD+1)*(TDDR+1)
定时器主计数寄存器TIM
预定标寄存器PRSC
定时器周期寄存器PRD
定时控制寄存器TCR
定时器配置C程序流程:
四、实验流程
1. 实验准备
连接实验设备;关闭实验箱上扩展模块和信号电源开关。 2. 设置Code Composer Studio v3.3在硬件仿真(emulator)方式下运行。
3. 启动Code Composer Studio v3.3。选择菜单 Debug?Reset CPU。
4. 编译、下载程序。
5. 运行程序,观察结果。
6. 退出CCS。
五、实验代码及结果
#include "myapp.h"
// 定义指示灯寄存器地址和寄存器类型
#define LBDS (*((unsigned int *)0x400001))
void INTR_init( void ); void TIMER_init(void);
int nCount;
int flag_time;
main()
{
nCount=0;
PLL_Init(40);
SDRAM_init();
LBDS=0;
INTR_init();
TIMER_init();
while ( 1 )
{
}
}
void interrupt Timer()
{
nCount++;
nCount%=16;
if ( nCount==0 )
LBDS^=1;
}
void INTR_init( void )
{
IVPD=0xd0; //cpu将16bite的中断矢量指针与5bite的矢量序号级联一起1011 0000 00000 000
//然后左移3bite形成中断适量地址
IVPH=0xd0;
IER0=0x10;
DBIER0=0x10;
IFR0=0xffff;
asm(" BCLR INTM");
}
void TIMER_init(void)
{
ioport unsigned int *tim0;
ioport unsigned int *prd0;
ioport unsigned int *tcr0;
ioport unsigned int *prsc0;
tim0 = (unsigned int *)0x1000;
prd0 = (unsigned int *)0x1001;
tcr0 = (unsigned int *)0x1002;
prsc0 = (unsigned int *)0x1003;
// *tcr0 = 0x04f0; //定时器0控制寄存器,关闭定时器,自动重载打开,定时器拷贝打开
*tcr0 = 0x0Cf0; //定时器0控制寄存器,关闭定时器,自动重载
打开,定时器拷贝打开
*tim0 = 0; //定时器0主计数器
*prd0 = 0x0ffff; //定时器0周期寄存器
*prsc0 = 2; //定时器0周期及计数寄存器
*tcr0 = 0x00e0; //定时器0控制寄存器,定时器启动
// *tcr0 = 0x08e0; //定时器0控制寄存器,定时器启动 }
六 实验心得
通过这次实验,我更加熟悉了CCS开发环境以及设计运行调试过程,认识到模块的各个工作原理以及三者之间的关系,学会对模块的初始化怎么定义和编写的流程。 使我对DSP产生了浓厚的兴趣,激发了我学习DSP的积极性,从这次实验结果上来说,清晰的结果使我对书本上的知识应用到了实验中,很满足。 最后,感谢老师、师兄、师姐的耐心指导~
名句赏析~~~~~
不限
主题
不限抒情四季山水天气人物人生生活节日动物植物食物
山有木兮木有枝,心悦君兮君不知。____佚名《越人歌》
人生若只如初见,何事秋风悲画扇。____纳兰性德《木兰词?拟古决绝词柬友》 十年生死两茫茫,不思量,自难忘。____苏轼《江城子?乙卯正月二十日夜记梦》 只愿君心似我心,定不负相思意。____李之仪《卜算子?我住长江头》 玲珑骰子安红豆,入骨相思知不知。____温庭筠《南歌子词二首 / 新添声杨柳枝词》 曾经沧海难为水,除却巫山不是云。____元稹《离思五首?其四》
愿得一心人,白头不相离。____卓文君《白头吟》
去年今日此门中,人面桃花相映红。____崔护《题都城南庄》
平生不会相思,才会相思,便害相思。____徐再思《折桂令?春情》 入我相思门,知我相思苦。____李白《三五七言 / 秋风词》
山无陵,江水为竭。冬雷震震,夏雨雪。天地合,乃敢与君绝。____佚名《上邪》 人生自是有情痴,此恨不关风与月。____欧阳修《玉楼春?尊前拟把归期说》 一往情深深几许,深山夕照深秋雨。____纳兰性德《蝶恋花?出塞》 两情若是久长时,又岂在朝朝暮暮。____秦观《鹊桥仙?纤云弄巧》 执子之手,与子偕老。____佚名《击鼓》
花自飘零水自流。一种相思,两处闲愁。____李清照《一剪梅?红藕香残玉簟秋》 问世间,情为何物,直教生死相许,____元好问《摸鱼儿?雁丘词 / 迈陂塘》
一日不见兮,思之如狂。____司马相如《凤求凰 / 琴歌》
人生如逆旅,我亦是行人。____苏轼《临江仙?送钱穆父》
世间无限丹青手,一片伤心画不成。____高蟾《金陵晚望》
林花谢了春红,太匆匆。无奈朝来寒雨,晚来风。____李煜《相见欢?林花谢了春红》 独立寒秋,湘江北去,橘子洲头。____**《沁园春?长沙》 身无彩凤双飞翼,心有灵犀一点通。____李商隐《无题?昨夜星辰昨夜风》 滚滚长江东逝水,浪花淘尽英雄。____杨慎《临江仙?滚滚长江东逝水》 怕相思,已相思,轮到相思没处辞,眉间露一丝。____俞彦《长相思?折花枝》 此情可待成追忆,只是当时已惘然。____李商隐《锦瑟》
思悠悠,恨悠悠,恨到归时方始休。____白居易《长相思?汴水流》 取次花丛懒回顾,半缘修道半缘君。____元稹《离思五首?其四》 若是前生未有缘,待重结、来生愿。____乐婉《卜算子?答施》 雨打梨花深闭门,忘了青春,误了青春。____唐寅《一剪梅?雨打梨花深闭门》 少年不识愁滋味,爱上层楼。爱上层楼。为赋新词强说愁。____辛弃疾《丑奴儿?书博山道中壁》
自在飞花轻似梦,无边丝雨细如愁。____秦观《浣溪沙?漠漠轻寒上小楼》 近水楼台先得月,向阳花木易为春。____苏麟《断句》
一骑红尘妃子笑,无人知是荔枝来。____杜牧《过华清宫绝句三首》 抽刀断水水更流,举杯消愁愁更愁。____李白《宣州谢脁楼饯别校书叔云 / 陪侍御叔华登楼歌》
疏影横斜水清浅,暗香浮动月黄昏。____林逋《山园小梅?其一》 人面不知何处去,桃花依旧笑春风。____崔护《题都城南庄》
时光只解催人老,不信多情,长恨离亭,泪滴春衫酒易醒。____晏殊《采桑子?时光只解催人老》
一生大笑能几回,斗酒相逢须醉倒。____岑参《凉州馆中与诸判官夜集》 天涯地角有穷时,只有相思无尽处。____晏殊《玉楼春?春恨》 问君能有几多愁,恰似一江春水向东流。____李煜《虞美人?春花秋月何时了》 似此星辰非昨夜,为谁风露立中宵。____黄景仁《绮怀》
菩提本无树,明镜亦非台。____惠能《菩提偈》
溪云初起日沉阁,山雨欲来风满楼。____许浑《咸阳城东楼 / 咸阳城西楼晚眺 / 西门》 春风得意马蹄疾,一日看尽长安花。____孟郊《登科后》
枯藤老树昏鸦,小桥流水人家,古道西风瘦马。____马致远《天净沙?秋思》 空山新雨后,天气晚来秋。____王维《山居秋暝》
人到情多情转薄,而今真个悔多情。____纳兰性德《山花子?风絮飘残已化萍》 同是天涯沦落人,相逢何必曾相识~____马致远《杂剧?江州司马青衫泪》 浮云一别后,流水十年间。____韦应物《淮上喜会梁川故人 / 淮上喜会梁州故人》
名句赏析~~~~~
不限
主题不限抒情四季山水天气人物人生生活节日动物植物食物
山有木兮木有枝,心悦君兮君不知。____佚名《越人歌》
人生若只如初见,何事秋风悲画扇。____纳兰性德《木兰词?拟古决绝词柬友》 十年生死两茫茫,不思量,自难忘。____苏轼《江城子?乙卯正月二十日夜记梦》 只愿君心似我心,定不负相思意。____李之仪《卜算子?我住长江头》 玲珑骰子安红豆,入骨相思知不知。____温庭筠《南歌子词二首 / 新添声杨柳枝词》 曾经沧海难为水,除却巫山不是云。____元稹《离思五首?其四》 愿得一心人,白头不相离。____卓文君《白头吟》
去年今日此门中,人面桃花相映红。____崔护《题都城南庄》
平生不会相思,才会相思,便害相思。____徐再思《折桂令?春情》 入我相思门,知我相思苦。____李白《三五七言 / 秋风词》
山无陵,江水为竭。冬雷震震,夏雨雪。天地合,乃敢与君绝。____佚名《上邪》 人生自是有情痴,此恨不关风与月。____欧阳修《玉楼春?尊前拟把归期说》 一往情深深几许,深山夕照深秋雨。____纳兰性德《蝶恋花?出塞》 两情若是久长时,又岂在朝朝暮暮。____秦观《鹊桥仙?纤云弄巧》 执子之手,与子偕老。____佚名《击鼓》
花自飘零水自流。一种相思,两处闲愁。____李清照《一剪梅?红藕香残玉簟秋》 问世间,情为何物,直教生死相许,____元好问《摸鱼儿?雁丘词 / 迈陂塘》 一日不见兮,思之如狂。____司马相如《凤求凰 / 琴歌》
人生如逆旅,我亦是行人。____苏轼《临江仙?送钱穆父》
世间无限丹青手,一片伤心画不成。____高蟾《金陵晚望》
林花谢了春红,太匆匆。无奈朝来寒雨,晚来风。____李煜《相见欢?林花谢了春红》 独立寒秋,湘江北去,橘子洲头。____**《沁园春?长沙》
身无彩凤双飞翼,心有灵犀一点通。____李商隐《无题?昨夜星辰昨夜风》 滚滚长江东逝水,浪花淘尽英雄。____杨慎《临江仙?滚滚长江东逝水》 怕相思,已相思,轮到相思没处辞,眉间露一丝。____俞彦《长相思?折花枝》 此情可待成追忆,只是当时已惘然。____李商隐《锦瑟》
思悠悠,恨悠悠,恨到归时方始休。____白居易《长相思?汴水流》 取次花丛懒回顾,半缘修道半缘君。____元稹《离思五首?其四》 若是前生未有缘,待重结、来生愿。____乐婉《卜算子?答施》
雨打梨花深闭门,忘了青春,误了青春。____唐寅《一剪梅?雨打梨花深闭门》 少年不识愁滋味,爱上层楼。爱上层楼。为赋新词强说愁。____辛弃疾《丑奴儿?书博山道中壁》
自在飞花轻似梦,无边丝雨细如愁。____秦观《浣溪沙?漠漠轻寒上小楼》 近水楼台先得月,向阳花木易为春。____苏麟《断句》
一骑红尘妃子笑,无人知是荔枝来。____杜牧《过华清宫绝句三首》 抽刀断水水更流,举杯消愁愁更愁。____李白《宣州谢脁楼饯别校书叔云 / 陪侍御叔华登楼歌》
疏影横斜水清浅,暗香浮动月黄昏。____林逋《山园小梅?其一》 人面不知何处去,桃花依旧笑春风。____崔护《题都城南庄》
时光只解催人老,不信多情,长恨离亭,泪滴春衫酒易醒。____晏殊《采桑子?时光只解催人老》
一生大笑能几回,斗酒相逢须醉倒。____岑参《凉州馆中与诸判官夜集》
天涯地角有穷时,只有相思无尽处。____晏殊《玉楼春?春恨》
问君能有几多愁,恰似一江春水向东流。____李煜《虞美人?春花秋月何时了》 似此星辰非昨夜,为谁风露立中宵。____黄景仁《绮怀》
菩提本无树,明镜亦非台。____惠能《菩提偈》
溪云初起日沉阁,山雨欲来风满楼。____许浑《咸阳城东楼 / 咸阳城西楼晚眺 / 西门》 春风得意马蹄疾,一日看尽长安花。____孟郊《登科后》
枯藤老树昏鸦,小桥流水人家,古道西风瘦马。____马致远《天净沙?秋思》 空山新雨后,天气晚来秋。____王维《山居秋暝》
人到情多情转薄,而今真个悔多情。____纳兰性德《山花子?风絮飘残已化萍》 同是天涯沦落人,相逢何必曾相识~____马致远《杂剧?江州司马青衫泪》 浮云一别后,流水十年间。____韦应物《淮上喜会梁川故人 / 淮上喜会梁州故人》
论诗三十首?其四
(53人评分) 8.7
朝代:金朝
作者:元好问
原文:
一语天然万古新,豪华落尽见真淳。
南窗白日羲皇上,未害渊明是晋人。
写翻译 写翻译写赏析 写赏析纠错 纠错收藏 收藏评分:很差较差还行推荐力荐 参考翻译
写翻译 写翻译
译文
陶渊明的诗语言平淡、自然天成,摒弃纤丽浮华的敷饰,露出真朴淳厚的美质,令人读来万古常新。陶渊明自谓自己是上古时代的人,但并未妨碍他仍然是个晋人。? 参考赏析
写赏析 写赏析
赏析
这首诗是元好问评晋代诗人陶渊明。出于对当时诗坛雕琢粉饰、矫揉造作诗风的反感,元好问评论晋代诗人陶渊明时前两句说:“一语天然万古新,豪华落尽见真淳。”元好问崇尚陶渊明诗歌自然天成而无人工痕迹,清新真淳而无雕琢之弊。陶渊明的诗句自然质朴不假修饰,剥尽铅华腻粉,独见真率之情志,具有真淳隽永、万古常新的永恒?
作者介绍
元好问
元好问 元好问,字裕之,号遗山,太原秀容(今山西忻州)人;系出北魏鲜卑族拓跋氏,元好问过继叔父元格;七岁能诗,十四岁从学郝天挺,六载而业成;兴定五年(1221)进士,不就选;正大元年(1224 ),中博学宏词科,授儒林郎,充国史院编修,历镇平、南阳、内乡县令。八年(1231)秋,受诏入都,除尚书省掾、左司都事,转员外郎;金亡不仕,元宪宗七年卒于获鹿寓舍;工诗文,在金元之际颇负重望;诗词风格沉郁,并多伤时感事之作。其《论诗》绝句三十首在中国文学批评史上颇有地位;作有《遗山集》又名《遗山先生文集》,编有《中州集》。...
转载请注明出处范文大全网 » dsp芯片的原理与应用概念及