数字信号处理DSP08工程设计讲座_第1页
数字信号处理DSP08工程设计讲座_第2页
数字信号处理DSP08工程设计讲座_第3页
数字信号处理DSP08工程设计讲座_第4页
数字信号处理DSP08工程设计讲座_第5页
已阅读5页,还剩64页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数字信号处理DSP08工程设计讲座2024/3/26数字信号处理DSP08工程设计讲座DSP芯片的选择什么是DSP?DSP的应用DSP的运算数据宽度速度(Speed)存贮的组织开发的便宜多DSP支持便携应用价格主题概述 DSP工程设计数字化设计模拟混合电路设计DSPS目标系统设计DSP外设的设计与使用系统软件开发工程应用注意事项数字信号处理DSP08工程设计讲座DSP简介数字信号处理器(DigitalSignalProcessor,DSP)是专门用于更好实现数字信号处理应用的微处理器。1980年第一个商品化DSP问世;目前众多新的DSP,为设计者提供了广泛的选择;新的半导体制造厂家不断进入这个领域,争取更大的市场分额,设计者在未来几年内将有更广的选择。今天的DSP是具有了强大功能的复杂器件。下面我们就介绍现在商品化DSP的共同特点,解释它们之间的区别,以及设计者在应用时注意的事项。数字信号处理DSP08工程设计讲座什么是DSP?多数DSP共有的基本特性:高性能、重复性、高数据量。在单个指令周期内完成乘法累加运算(Multiply-And-Accumulate,MAC)的能力这是衡量DSP最常用的性能;在涉及需要点乘的产品中,例如滤波器,MAC运算在算法中是非常有用的。为了完成此功能,DSP在主数据通路中集成有乘法器和累加器;另外,为了进行一系列MAC运算而又没有发生运算溢出(overflow),DSP通常在累加器中提供额外的比特数,以满足计算结果对比特数增加的要求。数字信号处理DSP08工程设计讲座什么是DSP?在单个指令周期内同时完成几个存贮器存取的能力这特点允许DSP在读取指令的同时,获得此指令所需要的被运算数,或者/和存贮前一指令的运算结果。通常在单个指令周期内完成多个存贮器读取是有许多客观限制的。典型之一是存取的存贮器位于片内,这样只能某些指令能进行多个存贮器存取。为了支持同时多个存取,DSP提供了多个片内(a)总线(On-ChipBus);(b)多个片内存贮器以及某些情况下的(c)多个独立的存贮空间。数字信号处理DSP08工程设计讲座什么是DSP?寻址方式为了使运算达到最大速度,DSP包含了一个地址产生单元,一旦适当的地址寄存器被配置,则地址发生器在后台运行,形成运算指令所需的并行操作存取地址,地址发生器是针对DSP而选择的模式。间接寻址最常用的寻址方式是具有后增量(Post_increment)的间接寻址寄存器,它通常用于连续存放一系列数据。模数寻址这种寻址简化了循环存储的使用。比特反转(bit_reversed)寻址这种方式更易于编译快速FFT算法的结果。数字信号处理DSP08工程设计讲座什么是DSP?循环(Looping)因为多数DSP涉及完成重复的计算,多数DSP对更有效的Looping提供了特别支持。通常,对于特殊的循环或者重复指令,DSP允许开发人员完成一个For_Next循环语句,不用为了更新或检测循环计数器而花费任何指令周期。强大的I/O功能:为了允许低价、高性能的输入输出,多数DSP包含有多个串口或者并口I/O接口。串口并口特殊的I/O处理机制——低层的中断或者DMA方式数字信号处理DSP08工程设计讲座DSP的应用DSP从雷达分析到消费者电子都有广泛的应用,但没有一个DSP能满足所有的或者大多数的应用。因此,对于设计者首要的任务是权衡各种因素,而选择适合于自己应用的DSP。这些因素包括:性能指标、价格、集成度、开发难易、功耗及其它因素。嵌入系统(embeddedsystem)按市场份额讲,最大的应用是便宜的、大量的嵌入系统。价格、集成度占首位例如:移动电话、硬盘驱动器(DSP用语伺服控制)和调制解调器(modem)。功耗居首位对于便携、电池供电的产品,电源功耗非常重要。在这些系统中,性能和开发难易居次要地位,虽然用户也开发自己的DSP软件和围绕DSP配置自己的硬件。数字信号处理DSP08工程设计讲座DSP的应用特殊需要—数据大、算法复杂的处理例如:声纳和地震探测。它们的数量很少,但其算法很复杂。这样产品设计量就很大,而且也很复杂,结果是设计者喜欢选择高性能、易用且支持多芯片配置的DSP。在某些情况下,设计者不愿意通过改造已有DSP系统,防止产生零乱。他们选择标准的开发板,通过调用他们的已有函数库来完成开发。数字信号处理DSP08工程设计讲座DSP的应用多媒体(multimedia)—新兴市场许多厂家正在占领这个新兴的市场,包含有DSP的计算机可以提供多媒体功能。Voicemail(语音信箱)、数据/传真Modem、音乐和语音合成及分解、图象压缩、电视接收、广播接收。多媒体对DSP的要求:高性能、低价格、高集成度多媒体除具有嵌入系统的量大、低价、高集成度的特点外,还要求高性能。因为多媒体PC要求DSP同时完成多项功能。多项功能之间更有效的切换多媒体除要求更有效地完成多项功能外,还要求DSP必须具有更有效地切换多项功能的能力。更大的存贮容量例如接MPEG1标准,图象压缩每秒钟设为1.5MB/s。这样,多媒体就需要海量存贮。数字信号处理DSP08工程设计讲座DSP的运算数的表示:一个可编程DSP的基本特性之一是DSP所采用的运算类型。定点制DSP:一个数表示为整数或者+1.0~-1.0之间的函数。浮点运算:一个数表示为指数部分和尾数部分。尾数部分通常是+1.0~-1.0之间的小数,而指数部分表示二进制中小数点的位置。数字信号处理DSP08工程设计讲座浮点DSP和定点DSP的比较性能比较—浮点运算是更灵活、更通用的机制更宽的动态范围(所能表示的最大最小数之比)更好的精度易用:在浮点制中,开发人员不必关心动态范围和精度,而对定点DSP而言,开发人员要时刻小心各种阶段的信号范围,以确保在有限的动态范围和运算精度下达到自己要求的数值性能。更贵:浮点DSP为了完成浮点运算,需要增加复杂的电路,这也就意味着一个大的冲模(die)。应用比较对于嵌入系统,选择定点DSP。因为嵌入系统对于价格是首位的。开发人员通过分析和方针,决定他们所需的动态范围和运算精度,以及是否需要增加比例因子。大动态范围、高精度、开发容易,选择浮点DSP。对于不关心价格,而对动态范围和精度有特殊要求的用户,以及为了开发容易,可以选择浮点DSP。DSP的运算数字信号处理DSP08工程设计讲座定点DSP完成浮点运算浮点在定点DSP中完成通常的浮点运算是可能的。调用浮点运算仿真程序。但这样做需要很多个指令周期,得不偿失。因此,通用的浮点仿真几乎不用了。块浮点运算(Blockfloating-point)定点和浮点运算的折中构成了块浮点运算——一组数中数据具有不同的尾数,但具有唯一的、相同的指数表示这一数据块。块浮点运算通常由软件完成,但有些DSP中也有硬件辅助完成此功能。DSP的运算数字信号处理DSP08工程设计讲座数据宽度(DataWidth)所有的浮点DSP都是32bit数据字(DataWord)定点DSP常用16bit数据字,但MotoralaDSP5600X系列和Star半导体公司SPROC系列采用24bit字宽,ZoranZR38000采用20bit数据字。数据字的大小对价格具有重要影响芯片的大小(ChipSize)封装管脚的数目(Numberofpackagepins)外部存储器的大小指令字长和数据字长大多数DSP的指令字长和数据字长相等,但也不全是这样。如AD公司ADSP21XX系列16bit数据字长24bit指令字长;Zoran公司ZR3800是20bit数据字长32bit指令字长。数字信号处理DSP08工程设计讲座数据宽度(DataWidth)应用选择—字长与开发复杂度折中对于开发者来讲,在满足需要的情况下,应选择最小的DSP,这样价格才能便宜;对于选择定点DSP还是浮点DSP,需要对字长和开发复杂性进行折中;对于某些24bit才能满足需要的应用,我们在牺牲了复杂性或程序的基础上,16bitDSP也能满足需要。例如对于16bitDSP,通过对指令的适当组合,也能完成双精度32bit的运算操作。当然双精度的运算速度比单精度慢。如果你的应用中大多数是单精度运算,只有少部分需要高精度运算,这时你选择用单精度DSP完成双精度运算可更意义。反之,则需要更宽比特的DSP。数字信号处理DSP08工程设计讲座速度(Speed)满足特殊需要时,对DSP的一个关键测试是运行速度。有许多方法可以测试DSP的速度。最快指令周期时间—执行一个DSP最快的指令所需要的时间通常用一秒钟内执行多少百万次指令(Millionsofinstructionspersecond,MIPS)来衡量。若DSP指令周期为20ns~100ns,即执行速率为50~10MIPS。问题:不同DSP之间单个指令完成的工作量,变化非常大。例如,早期的DSP在一个指令周期内只能完成一次加法或者乘法(两者不能同时完成)。相反,现在的DSP一个指令周期就可能完成乘法累加功能(MAC)。另外,有的DSP(如Motorala的DSP5600系列)可以对和ALU没有关系的数据进行并列移动。而有的DSP只支持和ALU有关的数据的并行移动。数字信号处理DSP08工程设计讲座速度(Speed)基本操作周期为了克服上述问题,用基本操作周期来代替指令操作周期作为衡量DSP速度的标尺。共同的操作是MAC,但不幸的是关于DSPMAC运算次数差异这方面的信息很少。现在大多数DSP都在一个指令周期内完成一个MAC操作,并且MAC周期等于指令周期。问题:有的DSP在完成MAC外,还能完成一些其它功能;MAC次数中没有考虑控制指令,有时它也对性能产生重要影响。数字信号处理DSP08工程设计讲座速度(Speed)标准基准(Benchmarks)一个更通用的方法是定义一组标准基准,然后比较各个DSP的运行速度。这个标准基准可能是简单的“核心”功能(如FIR或IIRDF),或者是某些应用的整体或部分。注意事项MOPS和MFLOPS的区别MOPS—每秒钟多少百万次运算(Millionsofoperationspersecond)MFLOPS—每秒钟多少百万次浮点运算不同的厂家对由什么构成“运算(Operation)”理解不同。时钟频率时钟≥指令周期DSP的输入时钟可能和DSP的指令频率相同,也可能是指令速率的两倍或者四倍。时钟频率<指令速率——倍频和锁相技术例如40MHzDSP56156的MIPS=20MHzADSP-2101的MIPS数字信号处理DSP08工程设计讲座存贮的组织指令Mem和数据Mem的组织DSP存贮中的组织对性能有很大影响。如前所述,MAC是很多DSP的基本运算,快速MAC运算需要获得一个指令字,同时在同一指令周期内从Memory读取两个数据字。可以有很多方法实现这一点:多端口Mem—允许在一个指令周期内多哥存贮器存取哈佛结构—独立的数据树指令Memory指令Cache—从Cache中读取指令代替从存储器中数字信号处理DSP08工程设计讲座存贮的组织存储器的大小片内部、外部总线的数目定点DSP定点DSP主要面向嵌如系统市场,它要求存贮量小。中小规模片内memmory(256~12KWords),小的外部数据总线。例如:ADC,AT&T,Mot,TI的定点DSP都具有16bit的地址总线,这样就限制了其外部Memory的容量。数字信号处理DSP08工程设计讲座存贮的组织存储器的大小片内部、外部总线的数目浮点DSP没有或者很少的片内memory,但有很大的外部数据总线。例如:AD公司ADSP—21021没有片内Memory,但有32bit外部数据地址总线和24bit外部程序地址总线。另外,这些DSP提供的Cache技术,可允许使用较快的外部Memory。TITMS320C30:6K片内Memory,24bit外部数据总线和13bit外部程序地址总线ADSP—21060:4M片内Memory,可以改变片内Memory的配置以分配给Data和指令不同的容量。如64K32bitData和40K48bit程序注:Memory的组织、大小、外部总线的数目非常依赖与应用。数字信号处理DSP08工程设计讲座开发的便宜开发的难易依赖与你的应用。例如在研究中,对于样机或仿真来讲,希望越快越容易的开发出来。另一方面,对一些公司来讲,起为了降低产品的价格,节省开发工具的费用,愿意承受艰苦的开发环境,但这带来的负面影响是开发周期长、产品上市慢。选择开发DSP的因素:软件工具(汇编、链接、仿真、编译、实时操作系统)硬件设计工具(开发板和仿真器)高级工具(如基于图形的框图设计环境)数字信号处理DSP08工程设计讲座开发的便宜程序设计语言汇编语言高级语言,如C或Ada高级设计环境——基于图形的框图设计如MentorGraphics的DSP工作站DSP5600X系列ComdiscoSystems的SPWTMS320C3X系列调试仿真工具不管是在高级语言,还是在汇编语言,调试和硬件仿真工具都是值得特别注意的。开发板允许开发人员在完成最终硬件之前实时地运行软件。数量少的产品也选择开发板作为自己的最终硬件平台。数字信号处理DSP08工程设计讲座多DSP支持对于某些大计算量的应用(如雷达、声纳等),需要多片DSP,此时,互连的难易—DSP间通信电路的设计互连的性能—的吞吐量、效率、延迟就成为重要因素。TITMS320C402个完全独立的地址和数据总线(用于连接本片和全局的Mem)。6个8bit的并口,每个并口20Mbytes/s的速率。这些并口非常适合构成超立方体和拓扑结构。AD公司ADSP-21060(a)双向地址和数据总线,6个双向总线请求线。通过精致的总线构造,可支持6个DSP互连。(b)6个4bit并口数字信号处理DSP08工程设计讲座便携应用在许多便携应用中(如移动电话和寻呼、计算机),电源功耗成为主要问题。采取了许多措施来降低电源功耗。减少工作电压AD、ATQT、Motorola、TI都已有3VDSP。休眠模式许多DSP在等待状态时,关掉DSP中一些部分的时钟,以减少功耗。苏醒:内部未掩盖的中断;特定的外部中心线;其它可编程时钟新的DSP允许用软件来改变DSP的工作时钟频率,以满足不同的任务设置不同时钟,节省电源。外围设备控制

