您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 其它行业文档 > DSP期末复习总结整理
DSP期末复习整理绪论1、基本概念(digitalsignalprocessing;digitalsignalprocessor;DSP技术)①DigitalSignalProcessing:数字信号处理的理论和方法②DigitalSignalProcessor:用于数字信号处理的微处理器③DSP技术:用通用或专用的DSP处理器来完成数字信号处理的方法与技术2、数字信号处理的优势与模拟信号处理相比具有的优势:灵活性、精度高、可靠性好、可重复性好、抗干扰性能好、可以实现自适应算法、数据压缩对原信号缩影响小、可大规模集成。3、DSP器件的结构特点①采用哈佛结构和改善的哈佛结构:程序空间和数据空间分开编址,允许同时取指令(来自程序存储器)和取操作数(来自数据存储器),效率高。允许程序存储器与数据存储器之间进行数据传送。②采用多总线结构:总线越多,可完成的功能就越复杂。③采用流水线技术④配有专用的硬件乘法-累加器⑤具有特殊的DSP指令⑥快速的指令周期⑦硬件配置强⑧支持多处理器结构⑨省电管理和低功耗4、什么是定点DSP,什么是浮点DSP,要求在TI网站上查找主流的定点DSP型号和浮点DSP型号。定点DSP:数据以定点格式工作的DSP芯片称为定点DSP芯片;TI公司:TMS320C1x/C2x、TMS320C2xx/C5x、TMS320C54xx/C62xx浮点DSP:数据以浮点格式工作的DSP芯片称为浮点DSP芯片。TI公司:TMS320C3x/C4x/C67xDSP有定点与浮点两种。定点:数据格式用整数和小数表示。大多是16位的,要考虑溢出范围,小数点的位置。浮点:数据格式用尾数和指数表示。一般都是32位的,表示范围大,不需要考虑溢出,精度高,处理速度更快。5、掌握利用定点DSP表述浮点数据的Q格式。如Q15数据2000H表示的十进制数值是多少?0.125用Q15表示值是多少?定点数据表示:Qn.mn:整数位数。m:小数位数。例:Q0.15D15D14D13‥‥‥D1D06、DSP系统的构成和处理过程X(t)——抗混叠滤波器—A/D转换器—数字信号处理—D/A转换器—低通滤波器——Y(t)DSP系统的处理过程:①将输入信号进行抗混叠滤波,滤掉高于折叠频率的分量,防止信号频谱混叠;②经采样和A/D转换器,将滤波后的信号转换为数字信号;③数字信号处理器对其进行处理;④经过D/A转换器,转成模拟信号;⑤经过低通滤波器,滤除高频分量,得到平滑的模拟信号54x系列DSP内部硬件结构1、TMS320C54芯片主要引脚。XF:外部标识输出信号,用于发送信号给外部设备。通过编程设置,可以控制外设工作。MP/MC:DSP芯片工作方式选择信号微处理器或微计算机选择位。这一位的信息可以由硬件连接方式决定,也可以由软件置位或清零选择。=0,微控制器模式,可以访问片内ROM;=1,微处理器模式,不能访问片内ROM2、TMS320C54系列内部包含哪些功能部件?CPU、存储器、总线、具体外设。具体外设:I/O、定时器、时钟发生器、主机接口、软件可编程等待状态发生器、串行通信接口等。3、CPU内部包含的功能部件及各个功能部件的个数、位数、作用。ALU、累加器、乘法器、桶形移位器、CSSU、指数编码器、CPU控制与状态寄存器。①40位算术逻辑运算单元(ALU):完成宽范围的算术逻辑运算②2个40位累加器(ACCA和ACCB):可以作为ALU或MAC的目标寄存器,存放运算结果,也可以作为ALU或MAC的一个输入。③1个支持16~30位的桶形移位寄存器:对运算前的输入数据进行数据定标;对累加器的值进行算术或逻辑移位;对累加器进行归一化处理;在累加器的值存储到数据存储器之前,对欲存数据进行定标。④17×17位乘法器:可以完成有符号数和无符号数的乘法运算。⑤比较、选择和存储单元(CSSU):用来完成Viterbi算法中的加法/比较/选择操作。⑥指数编码器(32位):用于支持指数运算指令的专用硬件,可以单周期内执行EXP指令,求累加器中数的指数值。⑦CPU控制和状态寄存器(16位):状态寄存器0(ST0):主要是反映寻址要求和计算的中间运行状态。状态寄存器1(ST1):主要反映寻址要求、计算的初始状态设置、I/O及中断控制。处理器工作方式状态寄存器(PMST):主要是设定并控制处理器的工作方式,反映处理器的工作状态5、5416、5402存储器的结构?寻址空间、具体配置。要会看存储器映射图。OVLY位:RAM重复占位位;=0,则片内RAM只安排到数据存储空间;=1,则片内RAM可安排到程序和数据空间,这时,RAM是程序和数据共用,在具体编程使用时,用户要安排好用于程序存储和用于数据存储的范围,以免出现错误。DROM位:数据ROM位,可让片内ROM映象到数据空间;=0,片内ROM不能映象到数据空间;=1,片内ROM的一部分可映象到数据空间6、TMS320C54共有几条总线?如何分类?宽度?8条16位总线:4条地址总线、4条数据总线。①数据总线:PB:用来传送取自程序存储器中的指令代码或立即数,一般称为程序总线CB、DB:用来传送读自数据存储器中的操作数EB:用来传送写到数据存储器中的数据②地址总线:PAB:传送指令代码所在的地址CAB、DAB:传送读自数据存储器操作数的地址EAB:传送写数据在数据存储器的目的地址。总之,是传送执行指令所需的地址7、复位条件?复位时各个寄存器的复位值(PMST、ST0、ST1、IFR、IMR、XPC、PC、PRD、TIM、TCR)?复位时,各个中断号对应的中断入口地址是多少?只要在RS引脚上出现2个外部时钟周期以上的低电平。复位状态复位时:PMST中的IPTR=1FFHST0=1800HST1=2900H(中断方式位INTM置1,关闭所有可屏蔽中断)IFR=0000HIMPXPC=0PC=FF80HPRD=0FFFFHTIM=0FFFFHTCR中的TDDR=0000XPC=0000H8、中断的分类?软件中断,硬件中断;可屏蔽中断,不可屏蔽中断;内部中断,外部中断。5402、5416的中断源与优先级表格。软件中断:由程序指令(INTR、TRAP或REST)产生中断硬件中断:由外围硬件设备产生的中断可屏蔽中断:SINT15~SINT0(16个)不可屏蔽中断:____RS(复位)、_______NMI内部中断:外部中断:9、串行口有哪几种类型:同步串行口、缓冲串行口、时分多路串行口、多通道缓冲串行口10、DSP软件程序设计1、公共目标文件格式(COFF0、COFF1、COFF2)概念。源文件、目标文件、可执行文件的扩展名是什么?通过汇编器和链接器建立的可执行目标文件的格式称为公共目标文件格式,即COFF(commonobjectfileformat)。COFF文件有3种形式:COFF0、COFF1、COFF2。C54x汇编器和编译器默认建立的是COFF2文件。目标文件(.obj)源文件(.asm)(.c)可执行文件(.out)链接命令文件(.cmd)头文件(.h)列表文件名(.lib)2、段的分类与定义方式:text、data、bss、自定义段(.sect,.usect)段——就是在存储器中占据相邻空间的代码或数据块。每个目标文件都分成若干个段。且每一个段都是分开和各不相同的。所有的COFF文件都包含以下3种形式的段:.text已初始化段,用户程序代码(可执行文本).data已初始化段,为某段存储空间初始化数据.bss未初始化段,为变量保留空间.sect已初始化段,建立用户的自定义段.usect未初始化段,建立用户的自定义段3、汇编器与链接器的作用?什么文件是实现链接器任务?cmd文件,MEMORY,SECTIONS。汇编器:把指令译成代码,并根据汇编命令用适当的段将各部分程序代码和数据连在一起,构成目标文件。链接器:分配存储单元,将各个段分配定位到相应的目标存储器中各个段到底在存储器中的什么位置,对我们很重要,要弄清楚。链接器的任务通过链接命令文件(.cmd)完成,链接命令文件则主要是通过2条命令实现:MEMORY此命令用来定义目标系统的存储器结构,包括对存储器各部分命名,以及规定它们的起始地址和长度MEMORY{PAGE0:PROG:origin=0x0100,length=0x2000/*OVLY=1,DARAMvect:origin=0x0080,length=0x80PAGE1:DARAM:origin=0x2100,length=0x1000PAGE2:IO:origin=0x0000,length=0xffff}.bss.data.textRAMRAM或ROMROM若5402工作在MP模式,OVLY=0,外部扩展一个64K的程序存储器flash,要求片内DARAM全部配置为数据空间,将64K的flash全部配置为程序空间,且要把128字的中断向量地址范围单独分个区间,请用MEMORY写出存储器配置文件。MEMORY{PAGE0:PROG:origin=0x0000,length=0xff80vect:origin=0xff80,length=0x80PAGE1:DARAM:origin=0x0000,length=0x4000}SECTIONS此命令告诉链接器如何将输入段组合成输出段,以及将输出段放在存储器的什么位置(地址分配)4、DSP的C语言程序项目所包含的文件有哪些?C语言程序的入口是什么?C语言程序常用的关键字有哪些?若用户要建立一个C语言软件项目,该项目必须包括以下文件(以建一个项目example为例):vectors.asm;定义复位、中断矢量源文件。example.c;主体源程序。c5402.h;定义C5402内部控制及状态寄存器。c5402.cmd;定义存储空间,并为段分配空间。rts.lib;运行库文件,由TI提供。C的主程序是main,DSP复位时跳转到地址为FF80H的位置,如何从FF80H跳转到main执行?Rts.lib运行时间支持库函数解决了该问题:它提供了名称为_c_int00的引导程序,通过执行该程序能进入到main主程序。那如何从FF80H到_c_int00,我们只需在FF80H的位置放置一条汇编跳转指令:B_c_int00C语言程序的入口_c_int00ioport用ioport定义I/O端口空间.格式为:ioporttypeporthex_num即定义porthex_num是一个I/O端口,hex_num是这个I/O端口的地址.如:ioportunsignedport0000port0000=0x10;把10h数据写到地址为0000h端口interrupt用来定义中断函数.与汇编语言中的中断子程序类似.如:voidinterruptc_int02(){prevectors();}中断系统程序设计1、中断矢量的组成?中断矢量表?中断服务程序在内存中的地址;中断矢量表是中断矢量号与它相应的中断服务程序入口地址之间的转换表。中断矢量表占用存储器的最低地址区,因为每个中断矢量号要占用4个字节单元。2、IFR、IMR寄存器的位功能?中断标志寄存器(interruptflagregister)IFR是一个存储器映像寄存器,当一个中断出现时,IFR中的相应的中断标志位置1,知道CPU识别该中断为止。位功能见P268。中断屏蔽寄存器(interruptmaskregister)IMR是一个存储器映像的CPU寄存器,主要用于屏蔽外部和内部的硬件中断。如果状态寄存器ST1中的INTM=0,IMR寄存器中的某位置1,就能开放相应的中断。位功能见P269。3、中断程序设计:中断初始化,矢量源文件的编写,主程序与中断服务子程序的编写定时器1、定时器的位数?是减计数器还是增计数器?16位,减计数器。2、定时器的控制寄存器PRD、TIM、TCR位功能?PRD:用来存放定时时间常数TIM:减1计数器TCR:包含定时器的控制位和状态位3、定时器定时时间计算?定时半周期=CLKOUT*(T
本文标题:DSP期末复习总结整理
链接地址:https://www.777doc.com/doc-5567481 .html