【毕业学位论文】MATLAB-DSP集成开发环境的研究与设计-信号与信息处理_第1页
【毕业学位论文】MATLAB-DSP集成开发环境的研究与设计-信号与信息处理_第2页
【毕业学位论文】MATLAB-DSP集成开发环境的研究与设计-信号与信息处理_第3页
【毕业学位论文】MATLAB-DSP集成开发环境的研究与设计-信号与信息处理_第4页
【毕业学位论文】MATLAB-DSP集成开发环境的研究与设计-信号与信息处理_第5页
已阅读5页,还剩64页未读 继续免费阅读

【毕业学位论文】MATLAB-DSP集成开发环境的研究与设计-信号与信息处理.pdf 免费下载

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

文档简介

天津大学硕士学位论文特申请学位级别:硕士专业:信号与信息处理指导教师:杨兆选20070501摘要传统的开发工具利用在已经不适合件人员需要利用高层次集成环境,来帮助他们摆脱底层设计的团扰。被算法研究人员所广泛应用。因此,应用拟,仿真,目标代码生成,运行和调试。利用系统的开发环境可以极大地节省耗费在编程上和修正错误上所需要的时间。论文工作针对合众达502板卡对成了针对502的件,参数界面,件,系统对论文所研究和设计的然论文中所研究的已经可以满足部分算法开发者的需求,即算法开发者可以应用后通过动生成可在502板卡上运行的代码。关键词:牛成代码SP a is T to a tO of by SP SP an of on SP an of SP is of 502 伍了文中特别加以标注和致谢之处外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为获得鑫鲞盘堂或其他教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。学位论文作者始体错 签字同期:02那7年月知学位论文版权使用授权书本学位论文作者完全了解盘洼盘堂 有关保留、使用学位论文的规定。特授权苤盗盘堂可以将学位论文的全部或部分内容编入有关数据库进行检索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学校向国家有关部门或机构送交论文的复印件和磁盘。(保密的学位论文在解密后适用本授权说明)学位论文作者虢随特签字7弓同导师签名: 钐皑签字同期:第一章绪论11论文工作的背景和意义第一章绪论数字信号处理技术在最近20年获得了广泛的应用。数字信号处理理论和算法是这项技术的一个核心,数字信号处理器是另一个核心。其中可编程的是传统开发理的同时还必须了解信号处理理论、算法,这无疑加长开发周期。为了适应现在件开发人员需要利用高层次集成开发环境,来帮助他们摆脱底层设计的困扰,以便集中精力探索算法,获得技术上的突破。因此开发一套能够集概念设计、模拟仿真、目标代码生成、运行和调试于一体的开发环境成为迫切需要。于是提出了对2 1传统的据要求,确定信号处理方案和算法,需要对算法进行原理或功能级的模拟。其中,在满足处理性能的前提下,对算法的可行性、系统的成本进行评估。第二步:根据算法,选择合适的实现方法具体内容就是选择一种合适的时候主要的工作就是针对这种作特点、进行算法模拟,考核所选算法在特定三步:一方面设计一方面编写常四步:在到程序和硬件电路都要满足。第五步见,对一章绪论122应用渐渗透到算和可视化工具,使用非常方便。用用用种是可以针对所有板卡的设。下面简要介绍一下这三种方法。【2】I 常用针对所有用一个新的数字信号处理算法应用于实际前,先用模拟结果满意时在把算法修改成目标标可以是种方法,优点在于代码效率高,缺点在于需要开发者花费大量时间编写程序,并在目标板上调试程序;而且与异表现在以下三个方面:(1)代码编写有误;(2)实时处理时,3)算法用在误差,而且 应用成针对嵌入式的一般板卡的代码,然后在种方法一般分为以下几步:(1)应用到正确结果。(2)然后用后设置参数,自生成针对一般嵌入式目标的代码。(3)把这代码移植到种方法的优点在于可以应用少算法开发者的工作,但是仍需要对23应用为研究人员的迫切需要目前,1l(及针对种方法优点在于使算法研究者摆脱了对底层硬件设计的困扰。算法开发者2第一章绪论可以应用后通过动生成可在502板卡上运行的代码。但缺点在于通过此种方法得到的代码效率会低很多,这种代码有可能只能可运行、可模拟可仿真的。只具有分析意义。但是随着些问题都可以解决。例如,现在最快的使只有510的效率,也能满足需要。这种方法的另一局限性在于只支持集成环境所支持的目标板,例如现在针对前只支持部分型号的以要想让这一开发环境支持所有型号的3论文的主要工作论文的主要工作是完成针对502的文完成了以下五项主要工作:I 应用语言编写块支持库将模拟502板卡上的硬件功能。2 编写将把编写根据编写将为在成对检验算法。14论文的组织结构第一章介绍了本文的选题背景,文的主要工作以及论文的组织结构。第二章综述了结合本文的实际情况,介绍了合众达公司的502的内部结构、内核模块以及片内外同设备,重点介绍了本方案中涉及的各个部分;同时还介绍了三章 主要介绍四章 主要设计针对502的B五章应用502板卡进行操作。系统的调试和测试过程,对调试过程中出现的问题进行分析,并说明解决方法和过程。最后,对程序的实时性能进行分析。4第二章 时别是随着信息技术的发展和互联网的普及,机顶盒(网络电话(个人数字助理(信息家电(发展如雨后春笋。“旧时王谢堂前燕,飞入寻常百姓家”。实时时号处理系统的复杂性和通信协议的可变性,决定了以可编程的快速制造和验证原理样机,加快产品上市时间。2软件的可编程性使得产品能够迅速跟踪新协议或标准。3通过软件更新,快速进行产品升级。22 如常用的积、相关和字信号处理中的数据操作具有高度重复的特点,特别是乘累加运算在滤波、卷积和相同时钟频率的通用微处理器相比,字信号算法的特点在很大程度上决定了面介绍】【41。(1)硬件乘法器通用微处理器实现乘法的时候需要一系列的移位和加法操作,而每个操作都要耗费一个时钟周期。为了提高运算效率,以在一个时钟周期内实现一次乘累加运算。这样一来,大大地提高了以说,乘累加单元是2)多个功能单元相比于其他应用,数字信号处理需要更大的计算量。为了实现并行操作,第二章型的术逻辑单元)和一个移位器。高性能3)高效的内存访问方式通用的微处理器通常采用冯诺依曼总线结构。该结构的程序空间和数据空间是统一的,对指令的访问和对数据的访问需要共享同一总线。所以,通用的微处理器一个时钟周期只能访问一次内存,或者读取指令,或者访问数据。为了提高访问存储器的效率,访问这两个空间的总线也是独立的。性能保证且,当需要访问高速缓存。这样,用来访问指令空间的总线可以让出来,作为另一条总线供4)专用的指令集是尽可能地利用处理器的硬件提高效率:二是处于节省成本的考虑,减少内存空间占用。处于这两点考虑,早期且比较短。这样的结果造成且相对复杂。这使得编译器的工作比较困难,编译出来的代码效率比较低。如果想提高效率,必须人工干预,手动优化代码。(5)流水处理(水技术使得两个或者更多不同的操作可以重叠进行。在处理器内,每条指令的执行分为取指令、解码、执行等若干阶段,每个阶段称为一级流水。流水处理使得若干条指令的不同执行阶段可以并行执行,因而能够提高程序的执行速度。除了上述几个特点之外,目前主流的高性能6)多触发指令结构(于上面的笫四条特点,造成了了解决这个问题,一些最新的反的是,每个周期发出并同时执行多条相对简单的指令。这使得前,有两种主要的方式来实现多触发指令:长指令字)和标量)。由于超标量处理方式决定如何并行执行指令的方式是动态的,也就是说是在代码运行的时候才确定。这样带来了一些如关键代码的运行时间是不确定的。所以,目前使用超标量方式的用该结构的长指令)可以包含几条简单的指令。与超标量方式不同的是,这些指令在编译的时候就确定了执行的方式和位置。这样的好处是于多触发指令结构需要更宽的寄存器宽度和总线宽度,功率也更高。所以,它适用在需要强大的计算能力而并不过多计较功率与成本的应用方面。(7)单指令多数据(式这种方式可以应用在多种指的是一条指令可以对多个操作数同时操作。例如,可以两个32然,当算法需要顺序处理数据的时候,3 502是合众达公司针对专门针对语音处理及其相关领域所设计的一款502上主要集成了1。231 502特征502是具有以下特点:1采用00现高速运算和大容量存储。2外扩大容量1M32位。3外扩大容量2M32位。4外扩大容量512K16位,基本配置256K16位。5外扩本配置为16K8位。6双路口标准可配置为中一路可做现符合标准的高速具有硬件加密功能,有效保护开发者知识产权。其功功能框图如图21所示:7第傩声藿竞雌立体声囊船翻惦柏朝妣船羽硝毽艏翮凇图21 2 502存储空间配置2321 储空问采用统一编址。整个寻址空间为16中余存储空间被映射到片外个编选子空间。32时,32:0】引脚状态决定。当:0=000B,或100;否则。问片外存储器,1:0、20位地址线A21:2】、4位字节使能线:0】、4位片选控制信号组成。配置情况如表21所示14】:表格21 片选配置8第二章E 一E A醍 E 8:123 窿322l 4M 23 8M 620翻胁广l嘲,卜。卜5502存储空间的映射如图222 32 502板上外扩存储器1扩大容量512本配置256K16位。2外扩大容量2M32位。9O畸D从_一幢瞄幛-口1一K,-”簟咖渤叫_l叁n睢哪叫II,I一0“H皓一一一一一一Mi;i;i;i;!;T一第二章扩大容量1M 此可知,这些外扩的存储资源需要映射到扩的存储资源多于以,外扩的部分存储资源需要复用4 别为中功能的选择由位为0:选择位为1:选择电复位时,该位的状态由过电平转换后直接给外设扩展总线的留给用户做外部扩展用。2于输入输出数字音频数据。3三种用途由502板上:0体选择如下:1)00X:接口外设扩展总线的)001:接口)110:接口外设扩展总线电复位时,这3位控制位为000,所以的上电复位时为接口异步串口l,这样0第二章41 阋卵f 是一种功能很强的同步串行接口,具有很强的可编程能力,可以直接配置成多种串口标准,直接与各种器件无缝接口。每个所示6】:第二章、-,】H I 墅登:I X2】I - I 2蛩一 -翻d fir _。_臣丑一鲥。一志孙,一 V氢 1 寸田c 匕V ,一,2协议包含:I 串行数据起始时刻:称为帧|一同步事件由位时钟采样帧吲步信号给出。2 串行数据位长度:串行传输的数据流达到设定的长度后,便结束本次传输,并等待下一个帧同步信号的到来,再发动另一次传输。3 串行数据传输速度:即每一个串行位的传输时间,由位时钟决定。25 部处理器通过它可以直接访问此,过换数据。和6。12第二章接口,直接扩展给用户使用【71。26 1 新速度更快。通道发展,变得越来越复杂。与此同时,市场对基于争也越来越激烈。因此对开发效率的要求也就变得越来越高。对开发者而言,要想在有限的开发时间内,充分发挥效的开发工具是至关重要的。码编辑工具、代码生成工具(包括编优化器、汇编器和连接器)、代码调试工具、仿真器以及性能分析工具(,与就是说,开发者在此之夕得开发人员不必再像过去一样自己配置理工程文件,然后通过命令行,逐个运行各种工具,完成代码的编译、连接、仿真和调试等任务。这就大大降低了开发者可以将精力集中在应用上,加快了62 括CC+编译器、汇编器、汇编优化器、连接器以及其他的配套工具,并且把这些开发工具都集成在大的方便了快了软件发开的进度。所示嘲【9】:从上图可以看出,CC+编译器CC+编译器对符合代码进行编译,生成汇编代码。编译器内又分为语法分析器(代码生成器(语法分析器的功能是对CC+代码进行预处理、语法检查,然后生成一个中间文件(作为外,语法分析器还对宏、文件包含(#条件编译等进行处理。的是缩短代码长度和提高代码执行效率,并生成进行的优化包括针对重新圈25变量分配给寄存器、打开循环和模块级优化(若干个文件组成一个模块进行优化)等。代码生成器利用语法分析器和为输出。代码生成器也可以直接对中问文件(行处理生成汇编代码。靠编译器的优化器选项启动具有4个不同的优化级别,分别对应选项00、02、_03,默认僮为02。在以对其进行设置。从一02第二章件流水是专门针对循环代码的一种优化技术,利用软件流水可以生成非常紧凑的循环代码,这也是汇编优化器汇编优化器的功能是对用户编写的线性汇编代码(行优化。线性汇编器是在得对用户在充分利用汇编器汇编器生成可重定位的机器语言目标文件(它所输入的汇编语言文件可以是可以是汇编优化器生成的汇编文件,还可以是由文档管理器管理的宏。4连接器连接器的作用是以可重定位的日标文件(为输入,输出可执行文件(明的程序和数据的存放地址,将目标文件中的代码段(数据段(未初始化段(及用户定义段定位到适当的地址空间。5其他工具代码牛成工具除了上面所述的基本工具之外,还有文档管理器、交叉列表工具、库管理工具、进制转化工具和们是一些辅助的管理和支持工具,能够为63 代码的效率一般情况下是汇编代码效率的70一80,这对于一般实时性要求不是很高的应用已经可以满足了要求了;对于高速实时应用,采用代码效率达到90以上,这也是目前最为流行的编程方法。一个最小的0】:1主程序文件c这个文件中包含一个函数作为连接命令文件:这个文件包含了个文件需要由开发者自己编辑产生。3个文件中包含中断服务表(中断服务表必须被安排在存储空间中地址000处。首先从地址0此地址000处应该是复位向量。程序从复位向量跳转到处,在c 中完成诸如初始化堆栈指针、页指针以及初始化全局变量等操作,最后调用函数,执行用户功能。除了这3个最基本的文件之外,程序一般还需要包含运行时支持库(芯片支持库(这两个库提供了对及芯片特性的支捌11】。264 件仿真和硬件仿真。软件仿真是指程序的执行完全靠运行在主机上的仿真软件模拟。程序运行的结果都是仿真软件“计算”出来的,不和任何硬件平台打交道。而硬件仿真需要用户具备目标板,仿真程序会利用开发系统将代码下载到序是在芯片上直接运行的,仿真软件只是把运行结果读出来。目标板需要通过仿真器和主机相连接。日前主要的仿真器有外,一些第三方公司也为件仿真的优点是无需目标板就可以进行软件调试,缺点是仿真速度慢,而且无法仿真某些片内外设,一般用于程序的功能验证;硬件仿真的优点是仿真速度和程序的实际运行速度一样,并且结果也一样。如果需要对程序做性能分析,一般需要进行硬件仿真。在件仿真使用件仿真使用在,这两种仿真模式都集成在据当前配置的不同,软件会选择相应的仿真模式。27本章小结本章首先讲述了502 后对502 点研究了在本系统中使用的部分,最后对6第三章 而言之,它是一个基于能直接从移植的和个性化的代码,并根据目标配置自动生成多种环境下的程序。利用它可加速仿真过程,提供知识产权保护,或者可在不同的快速原型化实时环境或产品目标下运行程序。其特点如下12】:1散时间和混合时间系统,包括条件执行系统和非虚拟系统。2实时目标无缝集成在一起,提供了极好的信号监视和参数调整界面。3用来生成事件驱动型系统的有限状态机代码。用户可以缩短开发周期,降低成本。硬件上运行动态系统的模型,同时还支持基于模型的调试。速还原化、形成完善的实时仿真解决途径和生成产品级嵌入式实时应用程序【2使用有必要回顾一下传统的开发过程是如何完成一个实际项目从系统设计到硬件实现的过程。传统的开发过程如图31所示,图中每个模块代表了一个工作阶段。在这样的环境下,完成一个开发项目通常要涉及到几个工作组,如算法设计组、软件开发组、硬件实现组和测试组等。每个阶段使用的工具也不尽相同。各个阶段的交流需要通过文档来完成,这样导致整个开发过程是顺序的,而不是迭代的。开发者在进行下一阶段前必须重新输入上一阶段的结果,这样很容易造成错误,而且发现错误的阶段越晚,则需要越多的代价和时间进行更正。当检测到错误或者测17第三章于这种开发过程不能进行跨阶段重复设计,必须重新从头开始设计和实现,从而造成开发周期太长而不能满足市场对产品的快速要求。传统软件设计砸程随着社会的进步和发展,市场对产品的需求呈现了多样性和快速性的起趋势,这就使企业面临多样性的需求和快速开发之删的矛盾。传统的开发过程由于具有上述缺点,已不能满足市场的要求。园而现代企业对并行工程提出了要求。从这个角度而言,可以使用统一工具完成整个开发过程,从而消除了通过文档进行交流的可能。而且,使用图3种螺旋型设计过程可实现各个阶段之问快速的迭代过程,使工程师将集中精力在具体的创造性工作上去。要做到这一点,必须使用可以很容易实现从一个阶段过渡到另一个阶段的工具,例如要求控制系统工程师或者信号处理工程师可直接在快速原型化系统阶段对算法进行校验。这种螺旋型的设计过程从本质上更接近于并行的工程开发过程采用这种开发过程可在开发阶段一开始就将早期的工作模型提供给校验组合产品组,并使他们参与到整个开发过程中,有助于缩短开发周期和造价。使用如系统控制工程师可以专注于控制规律和参数,嵌入式工程师可以专注于硬件和底层软件的系统实现,至于其他繁琐的工作则由动完成。这就是使用三章 1 概念上讲图33所示。采用型的产品流程首先从后在仿真过程中,用户可以使用得到较满意仿真结果后,用户可将快速原型化目标与用户的物理系统连接在一起。用户可使用成对系统的测试和观测。生成模型后,用户可使用19第三章成对系统测试和观测。生成模型后用户可以用使用将其下载到目标系统当中。最后使用户可以在模型运行在目标环境下的同时进行实时的监视和调整参数。口耐 RI速原型化目标和嵌入式目标。快速原型化目标生成的代码支持监视和参数调整,而嵌入式目标生成的嵌入式代码是高度优化的,并可以配置在产品的系统上的。用户可以在嵌入式代码中加入专门的入121程序来监视信号和调整参数【17】。从功能上讲,自动地从创建过程:可扩展的程序创建过程使用户产生自己的产品级或快速原型化目标。3部模式使部模式使用户将多目标支持:使用户可以针对多种环境创建程序,包括用实时目标和嵌入式实时目标为开发个性第三章了捆绑目标外,实时视窝目标或者者中小容量的产品级目标。5快速仿真:使用函数目标或者快速仿真目标,用户能够以平均532 时降低费用,缩短投向市场的时间并提高质量。传统的开发过程倾向于劳动密集型,采用低劣的工具经常导致缺乏重要性的软件项目的泛滥。使用户可以将经历集中在设计上,并且使用更少的人力在更短的时间内产生更好的效果。为实现上述目标,1基于)可牛成不同类型的优化和个性化的代码。2)支持括)所生成的代码和处理器无关。4)支持任何类型的单任务或多任务操作系统,|一支持“裸板”环境。5)使用够对所生成的代码进行个性化。6)通过以将用户手写代码嵌入到生成代码中。2基于模型的调试支持1)使用而对模块代码的运行情况进行监视,而不必使用传统的)通过使用户可通过改变模型中模块参数时,新的参数值下载到所生成代码中并在目标机上运行,对应的目标存储区域也同时被更新。不必使用嵌入式编译器的调试器执行上述操作,与)代码校验。用户可以从模型中产生代码并生成单机可执行程序,可对所生成代码进行测试,生成包含执行结果的)所生成代码包含了系统模块的标识符,有助于辨识原模型中的模块。3)支持按需要实现信号和模块参数与外部环境21第三章具有加速仿真功能。1)通过生成优化的可执行代码,支持多目标环境。1)基于极大地缩短设计周期,实现重复性设计的快速转向。2)助于用户开发自己的目标环境。3)从些目标能将快速、高质量和低造价的)支持多种第三方硬件和工具。6扩展的程序创建过程。1)允许使用任何类型的嵌入式编译器和链接器,使其可与)可将手工编写的监管性或支持性的代码简单地链接到所生成的目标程序中。7提供)能牛成具有个性化、可移植和可读的接嵌入到嵌入式产品环境当中。2)使用内嵌化的牛成代码更为有效。3)支持软件在回路中的仿真。用户可生成用于嵌入式应用系统的代码,同时和还可以返回到)提供参数调整和信号监视功能,可以很容易地对实时系统上的代码进行访问。34 产品级的嵌入式实时应用领域。2快速原型化。3 实时仿真。4生成完善的实时的解决途径。5支持产权保护。第三章速仿真。其中生成完善的实时解决途径正是本论文所应到的重要一点。在这里先简单介绍一下。详细部分将在第四章阐述。户可以以发用于快速原型化或者嵌入式系统完善的实时解决途径。目前支持多种类型的控制及数字信号处理应用,其中支持的目标环境下的嵌入式持的目标系统处理器包括中论文要做的5 适用于不同的执行环境或目标。形化的编译器”,可支持以下4种代码格式113】。函数力兀速器代码格式(S这种代码格式为生成的代码遵守函数应用程序界面中的规定。2实时代码格式(实时代码格式非常适用于快速原型化过程,支持信号

温馨提示

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

评论

0/150

提交评论