有的DSP允许把现在不用的外设屏蔽掉。数字信号处理DSP08工程设计讲座价格——应用、封装形式、数量应用DSP的价格主要受订货数量的影响,只要能满足要求,就应选择最低价格的,虽然它可能缺少灵活性和编程困难。例如:TMS320C16问世于1980年,现在的报价是8美元(1000片时),正因为它报价低现在仍能有定单。PackagingPQFP、TQFP是最便宜的,PGA是最贵的。例:33MHzTMS320C30PGA=2.3PQFP(2.3倍)数量数量是决定价格的一个重要因素,如1~1,000~100,000片的价格会有显著的差异。数字信号处理DSP08工程设计讲座DSP选择小结DSP的选择:综合考虑运算(定点、浮点)数据宽度速度存储器组织开发难易DSP支持电源功耗价格等。正确的DSP依赖于你的应用。对于这个应用好,对于另一个不一定就好。数字信号处理DSP08工程设计讲座DSP芯片的选择什么是DSP?DSP的应用DSP的运算数据宽度速度(Speed)存贮的组织开发的便宜多DSP支持便携应用价格主题概述 DSP工程设计数字化设计模拟混合电路设计DSPS目标系统设计DSP外设的设计与使用系统软件开发工程应用注意事项数字信号处理DSP08工程设计讲座(一)数字化设计概述数字信号处理DSP08工程设计讲座TMS320C542A/DA/DFILTERD/ACONTROLLEREPROMRAMFILTER/MUX一个典型DSPSOLUTION设计数字信号处理DSP08工程设计讲座设计要素:数字化要求模拟混合电路(ADC/DAC)设计处理需求(DSP运算量)吞吐量需求存储器需求(SRAM、ROOM、FLASH等)通信口需求其它控制(电源设计、状态控制、时钟控制、多DSP控制、......)数字信号处理DSP08工程设计讲座(二)模数与数模转换1基带信号采样定理

