版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、1、 TI 公司 DSP 分类及代表产品简介TI 的 DSP 经过完善的测试出厂时,都是以 TMS320 为前缀。在众多款型DSP 中, TI 把市场销量好和前景看好的DSP归为三大系列而大力推广,TI 也称之为三个平台。TMS320C6000 平台,包含定点C62x 和 C64x 以及浮点C67x。其追求的是至高性能,最近新推出的芯片速度高达1GHZ,适合宽带网络、图像、影像、雷达等处理应用。TMS320C5000 平台,包含代码兼容的定点C54x 和 C55x。其提供性能、外围设备、小型封装和电源效率的优化组合,适合便携式上网、语音处理及对功耗有严格要求的地方。DSP 的传统设计往往是采取
2、主从式结构:在一块电路板上,DSP 做从机,负责数字信号处理运算;外加一块嵌入式微处理器做主机,来完成输入、控制、显示等其他功能。 为此, TI 专门推出了一款双核处理器OMAP , 包含有一个ARM 和一个 C5000 系列DSP, OMAP 处理器把主从式设计在芯片级上合二为一,一个典型的应用实例为诺基亚手机。TMS320C2000 平台, 包含 16 位 C24xx 和 32位 C28xx 的定点DSP。 C24xx 系列市场销量很好,而对 C28xx 系列,TI 认为很有市场潜力而大力推广。C2000 针对控制领域做了优化配置,集成了了众多的外设,适合逆变器、马达、机器人、数控机床、电
3、力等应用领域。另外, OMAP 系列: OMAP 处理器集成ARM 的命令及控制功能,另外还提供DSP 的低功耗,实时信号处理能力,最适合移动上网设备和多媒体家电。其他系列的DSP 曾经有过风光,但现在都非TI 主推产品了,除了C3X 系列外,其他基本处于淘汰阶段,如:C3X 的浮点系列:C30, C31 , C32 C2X 和 C5X 系列: C20, C25, C50, 每个系列的DSP 都有其主要应用领域。2、 简述实时信号处理的含义。要求在限定的时间内将采集的数据在现场处理完成并得到一定的结果,即信号处理的时间要小于或者等于下一批数据 输入时间,有时甚至要求在特定的时间、地点来完成信号
4、处理。3、 数字信号处理中最典型的运算有哪些?离散傅里叶变换(DFT)和卷积是信号处理中两个最基本也是最常用的运算。核心算法是构成多数数字信号处理系统的基本模块, 包括:FFT,向量加,向量点积,滤波器,控制(转移、压栈、出栈、位操作)4、 C6000 系列 DSP 为什么适合与数字信号处理的需要?从DSP 的 cpu 结构、总线结构、存储器结构、专用功能单元、指令系统等方面阐述。TMS320C6000 产品是美国TI 公司于 1997 年推出的dsp 芯片,该DSP 芯片定点、浮点兼容,其中,定点系列是TMS320C62xx 系列,浮点系列是TMS320C67xx 系列。CPU 结构: 1.
5、定点/浮点系列兼容DSP 2.具有VelociTITM 先进 VLIW 结构内核3.具有类似RISC 的指令集4.片内集成大容量SRAM ,最大可达8bit 6.内置高效率协处理器7.片内提供多重集成外设(不同芯片的资源不同)等多种功能结构,满足数字信号处理的精度及效率需要,另外其CPU 用了哈佛结构,程序总线和数据总线分开,取指令与执行指令可并行,时效性提高。总线: cpu 内部程序总线和数据总线分开,取指令与执行指令可并行。但偏外的存储器和总线都不分开。C6000 系列DSP 才用了新的VILW 结构,片内提供8个独立的运算单元,256 位的程序总线,2 套 32 位的数据总线和1 套 3
6、2 位的 DMA 专用总线。灵活的总线结构大大缓解了数据瓶颈对系统性能的限制。存储区:C6000 系统 dsp 内部集成有1-8bit 的程序 RAM 和数据 RAM ,对于有些片种,这些存储器还可以配置为程序Cache 或者数据Cache 来使用。专用功能单元:C6000 片内有 8 个并行的处理单元,分为相同的两组,包括2 个乘法器和6 个 ALU 。这 8 个功能单元最多可以在1 个周期内同时执行8条 32 位指令,芯片最高时钟频率为300MHz( 67xx 系列) ,且内部8 个处理单元并行运行时,其最大处理能力可达到1600MIPS。郭功能单元的并且操作使得DSO 在相同时间内能够完
7、成更多的操作,提高了程序的执行速度。指令系统:DSP 的体系结构采用超长指令字(vliw )结构,单指令字长为32 位,指令包里有8 条指令,总字长达到256 位。执行指令的功能单元已经在编译时分配好,程序运行时通过专门的指令分配模块,可以将每个256 为的指令包同时分配到8 个处理单元,并有8 个单元同时运行。综上看出,C6000 DSP 适合数字信号处理的需要。5、 简述 C6000 系列定点DSP 的指令流水线结构。指令流水线的工作方式,即一条指令的执行分为若干个阶段完成,就像经过工厂里的生产流水线上的一道道工序一样,而同时,在流水线的其它阶段又分别有其它的指令在顺序地执行着。C6000
8、 中指令均按照取指(Fetch)译码(Decode)和执行(Execute) 3 个流水线运行,每一级又包含几个节拍,如下图所示C6000 系列定点DSP 指令流水线结构:6、 简述 C6000 系列 DSP CPU 有那几个功能单元,每个功能单元的作用是什么?4 个主要单元,指令缓冲单元I ,程序流程单元P,地址流程单元A,数据计算单元D,指令缓冲单元I 由指令队列和指令译码器构成,接受程序指令代码,放到IBQ 中,指令译码器从指令缓冲队列中取指令进行译码,译码后数据分别送到其他三个单元中处理。P 单元 由程序地址产生逻辑电路和一组寄存器组构成,主要功能产生所有I 单元读取指令所需的程序地址
9、、控制指令读取顺序。A单元 :功能产生读写数据空间的地址;D单元 :包括了CPU的主要计算部件,完成高效的计算功能。CPU 结构分三个机构:程序读入及指令分配、译码机构; 程序执行机构:两个数据通路,8 个功能单元等,其中 .L1 、 .L2 、 .S1 、 .S2 是主要的算术逻辑单元,.M1.M2 是乘法器,主要完成乘法运算,.D1.D2 是数据寻址单元,唯一能产生地址的功能单元。指令测试、仿真端口及控制逻辑。7、 何谓线性汇编?并行汇编?线性汇编语言主要用途是编写需要优化的算法,其代码不需要给出汇编代码必须指出的所有信息,可对信息选择,也可由汇编优化器确定。其文件使用“ .sa, ”扩展
10、名仅对指定的代码段进行优化,指定代码段外的代码被拷贝为输出“ .asm”文件,线性汇编过程可以:传递参数,返回结果,使用符号变量,不考虑流水线问题。并行汇编: 它是直接采用DSP中各个功能单元作为操作对象,根据TI 规定的汇编语言书写规范要求来完成程序的编写,在程序编写时要充分考虑寄存器的使用、各个指令的时延以及指令间的并行关系。根据尽量使软件流水满负荷执行的规则,合理的书写并行汇编指令,能够极大的提高程序执行的速度,充分发挥出DSP的优势。8、 何谓超标量处理器?何谓超流水处理器?何谓超标量超流水处理器?(理解)超标量是通过内置多条流水线来同时执行多个处理器,其实质是以空间换取时间。超流水是
11、通过细化流水、提高主频,使得在一个机器周期内完成一个甚至多个操作,其实质是以时间换取空间。超标量超流水处理器则是指在超标量和超流水两种技术间,找到一个最佳结合点,这样既能解决操作的时间问题,又能满足处理器对空间的要求。9、 何谓软件流水优化?软件流水优化有什么专用?DSP 适合对大量数据做相同的运算,相同的工作放在一起完成,形成循环,便于软件流水。软件流水:是一种重要的指令调度技术,它通过编排循环指令,重叠地执行不同的循环体来提高ILP 。而软件流水优化正是利用DSP 处理机指令级的并行性,满足各种资源限制,实现资源合理分配、充分使用算法到DSP结构的映射,使单周期内尽可能多的功能单元在执行指
12、令。专用 :产生高性能循环代码,执行并行指令,填充延迟间隙,功能单元使用最大化,由开发工具产生,由编译器选项-o2 或 o3 引入,汇编优化器/C 优化器产生,循环中工作太多,导致资源不够(如:寄存器不够分配),则可以拆分循环或展开循环。消除冗余循环。充分利用指令局部性和数据局部性的特点,推测执行。十、数字信号处理程序优化分为哪几个层次?优化的步骤是什么?每个步骤有哪些优化措施?(注:不知道题目问的步骤是指优化的总步骤,还是指每个层次优化的步骤,故答案不全面)三个层次:1.C 语言级的优化2. 线性汇编优化3. 手工汇编优化(优化步骤:1 、用 C语言实现算法并验证写2、 C6x线性汇编代码3
13、、画相关图4、分配功能单元和寄存器5、建编排表 6、将编排表转换为C6x汇编代码)1. C 语言级的优化: 使用编译选项、软件流水、内联函数和循环展开等方法来对代码进行优化,以提高代码执行速度,并减小代码尺寸。2. 线性汇编优化:写线性汇编程序,然后用汇编优化器进行优化,生成高性能的代码。使用 C6000 的剖析工具(ProfilingTools)可以找到代码中最耗费时间的部分,就是这部分需要用线性汇编重写。需要知道:汇编优化器伪指令、影响汇编优化器行为的选项、TMS320C6000 指令、线性汇编源语句语法、指定寄存器或寄存器组、指定功能单元、源代码注释等。3. 手工汇编优化:编写C 程序并
14、不经过任何优化,使用-On 优化选项,需要优化的代码转换为线性汇编,手工汇编并优化。优化措施:并行指令,填充延迟间隙,展开循环,存取带宽优化(使用LDW/LDDW ) ,软件流水等。十、 CMD 文件的作用是什么?CMD 是连接命令文件,包含了DSP 和目标板的存储器空间的定义以及代码段、数据段是如何分配到这些存储器空间的。 是 32位的dos命令提示符,有中文提示;而 command 是 16位的 dos命令提示符,全是英文.区别就是:一个是中文帮助,一个是英文帮助,功能没有多大区别.十一、以实验一为例简述上机实验步骤。实验步骤1、开机:进入Win XP 系统,双击桌面上CCS3.3 图标,
15、选择openDM6437 Little Endian Simulator , 进入 DSP 软件集成开发环境,或者选择open c6437 510 plus 进入 DSP硬件集成开发环境(使用实验箱做实验,先连接好实验箱及仿真器等方可开机)。2、编辑文件:选择Source File 菜单,编辑好C 程序文件(*.c) 、汇编程序文件(*.asm) 、头文件(*.asm)及链接命令文件(*.cmd ) ,并保存在D 盘 DSPLABLAB1 文件夹中。3、创建工程项目:选择Project New,出现对话框,在project 栏(第一行)填写项目名称,并选定项目的位置( D:DSPLABLAB1
16、 ) ,然后单击“完成”按钮,这样就新建了一个工程项目,该项目用来管理各种文件,便于编译、调试。注意:路径、文件夹、文件名中不能含有汉字,且第一个字母不能是数字。4、添加文件:将编辑好的三个文件添加到刚建好的工程项目中,选择Project Add Files to Project ,出现一个对话框,选择文件夹(D:DSPLABLAB1 )并选中C 文件、汇编程序文件、头文件、cmd 文件,单击“打开”按钮就将这四个文件添加到该工程中了。5、编译汇编程序:选择Project Compile File,分别编译主程序及头文件,修改程序中的错误,再编译,直到无错误出现。编译后的文件为OBJ 文件。6
17、、链接:选择Project Build 或 Rebuild All ,链接各OBJ 文件,若有错误出现应修改错误(错误应在cmd 文件中) ,再链接,直到无错误出现。链接生成可执行的out文件。7、下载out 文件:选择Program,在 debuge 文件夹中选中out 文件(文件名与工程项目同名),单击“打开”按钮,这样 out 文件就下载到DSP 中了。调试:选择debuge Step Into 单步执行代码或者选择debuge Run 连续运行代码(debuge Halt 停止运行)。单步运行或运行结束后选择View Memory 和 View Registers CPU Regist
18、ers/Peripheral Regs 查看存储器和寄存器中的数据。如果最后的结果有错误,则应查找原因修改程序并重复步骤5 步骤8,直到结果正确为止。、并行汇编程序、软件流水程序。十二、编写矢量点积的C 程序、线性汇编程序(画出相关图)1、 C 语言代码int DSP_dotprodc( const short *m, const short *n, int count) int i;int prod, sum = 0;#ifndef NOASSUMEZEROA_sumZEROB_sumSHRUA_count, 2,A_iSUBA_i,2,A_i.mptrA_m,x + 0,8.mptrB_n
19、,x + 8,82 线性汇编代码.text.global _DSP_dotprodsa_DSP_dotprodsa: .cproc A_m, B_n, A_count.no_mdep.reg A_reg1:A_reg0, B_reg1:B_reg0.reg A_prod, B_prod, A_sum, B_sum, A_i.trip 8_nassert(int)m % 8 = 0);_nassert(int)n % 8 = 0);_nassert(int)m % 16 != (int)n % 16);#pragma MUST_ITERATE(4,4);#endiffor (i = 0; i &
20、lt; count; i+)prod = mi * ni;sum += prod;return sum; loop:/* Double-word aligned*/* Double-word aligned*/* In different banks*/* count >= 4, mult of 4*/LDDW .1*A_m+,A_reg1:A_reg0LDDW .2*B_n+,B_reg1:B_reg0DOTP2A_reg1,B_reg1, A_prodDOTP2B_reg0,A_reg0, B_prodADDA_sum,A_prod, A_sumADDB_sum,B_prod, B_
21、sumBDECloop,A_iADDA_sum,B_sum, A_sum.return A_sum.endproc.end3、并行汇编代码.sect ".text:_dotprod".global _DSP_dotprod64_DSP_dotprod64:*=SYMBOLIC REGISTER ASSIGNMENTS = *.asgA4,A_m; pointer to vector m.asgB4,B_n; pointer to vector n.asgA6,A_count ; number of elements in each vector.asgA0,A_i; loo
22、p count.asgA16,A_sum ; partial sum a.asgA17,A_prod ; sum of products ai*bi+ai+1*bi+1.asgB16,B_sum ; partial sum b.asgB17,B_prod ; product sum ai+2*bi+2+ai+3*bi+3.asgA9,A_reg1 ; elements ai+3 ai+2.asgA8,A_reg0 ; elements ai+1 ai.asgB7,B_reg1 ; elements bi+3 bi+2.asgB6,B_reg0 ; elements bi+1 bi.asgA4,
23、A_sumt ; total sum a + b returned to caller* = PIPE LOOP PROLOG = *B.S2loop; prime loop|LDDW.D2T2*B_n+,B_reg1:B_reg0; load bi+3.bi|LDDW.D1T1*A_m+,A_reg1:A_reg0; load ai+3.aiB.S2loop; prime loop|LDDW.D2T2*B_n+,B_reg1:B_reg0; load bi+3.bi|LDDW.D1T1*A_m+,A_reg1:A_reg0; load ai+3.ai|SHRU.S1A_count,2,A_i; calc loop count|ZERO.L1A_prod:A_sum|ZERO.L2B_prod:B_sumB.S1loop; prime loop|A_i LDDW.D2T2*B_n+,B_reg1:B_reg0; load bi+3.bi|A_i LDDW.D1T1*A_m+,A_reg1:A_reg0; load ai+3.ai|ZERO.L1A_prod:A_sum; added for branch-|ZERO.L2B_prod:B_sum; target-not-spanA_i BDEC.S1loop,A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二四年度亿嘉钢管土地使用续租及配套设施改造合同3篇
- 二零二四年企业信息系统安全审计合同
- 2025年度铝合金散热器研发与销售合同4篇
- 2025年度科技项目代办申报合同参考3篇
- 二零二五版影视作品版权转让合同汇编
- 汕头2025年度消防安全管理合同
- 2025年度技术咨询服务合同纠纷原告代理词4篇
- 2025年度车库停车场安全责任合同模板4篇
- 二零二四年度制造业内部设备承包合同书3篇
- 二零二五年度绿色能源项目技术咨询与服务合同2篇
- 无人化农场项目可行性研究报告
- 《如何存款最合算》课件
- 社区团支部工作计划
- 拖欠工程款上访信范文
- 《wifi协议文库》课件
- 中华人民共和国职业分类大典是(专业职业分类明细)
- 2025年新高考语文复习 文言文速读技巧 考情分析及备考策略
- 2024年海口市选调生考试(行政职业能力测验)综合能力测试题及答案1套
- 一年级下册数学口算题卡打印
- 2024年中科院心理咨询师新教材各单元考试题库大全-下(多选题部分)
- 真人cs基于信号发射的激光武器设计
评论
0/150
提交评论