您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > DSP复习文档终极版
1DSP技术知识要点(计科)CHAP1冯、诺依曼结构和哈佛结构的特点冯诺依曼:该结构采用单存储空间,即程序指令和数据公用一个存储空间,使单一的地址和数据总线,取指令和取操作数都是通过一条总线分时进行的。当进行高速运算时,不能同时进行取指令和取操作数,起工作速度慢。哈佛结构:该结构采用双存储空间,程序存储器和数据存储器分开,有各自独立的程序总线和数据总线,可独立编址和独立访问,可对程序和数据进行独立传输,使取指令操作,指令执行操作,数据吞吐并行完成,大大提高了数据处理能力和指令的执行速度。DSP芯片的特点(为何适合数据密集型应用)①采用哈佛结构②采用多总线结构③采用流水线技术④配有专用的硬件乘法-累加器⑤具有特殊的DSP指令⑥快速的指令周期⑦硬件配置强⑧支持多处理器结构⑨省电管理和低消耗DSP芯片的分类定点DSP芯片,精度和范围是不能同时兼顾的。定点DSP是主流产品,成本低,对存储器要求低、耗电少,开发相对容易,但设计中必须考虑溢出问题。用在精度要求不太高的场合。浮点DSP芯片,精度高、动态范围大,产品相对较少,复杂成本高。但不必考虑溢出的问题。用在精度要求较高的场合。定点DSP的表示(Qm.n,精度和范围与m、n的关系)及其格式转换1整数表示法2小数表示法23数的定标;n越大,数值范围越小,但精度越高;相反,n越小,数值范围越大,但精度就越低。不同Qm.n形式的数进行加减运算时,通常将动态范围小的数据格式转换成动态范围大的数据格式。即n大的数据格式向n小的数据格式转换。方法:将n大的数向右移相差的位数,这时原数低位被移出,高位则进行符号扩展。TI公司的三大主力系列DSP芯片C2x、C24x称为C2000系列,定位于控制类和运算量较小的运用,主要用于代替MCU,应用于各种工业控制领域,尤其是电机控制领域。C54x、C55x称为C5000系列,低功耗高性能,定位于中等计算量的应用。主要用于便携式的通信终端。C62x、C64x和C67x称为C6000系列,高性能,定位于具有较大计算量要求的应用,主要应用于高速宽带和图像处理等高端应用DSP芯片的运算速度CHAP2TMS320C54x芯片的组成(三部分,相同系列不同芯片之间的区别和联系)主要包括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:用来提供执行指令所需的地址。程序读:PABPB程序写:PABEB单数据读:DABDB单数据写:EABEB双数据读:DABDB(低16位)3CABCB(高16位)外设读:DABDB外设写:EABEB累加器A、B的组成、两个累加器的区别、累加器内容的保存(移位、保存)保护位、高阶位、低阶位;保护位、高阶位、低阶位AGAHALBGBHBL累加器A和B的区别是,AH可以用作乘法器的一个输入,使用MPYA指令。只能使用累加器A寻址程序空间。移位操作是在将累加器的内容存入存储器的过程中完成的。由于移位操作是在移位寄存器中进行,所以操作后累加器的内容不变。桶形移位器的移位数的形式,MAC单元的特点(硬件乘法器)移位数的形式和范围:①5位立即数,取值范围:-16~15;②ST1中的ASM位(5位数),取值范围:-16~15;③暂存器T中的低6位数值,取值范围:-16~31。MAC单元的特点:在单周期内完成。CPU的3个状态和控制寄存器(主要位的作用及设置)RSBX1,9;SSBXSXMST0、ST1是存储器映射寄存器,是指这些寄存器不是在CPU内部,而是位于数据存储器空间第0页,因此可以使用通用的数据存储器存取指令来访问这些寄存器。对ST0、ST1中单独的一位,可以使用RSBX和SSBX指令修改例如:RSBXOVM;设置溢出保护模式位SSBX1,8;设置符号扩展模式位SSBXSXM;设置符号扩展模式位可以使用LD指令修改DP和ASM例如:LD#23,DP;设置数据存储器页指针LD#-3,ASM;设置移位数TMS320C54X芯片的可寻址存储空间:程序、数据(存储器映射寄存器MMR:数据4存储器的第0页)、I/O共有192千字的可寻址存储空间64千字的程序存储空间:用来存放要执行的指令和指令执行中所需要的系数表64千字的数据存储空间:用来存放执行指令所需要的数据64千字的I/O空间:用来提供与外部存储器映射的接口,可以作为外部数据存储空间使用。片内存储器的3种形式以及SARAM、DARAM的特点SARAM,DARAM,ROMDARAM:在一个指令周期内,可对其进行两次存取操作,即一次读出和一次写入;SARAM:在一个指令周期内,只能进行一次存取操作。通常,SARAM和DARAM被映射到数据存储空间用来存储数据,也可以映射到程序空间用来存储程序代码。3个状态位对片内存储器映射到程序存储空间和数据存储空间的作用P34MP/MC=0/1OVLY=0/1DROM=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=1234hLD#80h,A;装入累加器ALD80h,A;将地址80H单元中的数据装入A5绝对寻址①数据存储器地址(dmad)寻址;MVKDEXAM1,*AR5②程序存储器地址(pmad)寻址;MVPDTABLE,*AR2③端口(PA)寻址;结合单指令循环可实现数据块移动。如16个系数的移动RPT#15MVPDtable,*AR2+又如:STM#4000H,AR2STM#100H,AR3RPT#1023MVDD*AR2+,*AR3+RET累加器寻址READASmemWRITASmem(smen只能是数据存储空间)(注意两条指令的方向)直接寻址以DP为基址时,不能跨页;SP可以编程实现将程序存储器从地址1000H到1080H区间的内容复制到数据存储空间从2000H开始的地址空间。STM#2000H,AR3RPT#128MVPD1000H,*AR3+RET编程实现将数据存储器从地址1000H到1080H区间的内容复制到数据存储空间从2000H开始的地址空间。STM#1000H,AR2STM#2000H,AR3RPT#128MVDD*AR2+,*AR3+RET例1、采用DP直接寻址,完成X,Y单元数据求和,已知DPRSBXCPLLD#3,DPLD@X,ALD#4,DPADD@Y,A6利用堆栈直接寻址,求堆栈中据栈顶两个数X,Y的和SSBXCPLLD@1,AADD@2,A直接寻址(地址的确定,DP赋初值)、倒序寻址(地址的确定)、循环缓冲区的建立(首尾地址的确定)循环缓冲区的有效基地址(EFB)就是用户指定的辅助寄存器(ARx)的低N位置0后所得到的值;循环缓冲区的尾基地址(EOB)是通过用BK的低N代替ARx的低N位得到;循环缓冲区的偏移量(index)就是ARx的低N位;即进位是从左向右,而不是从右向左。间接寻址中*ARi+0B/-0B表示位倒序寻址。加法(进位)指令、减法(借位)指令、条件减法指令(实现除法),乘法、乘累加指令的操作数来源、分支转移指令、重复操作指令TMEP1+TEMP2=TEMP3①ADDSmem,ScrLDTEMP1,AADDTEMP2,ASTLA,TEMP3②ADDXmem,Ymem,dstADDTEMP1,TEMP2,ASTHA,TEMP3实现除法RPT#15SUBCSmem,src商在src的低16位,余数在src的高16位。Temp1/temp2=temp3...temp4LDtemp1,BREPT#15SUBCtemp2,BSTLB,temp37STHB,temp4数据块移动的实现、除法的实现(整数除法、小数除法),乘法的实现(整数乘法、小数乘法)编程实现TEMP1/TEMP2=TEMP3…TEMP4TEMP1/TEMP2不带小数LDTEMP1,BRPT#15SUBCTEMP2,BSTLB,temp3STHB,temp4带小数LDTEMP1,16,BRPT#15SUBCTEMP2,BSTLB,-1,temp3STHB,temp4能分析常见的汇编程序、能编写简单的程序片断RSBXFRCTLDTEMP1,T;将变量temp1装入T寄存器MPYTEMP2,A;完成temp2*temp1STLA,TEMP3;乘积结果的低16位存入变量temp3小数乘法举例SSBXFRCT;FRCT=1,准备小数乘法9LDTEMP1,16,A;将变量temp1装入寄存器A的高16位MPYATEMP2;完成temp2乘寄存器A的高16位,结果在B中,同时将temp2装入T寄存器8STHB,TEMP3CHAP4DSP程序的两种调试模式(硬件仿真模式必须具备的条件及设备连接)利用软件仿真器进行调试利用硬件仿真器进行调试:目标板和硬件仿真器?段定义伪指令.bss伪指令,用于在bss段中保留若干个空间。.usect伪指令,用于为指定的命名段保留若干个空间已初始化段:包含有可执行的代码和初始化程序。.text[段起点].data[段起点].sect“段名”[,段起点]常见的常数初始化指令、.field指令、定位指令.align.field合并指令.field7,3表示7用3位表示。.align2对齐偶字边界无具体的数表示对齐页边界CHAP9(结合实验)setupCCS的作用是一种针对TMS320系列的集成开发环境,在windows操作系统下,采用图形接口界面,提供环境配置、源文件编辑、程序调试、跟踪和分析工具,可以帮助用户在一个软件环境下完成编辑、编译、链接、调试和数据分析等工作。汇编源程序的工程文件的组成、C程序的工程文件的组成C语言:.c.cmd.rts.lib汇编.asm.cmd断点、探针点的作用断点可以暂停程序的运行,以便观察程序的状态,检查或修正变量,查看调用的堆栈、存储器和寄存器的内容等。探针点:当用户程序运行到探测点时,自动的从该探测点连接的外部文件中读入数据或将计算机的结果输出给外部文件。外部数据的输入利用数据数据的读入/写出功能。利用探测点功能。题型填空题20分(20空),选择题20分(10小题),其余为编程题和分析题。9MVDK与DP结合地址为020AH,里面的数据放到8000H里面。累加器A读:A中数据作为数据的地址放到DP和6组合的地址中0206H中累加器A写:DP和6的结合地址中的数据放到A中数据为地址的地方0257H。10
本文标题:DSP复习文档终极版
链接地址:https://www.777doc.com/doc-2910494 .html