




已阅读5页,还剩55页未读, 继续免费阅读
(通信与信息系统专业论文)语音识别芯片的设计——mcu及其接口的设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 近二三十年来,语音识别技术在计算机、信息处理、通信与电子系统、自动 控制等领域中有着广泛的应用。从目前的研究情况来看,国内在专用语音识别芯 片上的应用有一定的进展。但是对专用语音识别芯片的研究还比较少。 本论文的语音识别芯片设计思想是:采用软硬件协同设计的方法来设计芯片, 把语音识别过程分软件和硬件两部分进行。按照语音识别处理的过程来看,该芯 片需要包括两部分,一部分是微处理器内核,用来执行语音识别处理的软件部分, 另一部分是语音识别硬件模块。 本文介绍了一种基于o p e n r i s c l 2 0 0 嵌入式微处理器的语音识别芯片的设计 方法,最后利用现场可编程门阵歹i j ( f p g a ) 实现了该语音识别芯片。 o p e n r i s c l 2 0 0 是一个哈佛结构、5 级指令流水线的高性能的3 2 位微处理器, 基于v e r i l o g 硬件描述语言的源码开放,可以自由改进。o p e n r i s c l 2 0 0 可以用于 a s i c 流片。 本文主要对语音识别芯片中m c u 及其接口的设计实现上进行了研究,主要 工作包括以下几个方面: l 。设计和验证o p e n r i s c l 2 0 0 内核和w i s h b o n e 片上总线的实现,还有j t a g 调试接口、u a r t 串口、1 0 控制器和s r a m f l a s h s d r a m 接口的实现等。 2 建立用f p g a 开发o p e n r i s c l 2 0 0 内核的e d a 环境,建立o p e n r i s c l 2 0 0 程序开发的环境,编写和测试各个功能模块的驱动程序,为编写语音识别程序提高 技术支持。 3 制作具有c y c l o n ef p g a 、串口、s r a m 、f l a s h 、s d r a m 和配置电路的 f p g a 电路板 关键词:语音识别;o p e n r i s c ;w i s h b o n e f p g a ;v e r i l o g 兰壹墨三查兰堡主堂垡堡壅 a b s t r a c t i nr e c e n t2 0 3 0y e a r s s p e e c hr e c o g n i t i o ni sw i d e l yu s e di nc o m p u t e r ,i n f o r m a t i o n p r o c e s s i n g ,c o m m u n i c a t i o na n de l e c t r o n i cs y s t e m ,a u t o m a t i c a l l yc o n t r o le t c n o wo u r c o u n t r yh a sg o tac e r t a i np r o g r e s sw i t ht h ea p p l i c a t i o no fw o r dr e c o g n i t i o ni c b u t t h e r ei sn o te n o u g hi ns t u d yb a s e do nc o m p u t e r t h ed e s i g ni d e ao ft h es p e e c hr e c o g n i z e ri nt h ep a p e ri st h a tw ed i v i d e dt h e s p e e c hr e c o g n i t i o nc h i pi n t os o f t w a r ea n dh a r d w a r ep a r tw i t hs o f t w a r ea n dh a r d w a r e c o d e s i g n m e t h o d t h e c h i p i n c l u d e st w o p a r t s a tt h ep r o c e s so fs p e e c h r e c o g i n t i o n o n ep a r ti st h em i c r o p r o c e s s o rw h i c he x e c u t e st h es o f t w a r ep r o g r a m t h e o t h e ri st h eh a r d w a r es p e e c hr e c o g n i t i o nm o d u l e t h i sp a p e ri n t r o d u c e sac h i pd e s i g no fs p e e c hr e c o g n i z e r , w h i c hi sb a s e do nt h e 0 p e n r i s c 12 0 0e m b e d d e dm i c r o p r o c e s s o r t h ed e s i g nh a sb e e ns i m u l a t e ds u c c e s s f u l l y w i t hf p g a o p e n r i s c 12 0 0i sah i g h p e r f o r m a n c e3 2 - b i t s c a l a r r i s cw i t hh a r v a r d a r c h i t e c t u r e ,5s t a g ei n t e g e rp i p e l i n e i t sv e r i l o gs o u r c ei so p e na n df r e et ou s e w ec a n d e s i g nt h ea s i cw i t ht h eo p e n r i s c l 2 0 0 t h ef o c u so ft h ep a p e ri st h ed e s i g no fm c ua n di t si n t e r f a c ei nt h es p e e c h r e c o g n i t i o nc h i p t h em a i nw o r ki n e l u e st h ef o l l o w i n g : 1 d e s i g na n dv e r i f yo p e n r i s c l2 0 0c o r e ,w i s h b o n eb u s ,j t a gd e b u g i n t e r f a c e ,u a r t ,1 0c o n t r o l l e ra n ds r a m f l a s h s d r a mi n t e r f a c e 2 s e t u pt h ee d aa n dp r o g r a m m i n ge n v i r o n m e n tf o rt h eo p e n r i s c l 2 0 0 d e s i g n d e s i g na n dt e s tt h em o d u l ed r i v e r s s u p p o r tt h es p e e c hr e c o g n i t i o nc o d i n g 3 d e s i g nt h ef p g ap c bw i t hc y c l o n ef p g a ,u a r t ,s r a m ,f l a s h ,s d r a m a n dc o n f i g u r a t i o nc i r c u i t k e y w or d s : s p e e c hr e c o g n i t i o n ;o p e n r i s c ;w i s h b o n e ;f p g a ;v e r i l o g i i 华南理工大学 学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研 究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文 不包含任何其它个人或集体已经发表或撰写的成果作品。对本文的研 究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完 全意识到本声明的法律后果由本人承担。 作者签名: 纠志酬日期:p f 年6 月侈日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定, 同意学校保留并向国家有关部门或机构送交论文的复印件和电子版, 允许论文被查阅和借阅。本人授权华南理工大学可以将本学位论文的 全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫 描等复制手段保存和汇编本学位论文。 保密口,在年解密后适用本授权书。 本学位论文属于 不保密囤。 ( 请在以上相应方框内打“”) 作者签名: 导师签名: 多l 志、刚 唆磊孕 日期:2 驴5 年0 月侈日 日期:z 心年6 月f 多日 第一章绪论 1 1 语音识别研究概述 第一章绪论 语音识别技术在计算机硬件的发展的推动下,经过5 0 年的研究,特别是近十 年的快速发展,正进入一个应用的黄金时代。虽然其发展程度与人类在长期的社 会实践和复杂环境中逐步建立起了完善的语言听觉功能相比还处在初期阶段,目 前的语音识别技术已经基本具备了实际应用的基础,使它能广泛的应用与社会各 个方面的人机交互中“。 语音识别系统本质上是一种模式识别系统,主要包括语音信号预处理、特征 提取、特征建模和模式匹配等功能模块。一个语音识别系统主要包括训练和识别 两个阶段。无论是训练还是识别,都需要首先对输入的原始语音进行预处理,并 进行特征提取。一个典型的孤立词语音识别算法流程如图所示: 图卜1 语音识别系统框图 f ig u r e 卜。1r e c o g n i t i o r ls y s t e mf i o w 目前世界各国都加快了语音识别应用系统的研究开发,并已有一些实用的语 音识别系统投入商业运营。在美国语音识别系统的销售额逐年上升,由于使用了 语音识别系统,为企业赢得了巨额收入。 语音识别技术的应用分为两个发展方向:一个方向是大词汇量连续语音识别 系统,主要应用于计算机的听写机,以及与电话网或者互联网相结合的语音信息 查询服务系统,这些系统都是在计算机平台上实现的;另一个重要的发展方向是 硬件实现语音识别算法的研究,使语音识别算法能在集成电路芯片上实现。这个 华南理工人学硕士学位论文 方向主要是小型化、便携式语音的应用,如无线手机上的拨号、汽车设备的语音 控制、智能玩具、家电遥控等方面的应用。 典型的语音识别软件系统有i b m 的v i a v i o c e ;北京金耳麦一一言丰科技采用 i b m 的语音识别软件系统,如中文语音识别自动化股票报价系统,北京京信北斗 信息服务中心采用的语音点歌台;中科院模式识别科技公司的中文语音识别系统。 目前国外已经有语音识别芯片的销售,如美国s e n s o r y 公司r s c 系列产品, 可识别1 6 预先设定好的词,若采用特定说话人方式,经过训练,词汇量可扩大到 1 0 0 左右:p h i l i p s 公司近日推出的h e l l 0i c 语音识别芯片,可进行有限命令的 识别。 国内亦有科研机构进行语音识别芯片的研制,如中科院自动化研究所模式识 别国家重点实验室,但还没有产品销售。但是目前市面上的语音识别芯片识别基 本是用软件实现语音识别算法的。 从语音识别技术的发展可以看出,科学技术推动了社会发展,满足人们的需 求,社会需求也反过来推动科学技术发展。多媒体时代的来临,迫切要求解决自 动语音识别的难题,必然推动语音识别理论和应用研究的进展。预计未来十年内, 语音识别技术将进入工业、家电、通信、汽车电子、医疗、家庭服务、消费电子 产品等各个领域。语音识别芯片具有广阔的市场应用空间。 1 2 课题来源及背景 本项目为广东省工业攻关项目( 项目编号:2 0 0 3 1 3 1 2 5 0 1 ) 中的研究内容,该项目 的目标是研制个语音识别专用芯片。 该芯片具有以下的技术指标: ( 1 ) 微处理器内核采用哈佛结构和r i s c 指令系统,具有五级指令流水线,硬 件仿真的速度达到5 0 m h z 。 ( 2 ) 集成了3 2 位的乘法、除法和6 4 位的乘加单元,有利于进行复杂的数字信 号处理。 ( 3 ) 为了保证实时性,模板匹配算法d t w 采用硬件电路实现。 ( 4 ) 集成了j t a g 调试接口、i o 控制器、u a r t 串口、存储控制器等外围模块, 方便芯片的使用。 ( 5 ) 语音识别速度快,识别率高 虽然微处理器已经很成熟了,但遗憾是,由于我国集成电路设计与制造整体 水平较低,目前量产的m c u 产品种类少,较成功的如复旦微电子的i c 卡芯片。因 此尽管我国的家电、计算机、通信产品的整机能力已较强,以成为世界重要的整 第一章绪论 机生产基地,但所有的关键芯片均需要依赖进口,“空芯”化非常严重。 目前国外集成电路设计工艺已经进入亚微米( 0 1 8 微米、0 1 3 微米) 时代, 规模以达到百万门以上。而我国目前的设计水平,和世界先进水平有很大的差距。 集成电路设计与制造业已逐渐成为制约中国i t 产业持续高速发展的瓶颈。为了尽 快赶上世界先进水平,国家已制订一系列发展集成电路产业的优惠政策,并投入 大量资金,如9 0 9 工程的投入达1 0 0 亿人民币。国内大部分著名高校和科研机构 都加入到发展我国的集成电路产业的行列当中,从教学和集成电路设计方法研究, 专用芯片设计和单元库设计等多方面提升我国的集成电路产业水平”1 。 目前国内每年设计的集成电路品种虽然超过3 0 0 种,但大部分设计公司的设 计水平较低,在0 8 一1 5 u m 之间,多以专业应用领域里的专用集成电路为主,进 行通用型m c u 、c p u 设计的较少,除了一些在军事领域应用的专用的d s p 和c p u 之外,最成功的通用型c p u 是由归国的留学生李德磊博士创办的中芯微系统技术 有限公司推出代号为“方舟一1 ”的0 2 5 微米、3 2 位的c p u 芯片产品。另外,北 京大学计算机系副主任、博士生导师程旭领导的课题组,于2 0 0 1 年初研制出的 3 2 位和1 6 位两套指令系统的微处理器、代表了国内在m c u 领域的研究水平、离 商业利用还有一定的距离。 国内在i p 库建设方面还很落后,购买国外的i p 核价格非常昂贵,一个较成 熟的1 6 位的d s pi p 核的价格在3 0 、4 0 万美元之间,在使用上还有许多知识产权 的问题需要处理,比如每个产品需要另付多少版费,或者只能用于某个产品,不 能用于别的产品等。因而设计我们自己的i p 核有很大的意义,特别像m c u ,d s p 核,一个经过验证的i p 核可广泛应用家电,通信设备等嵌入式系统。 1 3 本文的主要工作及章节安排 全文分为4 章,第一章介绍了研究背景和课题来源等:第二章介绍了语音识 别芯片的总体设计描述及设计任务;第三章介绍了语音识别芯片各个功能模块的 详细设计,包括实现方法的原理、实现的技术、实验设计和验证等这章是论文的 主体内容;第四章包括设计总结等 华南理t 大学硕士学位论文 第二章语音识别芯片的总体设计 2 1 语音识别系统的软硬件划分 整个语音识别过程的运算过程是比较复杂的,从图1 1 可知整个识别过程中 计算量主要分布在预加重、加窗、提取l p c 参数、d t w 模块匹配等几个部分。语 音识别过程比较复杂,这里把运算量估算的重点放在最消耗系统资源的加减乘除 运算上。下表是做一次识别,语音识别系统运算量的估计,数据是来自参考文献 4 o 表2 - 1 语音识别计算量估计 t a b l e2 1w o r dr e c o g n i t i o nc a l c u l a t i o ne s t i m a t e 提取l p c 参数 运算模块预加重j m 窗d t w 运算 自相关系数s c h u r 算法 乘除法 2 木n 丰f p * n * fn * f k * p * f * f 2 加减法 n * f p * n * fn * fk * p * f * f 2 其中p 为线性预测分析的阶数,n ;t f s ,t 为每帧的时间长度,f s 为采样 频率,f 为模板帧数,k 为语音模块板数。 从表2 1 中可知语音识别d t w 算法的计算量为1 0 0 1 2 * 6 0 * 6 0 = 4 3 2 0 0 0 0 ( 这里 取t = 3 2 m s ,f s = 8 k h z ,p = 1 2 ,f = 6 0 ,k = 1 0 0 ) ,占全部运算量的9 0 7 。即计算量主要集 中在d t w 算法部分,为了提高计算速度,需要把d t w 算法模块用硬件实现,而其 它计算量较小的模块则用软件实现,以节省硬件资源。 这里估算下语音识别过程软件部分需要的微处理器的运算能力。从表2 1 可 以看出,软件部分的运算量比硬件部分的运算量小得多,但也需要微处理器具有 一定的运算能力。按表2 一l 计算,软件部分需要( 5 + 2 p ) n f = ( 5 + 2 1 2 ) 3 2 * 8 * 6 0 = 4 4 5 4 4 0 个周期完成。对于单周期指令的微处理器来说,只要大约0 4 4 m i p s 的处理 能力就可以在1 秒内完成这个计算了。实际上一般的微处理器的处理能力远远大 于0 4 4 m i p s ,如我们选取的o p e n r i s c l 2 0 0 内核,考虑设计情况,在外部存储器 取指令,总共需要3 个周期完成一个指令,可以算出2 5 m h z 时钟下可以达到大约 8 m i p s ,只需要0 4 4 8 = 5 5 m s 就可以完成这个语音信号预处理的过程。所以选取 o p e n r i s c l 2 0 0 是完全符合语音识别软件部分运算上的要求。 本语音识别芯片实现的基本思路和方法是采用软硬件协同设计的方法来设计 4 第二章语音识别芯片的总体设计 芯片,把语音识别过程分软件和硬件两部分进行。本设计利用免费且高性能的3 2 位r i s c 嵌入式微处理器内核,对该芯片的微处理器内核进行编程来实现控制和部 分语音处理功能。在语音识别过程中,模板匹配占有了大量时间,为了保证实时 性,模板匹配算法采用硬件电路实现。本语音识别芯片采用典型的f p g a a s i c 设 计流程来进行设计。 软件部分( 嵌入式微处理器)硬件部分 语音信号 - - - 语音特d t w 预处理 征 模板匹配 图2 1 语音识别系统软硬件划分框图 fg g u r e2 - 1s o f t w a r ea n dh a r d w a r efio wf o rr e c o g nitio ns y s t e m 曾经有人在8 位的嵌入式微处理器m c s 8 0 5 1 上实现了孤立词的语音识别,可 以达到9 6 4 的识别率。3 。采用软硬件协同设计的方法,把语音识别过程分软件 和硬件两部分进行,利用高性能的3 2 位r i s c 嵌入式微处理器内核,添加上相应 的语音识别硬件功能模块,来实现整个语音识别芯片的设计,可完全满足孤立词 语音识别的需求。 现有的语音识别系统基本采用软件编程实现的方法,在嵌入式应用中微处理 器的性能相对p c 机的c p u 差,完全用软件实现语音识别的算法会导致识别的速度 慢。如果全部利用硬件实现语音识别算法,虽然识别速度会提高不少,但会导致 芯片面积会很大,而且灵活性差。折中考虑,本芯片对语音识别过程分软件和硬 件两部分进行处理,来缩短识别时间。 在语音识别过程中,模板匹配算法较复杂,占有了整个识别过程的大量时间, 为了保证实时性,模板匹配算法采用硬件电路实现。语音识别的软件部分利用嵌 入式微处理器内核编程实现。 本项目的设计目的是采用软硬件协同设计的方法来设计出一个基于微处理内 核的语音识别芯片。按照语音识别处理的过程来看,该芯片需要包括两部分,一 部分是微处理器内核,用来执行语音识别处理的软件部分,另一部分是语音识别 硬件模块。本论文关注的是该微处理器内核的设计。 华南理工大学硕士学位论文 2 2 嵌入式微处理器的选取和应用 本论文的重点是微处理器的设计。进行微处理器内核的设计,首先需要解决 的r ;l 题要确定微处理器内核实现的结构,指令集和编译器,设计有以下方法可以 选择。 一是自己确定m c u 结构,指令集,做编译器,编写好各个模块,使用自顶向 下的设计方法这种设计方法耗费的人力和时间很大,特别是还要进行编译器的编 写根据实际的考虑,难以选择这种方法 二是选择现有可以利用的m c u 指令集和编译器。也使用自顶向下的设计方法, 自己确定结构和编写模块模拟实现相应的指令集。可以利用的指令集分商业的和 免费的: ( 1 ) 现有商业的3 2 位m c u 有a r m ,m i p s ,c o d e f i r e 等等,市面上应该最广泛是 a r m 但a r m 很注意对a r m 结构和指令集的法律保护,不允许擅自模拟a r m 的指令 集。事实上不少公司都是购买a r m 的内核,然后在内核的基础加上各种i p 模块, 来适应市场的需求推出市场”1 。 ( 2 ) 如果能够利用免费的o p e ns o u r c e 的m c u 核,在开发源码的基础上改造, 优化m c u ,添加所需要的功能,需要的人力和时间相对较少,成功机会也会相对 大些。可以预计的是如果在成功验证3 2 位m c u 的基础上,按照其总线协议,添加 各种i p 模块,可以实现功能相对强大的s o c 。 与其把时间花在完整设计m c u 上,不如把时间花在验证和优化m c u 上,在m c u c o r e 的基础上添加设计的i p 模块,这样做的风险也较小,设计出来的m c u 功能 更好或者容易使用,走得更远,为后续设计打更好的基础。所以本项目在o p e n s o u r c e 的3 2 位m c u 上进行验证,优化,增加所需要的功能来达到项目的需求。 i p ( i n t e l l e c t u a lp r o p e r t y ) 就是常说的知识产权,i pc o r e 通常指用于a s i c 、 a s s p 、p l d 等当中的预先设计好的电路功能模块。i pc o r e 大致分为软c o r e 、固 c o r e 和硬c o r e 。 软c o r e 是用硬件描述语言的形式描述功能块的行为。软c o r e 在某种程度上 说与计算机软件很相似,相对于硬c o r e 、固c o r e 来说,设计周期短、资金投入 少,开发也不需要耗资巨大的流片。由于通常不涉及物理实现的技术和工艺,因 此灵活性大、可重用性最好,同时在物理实现时也需要更多的附加工作。固c o r e 是以网表的形式存在的,完成了综合的功能块。它往往以某种技术或者工艺为基 础,因此灵活性小,但是在物理实现时需要的附加工作也少。硬c o r e 提供设计的 最终阶段产品:掩膜或者版图。通常只能用在指定的技术或者工艺上,因此没有 灵活性,但是由于可以直接用于流片,因此在物理实现的时候使用起来最简单”3 。 6 第二章语音识别芯片的总体设计 嵌入式微处理器软核相对硬核有很多优势,其中灵活性是主要的优点。嵌入 式微处理器软核的可配置参数可满足不同应用的需求。如果用户购买了成熟的解 决方案( 如硬核) ,那么用户要在设计目标和现有产品已有功能之间进行权衡,可 能得为不需要的外设支付费用,或者用功能很强大的外设完成特定的工作。这两 种情况中,你浪费了许多硬件资源和费用。若采用软核,你可以根据你的需求购 买和付费,或者自行设计功能模块,达到设计的需求的同时还节省硬件资源和费 用。 2 2 1 嵌入式微处理器简介 随着嵌入式微处理器和i p 技术的发展,目前已形成多种嵌入式微处理器软核, 下面简要介绍下面四种常见的3 2 位嵌入式微处理器软核,它们都可以应用于可编 程逻辑器件中,有的还可以应用于a s i c ,它们分别是:a l t e r a 公司的n i o s 。x i l i n x 公司的m i c r o b l a z e ,o p e n c o r e s 组织的o p e n r i s c1 2 0 0 和g a i s l e rr e s e a r c h 公司 的l e o n 2 。最后确定本项目所选用的软核。 f 1 ) n i o s 1 0 】【1 1 】 n i o s 是a 1 t e r a 公司针对其c p l d f p g a 开发和优化的嵌入式微处理器软核,是 a 1 t e r a 的s o p c ( s y s t e mo nap r o g r a m m a b l ec h i p ) 的核心组成部分。n i o s 3 0 版 本具有如下的特点。3 : ( 1 ) 五级指令流水线、哈佛结构的r i s c 内核 ( 2 ) 可配置为1 2 8 ,2 5 6 或5 1 2 个3 2 位的寄存器 ( 3 ) 可配置为1 6 位或3 2 位数据总线 ( 4 ) 三种可配置的乘法器 ( 5 ) 基于a v a l o n 片上总线 ( 6 ) 具有缓存c a c h e n i o s 自带可配置的外围功能模块有g p i o ,s d r a m 控制器,u a r t ,s p i , w a t c h d o g t i m e r ,d m a 控制器等等。其开发基本流程是:先在软件s o p cb u i l d e r 下进行n i o s 外围功能模块的配置,生成相应的网表文件和c 语言函数库,根据需 要可以利用网表文件在m o d e l s i m 仿真器中进行仿真:再利用生成的c 语言函数库 进行n i o s 程序的开发,这个过程在相应的编译调试环境c y g w i n 下进行,利用g n u 工具进行n i o s 程序的编译,调试和下载。 n i o s 的优点是灵活、功能强大、工具容易使用和易于开发,而且在a 1 t e r a 的 c p l d f p g a 中应用n i o s 是不需要支付任何费用的。已有厂商推出了n i o s 版本的 u c o s i i 和u c l i n u x 等嵌入式操作系统,来扩展n i o s 的应用范围。 ( 2 ) m i c r o b l a z e t l 2 华南理工大学硕十学位论文 m i c r o b i a z e 是x i l i n x 是哈佛结构的3 2 位嵌入式微处理器软核,支持x “i n x 的v i r t e x 和s p a n t a n 系列f p g a 。可应用于网络、通信、消费电子等复杂应用系 统。m i c r o b l a z e 包含了计数器、中断控制器、g p i o 和o u a r t 等功能模块,所有的 模块都是基于支持字节寻址的o p bv 2 0 总线。该软核具有如下的特点: ( 1 ) 三级流水线、哈佛结构、3 2 位r i s c 内核 ( 2 ) 3 2 * 3 2 位的寄存器 ( 3 ) 硬件乘法器( 如果器件提供) ( 4 ) 存储器接口控制器 x 儿i l q x 整合的开发环境支持m i c r o b l a z e ,可以生成所选设备的驱动核标准c 函数库,可以利用g n u 工具对m i c r o b l a z e 的程序进行编译和调试。实时操作系统 u c o s - i i 已经被移植到m i c r o b l a z e 上。 ( 3 ) l e o n 2 1 3 l l e o n 2 是可综合v h d l 描述的3 2 位微处理器软核,兼容s p a r cv 8 指令集,可 配置性强,适合于s o c ( s y s t e m o n a c h i p ) 设计。l e o n 2 由g a i s l e rr e s e a r c h 公 司维护,l e o n 2 的软核、开发工具和文档不断地升级。其v h d l 源码是基于g n ul g p l 协议开放的,允许在研究和商业环境中自由使用。l e o n 2 软核具有以下特点: ( 1 ) 五级流水线、哈佛结构 ( 2 ) 可配置硬件乘法器、除法器和乘法累加器等d s p 模块 ( 3 ) 具有指令和数据缓存 ( 4 ) 基于a m b a 2 0 总线协议 ( 5 ) 具有存储器接口控制器 ( 6 ) 支持片上调试 ( 7 ) 具有低功耗运行模式 l e o n 2 的编译和调试都是基于g n u 工具的,这些工具集成于l e c c s 这个软件中, 可运行在l i n u x 或w i n d o w s 的c y g w i n 下。g a i s l e rr e s e a r c h 公司针对这个软核 推出了开发板,而且l e o n 2 已经应用于实际的a s i c 中,如a t m e l 的a t 6 9 7 e3 2 位微处理器。e c o s 和u c l i n u x 等操作系统己被移植到l e o n 2 下。 2 2 2o p e n r i s c1 2 0 0 o p e n r i s c l 2 0 0 是本项目采用的微处理器内核,所以对它的介绍相对详细些。 o p e n r i s c l 2 0 0 ( 以下简称o r l 2 0 0 ) 是o p e n r i s c 系列r i s c 处理器内核的一员 “。o p e n r i s c 是由o p e n c o r e s 组织负责开发和维护的,免费、开源的r i s c 处理 8 第二章语音识别芯片的总体设计 器内核家族。o p e n r i s c 包括o p e n r i s c l 0 0 0 和o p e n r i s c 2 0 0 0 两个部分, o p e n r i s c 2 0 0 0 目前还只处于计划阶段。 o p e n r i s c l 0 0 0 的指令系统包括三大部分:o p e n r i s c 基本指令集 ( 0 r b i s 3 2 6 4 ) ,o p e n r i s c 向量d s p 扩展指令集( o r v d x 6 4 ) 和o p e n r i s c 浮点扩 展指令集( o r f p x 3 2 6 4 ) 。o r b i s 3 2 指令集包括:3 2 位整数指令、基本的d s p 指令、 3 2 位的l o a d 和s t o r e 指令、程序流程控制指令和特殊指令。o r b i s 6 4 指令集包括 6 4 位整数指令、6 4 位的l o a d 和s t o r e 指令。o r f p x 3 2 指令集包括单精度浮点指 令。o r f p x 6 4 指令集包括双精度浮点指令和6 4 位的l o a d 和s t o r e 指令。o r v d x 6 4 指令集包括向量指令和d s p 指令。此外,o p e n r i s c l 0 0 0 还支持自定义指令“。 o p e n r i s c l 0 0 0 的开发工作于1 9 9 9 年开始,第一个发行版本是o r l 0 0 1 ,发行 于2 0 0 0 年4 月,由v h d l 语言描述。支持o r b i s 3 2 指令集和基本的d s p 指令的o r l 2 0 0 出现于2 0 0 1 年7 月,2 0 0 2 年8 月基本成熟,改进和维护一直持续到现在。 o r l 2 0 0 是一种3 2 位、标量、哈佛体系结构、5 级整数流水线r i s c ,支持虚 拟存储器和基本的d s p 功能。默认的缓存是单通道直接映射的8 k b 数据缓存和单 通道直接映射的8 k b 指令缓存,每个缓存的分组尺寸为1 6 字节。默认的存储器管 理单元实现由基于6 4 个散列入口的单通道直接映射的数据后备式转换缓冲区和 基于6 4 个散列入口的单通道直接映射的指令后备式转换缓冲区组成。辅助功能包 括用于实时调试的调试单元,高分辨率嘀哒计数器,可编程中断控制器和电源管 理。其数据和地址总线接口符合w is h b o n e 标准“。 使用0 1 8 u 和6 层金属工艺,在3 0 0 m h z 的时候它可以提供3 0 0d h r y s t o n e2 1 m i p s 和3 0 0 m3 2 x3 2 的d s p 乘加操作的能力。 o r l 2 0 0 定位于嵌入式、移动和网络应用。它能够与同类的最新的3 2 位标量 处理器竞争,并且可以运行任何现代操作系统。竞争对象包括a r m i o 、a r c 和 t e n s i l i c a 的r i s c 处理器。 2 0 0 2 年1 2 月,“e et i m e s ”杂志发表了一篇名为“b u i l d i n gac u s t o me m b e d d e d s o cp l a t f o r mf o re m b e d d e dl i n u x ”的文章,介绍使用0 r 1 2 0 0 为基础的s o c 和 嵌入式l i n u x 的文章,自此,o p e n r i s c 开始得到广泛关注”。o r l 2 0 0 在2 0 0 3 年 3 月被瑞典一家公司采用,用于实现一个声音识别系统,在2 0 0 3 年6 月被美国加 州一家公司采用,用于实现一个定位系统,在2 0 0 2 年9 月被f l e x t r o n i c 公司选 中,用于集成在f l e x t r o n i c 的设计中,并提供商业的技术支持服务。2 0 0 3 年8 月,f 1 e x t r o n i c 使用a s i c 成功实现了一个集成o r l 2 0 0 ,1 0 1 0 0 自适应e t h e r n e t m a c 控制器、3 2 位3 3 6 6 m h zp c i 接口、 u a r t l 6 5 5 0 和存储器控制器的s o c 芯片, 并且成功的运行了u c l i n u x 和l i n u x 操作系统,图2 1 为该芯片的开发板。最新 的一个o r l 2 0 0 的实现由v i a s i c 公司于2 0 0 4 年8 月使用结构化a s i c 实现。 华南理t 大学硕十学位论文 圉2 2f l e x t r o n i c 基于o r l 2 0 0 的s o c 及基本系统1 f i g u r e2 - 2f ie x t r o n ico r l2 0 0 一b a s e ds o c a n ds y s t e m o r l 2 0 0 的标准组成的结构如图2 3 所示。 黟 c p u ,d s p 单元 图2 3o p e n r i s c l 2 0 0 的标准组成的结构框图1 f ie u r e2 - 3o p e n r i s c l 2 0 0s t a n d a r ds t r u c t u r e c p u d s p 是o r l 2 0 0r i s c 处理器的中央部分,图2 3 是c p u d s p 的基本框图。 0 r 1 2 0 0c p u d s p 只实现了o p e n r i s c1 0 0 0 的3 2 位部分。6 4 位部分、浮点和向量 运算没有在o r l 2 0 0 中实现。因此,o r l 2 0 0 只能处理o r b i s 3 2 指令,不支持 o r f p x 3 2 6 4 和o r v d x 6 4 指令。o p e n r i s c1 2 0 0 实现了3 2 个3 2 位的通用寄存器。 o p e n r i s c1 0 0 0 体系结构也支持寄存器的影子拷贝以实现运行上下文的快速切换, 但是这个特征还没有在o r l 2 0 0 中实现。 可编程中断控制器、嘀哒定时器、电源管理、调试单元大大增强了c p u 独立 工作的能力,对于软件调试和操作系统的支持简化了整体系统的设计。 1 0 兰三兰至童堡型堇苎塑璺竺堡生 掣鳟 格阳昂 图2 4o p e n r i s g l 2 0 0 的c p u d s p 的基本框图 f ig u r e2 - 4o p e n r i s c l2 0 0c p u d s pb a s es tr u c t u r e 综上所述,这些3 2 位嵌入式微处理器软核具有一些相同的特点,它们可配置 性强,都可以应用于可编程逻辑器件中,具有哈佛结构和指令流水线的r i s c 处理 器,软件上应用了g n u 的交叉编译工具,而且移植了一定的嵌入式操作系统。 在相同的资源利用条件下,在a l t e r a 的f p g a 上,n i o s 的表现要好于o p e n r i s c 1 2 0 0 和l e o n 2 。而且,在x “ir l x 的f p g a 上i i c r o b l a z e 的表现也好于o p e n r i s c1 2 0 0 和l e o n 2 。这是因为f p g a 供应商专门针对自己的f p g a 对自己的软核进行优化, 能够更加有效的利用f p g a 的资源来改善软核的性能,而且由于相应的开发工具易 于使用,所以,如果要在f p g a 中使用软核,建议使用相应c p l d f p g a 供应商提供 的软核。 但n i o s 和m i c r o b l a z e 的使用具有很大的限制性,基本上只能用于相应f p g a 供应商的c p l d f p g a 上。开发源代码的o p e n r i s c1 2 0 0 和l e o n 2 没有这样的限制 性,它们都是在l g p l 协议下可以被自由和免费使用,可以应用于f p g a 和a s i c 上。所以要使开发的微处理器软核具有更好的通用性和移植性,可使用o p e n r i s c 1 2 0 0 和l e o n 2 。l e o n 2 是基于流行的a r m 公司的a m b a 总线协议,可以和市场上基 于a m b a 总线的i p c o r e 实现兼容。o p e n r i s c1 2 0 0 是基于免费的w is h b o n e 总线协 议的,可以更好地利用o p e n c o r e s 组织上大量的基于w is h b o n e 总线的开放源码 i p 核,如p c i ,m a c ,c a n 等等。可根据实际情况选择合适的嵌入式微处理器软核和 外围i p 模块,构成符合要求的s o c 。 本项目选用o p e n r i s c l 2 0 0 软核,基于下面的原因: ( 1 ) 性能强大,符合项目的要求:基于v e r i l o g 硬件描述语占的源码开放,可以 自由改进且免费 ( 2 ) 编译器,仿真器等开发工具齐全,可进行应用程序的丌发,如l i l 2 u x 的移 植等等 华南理上大学硕士学位论文 ( 3 ) 基于w i s h b o n e 总线接口,可以方便的对o p e n c o r e o r g 上面的大量软核进 行i p 复用 ( 4 ) 可以用于a s i c 流片,且有成功的例子 由于我们的芯片是面向语音识别的,所以我们要去掉o p e n r is c l 2 0 0 内核的某 些不必要的部分,从而减小了设计的面积。而且对于o p e n r i s c l 2 0 0 的某些部件构 造可以进行改进。论文的后面会说明这些对微处理器的改进。 确定了微处理器内核,还要确定芯片内部互连的总线片上总线。 o p e n r i s c l 2 0 0 的标准总线是w i s h o n e 总线,所以在设计语音识别芯片时,所有自 定义的i p 均采用统一的w i s h b o n e 片上总线接口,这样可以方便地把i p 整合到芯 片中而快速构成新的系统。因为w i s h b o n e 片上总线是芯片内部互连的关键,所以 进行该语音识别芯片的设计的,需要熟悉对w i s h b o n e 片上总线标准应用。 该芯片采用了有三个主设备的w i s h b o n e 总线结构,分别是o p e n r i s c l 2 0 0 内 核的指令总线主设备、数据总线主设备和j t a g 调试控制的主设备,通过总线译码 器和总线仲裁器与具有w i s h b o n e 接口的从设备进行数据通信。总线仲裁器选择控 制总线的主设备,保证每个时刻最多只能有一个主设备获取总线的控制权。总线 译码器对从设备编址,每个从设备都由3 2 位地址线的最高八位来编址,总线译码 器对主设备发出的地址的最高三位进行译码来决定访问的从设备。 w i s h b o n e 总线具有一定的标准,具体的实现方法是没有规定的,所以对特定 的应用,考虑到面积和速度,需要对w i s h b o n e 总线进行优化设计。后面会论述该 如何设计w i s h b o n e 总线互连。 确定了微处理器内核和片上总线后,就需要确定需要设计的外围i p 模块,选 择外围的i p 模块需要考虑语音识别应用的特殊性,所以需要d t w 模块来进行硬件 的语音识别,还可以参考典型的嵌入式微处理器内核来设计,如基于a r m 7 内核的 $ 2 c 4 4 b 0 ,基于a r m 9 内核$ 3 c 2 4 1 0 等。 除了d t w 模块,还要确定其它i p 模块:j t a g 调试模块,u a r t 串口模块,i o 控 制器模块,存储控制器模块。为什么要设计这些i p 模块呢? 下面简要的说明这些 模块的作用、需要解决的问题和需要达到的设计目标等等。 一 茎三主里童兰! 型堇苎箜萱堡堡盐一 _ l _ _ _ - - - - _ _ _ - _ - _ _ - _ _ _ _ _ _ _ - _ _ _ _ _ l _ - - _ _ _ _ _ _ - _ _ _ _ _ _ _
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年数据中心消防试卷及答案
- 2025年数控磨床试题及答案
- 2025聘请临时工合同样本简版
- 2025劳动合同范本(合同样本)
- 城市轨道交通建设规划与城市更新策略研究报告
- 关于布展工程方案请示(3篇)
- 工程务工岗位设置方案(3篇)
- 2025年外国政府贷款类项目借款合同范本
- 2025年韩语等级考试题型及答案
- 2025无偿设备租赁使用合同范例
- 公务员面试人际关系题人际关系面试题及答案
- 2025年乡镇畜牧站动物检疫员招聘考试重点知识点梳理与解析
- 新沪教牛津版九年级上册英语全册教案
- 市场监督局知识培训课件
- Q∕SY 19002-2017 风险事件分类分级规范
- PLC技术应用ppt课件(完整版)
- 现代电力电子(研究生)课件
- 中国石油天然气股份有限公司关于操作服务人员业绩考核指导意见
- 注册安全工程《安全生产法律法规》知识讲解(PPT)
- 2019版外研社高中英语选择性必修四单词默写表
- 《活法》稻盛和夫著读书分享精品PPT课件
评论
0/150
提交评论