要想连续信号抽取后能够不失真地还原出原信号,则抽取频率必须大于或等于两倍原信号频谱的最高频率。(Nyquist定理)

数字信号处理DSP08工程设计讲座2带通采样定理带通采样时采样频率不一定要满足Nyquist准则,带通采样的采样频率选择方法为: (1)fs>2f(BW) (2)fs=4fc/(2NZ-1)其中,NZ=1,2,3,…的最大整数。(二)模数与数模转换数字信号处理DSP08工程设计讲座3量化与量化误差连续信号经量化处理要产生量化误差,对于均匀量化,量化误差的大小为:其中,E为FS电平,us为信号有效电平。对于FS正弦输入,量化误差为:(二)模数与数模转换数字信号处理DSP08工程设计讲座4ADC/DAC的选择(1)ADC的种类:

逐次比较ADC

双线性ADC FLASHADC -ADC(2)ADC选择的标准:分辨率、速度、输入动态范围、POWER等(3)DAC的选择(4)滤波器设计(二)模数与数模转换数字信号处理DSP08工程设计讲座5、DSP与ADC/DAC的接口(1)对于串型ADC/DAC接口一般使用DSP的串口进行数据通信。如C25与11通道的12位ADCTLC2543的接口设计如下:(二)模数与数模转换数字信号处理DSP08工程设计讲座(二)模数与数模转换数字信号处理DSP08工程设计讲座(2)对于并型ADC/DAC接口一般使用DSP的I/O口进行数据通信。如DSP与12位ADCAD678的接口设计如下:(二)模数与数模转换数字信号处理DSP08工程设计讲座(三)目标系统硬件设计1、DSP的选择运算量价格外设需求其他因素……2、DSP配置DATA存储器大小PROGRAM存储器大小存储器速度要求I/O口配置……数字信号处理DSP08工程设计讲座3、DSP基本系统设计与模数电路接口BOOTLOADER设计扩展存储器设计时钟设计中断设计外设的使用电源管理其他…….(三)目标系统硬件设计数字信号处理DSP08工程设计讲座1)BOOTLOADER设计MP/*MC=0(片上ROM有效),复位后程序从FF80开始运行,将跳转到BOOTLOADER代码开始出。BOOT的流程取决于I/O口FFFF的值(BRS)和INT2*RS后检测INT2是否有效?有效按HPIboot模式引导,否则,读I/O口FFFFh的BRS,决定其他的引导方式。BRS决定的引导方式xxxx1000:8bit并口I/O引导xxxx1100:16bit并口I/O引导xx????00:串口引导(详细说明见后)xxxxxx01:8bit并行EPROM引导xxxxxx10:16bit并行EPROM引导xxxxxx11:热引导模式(三)目标系统硬件设计数字信号处理DSP08工程设计讲座BRS决定的串口引导说明:xx000000:8bit缓冲串口BSP(FSX/CLKX作为输出)xx000100:16bit缓冲串口BSP(FSX/CLKX作为输出)xx010000:8bit缓冲串口BSP(FSX/CLKX作为输入)xx010100:16bit缓冲串口BSP(FSX/CLKX作为输入)xx100000:8bit时分复用串口TDM(FSX/CLKX作为输出)xx100100:16bit时分复用串口TDM(FSX/CLKX作为输出)(三)目标系统硬件设计数字信号处理DSP08工程设计讲座(三)目标系统硬件设计数字信号处理DSP08工程设计讲座2)外部存储器接口(三)目标系统硬件设计数字信号处理DSP08工程设计讲座A22-A19A18A17A16A15A14-A0*PS*DS*IS*MSTRBR/*WA16A15A14-A0*OE*CS*WE下面给出一个扩展外部存储器的例子,重点注意:a、只使用一片128Kx16的RAMb、与内部有效的RAM相同的地址,外部RAM无效c、外部RAM的存取速度不能全速运行时,需要根据速度插入等待状态(三)目标系统硬件设计数字信号处理DSP08工程设计讲座3)系统时钟设计与控制

CLKOUTVCCcrystaloscillatorGNDExternalClock3.3V电路的两种接法:内部振荡器

外部晶振(三)目标系统硬件设计数字信号处理DSP08工程设计讲座两种时钟控制方式a、Hardware-programmablePLL(C541、C542、C543、C545&C546)(三)目标系统硬件设计数字信号处理DSP08工程设计讲座b、Software-programmablePLL(C541B/C545A/C546A/C548/C549/C5402/C5410/C5420)由时钟模式寄存器控制(CLKMD):(三)目标系统硬件设计数字信号处理DSP08工程设计讲座软件编程控制时钟举例:(设置CLKOUT=CLKINx3)

STM#0h,CLKMD;switchtoDIVmodeTstStatu:LDMCLKMD,AAND#01b,A;pollSTATUSbitBCTstStatu,ANEQSTM#0214fh,CLKMD;SetPLLON/OFFwhen;STATUSisDIVmode;PLLMUL=0010,PLLDIV=0;PLLCOUNT=00101000(41)(三)目标系统硬件设计数字信号处理DSP08工程设计讲座4)中断处理a、外部中断引脚连接b、修改中断向量表c、中断服务程序(三)目标系统硬件设计数字信号处理DSP08工程设计讲座5)外设的使用计数器的使用标准SP的使用缓冲SP的使用McBSP的使用TDM的使用HPI的使用与设计DMA的使用与设计其它I/O接口信号线(如XF、BIO等)的使用(三)目标系统硬件设计数字信号处理DSP08工程设计讲座(四)目标板系统软件设计1、源程序的编写在编写汇编语句时,应遵循以下规则:

语句的开头只能是标号、空格、星号或分号。

标号是可选项;如果使用,必须从第一列开始。

每个域必须由一个或多个空棵空格来分开。制表符等同于空格。

注释是可选项。开始于第一列的注释用星号或分号(*或;)来标明,开始于其它列的注释必须由分号开头。一个源语句可以包含四个域,一般格式如下:[label][:]instruction[;comment]数字信号处理DSP08工程设计讲座2、汇编编译指令的使用汇编编译指令用来完成以下任务:将代码和数据汇编进特定的段为未初始化的变量保留存储器空间控制展开列表的形式存储器初始化汇编条件块定义全局变量指定汇编器可以获得宏的特定库检查符号调试信息(四)目标板系统软件设计数字信号处理DSP08工程设计讲座1)程序段定义的汇编指令段定义汇编指令使部分源程序放入适当的段中。.bss在.bss段中为未初始化的变量保留空间.data确认.data段中的代码段。.data段中通常包含了初始化的数据(用.int/.word等定义)。.sect定义初始化了的带命名的段,并将紧接着的代码或数据并入该段。.text该段中包含了可执行的代码。.usect在一个未初始化的有命名的段中保留空间(四)目标板系统软件设计数字信号处理DSP08工程设计讲座使用格式和举例 .mmregs .bssx,20,1 .usect“sin-table”,100 …… .text LD#0,A ADDx,A,B …… .sect“cal-sin” LD#lk,A STLA,sin-table RET .data .word1,2,3,4 .int043h,ff08h除.int和.word外还有很多用于常量说明的汇编指令,如.byte/.field/.space/.bes/.fload/.long/.string/.xfload等,请看教程。(四)目标板系统软件设计数字信号处理DSP08工程设计讲座2)引用其它文件的汇编指令.copy/.include告诉汇编器开始从其它文件中读源语句。.def确认一个在当前模块中定义的且能被其它模块使用的符号。.global声明一个外部符号,使其它模块在连接的时候可以使用它。如果在当前段定义了该符号,那么该符号就可以被其它模块使用;如果在当前段中没有定义该符号,则是使用了其它模块定义的符号。前一种功能与.def相同,后一种功能与.ref相同。.mlib向汇编器提供一个包含了宏定义的文挡库的名称。当汇编器碰见了一个在当前库中没有定义的宏,就在.mlib确认的宏库中查找。.ref确认一个在当前段中使用但在其它段中定义的符号。(四)目标板系统软件设计数字信号处理DSP08工程设计讲座3)条件汇编指令.if/.elseif/.else/.endif这些指令告诉汇编器根据表达式的值条件汇编一块代码。.if表示一个条件块的开始,如果条件为真就汇编紧接着的代码。.elseif是表示如果.if的条件为假,而.elseif的条件为真,就汇编紧接着的代码。.endif结束该条件块。.loop/.break/.endloop这组指令告诉汇编器按照表达式的值循环汇编一块代码。.loopexpression标注一块循环代码的开始。.breakexpression告诉汇编器当表达式为假时,继续循环汇编;当表达式为真时,立刻转到.endloop后的代码去。.endloop标注一个可循环块的末尾。(四)目标板系统软件设计数字信号处理DSP08工程设计讲座4)汇编时的符号指令符号指令是使有意义的符号名与常数值或字符串相等同.asg

该指令规定一个字符串与一个替代符号相等

.asg“10,20,30,40”,coefficients .bytecoefficients.eval

计算一个表达式的值并把结果传送到与一个替代符号等同的字符串中

.evalx+1,x.set/.equ

这两条指令把一个常数值等效成一个符号,存放在符号表中且不能被清除。 Cont1.set0190h .intcont1,cont1*2,cont1*4其他符号指令:.label/.struct/.endstruct/.tag(四)目标板系统软件设计数字信号处理DSP08工程设计讲座5)其他汇编指令.align

使SPC对准1-word到128-word的边界。.algebraic

告诉编译器文件包含了算术汇编源代码。.end

结束编译。.mmregs

定义存储器映射寄存器的符号名称。.emsg/.mmsg/.wmsg用来定义自己的错误和警告提示信息。.newblock

对局部标号进行复位。.sblock

指定几段为一模块。.version

决定为之建立指令的处理器。输出列表格式指令:.drlist/.drnolist/.fclist/fcnolist/……(四)目标板系统软件设计数字信号处理DSP08工程设计讲座3、命令文件的编写命令文件的功能是说明目标文件如何连接到目标板,即装入存储器(或重定位)的方法。命令文件包括:1)连接文件说明: a.obj /*Firstinputfilename*/ b.obj /*Secondinputfilename*/ -oprog.out /*Optiontospecifyoutputfile*/ -mprog.map /*Optiontospecifymapfile*/(四)目标板系统软件设计数字信号处理DSP08工程设计讲座2)存储分配说明3)、段的分配与说明(四)目标板系统软件设计数字信号处理DSP08工程设计讲座3)命令文件举例a.objb.objc.obj /*Inputfilenames*/-0prog.out-mprog.map /*Options*/MEMORY /*MEMORYdirective*/{ RAM: origin=100h length=0100h ROM: origin=01000h length=0100h}SECTIONS /*SECTIONSdirective*/{ .text:>ROM .data:>ROM .bss:>RAM}(四)目标板系统软件设计数字信号处理DSP08工程设计讲座(五)工程应用注意事项电平转换定标流水线冲突指令效率......1、电平转换1)一般DSP有两个电源:CVCC、DVCC2)如果DVCC=3.3V,则DSP不能承受5V电平,不能驱动5VCMOS,但可以驱动5VTTL,3.3VTTL

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论