(信号与信息处理专业论文)基于tta架构的wsn专用微处理器的研究.pdf_第1页
(信号与信息处理专业论文)基于tta架构的wsn专用微处理器的研究.pdf_第2页
(信号与信息处理专业论文)基于tta架构的wsn专用微处理器的研究.pdf_第3页
(信号与信息处理专业论文)基于tta架构的wsn专用微处理器的研究.pdf_第4页
(信号与信息处理专业论文)基于tta架构的wsn专用微处理器的研究.pdf_第5页
已阅读5页,还剩76页未读 继续免费阅读

下载本文档

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

文档简介

中图分类号: u d c : 学校代码:1 0 0 5 5 密级:公开 盖蕊犬淫 硕士学位论文 基于t t a 架构的w s n 专用微处理器的研究 t h er e s e a r c ho fs p e c i f i cw i r e l e s sse n s o rn e t w o r kp r o c e s s o r ba s e do n t r a n s p o r tt r i g g e r e da r c h i t e c t u r e 论文作者王超 申请学位王堂亟 南开大学研究生院 二。一。年五月 南开大学学位论文使用授权书 根据南开大学关于研究生学位论文收藏和利用管理办法,我校的博士、硕士学位获 得者均须向南开大学提交本人的学位论文纸质本及相应电子版。 本人完全了解南开大学有关研究生学位论文收藏和利用的管理规定。南开大学拥有在 著作权法规定范围内的学位论文使用权,即:( 1 ) 学位获得者必须按规定提交学位论文( 包 括纸质印刷本及电子版) ,学校可以采用影印、缩印或其他复制手段保存研究生学位论文, 并编入南开大学博硕士学位论文全文数据库;( 2 ) 为教学和科研目的,学校可以将公开 的学位论文作为资料在图书馆等场所提供校内师生阅读,在校园网上提供论文目录检索、文 摘以及论文全文浏览、下载等免费信息服务;( 3 ) 根据教育部有关规定,南开大学向教育部 指定单位提交公开的学位论文;( 4 ) 学位论文作者授权学校向中国科技信息研究所和中国学 术期刊( 光盘) 电子出版社提交规定范围的学位论文及其电子版并收入相应学位论文数据库, 通过其相关网站对外进行信息服务。同时本人保留在其他媒体发表论文的权利。 非公开学位论文,保密期限内不向外提交和提供服务,解密后提交和服务同公开论文。 论文电子版提交至校图书馆网站:h t t p :2 0 2 1 1 3 2 0 1 6 1 :8 0 0 1 i n d e x h t m 。 本人承诺:本人的学位论文是在南开大学学习期间创作完成的作品,并已通过论文答辩; 提交的学位论文电子版与纸质本论文的内容一致,如因不同造成不良后果由本人自负。 本人同意遵守上述规定。本授权书签署一式两份,由研究生院和图书馆留存。 作者暨授权人签字: 三超 2 0 1 0 年5 月2 7 日 南开大学研究生学位论文作者信息 论文题目基于t t a 架构的w s n 专用微处理器的研究 姓名王超学号 2 1 2 0 0 7 0 2 5 7 答辩日期2 0 1 0 年5 月2 7 日 论文类别博士口学历硕十一硕士专业学位口高校教师口同等学力硕士口 院系所信息技术科学学院专业信号与信息处理 联系电话 15 9 0 0 2 9 2 3 5 5e m a i l w a n g c h a 0 8 3 0 9 0 6 y a h o o t o m c a 通信地址( 邮编) :南开大学西区公寓3 号楼l 门3 0 9 ( 3 0 0 0 7 1 ) 备注:是否批准为非公开论文 否 注:本授权书适用我校授予的所有博士、硕士的学位论文。由作者填写( 一式两份) 签字后交校图书 馆,非公开学位论文须附南开大学研究生申请非公开学位论文审批表。 南开大学学位论文原创性声明 本人郑重声明:所呈交的学位论文,是本人在导师指导下进行研究工作所 取得的研究成果。除文中已经注明引用的内容外,本学位论文的研究成果不包 含任何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文所 涉及的研究工作做出贡献的其他个人和集体,均己在文中以明确方式标明。本 学位论文原创性声明的法律责任由本人承担。 学位论文作者签名:王超2 0 1 0 年5 月2 7 日 非公开学位论文标注说明 根据南开大学有关规定,非公开学位论文须经指导教师同意、作者本人申 请和相关部门批准方能标注。未经批准的均为公开学位论文,公开学位论文本 说明为空白。 论文题目 申请密级口限制( 2 年)口秘密( 1 0 年)口机密( 2 0 年) 保密期限 2 0 年月日至2 0年月 日 审批表编号批准日期 2 0 年月 日 限制2 年( 最长2 年,可少于2 年) 秘密1 0 年( 最长5 年,可少于5 年) 机密2 0 年( 最长1 0 年,可少于1 0 年) 摘要 摘要 处理器核的设计是无线传感器网络w s n 应用中的关键技术。近年来随着 w s n 应用的普及,对处理器核的低功耗、高性能等方面的需求不断提高。通用 的微处理器往往不能满足实际应用中的各种需求,必须设计出针对w s n 的专 用微处理器。 本文首先对专用处理器核在无线传感器网络中的应用进行了深入研究,针 对几种常用的处理器设计方案,在分析与论证基础上,选定在计算性能和实现 灵活性均比较理想的a s i p 作为处理器核设计方案;其次在设计处理器核体系结 构时,综合分析c i s c 、r i s c 、v l i w 和t t a ,选用了低功耗较的t t a 体系架构; 设计了通用指令集,包括算术逻辑运算、程序流程控制、寄存器读写、数据访 问控制、中断处理等指令,设计出能完成运算、控制功能的处理器;然后设计 了符合8 0 2 1 5 4m a c 层规范的星形无线传感器网络协议h w c p , 在通用指令的 基础上设计并实现了处理m a c 和h w c p 路由的专用指令集;最后对专用处理器进 行仿真和测试,经过测试验证节点能顺利完成组网、增删节点和数据传输等多 项功能。本文设计并实现的无线传感器网络节点具有功耗低,处理速度快等特 点,更能适合无线传感器网络的需要。 关键词:无线传感器网络a s i pt t a 通用指令集专用指令集 a b s 仃a c t a b s t r a c t d e s i g no fc p ui st h ek e yt e c h n o l o g yi n w i r e l e s ss e n s o rn e t w o r k ( w s n ) a p p l i c a t i o n s r e c e n t l y , t h ei n c r e a s i n gp o p u l a r i t yo fw s na p p l i c a t i o n sl e a d st oa g r o w i n gn e e df o rc p u sl o wp o w e rc o n s u m p t i o na n dh i g hp e r f o r m a n c ew h i c hc a n n o tb em e e tb yu s i n gg e n e r a lm i c r o p r o c e s s o r s t h u s ,s p e c i f i cp r o c e s s o r sd e s i g n e d f o rr e a l - w o r l dw s n a p p l i c a t i o n sa r en e e d e d f i r s t ,t h i sp a p e rp r e s e n t sa l li n - d e p t hs t u d yi nt h ea p p l i c a t i o n so fs p e c i f i cc p u s f o rw s n b a s e do nt h ea n a l y s i so fs e v e r a lc o m m o nd e s i g nm e t h o d sf o rp r o c e s s o r s , w ec h o o s et h ea s i ps c h e m ed u et oi t sc a l c u l a t i o np e r f o r m a n c ea n df l e x i b i l i t y s e c o n d ,w em a k eat h o r o u g hc o m p a r i s i o no fc i s c ,r i s c ,v l i wa n dt t af o rt h e p r o c e s s o ra r c h i t e c t u r ed e s i g n ,a s ar e s u l t ,t t ai sc h o s e nf o ri t sl o wp o w e r c o n s u m p t i o n m o r e o v e lw ed e s i g nt h eg e n e r a li n s t r u c t i o n si n c l u d i n gi n s t r u c t i o n sf o r a r i t h m e t i cl o g i cc a l c u l a t i o n ,p r o g r a mf l o wc o n t r o l ,r e a d i n g w r i t i n gf r o mr e g i s t e r s , d a t aa c c e s sc o n t r o l ,i n t e r r u p th a n d l i n ga n ds oo n a sar e s u l t ,t h ed e s i g n e dp r o c e s s o r i sa b l et oa c c o m p l i s hc a l c u l a t i o na n dc o n t r o lp r o g r a m i n g ;b a s e do nt h ed e s i g n e d p r o c e s s o r , 8 0 2 15 4 m a cp r o t o c o l ( h w c p ) i sd e s i g n e da sw e l la s g e n e r a l i n s t r u c t i o n sf o rm a ca n dh w c pr o u t i n g ;f i n a l l y , s i m u l a t i o na n dt e s ti sc o n d u c t e d o nt h ed e s i g n e ds p e c i f i cp r o c e s s o es e v e r a lf u n c t i o n si n c l u d i n gn e t w o r kc o n s t r u c t i o n , n o d ea d d i t i o n d e l e t i o na n dd a t ad e l i v e r ya r es u c c e s s f u l l ya c c o m p l i s h e d t h er e s u l t s i n d i c a t e dt h a tt h ed e s i g n e dp r o c e s s o ri sm o r es u i t a b l ef o rw s na p p l i c a t i o n sd u et o i t sf a s tp r o c e s s i n gs p e e da n dl o wp o w e rc o n s u m p t i o n k e yw o r d s :w s n t t aa s i p g e n e r a l - i n s t r u c t i o n ss p e c i f i c i n s t r u c t i o n s i i 目录 目录 摘要i a b s t r a c t i i 第一章引言1 第一节课题背景1 第二节处理器国内外研究现状l 第三节a s i p 4 第四节论文结构6 第二章传输触发架构7 第一节体系结构概述7 第二节t t a 硬件描述9 第三节t t a 软件描述1 0 第三章微处理器指令集和体系结构1 2 第一节概述1 2 3 1 1 指令集1 2 3 1 2 哈佛存储器架构1 2 3 1 3 寄存器集1 2 第二节体系结构1 3 3 2 1 指令译码1 5 3 2 2 寄存器空间1 6 3 2 3 存储器组织1 7 3 2 4 伪冯诺依曼存储器映射2 0 3 2 5 伪冯诺依曼存储器访问2 2 3 2 6 数据对齐2 3 i i t 目录 3 2 7 时钟产生2 5 3 2 8 中断2 5 3 2 9 运行模式2 9 第三节通用指令集3 2 3 3 1 寻址方式3 3 3 3 2 前缀操作3 3 3 3 3 读写寄存器3 3 3 3 4 读写寄存器的位3 5 3 3 5a l u 的使用3 5 3 3 6 处理器状态标志位操作3 8 3 3 7 控制程序流程3 9 3 3 8 中断处理4 1 3 3 9 访问堆栈4 2 3 3 1 0 访问数据存储器4 2 第四章基于处理器核的无线网络协议设计4 4 第一节协议概述4 4 4 1 ,1i e e e 8 0 2 1 5 4 的物理层和l i l a c 层4 4 4 1 2 设备类型4 5 第二节h w c p 协议网络配置4 5 第三节地址分配4 6 第四节协议消息传递4 7 4 4 1 数据格式4 7 4 4 2 路由4 8 4 4 3 广播信息4 9 4 4 4 协议报告4 9 4 4 5 协议栈消息和服务5 0 第五节通信流程5 0 4 5 1 网络构建5 0 4 5 2 节点加入5 2 i v 目录 4 5 3 数据传输5 3 第五章专用指令集设计5 4 第一节设计目标5 4 第二节总体结构5 4 第三节m a c 协议模块5 5 5 3 18 0 2 1 5 4m a c 层帧格式5 5 5 3 2m a c 协议模块地址分配5 6 5 3 3m a c 协议模块工作流程5 7 第四节h w c p 协议模块5 9 5 4 1l t w c p 协议模块地址分配5 9 5 4 2 h w c p 协议模块工作流程5 9 第五节数据发送和访问控制模块6 0 第六章仿真与测试6 2 第一节t e s t b e n c h 结构6 2 第二节指令生成模块6 2 第三节反汇编模块6 4 第四节寄存器显示模块6 4 第五节时钟生成模块6 4 第六节测试用例的编写与结果验证6 5 第七章总结与展望6 6 参考文献6 8 致谢7 2 个人简历7 3 v 第一章引言 第一章引言 第一节课题背景 无线传感器网络w s n ( w i r e l e s ss e n s o rn e t w o r k ) 由大量部署在监测区域 内的,具有特定功能的微小传感器节点通过自组织的无线通信方式,根据环境 自主完成指定任务( 测量并传输温湿度、气体浓度、振动、光强等) 的分布式 智能专用网络系统,是微电子机械系统、传感器、嵌入式计算、无线通信等学 科交叉形成的新研究领域【l 圳。由于无线传感器网络强大的数据获取和处理能 力,以及兼容性、容错性、高保真、低成本和快速调度的能力,在国民经济、 国防建设的众多领域具有十分广阔的应用前景,美国的技术评论和商业 周刊在论述未来新兴技术时,无线传感器网络都是名列前茅【3 一钉。 国内无线传感器网络的研究水平相对落后,具有的自主知识产权较少,但 是发展无线传感器网络技术已经引起党和国家的高度重视。2 0 0 9 年温家宝总理 和工信部部长李毅中在多个场合呼吁加快中国的物联网产业,在易观国际近期 发布的中国物联网白皮书中称,作为物联网现阶段发展核心的无线传感器 网络产业,其市场规模将在未来两年内增长1 5 倍,达到4 0 亿元。 无线传感器网络的高速发展,通用的微处理器和微控制器已经不能满足无 线传感器网络节点主控芯片低功耗低成本的要求【5 一。为了掌握无线传感器网络 的核心技术,建立拥有自主知识产权的传感器网络软硬件平台,推动我国无线 传感器网络技术的发展并在国内外该领域技术竞争中取得领先地位,急需开发 出具有自主知识产权的无线传感器网络专用微处理器。 本文的研究工作基于天津市科技支撑计划重点项目,基于s o p c 的低功耗 无线传感器网络节点设计及组网应用研究( 项目编号:0 8 z c k f g x 0 0 5 0 0 ) 展开。 第二节处理器国内外研究现状 传统的处理器设计有两种方法。第一种是采用数字信号处理器d s p ( d i g i t a l s i g n a lp r o c e s s o r ) ,由于其体系结构适合数字信号处理,且可以通过软件编程实 现大部分的控制和运算功能【7 1 ,一度受到很多硬件工程师的青睐。d s p 能够灵 第一章引言 活的实现各种应用,开发简单、易升级,但通常运行速度慢,效率低【8 】,往往 在特定应用环境下无法达到对芯片性能、面积及功耗的要求 9 1 ,随着手持设备 的普及使用,针对电子产品的功耗限制更加严格,这也严重的束缚了数字信号 处理器在处理器设计中的份额【l 训。 第二种是采用专用集成电路a s i c ( a p p l i c a t i o ns p e c i f i ci n t e g r a t e dc i r c u i t s ) , 即根据现实的用户需求而设计出专门的运算处理单元完成主要计算工作,其设 计流程如图1 1 所示【1 1 】: 图1 1a s i c 设计流程图 相对于传统的数字信号处理器设计方案,a s i c 设计能够面向客户特定的需 要,而且在体积、功耗、设计、生产周期等方面具有明显的优势【1 2 1 ,但缺乏灵 活性,难以升级,而且随着集成电路工艺发展到深亚微米,a s i c 的设计与验证 及测试复杂度越来越高,其劣势主要表现在以下几个方面: 2 第一章引言 ( 1 ) 深亚微米技术的挑战:当集成电路的设计工艺到达深亚微米级别时, 面临许多设计上的新挑战,比如连线延时只能在布局布线之后才能测试具体的 数值,这将导致设计过程的不断迭代,甚至使设计方案不收敛;集成度更高导 致的功能过大,也是一个重点需要考虑的问题;另外还有信号完整性、时钟同 步等也将影响到具体的设计方案【l 引。 ( 2 ) 晶体管数量过多:i n t e l 公司的创始人g o r d o nm o o r e 对集成度做的预 测( 著名的摩尔定律) :晶体管集成度每1 8 - 2 4 个月就会翻一番。近年来增长 率虽然有所减缓,接近每两年或四年增长一倍,但是相对于最初的集成电路, 现在累计增长已超过1 6 0 0 0 倍。这不仅使得设计单个晶体管的难度增加,同时 也给集成电路的设计工具带来了巨大的挑战。 ( 3 ) 系统复杂度增加:随着系统集成度的提高,可在一颗芯片上实现许多 不同的功能,例如在数字电路中增加一些a d 、d a 转换电路以增强芯片的适 用性,这使得芯片的复杂度越来越高,相应的也提高了对芯片设计人员的要求。 ( 4 ) 过高的成本:一条i c 生产线的基本技术性能指标是可以生产的最小 晶体管宽度。随着工艺的不断发展,a s i c 掩模能达到的尺寸越来越小,相应的 掩模生产成本以指数级增长的函数关系如表1 1 所示,在1 4 0 2 0 0 纳米的工艺水 平下,一个芯片仅封装就需要花费数十万美元,甚至超过了制造芯片的设计人 员的成本。根据目前的形势推测,在2 0 0 9 年一片i c 芯片的设计与制造费用将 超过上千万美元。 表1 1 掩模成本与晶体管线宽的函数关系 工艺掩模成本 0 3 5 p m $ 6 00 0 0 0 2 5 p m $ 1 2 00 0 0 0 1 8 p m $ 2 5 00 0 0 0 0 9 p m $ 10 0 0 0 0 0 ( 5 ) 开发周期长:当今数字产品的更新速度极快,一个i c 产品的上市时 间决定了其产品的成败,较慢推出的产品则意味着根本不可能盈利。a s i c 漫长 的设计和制造周期使其很难达到日趋激烈的市场竞争要求【1 4 1 。 由此可见,无论是d s p 还是a s i c ,都难以满足激烈快速发展的应用对于 处理器设计的各种要求。为了在计算性能和实现灵活性上均达到较理想的指标, 第一章引言 一种新的处理器设计方法专用指令集处理器a s i p ( a p p l i c a t i o ns p e c i f i c i n s t r u c t i o n s e tp r o c e s s o r ) 正在被广泛使用。 第三节a s ip a s i p 即专用指令集处理器是处理器核设计领域的新方向。它采用一个通用 处理器核为基础,这个处理器核不仅能够支持一种完善的指令集,而且在芯片 尺寸、功率等方面能满足应用环境的绝大部分要求。然后设计人员根据应用的 实际需要,在这个处理器核的基础上增加具有特殊功能的相关硬件。从程序开 发的角度来说,这些新增加的特殊功能硬件就是在原有指令集的基础上通过扩 展而实现。这种指令集的扩展既可以通过将基本指令组合实现,也可以自行开 发新的特殊内容指令,如双字互换指令、正弦函数指令掣1 5 】。a s i p 设计的好处 主要体现在两个方面: ( 1 ) 在实际运用中a s i p 处理器需要使用的指令数量往往只占指令集的一 小部分。通过分析各指令的使用频率,削减不必要的指令,能够减少资源占用 量,这样不仅降低了成本,而且使处理器核在性能上得到较大的提升。 ( 2 ) a s i p 设计方法综合了d s p 的优势,只需在原有芯片进行少量修改就 可以快速设计出适应特定应用的新芯片,省去了大量的芯片设计、验证与测试 工作,大大缩短了芯片开发周期和上市时间,从而节省了芯片的开发成本与费 用,增强了芯片在数字产品市场中的竞争力【1 6 1 。 总之,a s i p 处理器不但结合了d s p 等通用处理器和a s i c 的优点,而且能 够解决两者所面临的问题,因而受到了越来越多的研发人员及芯片厂商的关注。 国外对a s i p 的研究和应用较早,在1 9 8 2 年就有应用于视频的第一个定点 d s p ,它定制特定功能模块,开发针对视频领域的d s p 算法。近年来,a s i p 处理器的主要研究领域扩展到无线通信网络方向。当前有许多公司推出了a s i p 处理器产品,比如,c i s c os y s t e m s 公司的x t e p r o ,m a t s u s h i t a 公司的a r c t e c h , c o n e x a n t 公司的j a z z ,3 d s p 公司的d s p 6 f ,s i m e n s 公司的c a r m e ld s p ,n e c 公司的v i s a t e c 。这些产品都是在性能高度可配置的处理器基础上,根据特定要 求进行功能优化,同时提供功能单元自动产生器、可重定向编译器等完备的开 发工具的支持,加速整个设计流程。 针对a s i p 设计的一般流程,目前主要有两种主流思想。g l o r i a 1 7 】中定义在 a s i p 设计中的步骤如下: 4 第一章引言 ( 1 ) 首先针对具体的应用,分析其行为特征; ( 2 ) 对体系结构的各项参数值作出评估; ( 3 ) 在仿真平台设计出具备加速功能的特殊功能单元s f u ( s p e c i a l f u n c t i o nu n i t ) ; ( 4 ) 在硬件平台上设计实现s f u 。 m a n o j 等人【1 8 】将a s i p 设计流程更详细的划分步骤见图1 2 图1 2m a n o j 的a s i p 设计步骤 ( 1 ) 应用分析。设计者首先针对目标应用程序集、设计约束条件、测试数 据进行分析,通过分析得到硬件综合条件和指令集产生的条件;通过高级语言 编写的应用不仅需要静态分析和动态分析,而且需要采用一些适当的中间格式。 ( 2 ) 预测架构设计空间。根据步骤一和给定的设计约束条件,对一系列可 能的体系架构进行性能的评估,选择性能和功耗合适且硬件成本最低的体系架 第一章引言 构; ( 3 ) 生成指令集。针对应用程序和选择的体系结构生成专用指令集,这套 指令集在代码生成和硬件综合步骤中使用; ( 4 ) 生成代码。针对特定的应用或生成的指令集,通过编译器生成器或者 可重定向代码产生器用于生成代码; ( 5 ) 硬件综合。使用a s i p 临时架构和专用指令集进行硬件综合,一般是 先用v e r i l o g 或v h d l 描述寄存器传输级r t l ( r e g i s t e rt r a n s f e rl e v e l ) 代码, 然后用e d a 工具进行综合。 a s i p 设计大体上遵循此流程,不同的a s i p 设计者在可重构体系结构设计 空参数选择、设计约束、可重定向软件工具链等具体方法上会有所不同。 第四节论文结构 全文共分为七章: 第一章:介绍本课题的研究背景,以及选用a s i p 设计方法的原因; 第二章:介绍传输触发架构的体系结构及其优势所在,这是本文研究的基 础: 第三章:详尽描述了微处理器的体系结构、指令集、系统功能模块及外设 模块,这是本文的核心内容之一; 第四章:设计处理器的通信协议并完成通信过程,这是本文的核心内容及 创新点; 第五章:简要实现专用指令集,这也是本文的创新点之一; 第六章:设计测试平台,测试处理器的各功能模块,比较性能,分析测试 结果; 第七章:总结已完成的工作,对未来的研究内容做出规划和展望。 6 第二章传输触发架构 第二章传输触发架构 第一节体系结构概述 处理器有多种体系结构。最初的复杂指令集计算c i s c ( c o m p l e xi n s t r u c t i o n s e tc o m p u t i n g ) 架构的缺陷在于随着应用的增多必须不断的扩大指令集,而在 指令集中的不同指令的使用频率相差极大,2 0 的指令被重复使用,占整个程 序代码的8 0 ,而另外8 0 的指令却极少使用,在程序中仅占2 0 ,这种体系 结构很不合理。 1 9 7 9 年美国加州大学伯克利分校提出的精简指令集计算r i s c ( r e d u c e d i n s t r u c t i o ns e tc o m p u t i n g ) 是一种单指令单操作模式。r i s c 并非只是简单的减 少指令,而是尽可能的优化处理器结构以提高运算速度。r i s c 结构有限选取使 用频率最高的简单指令,避免复杂指令,将指令长度固定,指令格式和寻址方 式种类减少;以控制逻辑为主,不用或少用微码控制等措施来达到以上目的。 在使用相同晶片技术和时钟频率的情况下,r i s c 系统的运行速度是c i s c 的2 4 倍,并且r i s c 处理器的设计更为简单,但是r i s c 体系的处理器使得程序开 发的代码量变得非常大,而且需要更快的记忆体。 美国m u l t i f l o w 和c y d r o m e 公司于2 0 世纪8 0 年代提出的超长指令字v l i w ( v e r yl o n gi n s t r u c t i o nw o r d ) 是一种单指令多操作的体系结构。v l i w 处理器 在一个长指令字中赋予编译程序控制所有功能单元的能力,使得编译程序能够 精确地调度在何处执行每个操作、每个寄存器存储器读和每个转移操作。v l i w 类计算机在传统上被设计成没有高速缓存,主要处理反复循环、向量化的代码。 这些限制意味着内存延迟是固定的,转移方向是在编译时就能预测的。由于在 v l i w 体系结构中指令并行性和数据移动完全是在编译时规定的,处理器只需 简单执行编译程序所产生的记录,因而大大简化了运行时资源的调度,一个简 单的v l i w 结构图如图2 1 所示。 v l l w 处理器包含一个被功能单元共享的多端口寄存器文件,还包含一个 将功能单元的输出值转移到输入值的迂回电路。迂回电路通过寄存器文件以达 到最大限度利用功能单元的目的。由于在v l i w 中是通过增加功能单元来增加 指令集并行,所以寄存器文件和迂回电路必须按照最复杂的情况设计,即使这 7 第二章传输触发架构 b y p a s s b u s e s 图2 1 简单v l i w 结构 些情况几乎不发生。在双操作数指令中应用寄存器文件最复杂的模式需要每个 功能模块执行三个端口( 两个读,一个写) 访问寄存器文件,这增加了寄存器 文件的复杂程度。同时随着功能模块数量的增加,迂回电路的复杂程度也迅速 增加。这些都极大的限制了v l i w 架构的可扩展性【1 9 】。 由于v l i w 结构的局限性,c o r p o r a a l 提出了传输触发架构t t a ( t r a n s p o r t t r i g g e r e da r c h i t e c t u r e ) ,其基本思想是减少寄存器文件和迂回电路的复杂性。在 t t a 中,通过减少寄存器文件的端口数量来降低寄存器文件的复杂程度,并通 过使寄存器文件与功能单元成为相同的架构级别来降低迂回网络的复杂性【2 0 】, 其结构图如图2 2 所示。 c e n t r a l _ i 畸 p r o c e s s i n g 套 撕吁豇 耋 b o g 一 e 警 _ l h 一 案 0 耋 ! j r f i i q g - o g i n s t r u c t i o ni n s t r u c t i o n g f e t c hd e c o d e - r 弯 u n i tu n i t 量 罂 h 一 与r f | 2 图2 2t t a 结构图 8 第二章传输触发架构 此外,传统程序执行模式中,执行一个特殊的程序操作后触发相关的数据 传输的方式在t t a 中也同样适用。 第二节t t a 硬件描述 t 1 a 处理器包括功能模块f u s ( f u n c t i o nu n i t ) ,寄存器文件r f s ( r e g i s t e r f i l e ) 、互联网络、逻辑控制、独立指令集和数据存储器,图2 3 展示了t t a 处 理器架构。 图2 3t t a 处理器结构 互联网络用于在f u s 和r f s 之间传输数据。它由数据总线和连接孔构成。 连接孔有输入和输出两种类型,输入连接孔用来将数据从总线传输到功能模块, 输出连接孔将功能模块的结果输出到相应的总线。输入连接孔通过多路复用器 执行,而输出连接孔通过多路解复用器执行。互联网络的连通性可以优化应用, 这使得连接孔的结构变得简单。同时,总线容量的负载能力降低可以获得更快 的数据传输速度。 f u s 执行计算,它们互相独立并且不依赖于互联网络。一个f u 包括三种 寄存器:操作数寄存器,触发寄存器和结果寄存器。f u 的输入数据将存入操作 数寄存器和触发寄存器。f u 可以有多个操作数寄存器。当数据存入触发寄存器 后,f u 开始根据操作设置来执行相关操作。 r f 提供用于存储临时值的通用寄存器( g p r s ) 。它们被分成几个部分,每 个部分都可以通过自己的输入孔和输出孔进行访问。一个r f 部分的输入孔和 输出孔的数量可以通过程序调整。每个r f 部分可以有不同数量的通用寄存器。 9 第二章传输触发架构 逻辑控制在控制单元内部执行。控制单元由四个操作单元组成:一个指令 提取单元i f u ( i n s t r u c t i o nf e t c hu n i t ) ,一个指令解码单元i d u ( i n s t r u c t i o nd e c o d e u n i t ) ,一个立即数单元和一个条件执行单元。i f u 从指令存储器中提取指令并 传输到i d u ,在i d u 中将它们解码,并激活相应的连接孔,通过总线将数据传 输。由于一条总线在一个时钟周期内进行一次数据传输,所以在t t a 处理器中 有多少数据传输总线就能同时进行多少数据传输。t t a 的指令格式如图2 4 : 图2 4t t a 指令格式图 在这个单一数据传输指令中的一段叫做传输槽( m o v es l o t ) 。一个传输槽包 括三个部分:执行条件i d ,目的i d 和源i d 。目的i d 表示输入连接孔通过总 线从哪儿读数据;源i d 表示通过总线写数据的输出连接孔;执行条件i d 用来 判定数据传输是否通过总线。最后一段保留的立即数字段用于保存长的立即数 【2 i i o 第三节t t a 软件描述 传统的操作触发架构o t a ( o p e r a t i o nt r i g g e r e da r c h i t e c t u r e ) 都是在用运算 指令编程操作的过程中触发数据传输,而t t a 架构相反,在互联网络进行数据 传输时触发运算指令。在这种架构中只支持一种操作方式:将数据从源地址传 输到目的地址的操作。源地址可以是一个寄存器或是一个输出功能模块,目的 地址可以是一个寄存器或是一个输入功能模块。 在t t a 处理器上编写一个操作过程包括把操作数传送一个可以执行此操作 的功能模块的输入寄存器,在操作完成后将该功能模块的输出传送到另一个功 能模块或者一个寄存器文件。整个操作过程就像是将数据传送到功能模块的触 发寄存器的副作用。 一个o t a 的操作包括三个传输过程:传送操作数,传送触发,传送结果。 例如:a d dr 3 ,r l ,r 2 这条指令将r 1 寄存器和r 2 寄存器的值相加,将结果存入r 3 寄存器。而在 l o 第二章传输触发架构 t t a 程序模型中可以转换为以下三个操作: r l - a d d o r 2 - a d d t a d d r 3 第一步操作将操作数移动到一个加法单元的操作数寄存器,“a d do ”表示 传送操作数的输入( 操作数) 连接孔开始工作;第二步操作表示触发传输和输 入触发连接孔“a d d _ t ;第三步操作是结果传送到寄存器r 3 。“a d d r 是传送结 果的输出( 结果) 连接孔开始工作【2 2 1 。 第三章微处理器指令集和体系结构 第三章微处理器指令集和体系结构 第一节概述 本章将详细介绍设计的无线传感器网络专用微处理器的各个功能模块和指 令集。本课题的设计目标是低功耗、嵌入式应用的微处理器,该微处理器为程 序存储器、数据存储器和外围设备提供一个共享的功能集,这个共享功能集为 开发微处理器硬件和软件系统提供了最大的可重用性【2 3 1 。 3 1 1 指令集 指令集所有指令长度为固定的1 6 位宽,基于t t a 的体系结构使得所有代 码指令被编码为一个简单的转移操作。所有指令要么将一个立即数写入目的寄 存器或指定存储器,要么在寄存器之间或寄存器和存储器之间转移数据。 这种简单的项级指令解码方式使得所有指令可以在一个单周期内执行。由 于所有c p u 操作仅在寄存器内被执行,任何新的功能可以通过简单地增加模块 寄存器实现,简单的指令集对于编译器的代码优化也提供最大的灵活性。 3 。1 2 哈佛存储器架构 微处理器中的程序存储器,数据存储器以及寄存器空间彼此分开,它们每 个可以通过独立的总线单独访问。这种哈佛结构的存储器结构有许多优势: 首先,对于不同类型的存储器可以有不同的字长,代码存储器必须1 6 位宽, 以符合指令字的尺寸。但是,系统和外围设备寄存器可以根据需要为8 位或1 6 位宽,由于数据存储器不要求存储代码,它的宽度也可以变化,并且能够达到 特殊应用的目的。 此外,由于c p u 仅通过寄存器访问数据存储器,因此有可能寄存器模块访 问存储器完全与主处理器独立开来,从而提供了直接存储器访问的框架。同样 也可能有超过一种类型数据存储器,通过不同的寄存器集来访问。 3 1 3 寄存器集 1 2 第三章微处理器指令集和体系结构 由于所有在微处理器中的功能都是通过寄存器被访问的,通过一个公共的 寄存器集提供公共的功能,通过直接访问算术逻辑单元a l u ( a r i t h m e t i cl o g i c u n i t ) ,循环技术寄存器以及数据指针寄存器,许多这些寄存器提供同等更高层 次操作代码,其他的寄存器,例如终端寄存器,提供公共控制和涵盖所有微控 制器配置功能。 公共寄存器集,也就是系统寄存器,包括如下: ( 1 ) a l u 存取和控制寄存器,包括工作累加寄存器和处理器状态标志; ( 2 ) 两个数据指针d p s ( d a t ap o i n t e r ) 和一个用于数据存储器访问的帧指 针f p ( f r a m ep o i n t e r ) ; ( 3 ) 用于快速和紧凑循环的自动减循环计数器; ( 4 ) 指令指针和其它分支控制访问点; ( 5 ) 堆栈指针s p ( s t a c kp o i n t e r ) 和一个指向1 6 位宽的专用硬件堆栈的 访问控制点; ( 6 ) 中断矢量i v ( i n t e r r u p tv e c t o r ) ,识别和屏蔽寄存器。 外围设备和其它随微控制器变化的功能是通过外围设备寄存器访问的。这 些寄存器被成组的分配到寄存器模块中,提供如下额外功能: ( 1 ) 通用接收发送u a r t ( u n i v e r s a la s y n c h r o n o u sr e c e i v e r t r a n s m i t t e r ) 串口; ( 2 ) 高速定时器和计数器; ( 3 ) 串行外围接口s p i ( s e r i a lp e r i p h e r a li n t e r f a c e ) 端口; ( 4 ) 硬件乘法器; ( 5 ) 实时时钟; ( 6 ) 通用数字i o 口。 第二节体系结构 本微处理器体系结构设计为模块和可扩展的,顶级指令解码极其简单,并 且基于是寄存器间的传输方式。寄存器被组织到功能模块中,并依次成为系统 寄存器和外围设备寄存器组阱】。图3 1 展示了模块结构和基本的传输线路。 存储器访问是基于程序存储器和数据存储器地址分离的哈佛结构。简单的 指令集和传输触发体系结构使得微处理器运行在非流水线执行模式,每条指令 能够在一个时钟周期内从存储器中取指,译码和执行。 1 3 第三章微处理器指令集和体系结构 图3 1 模块结构和基本的传输线路 通过3 个数据指针寄存器可以访问数据存储器,其中两个数据指针d p 0 】 和d p 1 是独立的1 6 位指针。第三个数据指针f p 是由一个1 6 位基指针b p ( b a s e p o i n t e r ) 和一个8 位偏移寄存器o f f s ( o f f s e tr e g i s t e r ) 组成。所有这三个指针 支持读操作加减功能,以及写操作的预加减功能。对于f p = b p o f f s ,增加减 少操作是在o f f s 中实现的,而不会影响b p 。堆栈功能由专用的1 6 位宽存储 1 4 第三章微处理器指令集和体系结构 器提供,深度是8 。片内存储器管理单元m m u ( m e m o r ym a n a g e m e n tu n i t ) 可 以通过系统寄存器是访问,这使得物理的程序和数据空间可以进行逻辑的重映 射,也因此容易在系统编程,以及快速访问数据表、数据队列和在程序存储器 中的物理位置上的常数。 3 2 1指令译码 每条指令被译

温馨提示

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

评论

0/150

提交评论