DSP技术培训资料_第1页
DSP技术培训资料_第2页
DSP技术培训资料_第3页
DSP技术培训资料_第4页
DSP技术培训资料_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1、1) TIDSP综述DSP-数字信号处理器,安防行业用到的:2001年PhilipsTriMedia1300->TriMedia1700>NXPTIDm62002003年DM642(DM641,DM643)DM642()->DM648(DM647)Davinci:DM6446->DM6467->DM8127(DM8147/DM8168)DM6437->DMVA1->DMVA2DM355->DM365>DM368->DM385集成度是影响市场成败的关键因素(给我们产品开发的提示),因为集成度直接影响开发周期和产品成本,在集成度相当的情况

2、下,功耗也很关键(稳定性是至关重要的)。开发工具也很重要(用户体验很关键)。DM64x+构架Figure1-1.TMS320C64xDSPBlockDiagramNote:1"归instructiondispatchunifhasadvarccdinstructionpacking.Figure1-2.TMS320c64x+DSPBlockDiagramFigure2-1.TMS320C64)(/C64x+CPUDataPathsST1b<.trcfOdd哈0呻审Alg,uftA(A1hAS.AS.Mil今9ri出i1加穹Ng栉4ksr§rc4DatapathADat

3、apathBLDlbMSB整LSB32MSBST2S4-ST5fr33LSBjt1.OnMunit.dst2Is32MSBNOnMunitdsHIs32LSB3OnC64xCPUMunit,sre2&32bits;ci-iCt-xCPU,才unrsrcl:i:,b-ci:54.On.Land.Sunits,odddstconnoctstooddregister6中品andeven。字Fconnectstoevenreg由terfiles寄存器a)、计算单元、交叉通道、内存数据读取与存储、指令结构.asm,DWORD,指令包,软件流水线-运算单元相关并行DCBAEDCBAFED'

4、CBAFEDCBSaoNotf4KB6fS?Mi也1sm?M2src2a.ContraH同却lf»rsrvTdatl3Seo-MqE1&QQ-l4aE2wf与才MJ的Mvp*金别府n曲TX2门odtf施S1MdMF必”illsrcrSfKFCACHE结构1,EvanOddi-|-II:'regtrior(itaBnwB1B0.82.IB1,B3.B4.03O|BS.町1Sac14a婚3Sflfrhalt*hk通1SacNat&4See附o晅4条件寄存器,intrinscis函数指令延时DelaySlotsFEDCintrinscis函数ABS2int_abs2

5、(intsrc);DOTP2int_dotp2(intsrc1,intsrc2);2) C语后开发规则:标准C语言,支持部分C+预处理伪指令CODE_SECTIONDATA_ALIGNDATA_MEM_BANKDATA_SECTIONMUST_ITERATESTRUCT_ALIGN#pragmaCODE_SECTION(fn,"my_sect”)Intfn(intx)returnx;#pragmaMUST_ITERATE(8,64,8)段已初始化的段.cinit段:包括变量初始值和常量值.const段:包括字符串文字、浮点常量和声明为const的数据(没有同日声明volatile).

6、switch段:switch语句跳转表.text段:包含所有可执行代码未初始化的段.bss段:为全局变量和静态变量保留.far段:为声明为far的全局变量和静态变量保留.stack段:系统栈,用于函数调用参数传递和为局部变量分配空间.system段:为动态存储空间分配保留的存储区(malloc)C/C+系统栈默认0x400字节(1024)可通过-stack重新指定大小-stack0x2000动态存储器分配支持malloccallocrealloc动态分配存储区放在.system段中,默认大小为0x400。可通过-heap重新指定大小-heap0x1000000/*16M系统内存*/数据类型in

7、t和longunsignedlong不同longlong和double,寄存器对有符号数和无符号数的表示方式8位有符号SSSXXXXXXX31708位无符号00XXXXXXXX317016位的类似,有符号在15位以上是符号,否则是064位有整数,奇数寄存器的最高位是符号位,其他位包括偶数寄存器的所有为为数据位位域,压缩在一个字节中的多个对象,大小可从1bit到32bit不等,但不能超过32bitstructintA:7intB:10intC:3intD:2intE:9x;大端终结(BIGENDIAN)MSLSAAAAAAABBBBBBBBBBCCCDDEEEEEEEEEXAAAAAAABBBB

8、BBBBBBCCCDDEEEEEEEEEX小端终结(LITTLEENDIAN)MSLSXEEEEEEEEEDDCCCBBBBBBBBBBAAAAAAABAAAAAAABBBBBBBBEEDDCCCBXEEEEEEE寄存器使用规范在C/C+环境下,对寄存器的使用是有严格规范的,若要在C开发中嵌入汇编语言,就必须严格遵照这些规范intfunc1(inta,intb,intc);A4A4B4A6intfunc2(inta,floatb,int*c,structAd,floate,intf,intg);A4A4B4A6B6A8B8A10结构体实际传的是地址,并由被调用函数复制一份。intfunc3(i

9、nta,doubleb,floatc,longlongd);A4A4B5:B4A6B7:B6structAfunc4(inta);A3A4如果返回结构体,则使用A3保存结构体的指针在父函数调用子函数时,如果A0A9,B0B9,A16A31,B16B31这些寄存器的值还需要使用,则必须需要父函数把他们保存在栈中。B14-数据页指针B15-栈指针A15-帧指针,每帧128KB3返回地址寄存器,如果被调用函数还要调用其他函数,则必须将其保存在栈A4或A5:A4返回值不讲解汇编函数语法规则SIMD指令介绍常用指令讲解加减类运算:ABSABS2ADDSUBADD2SUB2ADD4SUB4AVG2AVGU

10、4SUBABS4SADDSADD2SADDUS2SADDU4比较类运算:CMPEG2CMPEG4CMPGT2CMPGTU4MAX2MAXU4MIN2MINU4位运算:BITC4DEALSHFLRTOLSHLMBSHRMBSHR2SHRU2XPND2XPND4SSHVLSSHVR打包解包类运算:PACK2PACKH2PACKH4PACKL4PACKHL2PACKLH2SPACK2SPACKU4SWAP2SWAP4UNPKHU4UNPKLU4乘法(点积)类运算:MPYMPYUSMPYSUMPYU.MPY2MPYHIMPYLIMPYHIRMPYLIRMYPSU4MPYU4DOTP2DOTPN2DOTPNRSU2DOTPRSU2DOTPRSU4DOTPU4在C中的用法-例子3) CCS使用简单的工程.lib简单的工程.out开发板附带的工程调试方法CCS中的调试-debug状态,为优化算法调试-最好在Windows下用VCCB等优化调试->

温馨提示

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

评论

0/150

提交评论