DSP技术知识要点(计科)
CHAP1
? 冯、诺依曼结构和哈佛结构的特点 冯诺依曼:
该结构采用单存储空间,即程序指令和数据公用一个存储空间,使单一的地址和数据总线,取指令和取操作数都是通过一条总线分时进行的。当进行高速运算时,不能同时进行取指令和取操作数,起工作速度慢。
哈佛结构:该结构采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输,使取指令操作,指令执行操作,数据吞吐并行完成,大大提高了数据处理能力和指令的执行速度。
? DSP芯片的特点(为何适合数据密集型应用)
①采用哈佛结构 ②采用多总线结构 ③采用流水线技术
④配有专用的硬件乘法-累加器 ⑤具有特殊的DSP指令 ⑥快速的指令周期 ⑦硬件配置强 ⑧支持多处理器结构 ⑨省电管理和低消耗
? DSP芯片的分类
定点DSP芯片,精度和范围是不能同时兼顾的。定点DSP是主流产品,成本低,对存储器要求低、耗电少,开发相对容易,但设计中必须考虑溢出问题。用在精度要求不太高的场合。
浮点DSP芯片,精度高、动态范围大,产品相对较少,复杂成本高。但不必考虑溢出的问题。用在精度要求较高的场合。
? 定点DSP的表示(Qm.n,精度和范围与m、n的关系)及其格式转换 1整数表示法 2小数表示法
1
3数的定标;
n越大,数值范围越小,但精度越高; 相反,n越小,数值范围越大,但精度就越低。不同Qm.n形式的数进行加减运算时,通常将动态范围小的数据格式转换成动态范围大的数据格式。即n大的数据格式向n小的数据格式转换。
方法:将n 大的数向右移相差的位数,这时原数低位被移出, 高位则进行符号扩展。
? TI公司的三大主力系列DSP芯片
C2x、C24x称为C2000系列,定位于控制类和运算量较小
的运用,主要用于代替MCU,应用于各种工业控制领域,尤其是电机控制领域。 C54x、C55x称为C5000系列,低功耗高性能,定位于中等计算量的应用。主要用于便携式的通信终端。
C62x、C64x和C67x称为C6000系列,高性能,定位于具有较大计算量要求的应用,主要应用于高速宽带和图像处理等高端应用 ? DSP芯片的运算速度 CHAP2
? TMS320C54x芯片的组成(三部分,相同系列不同芯片之间的区别和联系)
主要包括CPU、片内存储器和片内外设三个部分, 同一系列不同型号,cpu相同,而片内存储器和片内外设不相同。
? TMS320C54X芯片的总线组成及使用。
1组程序总线PB;3组数据总线CB、DB、EB;4组地址总线PAB、CAB、DAB、EAB。 程序总线PB:主要用来传送取自程序存储器的指令代码和立即操作数。
数据总线CB 、DB和EB:CB和DB用来传送从数据存储器读出的数据; EB用来传送写入存储器的数据。
地址总线PAB、CAB、DAB和EAB : 用来提供执行指令所需的地址。 程序读:PAB PB 程序写:PAB EB 单数据读:DAB DB 单数据写:EAB EB
双数据读:DAB DB(低16位)
2
CAB CB(高16位) 外设读:DAB DB 外设写:EAB EB
? 累加器A、B的组成、两个累加器的区别、累加器内容的保存(移位、保存) 保护位、高阶位、低阶位; 保护位、高阶位、低阶位 AG AH AL BG BH BL
累加器A和B的区别是,AH可以用作乘法器的一个输入,使用MPYA指令。 只能使用累加器A寻址程序空间。
移位操作是在将累加器的内容存入存储器的过程中完成的。由于移位操作是在移位寄存器中进行,所以操作后累加器的内容不变。
? 桶形移位器的移位数的形式,MAC单元的特点(硬件乘法器) 移位数的形式和范围:
① 5位立即数,取值范围:-16~15;
② ST1中的ASM位(5位数), 取值范围:-16~15; ③ 暂存器T中的低6位数值,取值范围:-16~31。 MAC单元的特点:在单周期内完成。
? CPU的3个状态和控制寄存器(主要位的作用及设置) RSBX 1,9; SSBX SXM
ST0、ST1是存储器映射寄存器,是指这些寄存器不是在CPU内部,而是位于数据存储器空间第0页,因此可以使用通用的数据存储器存取指令来访问这些寄存器。 对ST0、ST1中单独的一位,可以使用RSBX和SSBX指令修改例如: RSBX OVM ;设置溢出保护模式位 SSBX 1,8 ;设置符号扩展模式位
SSBX SXM ; 设置符号扩展模式位 可以使用LD指令修改DP和ASM 例如:
LD #23, DP ;设置数据存储器页指针 LD #-3, ASM ;设置移位数
? TMS320C54X芯片的可寻址存储空间:程序、数据(存储器映射寄存器MMR:数据
3
存储器的第0页)、I/O 共有192千字的可寻址存储空间
64千字的程序存储空间:用来存放要执行的指令和指令执行中所需要的系数表
64千字的数据存储空间: 用来存放执行指令所需要的数据 64千字的I/O空间: 用来提供与外部存储器映射的接口,可以作为外部数据存储空间使用。 ? 片内存储器的3种形式以及SARAM、DARAM 的特点 SARAM,DARAM,ROM
DARAM:在一个指令周期内,可对其进行两次存取操作,即一次读出和一次写入; SARAM:在一个指令周期内,只能进行一次存取操作。
通常,SARAM和DARAM被映射到数据存储空间用来存储数据,也可以映射到程序空间用来存储程序代码。
? 3个状态位对片内存储器映射到程序存储空间和数据存储空间的作用 P34 MP/MC=0/1 OVLY=0/1 DROM=0/1 ? 引导程序(自举加载程序)的作用
将用户程序从片外EPROM搬到片内RAM,让程序可以快速执行。 ? 程序存储空间的分页扩展、数据存储器的分页管理
XPC来保存页地址(即A16~AX) ,页内地址(64K内)用程序计数器PC保存。地址线数目为16、20、23,则相应的程序存储器寻址空间为64K、1M、8M。
对数据512页,128字。DP页地址(9为),复位后,DP=0;前80H单元(数据页0)包含CPU寄存器和片内外设寄存器和暂存器。 ? 定时器定时时间的计算
CLKOUT×(TDDR+1)×(PRD+1) CHAP3
? 各种寻址方式特点及其应用,重在寻址方式的判断,注意有时一个语句可能用到多种
寻址方式
1短立即数。3、5、8、9位,单字指令; LD #2,ARP ;ARP=2(#k3)(ST0中) LD #3,ASM ;ASM=3(#k5)(ST1中)
② 长立即数。16位,双字指令。 LD #1234h,A ;A=1234h LD #80h, A ; 装入累加器 A LD 80h, A ; 将地址80H单元中的数据装入A
4
绝对寻址
① 数据存储器地址(dmad)寻址;MVKD EXAM1, * AR5 ② 程序存储器地址(pmad)寻址;MVPD TABLE, * AR2
③端口(PA)寻址; 结合单指令循环可实现数据块移动。如16个系数的移动 RPT #15
MVPD table,*AR2+ 又如:
STM #4000H,AR2 STM #100H , AR3 RPT #1023 MVDD *AR2+,*AR3+ RET 累加器寻址 READA Smem
WRITA Smem(smen只能是数据存储空间)(注意两条指令的方向) 直接寻址 以DP为基址时,不能跨页;SP可以
编程实现将程序存储器从地址1000H到1080H区间的内容复制到数据存储空间从2000H开始的地址空间。 STM #2000H ,AR3 RPT #128
MVPD 1000H , *AR3+ RET
编程实现将数据存储器从地址1000H到1080H区间的内容复制到数据存储空间从2000H开始的地址空间。 STM #1000H , AR2 STM #2000H , AR3 RPT #128
MVDD *AR2+ , *AR3+ RET
例1、 采用DP直接寻址,完成X,Y单元数据求和,已知DP RSBX CPL LD #3, DP LD @X, A LD #4 , DP ADD @Y , A
5