




已阅读5页,还剩82页未读, 继续免费阅读
(通信与信息系统专业论文)基于dsp的语音信号采集与处理系统设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
西南交通大学研究生学位论文第1 页 摘要 数字信号处理的各项研究正经历高速发展。目前已经从离散时间信号等 基本理论发展到通信行业、语音、声学、雷达和图像等许多应用领域。语音 信号处理是其中的一个重点研究领域。到目前为止,它已经形成了多个研究 方向,如语音分析、语音增强、语音识别、语音通信等。这些理论应用于实 践要求处理器有很高的性能。通用处理器,如i n t e l 公司的x 8 6 系列处理器, 不适合计算密集的应用。d s p ( 数字信号处理器) 具有在单机器周期内完成 乘加运算、单机器周期内多次访问存储器以及丰富的片上外设等特点,采用 d s p 进行语音信号处理代表未来语音信号处理的发展方向。在这种情况下, 本文设计并实现了一种基于d s p 的语音信号采集与处理系统。 本文首先分析了t i 公司的t m s 3 2 0 c 5 4 x 系列d s p 的体系架构,包括c p u ( 中央处理单元) 、总线结构、指令系统、寻址模式及片上外设等方面,并将 它与通用处理器进行了比较。在此基础上,介绍了如何开发一个实用的语音 信号采集与处理电路板,对电路板的存储器模块、c p l d 模块、r s 2 3 2 模块、 a d 、d a 模块作了详细的介绍。另外,总结了在t m s 3 2 0 e 5 4 xd s p 上进行软 件开发的流程,重点说明了c m d 文件和中断向量表文件的编写方法,并给 出了两个例子。一个是如何使用t 1 1 6 c 7 5 0 发送数据和接收数据。另一个是如 何发送数据给d a 模块以及如何从a i d 模块接收数据。最后,本文对如何改 进系统提出了建议和展望。 关键祠:d s p 语音信号处理m a c 通用处理器 酉南交通大学研究生学位论文第ii 页 a b s t r a c t t h ef i e l do fd i g i t a ls i g n a lp r o c e s s i n sh a ss p u r r e dd e v e l o p m e n t s f r o mb a s i ct h e o r yo fd i s c r e t e t i m es i g n a l st od i v e r s ea p p li c a t i o n si n t e l e c o m m u n i c a t i o n s ,s p e e c ha n da c o u s t i c s ,r a d a r ,a n dv i d e o 。s p e e c h a c q u i s i t i o na n dp r o c e s s i n ga r eo n eo ft h ei m p o r t a n tr e s e a r c ha s p e c t s u n tiln o w ,ith a sf o r m e ds e v e r a lr e s e a r c hb r a n c h e s ,s u c ha ss p e e c h a n a l y s i s ,s p e e c he n h a n c e m e n t ,s p e e c hr e c o g n i t i o n a n d s p e e c h c o m m u n i c a t i o n ,e t c t h ep r a c t i c eo ft h e o r i e si nt h e s ef i e l d sr e q u i r e s h i g hp e r f o r m a n c ep r o c e s s o r s g e n e r a l p u r p o s em i c r o p r o c e s s o r ss u c ha s t h ei n t e lx 8 6f a m i l ya r en o ti d e a l l ys u i t e dt on u m e r i c a l t yi n t e n s i v e t a s k s d s p ( d i g i t a ls i g a lp r o c e s s o r ) f e a t u r e ss i n g l e - c y c i em u l t i p l y a n da c c u m u l a t e ( m a c ) ,m u t i l d l e a c c e s s sm e m o r ya r c h i t e c t u r e ,aw i d e v a r i e t yo fo n c h i pp e r i p h e r a l s ,w h i c hl e a d st r e n d i nd i g i t a ls p e e c h p r o c e s s i n gf i e l d t h i sp a p e rd e s i g n sa n di m p l e m e n t sap r a c t i c a ls p e e c h a q u i s i t o na n dp r o c e s s i n gs y s t e mb a s e do n d s pi nt h es i t u a t i o n f i r s t i f ,t h i sa r t i c l ea n a l y s e dt h ea r c h i t e c t u r e o ft m s 3 2 0 c 5 4 xd s p , i n c l u d i n gc e n t e rp r o c e s su n i t ( c p u ) ,b u ss t r u c t r u e ,i n s t r u c t i o ns y s t e m , a d d r e s s i n gm o d e sa n do n c h i pp e r i p h e r a l s ,a n dc o m p a r e d i tw i t ht h e g e n e r a l p u r p o s ep r o c e s s o r s e c o n d l yi t d e m o n s t r a t e dh o wt od e v e l o pa p r a c t i c a ls p e e c h s i g n a la q u i s t i o n a n d p r o c e s s i n g b o a r db a s e do n t m s 3 2 0 v c 5 4 0 2 s e v e r a li m p o r t a n th a r d w a r em o d u l e s ,s u c ha sm e m o r y , c p l d ,r s 2 3 2 ,a da n dd am o d u l ew e r ed i s c u s s e dd e t a i l e d l y t h i r d l y , s u m m a r i z e dt h ef l o wc h a r to fs o f t w a r ed e v e l o p m e n to ft m s 3 2 0 c 5 4 xd s p , f o c o u s i n go nh o wt op r o g r a mt h ec m df i l ea n dv e c t o rt a b l ef i l ew i t h i n y o u rp r o j e c t t h e n ,g a v et w oe x a m p l e s o n ee x p l a i n e dh o wt or e c i e v e a n ds e n dd a t au s i n gt l1 6 c 7 5 0 ,t h eo t h e rd e m o n s t r a t e dh o wt og e td a t a f r o mt h ea dm o d u l ea n dh o wt os e n dd a t at ot h ed am o d u l e 。t h el a s t p a r to ft h ea r t i c h l ep r o v i d e ds o m es u g g e s t i o n st oi m p r o v et h es p e e c h s i g n a la c q u i s i t i o na n dp r o c e s s i n gs y s t e m 西南交通大学研究生学位论文第i i i 页 k e yw o r d s :d s p :s p e e c hs i g n a lp r o c e s s i n g :m a c ;g e n c - r a l - p u r p o s e p r o c e s s o r 西南交通大学硕士研究生学位论文第1 页 第1 章绪论 1 1 论文研究背景及其意义 自从第一颗微处理器诞生以来,其技术水平得到了飞速的提高。从6 0 年代i n t e l 公司推出的第一颗单晶片微处理器4 0 0 4 算起,不过4 0 多年的时 间,微处理器的集成度从最早的几千个晶体管发展到现在的上亿个晶体管, 字长从4 位提高到6 4 位,运算速度从lh z 提高到现在的超过1 gh z ( 1 g = 2 3 0 ) 。技术的高速发展引发了信息产业革命,以计算机技术、通信技术为核 心的信息技术正在以前所未有的速度改变着人们的生活和工作方式。 数字信号处理是信息技术中的一个核心问题。实现数字信号处理的核心 器件是数字信号处理器( 以后简称为d s p ) 。它不同于通用微处理器。通用 微处理器普遍采用冯诺依曼结构,数据和程序共用一个存储空间,很多功能 采用微码实现。d s p 采用哈佛结构或改进的哈佛结构,数据空间和程序空间 分开,这大大提高了指令执行速度;d s p 包含有专用的硬件乘法器和加法器, 在一个时钟周期内可以完成相乘、累加两个运算。这些特性使它们特别适合 于高速、重复性、数值运算密集的实时处理的领域。 t i 公司是d s p 领域的领导者。资料表明:每2 个数字蜂窝电话中就有1 个采用t i 产品,全世界9 0 的硬盘和3 3 的m o d e m 均采用t i 的d s p 技术。 目前,广泛使用的t i 公司的d s p 产品包含三个系列:c 2 0 0 0 ,c 5 0 0 0 ,c 6 0 0 0 , c 3 x 也有使用。c 2 0 0 0 是一个控制器系列,全部为1 6 位定点d s p ,适合于 控制领域。c 5 0 0 0 是一个定点低功耗系列,适合手持通讯产品领域。c 6 0 0 0 是3 2 位的高- 陛能d s p 芯片。其中c 6 2 x x 为定点系列,c 6 7 x x 和c 6 4 x x 为 浮点系列。c 3 x 系列虽然不是目前t i 的主流产品,但作为一个3 2 位的低价 浮点d s p ,仍被广泛地使用。 数字信号处理技术的发展使采用数字化的方法实时的处理语音信号成为 可能。传统的模拟方法处理语音信号,硬件设备昂贵,不能升级、产品生命 周期短。采用数字技术处理语音信号具有抗干扰性强、便于传输和处理等优 点,代表着语音处理技术的发展方向。d s p 芯片高速、可编程的特点使其非 常适用于语音信号处理领域,基于d s p 的语音处理系统是未来语音处理系统 西南交通大学硕士研究生学位论文第2 页 的主流,具有良好的应用前景和市场前景。 1 2 语音信号处理技术的现状与发展 声音是通过空气传播的一种连续的波。声波压力的大小体现声音的强弱, 声音的频率体现音调的高低。声音具有信息量大、精细、精确等特点。按照 声音所在的频率范围,可以把声音分类为: 亚音( s u b s o n i c ) :频率小于2 0 也的信号: 音频( a u d i o ) :频率范围为2 0h z 2 0k h z 的信号: 超音频( u l t r a s o n i c ) :高于2 0k h z 的信号。 人能够听到的声音是音频。音频信号又可分为:语音信号和非语音信号 ( 风声、雨声、鸟叫声、机器声等,即乐音和杂音) ,非语音信号的特点是不 具有复杂的语义和语法信息,信息量低,识别简单。 将模拟的( 连续的) 声音波形数字化( 离散化) ,可以得到数字音频。这个过 程主要包括采样和量化两个方面。数字音频的质量取决于:采样频率和量化 位数这两个重要参数。 取样频率:单位时间内的取样次数f 仁1 t ,t 是对连续信号取样的 时间间隔。 量化:对声音信号波形振幅值的离散化。 奈魁斯特取样定理:要从样值序列完全恢复原始的波形,取样频率 必须大于原始有用音频最高频率的2 倍。 量化误差( 或量化噪音) :量化后的振幅代表值与真实振幅值之间的 差。 量化跨度:在分割振幅时各个小区间的宽度。 语音信号处理的研究可以分为以下几个方向:即语音分析、语音增强、 语音编码、语音合成和语音识别与理解 i 】。 语音分析 语音分析是语音信号处理的基础。只有通过语音分析将语音信号分析 成各种参数,才有可能用这些参数进行语音通信,才能建立用于语音合成 的语音库,也才可能建立识别与理解的模板或知识库。语音信号分析大体 上有时域、频域、倒谱域等分析方法。 语音增强 西南交通大学硕士研究生学位论文第3 页 人们在语音通信的过程中不可避免地会受到来自周围环境、传输媒介 引入的噪声、通信设备内部电噪声、乃至其他讲话者的干扰。这些干扰最 终将使接收者收到的语音信号已非纯净的原始语音信号,而是受噪声污染 的语音信号。语音增强的一个主要目标是从带噪声的语音信号中提取尽量 纯净的原始语音。 语音编码 对语音信号进行编码处理,目的是为了减少传输码率和提高音质。除 了传统的一些脉冲编码调n # i - ,目前已经开始使用自适应和矢量量化技术 以及一些变换域编码技术和基于语音特点的编码技术。 语音合成 语音合成是讨论如何使机器说出人的语音,以满足人类的各种需要的 问题。语音合成的最大特点是要从有限的存储单元中合成出无限词汇的连 续语句出来。 语音识别与理解 语音识别的目标是让机器“听懂”人类口述的语言。听懂有两种含义, 第一种是将口述语言逐词( 字) 地转换为相应的书面语言( 即文字) :第二 种则是对口述语言中所包含的要求或询问做出正确的响应,而不拘泥于所 有的词正确转换为书面文字。语音理解企图模仿人脑的思维功能,是语音 处理的高级阶段j 。 目前,采用模拟的方法已经无法适应语音信号处理研究向纵深发展的 要求,采用数字技术进行处理已经成为主流。 西南交通大学硕士研究生学位论文第4 页 1 3 本文的主要工作及内容安排 本文的主要工作包括: 1 分析了t m s 3 2 0 c 5 4 xd s p 的体系结构,简单的比较了它和通用处理 器的异同,总结出了d s p 区别于通用处理器的主要特性。 2 提出了一个语音信号采集与处理系统的设计方案,并实现了其硬件 与部分底层软件。 3 分析了语音信号采集与处理系统的几个主要硬件模块,包括存储器 模块、c p l d 模块、r s 2 3 2 串口模块、信号采集a d 、d a 模块。 4 总结了在t m s 3 2 0 c 5 4 x d s p 硬件平台上使用c 语言进行软件开发的 流程,设计了两个底层软件模块,包括r s 2 3 2 串口收发程序和a d 、 d a 程序。 论文的结构安排如下: 第一章绪论:介绍了论文的研究背景及其意义,语音信号处理的现 状与发展趋势。 第二章t m s 3 2 0 c 5 4 x 概论:分析了t m s 3 2 0 v c 5 4 0 2d s p 的体系结 构,并且简单的比较了它和通用处理器的异同,总结了d s p 区别于 通用处理器的主要特性。 第三章系统硬件设计与实现:提出了一种语音信号采集与处理系统 的硬件方案,并分析了其中的几个关键模块,包括存储器模块、c p l d 模块、r s 2 3 2 串口模块、信号采集d 、d a 模块。 第四章系统软件设计与实现:总结了在t m s 3 2 0 c 5 4 xd s p 硬件平 台上使用c 语言进行软件开发的流程,设计了两个底层软件模块, 包括r s 2 3 2 串口收发程序和a d 、d a 程序。 论文的最后对本文的主要工作进行了总结,根据笔者在实践中的体 会,指出了有待改进的地方。 西南交通大学硕士研究生学位论文第5 页 第2 章t m s 3 2 0 c 5 4 xd s p 概论 t m s 3 2 0 c 5 4 x ( 以后简写为c 5 4 x ) 是美国t i 公司设计生产的1 6 位定 点数字信号处理器。c 5 4 x 采用改进的哈佛结构,功耗低,并行度高。整个 系列具有较高的性价比。所有c 5 4 x 器件的c p u 都是相同的。它们的不同之 处在于片上存储器存储容量的大小、片上外设配置、供电电压、运行速度及 芯片的封装等方面。c 5 4 x 的市场定位在无线通信、网络、语音通信和电话 等领域。 2 1t m s 3 2 0 c 5 4 x 体系架构 c 5 4 x 的体系结构包括中央处理单元、片上存储器和片上外设。所有 c 5 4 x 的中央处理单元都是一样的,它们的不同之处在于片上存储器存储容 量的大小、片上外设配置、供电电压、运行速度及芯片的封装等方面。c 5 4 x 的体系结构如图2 1 所示 ”。 西南交通大学硕士研究生学位论文第6 页 图2 - 1c 5 4 x 体系结构 2 。2 中央处理单元( c p i j ) 2 2 1 中央处理单元组成 所有c 5 4 x 器件的c p u 都是相同的,主要包括以下部件 1 1 个4 0 位算数逻辑单元( a l u ) 2 2 个独立的4 0 位累加器 西南交通大学硕士研究生学位论文第7 页 3 1 个桶形移位寄存器( b a r r e ls h i f t e r ) 4 乘累加单元 5 比较、选择和存储单元( c s s u ) 6 指数编码器 1 算数逻辑单元( a l u ) c 5 4 x 包含1 个4 0 位的算数逻辑单元,可进行算数逻辑运算,并且大多 数运算都是在单周期内完成。a l u 的运算结果常常送往累加器( 累加器a 或b ) 。a l u 的功能框图如2 2 所示。 图2 2c 5 4 x a l u 功能框图 a l u 有两个输入端,一个输出端。它的输入端有以下几种数据来源。 x 输入端有两种数据来源: 桶形移位寄存器的输出: 来自数据总线d b 的数据。 y 输入端有三种数据来源: 来自任意一个累加器a 或b : 来自数据总线c b 的数据; 来自暂存器t 。 2 累加器 西南交通大学硕士研究生学位论文第8 页 c 5 4 x 器件有两个独立的4 0 位累加器:累加器a 和累加器b 。每个累加 器可分为3 个部分:保护位( g u a r db i t s ) 、高位字( h i g h - o r d e rb i t s ) 和低位 字( l o w o r d e rb i t s ) ,如图2 3 所示。 a c c u r l l u l s l o r d 3 9 :3 23 1 1 61 5 0 o 啷t l i l t = h w h b h h _ d 口- 嗡 图2 3 c 5 4 x 累加器结构 保护位( a g 和b g ) 作为运算时的头区,用于防止运算产生的溢出。 a g ,b g ,a h ,b h ,a l ,b l 是存储器映射的寄存器,它们的内容可以被 压入或弹出堆栈,也可以存入存储器或从存储器中恢复。这些寄存器还可用 于寻址操作。 累加器a 和b 可以作为a l u 或乘累加单元的目标地址,用来存放它们 的结果,也可以给a l u 提供一个输入。累加器a 和累加器b 的不同之处在 于累加器a 的高位字可以作为乘累加单元的一个输入。 3 桶形移位寄存器( b a r r e is h i f t e r ) 4 0 位的桶形移位寄存器对一些操作进行标定和标准化,可以进行o 3 1 位的左移和o 1 6 位的右移。其功能框图如图2 4 所示。 _ 雾 一 a 西南交通大学硕士研究生学位论文第9 页 图2 4c 5 4 x 桶形移位寄存器结构 桶形移位寄存器的输入数据有以下几个来源: 来自d b 的1 6 位操作数; 来自d b 和c b 的3 2 位操作数; 来自两个4 0 位累加器的操作数。 4 0 位的输出结果送到a l u 的输入端和高位字低位字( m s w ,l s w ) 选 择单元。 实际操作时,移位值要定义在指令的移位计数字段、状态寄存器s t l 中 的移位计数字段a s m 或暂存器t 中( 当t 指定为一个移位计数寄存器时) 。 4 乘累加单元 乘累加单元包括一个1 7 ( 位) x1 7 ( 位) 的乘法器和一个4 0 位的专用 乘法器。乘,累加单元在一个流水线周期内完成乘,累加操作。其结构如图2 5 所示: 西南交通大学硕士研究生学位论文第10 页 图2 - 5c 5 4 x 乘累加单元 图2 5 的乘法器可以进行有符号数乘有符号数、无符号数乘无符号数、 有符号数乘无符号数运算。加法器包括一个零检测器、一个舍入器( 二进制 补码) 和溢出饱和逻辑。加法器的一个输入来自乘法器的输出、一个来自两 个累加器之一。一旦乘法操作完成,结果就被传送给目标累加器a 或b 。 5 比较、选择和存储单元( c s s u ) 比较、选择和存储( c s s u ) 单元是为了v i t e r b i 蝶形运算中的加比较 选择( a c s ) 操作而设计的专用硬件电路,它常常与a l u 一起来完成a c s 操作。这个电路支持均衡器和通道解码中的各种v i t e r b i 蝶形算法。c s s u 的 结构如图2 - 6 所示: 西南交通大学硕士研究生学位论文第11 页 fr o ma c i x l m u l t l t o f a f r o ma c r i dr n u b t o tb 图2 6c 5 4 x 比较、选择和存储单元( c s s u ) 结构 v i t e r b i 算法中的加法功能由a l u 来完成。图2 - 6 中,c o m p 为比较逻辑, 对累加器的高1 6 位和低1 6 位字进行比较。m s w l s w 选择逻辑选择高位字 和低位字两者中较大的一个存八指令指定的存储单元。t r n 为状态转换寄存 器,记录v i t e r b i 算法中的路径转移情况。t c 是状态寄存器s t 0 中的检测, 控制标志,用来存放a l u 位检测操作的结果。 正是因为c 5 4 x 以最优的片内硬件加速了v i t e r b i 蝶形运算,使得c 5 4 x d s p 特别适用于数字通信领域。 6 指数编码器 指数编码器是用于支持单周期e x p 指令的专用硬件电路,其结构如图 2 7 所示。e x p 指令可以对累加器中的值进行求指数运算。求得的指数以二 进制补码形式存放在暂存器t 中。这里指数的定义为累加器中多余符号位的 个数减8 ,因此,指数的范围是一8 3 l 。 f r o ma c ( :a l l t i u l a l o r a f r o ma c c u m l j b f o rb t otr e g i s t e r 图2 - 7c 5 4 x 指数编码器结构 翠 西南交通大学硕士研究生学位论文第12 页 2 2 2c 5 4 xc p uv s 通用处理器c p u 通用处理器中大量的数值运算通过协处理器完成,如i n t e l 的8 0 4 8 6 实质 上是8 0 3 8 6 + 8 0 3 8 7 协处理,这块协处理器主要用于处理浮点运算。c 5 4 xc p u 针对数字信号处理算法的特点进行优化,提供了专用的硬件处理单元来完成 乘加运算,求指数运算等。c 5 4 x 的乘法器、累加器是作为一个整体来工作 的,它可以在一个机器周期内完成乘加操作。让我们以一个例子来说明这个 问题。 数字信号处理中常常进行x * h 运算,在通用处理器上,其汇编代码的 形式为: l o o p : x o ,* r o取乘法运算的第一个操作数 y o ,* r l取乘法运算的第二个操作数 x o ,y 0 ,aa = x 0 + y 0 b ,ab = a + b r 0修改源操作数地址 r 】 c t rc t r 表示循环因子 c t r l o o p 使用通用处理器处理时,一次循环只能完成一次乘加操作,并且需要多 次访问内存,运算速度慢。 使用d s p 处理器的汇编代码如下所示: d od o t p r o du n t i lc e : d o t p r o d : m r = m r + m x o * m y o ( s s ) ,m x o = d m ( i o ,m o ) ,m y o = p m ( 1 4 ,m 4 ) : 使用c 5 4 xd s p 处理器进行运算,由于d s p 处理器优化了乘加运算的数 据路径,并且采用了多总线结构,使c p u 可以在一个机器周期内多次访问存 储器,因此在一个机器周期内完成了乘加、取下一个操作数( m x o ,m y o ) 、 改变操作数地址( 1 0 ,1 4 ) 操作。 是否具有专用的硬件乘加单元已成为是否是d s p 处理器的主要标志。 v v y d c c c t z 甜三曲拈皿 西南交通大学硕士研究生学位论文第13 页 2 3 存储器体系架构 2 3 1 冯诺依曼结构v s 哈佛结构 在存储器管理中,一直存在着两种方案:冯诺依曼结构和哈佛结构。通 用处理器采用冯诺依曼结构,d s p 处理器采用哈佛结构。 冯诺依曼结构的指令、数据共用一个存储空间,存储空间统一编址。依 靠指令计数器提供的地址来区分数据和指令。冯诺依曼结构允许自修改代码 ( s e l f m o d i i n gc o d e ) 存在:必要时,可以将指令当做数据来处理,因而更 加灵活。萁缺点是:数据和指令共存于同一个存储空间,容易带来存储器分 配( m e m o r ya l i g n m e n tp r o b l e m s ) 的问题;在执行计算密集的任务时,存储 器访问容易产生瓶颈效应。 哈佛结构将指令、数据的存储空间分开,指令空间和数据空间分开编址, 拥有各自的访问总线。因而哈佛结构允许同时访问两个存储空间,存储器吞 吐量更大;容易实现流水线;并且没有存储器分配问题。其缺点是:不允许 自修改代码( s e l f m o d i f y i n gc o d e ) 的存在,不如冯诺依曼结构灵活。 c 5 4 x 采用改进的哈佛结构,将存储空间分为数据存储空间、程序存储 空间和i o 空间。具有一条程序总线,三条独立的数据总线,四条独立的地 址总线。在一个机器周期内,它最多支持对存储器的四次访问,分别为一次 读程序存储器,两次读数据存储器和一次写数据存储器。这大大提高了访问 存储器的并行度,从而提高了指令的执行速度。 2 3 2 物理存储器组织 c 5 4 x 的存储器分为片上存储器和片外存储器。片上存储器又分为随机 存取存储器( r a m ) 和只读存储器( r e ) m ) 。r a m 又分为两种类型:双重 访问r a m ( d 洲) 和单次访问r a m ( s a r a m ) 。表2 - l 给出了不同的c 5 4 x 器件的片上存储器配置。另外,c 5 4 x 有2 6 个寄存器、外设寄存器映射到数 据存储空间。 西南交通大学硕士研究生学位论文第1 4 页 表2 - 1c 5 4 x 片上存储器配置 m e m o r y g 5 4 1c s 4 2c s 4 3c 5 4 sc 5 4 sc 5 4 8c 5 4 9 ( ;5 4 0 2 c s 4 1 口c 5 4 2 0 耳降 r o m2 8 k2 k2 k4 8 k4 8 k2 k 6 k4 r1 6 k0 p r o g r a m 2 0 k2 k2 k3 2 k3 2 k2 k1 6 k4 k6 k0 p r o g r a n v 8 k001 6 k1 6 k0i & k4 k00 d a t a d a r a m t5 k1 0 k1 0 k6 k6 k嫩b k1 6 k8 1 (3 2 k s a r a m t00o002 4 k2 4 k05 6 k1 6 8 k t y o u 曲nc o n f k 】u mi h ea l 口k 蝴3r a ml d a r a m ) a 1 日s 哪b c e 鹞r m ! s a r a m ) 嚆d o l or m n 叫甜p r o c j m m t o g t a r n e m o 吖 1 片内r o m 片内r o m 是程序空间的一部分。在某些情况下,也可以是数据空 间的部分。可能包括的内容有: 引导程序( b o o t l o a d e r ) :可以从串口、外部存储器、i o 口或h p i 口引导; 2 5 6 字的“率扩展表; 2 5 6 字的a 率扩展表; 2 5 6 字的正弦表; 中断矢量表。 2 片内双重访问r a m ( d a r a m ) 片内d a r a m 是通过分块来组织的,允许每个d a r a m 块在单机器 周期内被访问两次。 3 片内单次访问r a m ( s a r a m ) 片内s a r a m 也是通过分块来组织的,每一块在单机器周期内只能 进行次读或写操作。 4 存储器映射寄存器 数据存储空间中包含有c p u 和片上外设中的存储器映射寄存器。这 些寄存器驻留在数据0 页( 数据地址0 0 0 0 h 0 0 7 f h ) 中。数据o 页中包 括以下内容: c p u 寄存器:一共2 6 个,访问时不需要等待状态; 外设寄存器:是外设电路中的控制和数据寄存器。这些寄存器驻 留在0 0 2 0 h 0 0 5 f h 中,并且在一个专用的外设总线结构中。当 访问它们时,至少需要两个周期。不同的c 5 4 x 器件具有不同的 西南交通大学硕士研究生学位论文第15 页 外设,其所需的周期数也不同。表2 2 列出了c 5 4 0 2 存储器映 射寄存器。 表2 - 2c 5 4 0 2 存储器映射寄存器 名称地址( h e x )说明 i m r0 中断屏蔽寄存器 i f rl中断标志寄存器 2 5测试保留 s t o6 状态寄存器0 s t l7 状态寄存器l a l8累加器a 低字( 1 5 一o 比特) a h9累加器a 高字( 3 1 1 6 比特) a ga累加器a 保护位( 3 9 3 2 比特) b l b 累加器b 低字( 1 5 0 比特) b hc累加器b 高字( 3 1 一1 6 比特) b gd累加器b 保护位( 3 9 3 2 比特) t r e g e 临时寄存器 t r nf传送寄存器 a r o a r 71 0 1 7辅助寄存器a r nn = o 7 s p1 8堆栈指针寄存器 b k1 9 循环缓存区大小寄存器 b r c 1 a 块重复计数器 r s al b块重复开始地址 r e a l c 块重复结束地址 p m s tl d 处理器模式状态寄存器 x p cl ep c 扩展寄存器 1 f h 保留 d r r 2 0 2 0 h 带缓存串口o 数据接收寄存器2 d r r l 0 2 l h 带缓存串口0 数据接收寄存器1 b x r 2 02 2 h带缓存串口0 数据发送寄存器2 b x r l 02 3 h 带缓存串口0 数据发送寄存器1 t i m2 4 h定时器0 计数器 p r d2 5 h定时器0 周期寄存器 西南交通大学硕士研究生学位论文第16 页 t c r2 6 h 定时器0 控制寄存器 2 7 h保留 s w w s r2 8 h 软件等待状态发生寄存器 b s c r2 9 h b a n k s w i t c h i n g 控制寄存器 2 a h保留 s w c r2 b h软件等待状态控制寄存器 h p i c2 c hh p i 接口控制寄存器 2 d h 2 f h保留 t i m l3 0 h定时器i 计数器 p r d l3 1 h定时器1 周期寄存器 t c r l3 2 h定时器l 控制寄存器 3 3 h 3 7 h保留 s p s a o3 8 h带缓冲串口0s u b b a n k 地址寄存器 s p s d o3 9 h带缓冲串口0s u b b a n k 数据寄存器 3 a h 3 b ha b u o 接收地址寄存器 g p i o c r3 c hg p i o 引脚控制寄存器 g p i o s r3 d hg p i o 引脚状态寄存器 3 e h 3 f h保留 d r r 2 l4 0 h带缓存串口1 数据接收寄存器2 d r r l l4 1 h带缓存串口1 数据接收寄存器l d x r 2 l4 2 h带缓存串口1 数据发送寄存器2 d x r l l4 3 h带缓存串口l 数据发送寄存器l 4 4 h 4 7 h保留 s p s a l4 8 h带缓冲串口ls u b b a n k 地址寄存器 s p s d l4 9 h带缓冲串口1s u b b a n k 数据寄存器 4 a h 5 3 h保留 d m p r e c5 4 hd m a 通道优先级和使能控制寄存器 d m s a5 5 hd m as u b b a n k 地址寄存器 d m s d i5 6 hd m as u b b a n k 带自动增量的数据寄存器 d m s d n5 7 h d m as u b b a n k 数据寄存器 c l k m d5 8 h时钟模式寄存器 5 9 h 5 f h保留 西南交通大学硕士研究生学位论文第17 页 2 3 3 存储器映像( m e m o r ym a p ) 在进行d s p 硬件开发时,存储器部分要解决的关键问题就是如何合理的 配置程序空间和数据空间,让片内存储器和片外存储器拥有合理的d s p 芯片 存储空间地址。即两个问题: 1 配置d s p 存储器空间,确定哪部分存储器空间被片内存储器占用, 哪部分存储器空间被外部存储器占用,即确定d s p m e m o r y m a p 。 2 确定d s p 存储空间与片外存储器地址空间的对应关系,即确定d s p 存储空间存储块与片外部存储器存储空间存储块的对应关系( 类似 于页式存储管理) 。 存储器映像由c p u 状态寄存器p m s t 中的三个位确定: m p ,m c # 位: m p m c # 位确定c 5 4 xd s p 是工作在微处理器模式或是微控制 器模式。并确定片上r o m 是否映射到程序空间。 m p m c # = 0d s p 工作在微控制器模式,片上r o m 映射到程序 空间: m p m c # = 1d s p 工作在微处理器模式,片上r o m 不映射到程 序空间。 m p m c # 的初始状态由d s p 复位时引脚m p m c # 的逻辑电平确 定。在下一次复位前,m p m c 释引脚的逻辑电平值不再作为设置 m p m c # 位的参考。软件复位指令不能改变m p m c # 位。m p m c # 位可以通过软件设置或清除。 o v l y 位 o v l y 确定片上d a r a m 是否被映射到程序空间。 o v l y = o片上d a r a m 只被映射到数据空间; o v l y = 1片上d a r a m 被映射到数据空间和程序空间。 d r o m 位 d r o m 位确定片上r o m 是否被映射到数据存储器。 d r o m = 0 片上r o m 不映射到数据存储器 d r o m = i部分片上r o m 映射到数据存储器 当以上三个因素确定后,程序空间和数据空间的配置状况( m e m o r y m a p ) 就已经确定。如c 5 4 0 2 的存储空间配置情况( m e m o r y m a p ) 如图2 8 西南交通大学硕士研究生学位论文第1 8 页 所示 。唧恕罄删棚惑罄嘲 l 唧髓即粕脚口蛐r 啊眠i 岫 棚b 砌嘲,l i 搬m o 删i 图2 8c 5 4 0 2 的存储器映像( m e m o r ym a p ) d s p 芯片存储器空间与片外存储器地址空间的对应关系由片外存储器与 d s p 芯片的连接方式和地址译码逻辑决定。 2 4 指令系统 c 5 4 x 采用了许多专用的硬件结构来提高d s p 的性能,如专用的乘累加 单元、比较选择,存储单元。相应地,提供了基于硬件结构的数字信号处理 指令,如单周期的乘累加指令m a c ,这些指令把一般至少要两条指令来完 成的功能,用一条指令就完成了,极大的提高了d s p 的处理能力,使d s p 非常适用于运算密集的任务。 西南交通大学硕士研究生学位论文第19 页 c 5 4 x 的指令集分为两类:助记符指令集和代数指令集。代数指令集中 的指令类似于代数式的表达,运算关系比较清楚明了。助记符指令集与计算 机汇编语言相似,采用助记符来写,便于用户记忆和使用。 用助记符指令集编写汇编程序时:其书写格式为: 【标号 【: 指令 操作数列表 :注释】 其中, 内的部分是可选项。一条语句是以标号、空格、星号或分号开 始的,语句的标号、指令、操作数和注释这四个部分之间必须用一个或多个 空格隔开。 使用标号时,标号必须从第一列开始写,可以包括5 3 个字符( a z ,a z 和数字) 。标号的第一个字符不能是数字,标号后面可以跟一个冒号。不使 用标号时,则第一列的字符必须是空格、星号或分号。指令部分可以是汇编 命令、助记符指令、宏指令或宏调用等。操作数可以是常数、符号或由常数 和符号组成的表达式等。注释是可选项,可以在第列以分号或星号引导 行注释,还可以在其它列以分号引导一个注释。 c 5 4 x 的指令集可以完成5 种基本操作。 1 算数操作:包括加法、减法、乘法、乘累加、乘减法、加倍指令( 3 2 位操作数) 和专用指令。 2 ,逻辑操作:包括与、或、异或、移位和测试等指令。 3 程序控制操作:包括跳转、调用、中断、返回、重复、堆栈操作和 同时程序控制指令。 4 装载和存储操作:包括装载、存储、条件存储、并行装载和存储、 并行装载和乘、并行存储和加减、并行存储和乘、同时装载型和同 时存储型指令。 5 单指令重复运算:c 5 4 x 提供重复指令,它可以让跟在其后的下一条 指令重复执行,重复的次数等于指令中的操作数加l ,最大可达 6 5 5 3 5 。一旦重复指令被译码,那么除了复位以外的所有中断都被禁 止,直到重复过程结束为止。在乘力和块搬移指令中可以使用重复 指令以提高运算速度,可以有效地将多周期指令变成单周期指令。 c 5 4 x 的体系结构和指令系统决定了它适合执行计算密集的任务,但对 需要进行位操作和较多控制代码的任务其代码密度低。 西南交通大学硕士研究生学位论文第2 0 页 2 5 寻址方式 c 5 4 x 提供七类寻址方式 1 立即数寻址 2 绝对地址寻址 3 累加器寻址 4 直接寻址 5 间接寻址 6 内存映象寄存器寻址 7 堆栈寻址 1 立即数寻址 在立即数寻址方式中,操作数直接包括在指令中。这里操作数有两种类 型:短立即数和长立即数。短立即数寻址长度可以是3 、5 、8 、9 位,放在一 个字长的指令中。长立即数是1 6 位,放在两字节长的指令中。指令中的立即 数长度取决于所使用的指令。 2 绝对地址寻址 c 5 4 x 的绝对寻址有四种形式。 1 1d m a d 寻址( 数据存储区寻址) :d m a d 寻址用一标号或一数据指明数 据空间地址,这类指令有: m v d ks m e m d m a d m v d md m a d m m r n k dd m a d ,s m e m m v m dm m r d m a d 如:m v k ds a m p l e ,* a r 5 。此处s a m p l e 即是d m a d 。 2 ) p m a d 寻址( 程序存储区寻址) :p m a d 寻址用一标号或一数据指明程序 空间地址,这类指令有: f i r sx m e m y m e m p m a d m a c d s m e m p m a d s r c m a c p s m e m 。p m a d s i c m v d p s m e m p m a d 西南交通大学硕士研究生学位论文第2 1 页 m v p d p m a d s m e m 如:m v p dt a b l e ,* a r 7 一。此处t a b l e 即为p m a d 。 3 ) p a 寻址( 端口寻址) :p a 寻址用一标号或一数值指明外部i o 口地址, 这类指令有: p o r t rp a s m e m p o r t ws m e m p a 如:p o r t rf i f o ,* a r 5 。此处f i f o 即为p a 。 4 ) + ( 1 k ) 寻址:+ ( 1 k ) 寻址也是用标号指明数据空间地址。 如:l d 丰( b u f f e r ) ,a 。使用这类指令的好处在于不用修改d p 和a r 值。 但有一点要注意的是,这类指令不能用于重复执行单指令中( r p t ,r p t z ) 。 3 累加器寻址 累加器寻址将累加器的内容作为地址来使用( 通常是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全员列年考及答案
- 低碳城市渣土车智能监控与污染控制技术
- 2025年新能源汽车智能座舱智能座椅加热通风功能研究报告:用户体验与技术创新
- 2025年工程电梯常识题库及答案
- 多个应急预案演示(3篇)
- 堵门岗应急预案(3篇)
- 语文专业能力面试题及答案
- DB65T 4521-2022 孜然芹栽培技术规程
- DB65T 4448-2021 公路沥青路面沥青混合料拌和质量动态监测规范
- 电气春节应急预案(3篇)
- 2024年下半年辽宁事业单位管理单位遴选500模拟题附带答案详解
- 农产品直播带货策略
- 执业药师考试复习资料-《中药专业知识一》高频考点记忆口诀
- 2021版十八项医疗质量安全核心制度附流程图
- 精神科护理饮食宣教
- 第2课《互联网应用新特征》课件 2024--2025学年人教版(2024)初中信息技术七年级上册
- 《证券投资学》全套教学课件
- 人教版六年级数学上册第一单元测试卷
- 小学英语教学评一体化
- 函数图像 课件-2025届高三数学一轮复习
- 2024北师大版新教材初中数学七年级上册内容解读课件(深度)
评论
0/150
提交评论