050 ADSP2181汇编器及仿真器的设计
                    联系方式 Email: lw510@qq.com      QQ: 497053418       MSN: lw510@qq.com
以下仅为该设计的基本说明介绍,若需要完整的设计和论文,建议您购买本设计.
050 ADSP2181汇编器及仿真器的设计样本
(样本只提供该系统的基本情况介绍,若需要完整的设计和论文,建议您购买本系统,凡是购买本站系统的,本站均根据您的要求,把系统上的开发信息,题目等修改成符合您的要求)
 

本设计包含内容:源代码+毕业论文
论文大概:
 
 
 

摘  要

数字信号处理相对于模拟信号处理有很大的优越性,随着人们对实时处理要求的不断提高和大规模集成电路技术的迅速发展,数字信号处理技术也发生着日新月异的变革。数字信号处理的主要对象是数字信号,且是采用运算的方法达到处理目的,基本上可以分成两种实现方法,即软件实现方法和硬件实现方法。软件实现方法指的是按照原理和算法,自己编写程序或者采用现成的程序在通用计算机上实现,显然用软件方法实现比较灵活,适合于科研和教学。我们将要设计的是一个交叉汇编器。它运行在pc机上,为基于AS-218x数字信号处理器的汇编语言进行汇编。以及对于研究计算机和运行在他们上面的程序来说是一个有用的仿真器。现采用的用汇编器及仿真器实现的方法,是针对约定的汇编语言语法规则,提出并实现了一种采用一边扫描的汇编算法,在词法分析与语法分析的模块中,介绍了两个在编译器的设计过程中经常会用到的软件:Lex与YACC的使用。在符号表处理模块的设计中,提出了一些常见的表搜索的方法。
关键词:汇编器  仿真器  词法分析器  语法分析器
 
 
 
 
 
 
 
 
 
 

Abstract

The arithmetic figure signal handles opposite in imitate the signal handles very big and superior, handles to the solid hour along with people the request increases continuously with the large-scale integrated circuit technical and quick development, the arithmetic figure signal handles the technique also takes place the continuous changes and improvements replaces.The main object that arithmetic figure signal handles is an arithmetic figure signal, and is an adoption to carry the method that calculate attains to handle purpose, the basic top can be divided into two kinds of realize method, then the software realizes the method realizes with the hardware method.The software realizes method is according to principle with calculate way, oneself the plait write the procedure or adopt the ready-made procedure in the in general use calculation on board realize, realizes with the software method obviously more vivid, suitable for section  with teaching.We will design of is a crosses to edit collected materials the machine.It circulates in the pc on board, for according to the digital signal processor of x AS-218 edits collected materials the language proceeds to edit collected materials.And imitate study calculator with circulate on they procedure to say is a very much the true machine.Adopt now of using and editting collected materials machine and imitate the true method that machine realizes, is to aim at the engagement edit collected materials the language phrasing rule, putting forward and realizes a kind of adoption scan of edit collected materials the calculate way, in phrase method analyze and analytic mold in phrasing piece, introduced two software for in design process that edit and translate machine would usually usings:Lex and YACC usage.In sign form handle the design of the mold piece, Put forward the some familiar the method that watch search for.

Key phrase:        assembler               phrase  analyze  machine
Emluator               grammar analyze  machine
 
 
 
 
第一章 概 述
§1. 数字信号处理器技术
 
 数字信号处理相对于模拟信号处理有很大的优越性,表现在精度高、灵活性大、可靠性好、易于大规模继承等方面。随着人们对实时处理要求的不断提高和大规模集成电路技术的迅速发展,数字信号处理技术也发生着日新月异的变革。
§1. 1. 数字信号处理器发展
 实时数字信号处理技术的核心和标志是数字信号处理器。自第一个微处理器问世以来,处理器技术水平得到了十分迅速的提高,而快速傅立叶变换等实用算法的提出促进了专门实现数字信号处理的一类微处理的分析和发展。数字信号处理有别于普通的科学计算与分析。它强调运算处理的实时性,因此DSP除了具备普通处理器所强调的高速运算和控制功能外,针对实时数字信号处理,在处理器结构、指令系统、指令流程上做了很大的改动,其结构特点如下:
•• DSP普遍采用了数据总线和程序总线分离的哈佛结构和改进的哈佛结构,比传统的冯•诺依曼结构有更高的指令执行速度。
• DSP大多采用流水线技术,即每条指令都由片内多个功能单元分别完成取指、译码、取数、执行等多个步骤,从而在不提高时钟频率的条件下减少每条指令的执行时间。
• 片内有多条总线可以同时进行取指令和多个数据存取操作,并且有辅助寄存器用于寻址,它们可以在寻址访问前或访问后自动修改内容,以指向下一个要访问的地址。
• 针对滤波、相关、矩阵运算等大量乘法累加运算的特点,DSP大都配有独立的乘法器和加法器,使得同一时钟周期内可以完成相乘、累加两个运算。
• 许多DSP带有DMA通道控制器,以及串行通信口等,配合片内多总线结构,数据块传送速度大大提高。
• 配合中断处理器和定时控制器,可以很方便地构成系统。
• 具有软、硬件等待功能,能与各种存储器接口。
§1. 2. 数字信号处理器的应用领域
随着DSP性能的迅速提供和成本价格的大幅度下降,DSP的应用范围不断扩大,成为当前产量和销量增长最快的电子产品之一。DSP应用几乎遍及整个电子领域,常见的典型应用有:
1.通用数字信号处理
数字滤波、卷积、相关、FFT、希尔波特变换、自适应滤波、窗函数、波形发送等、
2.通信
高速调制解调器、编/译码器、自适应均衡器、传真、程控交换机、蜂房移动电话、数字基站、数字留言机、回音消除、噪声抑制、电视会议、保密通信、卫星通信、TDMA/FDMA/CDMA等多种通信方式。随着网络的迅猛发展,DSP又在网路管理/服务、信息转发、IP电话等新领域扮演着重要的角色,而软件无线电的提出和发展进一步增强了DSP在无线通信领域的应用。
3.语音处理
语言识别、合成、矢量编码、语言信箱。
 4.图形/图象处理
 三维图像变换、模式识别、图象增强、动画、电子出版、电子地图等。
 5.自动控制
 磁盘、光盘、打印机伺服、发动机控制。
 6.仪器仪表
 测量数据谱分析、自动检测及分析、暂态分析、勘测、模拟试验。
 7.医学电子                                                                 
 助听器、CT扫描、超声波、心脑电图、核磁共振、医疗监护等。
8.军事与尖端技术
雷达和声纳信号处理、雷达成像、自适应波束合成、阵列天线信号处理、导弹制导、火控系统、战场CI系统。导航、全球定位GPS、目测搜索跟踪、尖端武器试验,航空航天试验,宇宙飞船、侦察卫星。
 9.计算机与工作站
 阵列处理器、计算加速卡、图形加速卡、多媒体计算机。
 10.消费电子
 数字电视、高清晰度电视、图象/声音压缩解压器、VCD/DVD/CD播放器、电子玩具、游戏机、数字留言/应答机、汽车电子装置、音响合成、住宅电子安全系统、家电电脑控制装置。

第二章 汇编器的设计与实现
 本章内容讲的是汇编器的功能和实现方法。在具体汇编器的实现过程中密切结合ADSP218x型汇编语言的特点。
§1. 概 述
 汇编器的总任务是将汇编语言的源程序翻译位等价的机器语言的目标程序。所以汇编的过程就是,寻找一组操作,将初始状态的汇编源程序转换成为最终的状态机器语言的目标程序。
 经汇编程序汇编后的程序在盘上应建立三个文件:一个是扩展名为 .obj的目标程序,在此程序中,操作码部分以变成机器码,但地址操作数只是一个可浮动的相对地址,而不是内存中的绝对地址。第二个是扩展名为.lst的可打印文件,它把源程序和汇编后的目标程序都制成表,可打印出来供分析查用。第三个是扩展名为.CRF的可以对符号进行前后对照的文件。当然,这三个文件中的第一个文件是必要的,后两个供用户选的。要产生第一个文件的汇编程序主要功能为:
1. 收集源程序中的符号命、标号、常数等;
2. 按用户指定自动分配存储空间(包括程序区、数据区、暂存区);
3. 自动把各种进位制数转换为二进制,把字符转换成ASCII码;
4. 计算表达式的值;
5. 自动对源程序进行检查,给出错误信息(如非法格式,未定义的助记符、标号、漏掉的操作数等);
6. 产生代码;
绝大多数的汇编器的工作原理都采用了两遍扫描的方法。它的简化模型如图2-1所示。所谓两遍扫描就是指汇编器对源程序必须进行两次从头到尾的逐个语句逐个字符的扫描过程才能最终产生目标文件和列表文件。对源程序的第一遍扫描的主要任务是决定程序中使用的每一个标志符的相对位置(偏移量),从而建立起一个源程序的符号表。
 汇编器为了定位每一个标志符,它建立了一个称为汇编地址计数器的变量。当源程序被扫描的时候,这个地址计数器随着每个语句被读出分析而做相应的增量。每次所增量的值等于一条语句所需的字节数。每当汇编器遇到一个新的段定义的时候,它就把地址计数器清零。因此,地址计数器可以看做一个段在汇编过程中动态地指示一个语句的相对位置(偏移量)的指针。图2-2给出了汇编器完成第一遍扫描的程序流程。
   
图2-2 第一遍扫描基本流程
 第一遍扫描只是建立符号表而不产生机器码。第二遍扫描才产生机器码。每当汇编器在第一遍扫描中在一个语句地最左端发现一个标号或变量时,它就要定义这个标号。它的偏移量就是地址计数器的当前值。汇编器要把它和有关信息填入符号表。如果同一个标号或变量定义了两次,就产生一个出错记录。
 在源程序第一遍扫描无错时,汇编器对其进行第二遍扫描。第二遍扫描的流程如图2-3所示。
 
图2-3 第二遍扫描基本流程
 
§3. 仿真器的实现
§3.1 仿真系统的数据流图
仿真器的数据流图3-1所示。
图 3-1
§3.2 仿真器的模块划分
图 3-2
§3.2.1 顶层模块
 顶层模块负责调用下层的各个模块,协调下层模块的工作。同时,顶层模块也是用户与仿真器之间的接口,用户可以通过这个接口指定仿真器进行各种操作,比如装载程序、运行、单步运行、设置断点等等,下面简要介绍一下这些接口。
1) LoadProgram(DWORD pMem[],int count):该接口主要从数组pMem中读指令到仿真器中,其中count指定读入的指令的数目。
2) RunToCursor():该接口主要功能是将程序运行到用户指定的光标处,这个功能对用户调试程序非常有用,假如用户确定前半部分的程序没有问题,只关心程序的后半部分,那么我们可以把关标停在交接处,然后执行”运行到关标出”,接着再单步运行那些用户怀疑有问题的程序。
3) RunOneStep( ):该接口使用户能单步运行程序。没运行一条指令都对程序存储器、数据存储器以及寄存器进行更新,这样用户就能看到当前运行指令的操作。
4) ResetProgram():该接口主要对程序进行复位操作,通过该接口用户可以随时对程序进行初始化操作。

§3.2.2 内存管理模块
 内存管理模块主要用于仿真程序对内存的各种操作。ADSP-218x的内存分为程序存储器PM和数据存储器DM,其中程序存储器是24位字宽,数据存储器是16位字宽。相应的,在仿真器中,我们要对这两种存储器分别进行仿真。对程序存储器PM的主要操作是将由汇编器汇编成功的目标程序装载进来,同时也要允许对程序存储器进行读写操作。
§3.2.3 运行模块
 运行模块负责虚拟机代码段中指令的执行。该模块是仿真器的核心模块,各种指令的仿真处理都在该模块中进行。运行模块主要要仿真DSP三个核心部件:ALU(算术逻辑单元),MAC(乘加器)和Shifter(移位器)。ALU除进行标准算术、逻辑运算外,还提供简易除法功能。乘加器MAC进行40位累加运算。移位器支持算术/逻辑移位、归一化、取指数、多字精度、块浮点等运算或数据格式。运行模块的结构仿造了DSP指令的执行流程:取指-译码-执行。
1) 取指:把程序计数器pc所指的指令装载到指令寄存器IR中,同时程序计数器自动指向下一个程序存储器单元。
2) 译码:根据指令寄存器IR中的内容确定当前指令的类型,ADSP-218x型DSP总共有31类指令,我们在该模块中调用GetInstructionType()方法返回当前指令的类型。指令类型可以用1-31的整形数据进行索引,如果是非法指令就返回0。
3) 执行:根据译码模块返回的指令类型,我们可以调用相应的模块对指令进行仿真运行,针对31种指令类型,我们设计了相应数目的运行模块。
运行模块的执行流程如图3-3所示。

图 3-3
§3.2.4 显示模块
 显示模块主要功能是把程序存储器,数据存储器和寄存器的内容显示给用户。同时也允许用户通过该界面在调试程序时修改程序存储器,数据存储器和寄存器中的内容。
§3.3 仿真器的用户界面
整个仿真器的界面如图3-4所示。
 
图 3-4
050 ADSP2181汇编器及仿真器的设计
 

关闭窗口

与本站联系的时候,为了提高效率,请告诉本站您需要的设计编号与题目。如:001VBAC人事管理系统
编码说明:001VBAC人事管理系统,其中001VBAC 为该毕业设计的编号,VB代表开发语言,AC代表数据库(ACCESS)
版权所有:510计算机论文网:http://www.lw510.com/程序制作:510论文
Email: LW510@QQ.COM  QQ: 497053418   MSN: LW510@QQ.COM