(计算机应用技术专业论文)noc上的多核间通信策略研究.pdf_第1页
(计算机应用技术专业论文)noc上的多核间通信策略研究.pdf_第2页
(计算机应用技术专业论文)noc上的多核间通信策略研究.pdf_第3页
(计算机应用技术专业论文)noc上的多核间通信策略研究.pdf_第4页
(计算机应用技术专业论文)noc上的多核间通信策略研究.pdf_第5页
已阅读5页,还剩53页未读 继续免费阅读

(计算机应用技术专业论文)noc上的多核间通信策略研究.pdf.pdf 免费下载

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

文档简介

大连理工大学硕士学位论文 摘要 随着c p u 的主频之路走到尽头,单处理器处理速度的提升的空间遇到了上限。多 核技术成为大规模提升性能的主流。倘若因循单核的发展思路,芯片设计将面临互连延 迟、存储带宽、功耗极限等性能提升的瓶颈问题。伴随着半导体工艺进入纳米时代,片 上网络( n e t 、0 r ko nc m p ) 为代表的多核技术已经成为下一代集成电路设计的主流技术。 本文设计了一个n o c ,使用o p e nc o r e s 组织提供的开源处理器o p e 恻s c l 2 0 0 和总 线w i s 皿o n e 。本文着重于多核系统的建立和多核间通信。单核o p e n s c l 2 0 0 内的 连接为总线方式,采用w i s 船o n e 总线规范。为达到单核与多核间通信相兼容,必须 对w i s 船饼姬总线信号进行封装。目的是保证s 耶o n e 总线规范中的控制信号和 信息在n o c 内的中间节点准确传输。 n o c 内,中间网络的拓扑结构是超级立方体,路由算法采用基于局部标识符的自适 应路由算法,消息以虫孔路由的方式逐步向前流动。对共享存储器的访问采用增加带宽 的方法,在不产生冲突时提高消息的并发访问。针对消息访问中的冲突,使用p 、v 信 号量机制进行同步。由于路由算法是自适应的,则必然会产生死锁。握手协议的思想是 先确认后转发,用于解决基于局部标识符路由算法产生的死锁问题。针对握手协议在多 点传输过程中的缺陷,轮询转发策略以输入端口消息转发的目标端口为基准,用来解决 握手协议过程中缓冲器不能及时释放;并且节省了确认过程消耗的时间。 通过试验结果看出:在超级立方体互联的n o c 中,基于局部标识符路由算法的n o c 中实现了消息从源节点出发,快速、准确的到达目的节点。握手协议解决了消息在传输 过程中无死锁。轮询转发策略同样在保证无死锁的同时,及时释放占用缓冲器的时间。 在同一时间段内,轮询转发策略相比握手协议转发更多的消息。最后指出了本系统存在 的不足,指出了未来研究的方向。 关键词:片上网络;o p e n r i s c l 2 0 0 ;w i s h b o n e 总线;局部标识;轮询转发 n o c 上的多核间通信策略研究 r e s e a r c ho fc o mm u n i c a t i o ns t r a t e g yf o rm u l t ic o r e s o nn o c a b s t “璩t w i m i n c r e a s i l l gt h e 舶q u e n c yo fc p uc o m e st 0t h ee n 也i ti st l a r dt oe n h a n c et h es p e e d o f s i n g l e p r o c e s s o r l a r g e - s c a l em i l l t i c o r et e c l l i l o l o g y嬲 t l l em a i l l 鳓r e 锄 e 仃色c t i v e l y i i l l p r 0 v e st l l ep e r f - o 珊a n c e i fs t i d d n gt os i n g l ec o r ed e v e l o p l n e n t ,c l l i pd e s i g n 、析hf - a c e 吐1 e 硫e r c o 皿e c td e l a y ,m e m o 巧b a n d 谢d 氓p o w e rl h i t sa n do t l l e rp e 怕珊a n c eb o 钍l e n e c k s h o 、e v e r ,a ss e m i c o n d u c t o rt e c h n o l o g yi r l t ot h en a n o m e t e re r 如n o c ( n e t 、v o f ko nc m p ) , r 印r e s e m e db ym u l t i c o r et e c h n o l o g y ,h 嬲b e c o m eam a i n s 臼e a mt e c l l i l o l o g y 部t :h en e ) 【t g e n e r a t i o no fi n t e 昏a t e dc i r c u i td e s i g n t h i sp a p e rd e s i g n e dan o cw m c hu s eo p e n - s o u r c e p r o c e s s o r sc a l l e do p e n 对s c l2 0 0b yo p e nc o r e so 玛a n i z a t i o i l s 锄da r b i t r a t e db u s 1 1 1 i sp 印e r f 0 c u s e so ne s t a b l i s 枷h gn m l t i c o r es y 妣m sa n dm m t i c o r e sc o n m l u m c a r t i o n s i n g l e c o r e o p e n r j s c12 0 0i sb a s e do nw i s h b o n eb u s i 芏lo r d e rt ob ec o m p a t i b l e 谢t l lw 1 s h b o n e b 璐u s e di l lo p e 删s c 12 0 0a n da s s w ei 响m a t i o ne x a c t l y 仃a i l s i i l i t t i n g 试也ei n t e m l e d i a t e n o d e s ,m u l t i c o r es y s t e mn e e d st oe n c a p s u l a t et h es i n g l e - c 0 sb l l s b a s e do nh y p e r c u b ei n t 豇c o n n e c t i o l l ,n o c 证t h e 缸e m e d i a t en o d e su s e s 洳t i v e l v l o c a l i d e n t i 锣r o u t ea l g o r i t l l m 1 1 1 f o m a t i o ni s 缸赳1 s i l l i t t e d i i lt l l ef - o 锄o f r o n n s w i t c h i n g f o ru s i n g 泖i v e l yr o u t m ga l g o r i 廿l m ,i i l f o 肌a t i o ni sp r o n et 0d e a d l o c k h o l d r e l e a s ep o l i c y i n v a j i d l ys o l v e st l l ed e a d l o c ka b o v et l l er o u t ea j g o r i t b m a c c o r d i n gt 0t h eh o l d r e l e a s ep o l i c y h a sd e f e c t se s p e c i a l l yi i li n u l t i c a s t p o l l - 缸a n s m i s s i o np o l i c yo nt h eb 2 u s i so fi 1 1 p u t t i n gp o r t s s o l v e st b eb u f i f e rc a p a c i 钾a n dc 0 1 1 f i n n i n gp r o c e s s t h r o u 曲t h er e s u l t sc 锄b es e e n ,b a u s e do nl i y p e r c u b ei i l t e r c o 肌e c t i o i l ,l o c a l i d e n t i 母 r o u t i n ga l g o r i t l l m 恤l en o cm a k e st l l ei l l f o n 】= l a t i o nw h i c hc o m e s 丹o ms o u r c en o d et o d e s t i i l a t i o nn o d e st oa c k e v ea c c 啪t e l ya i l dt h e l y p o l l 仃a n s m i s s i o np 0 1 i c ys o l v e st l l em g l l d e l a yh a p p e n e d i 1 1b u 丘e r a “a s t ,m i sp a p e r p o i n to u tt l l ed e f i c i e n c ya n dr e s e a r c hd i r e c t i o n k e yw o r d s :n o c :o p e n r l s c l 2 0 0 :w l s h b o n eb u s :l o c a i i d e n t i t y : p o t 阳n s m i s s i o n i i 大连理工大学硕士学位论文 大连理工大学学位论文版权使用授权书 本人完全了解学校有关学位论文知识产权的规定,在校攻读学位期间 论文工作的知识产权属于大连理工大学,允许论文被查阅和借阅。学校有 权保留论文并向国家有关部门或机构送交论文的复印件和电子版,可以将 本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、 缩印、或扫描等复制手段保存和汇编本学位论文。 学位论文题目: 作者签名: 导师签名: 大连理工大学学位论文独创性声明 作者郑重声明:所呈交的学位论文,是本人在导师的指导下进行研究 工作所取得的成果。尽我所知,除文中已经注明引用内容和致谢的地方外, 本论文不包含其他个人或集体已经发表的研究成果,也不包含其他已申请 学位或其他用途使用过的成果。与我一同工作的同志对本研究所做的贡献 均已在论文中做了明确的说明并表示了谢意。 若有不实之处,本人愿意承担相关法律责任。 学位论文题昌:d 2 坠塑堡垄! 生i 鱼。鲎盔竖叠整 作者签名:盔垫坐 日期:飞竺互l 年堕月二堑日 大连理工大学硕士学位论文 1绪论 1 1研究背景 c p u 自从计算机产生之日起,主频的速度就在不断的提高,当今提高主频的方法已 经走到了尽头。处理器的计算频率在2 0 0 0 年达到了1 g h z ,2 0 0 1 年达到了2 g h z ,2 0 0 2 年达到了3 g h z 。但直到今日仍然没有看到4 g l z 处理器在计算机中应用。热量和电压 成为最大的障碍。因此,i n t e l 和a m d 公司都无法再通过简单提升处理器的时钟频率设 计出下一代的新c p u 。面对主频之路走到尽头,i n t e l 和a m d 不得不寻找其它方式满足 计算量增大的同时提升处理器的功效,而最具实际意义的方式是增加c p u 处理器核的 数量。通过多个核同时工作,在相同时间内满足大量计算的需求。 多核处理器是指在一个处理器中集成两个或多个功能完整、处理数据独立的计算内 核。多核技术的开发源于人们认识到仅仅提高单核芯片的处理速度会产生过多的热量且 无法带来相应性能的改善,先前单核处理器的频率不能再进一步提升就是这个原因。人 们认识到,在先前处理器中若以多核处理器同时工作的速率工作,处理器产生的热量很 快会超过太阳表面温度。这是处理器内部器件乃至整个计算机无法容忍的。单内核处理 器技术的发展遇到了瓶颈,多内核技术则正好可以提升处理器的整体性能。 因此人们在不断的开发多核芯片,通过划分任务和线程应用能够充分利用多个执行 内核,并能在特定的时间内执行更多任务。通过在多个内核之间划分任务然后再执行, 多核处理器可在顺序的时钟周期内按照任务的不相关性执行更多任务。多核架构能够使 目前的软件按照一定的规格更好地运行,并构建一个将来软件编写更趋完善的架构。随 着向多核处理器【l 】发展的逐渐成熟,现有些软件无需被修改就可支持多核平台。操作系 统专为充分利用多个处理器而设计,且无需修改就可在某些特定机器上运行。为了充分 利用多核技术,需要在程序设计中融入更多思路,但设计流程与目前对称多处理( s m p ) 系统【2 】的设计流程相同,并且现有的单线程应用也将继续运行。因此设计流程还有待提 高,适应异构多核的处理器。现今,多线程技术的应用在多核处理器上运行时将显示出 卓越的性能和扩展性。此类软件包括多媒体应用、工程和其他技术计算应用以及诸如应 用服务器和数据库等中间层与后层服务器应用。多核技术能够使服务器并行处理任务, 而在以前,这可能需要使用多个处理机。多核系统更易于扩充,并且能够在更纤巧的外 形中融入更强大的计算处理性能,这种外形所用的功耗更低、计算功耗产生的热量更少。 因此,多核技术是处理器发展的必然趋势。 n o c 上的多核间通信策略研究 近5 0 年来,推动微处理器性能不断提高的因素主要有两个:半导体工艺技术的飞 速进步和体系结构的不断发展。每一次半导体工艺技术的进步都为微处理器体系结构的 研究提出了新的问题,开辟了新的领域。也导致处理器的频率得到提高。体系结构的进 展又在半导体工艺技术发展的基础上进一步提高了微处理器的性能。这两个因素相互影 响,相互促进。一般说来,工艺和电路技术的发展使得处理器性能提高约2 0 倍,体系 结构的发展使得处理器性能提高约4 倍,编译技术的发展使得处理器性能提高约1 4 倍。 但是今天,半导体工艺的技术提高越来越难,而体系结构却可以改变,因此这种规律性 的东西却很难维持。多核的出现是技术发展和应用需求的必然产物。 随着半导体工艺技术步入纳米阶段,一个芯片上集成上亿晶体管已经成为现实。据 i t r s ( i n t e m a t i o n a lt e c l l l l 0 1 0 9 yr d a d m a pf o rs e m i c o n d u c t o r s ) 预测,到明年,单个芯片 上的晶体管数目将达到2 2 亿个。如何有效地利用数目众多的晶体管是芯片体系结构必 须面临的新问题。倘若遵循单核处理器的发展思路,芯片设计将面临互连延迟、存储带 宽、功耗极限等性能提升的瓶颈问题。因此,人们普遍认识到,有必要研究新型的芯片 体系架构以适应性能增长和功耗下降同时发生这样看似矛盾的需求。多核技术是一条必 然之路。多核的优点就是能够用多个低频率核单元产生超过高频率单核的处理能效,获 得较佳的性价比。围绕多核的一系列技术问题业已经成为近期芯片研究的重点和未来的 主要潮流。 现今,多核技术的发展还不成熟。首先是软件部分,相应多核开发工具还没有开发 成熟的时候,能够合理运用多核技术的应用开发几乎无法进行。有人悲观地预测,应用 开发商们将花费几年时间重新编写程序以适应多核体系架构。一旦确立了这样一种转换 方法,工具厂商i d e 将开始推出帮助管理多线程开发复杂性的自动化扩展工具。这两个 过程很容易用上3 5 年的时间。具有全集成多线程控制结构的商业开发语言应当在5 7 年后得到广泛使用。因此,发展多核并不能像发展c p u 核心频率那样明显的迅速在桌 面应用程序层面看到效果,但整个处理器的计算速度的已经得到了明显提升。 1 2发展现状 多核处理器也称为片上多处理器( c l l i pn l u l t i p r o c e s s o r ) 1 3 j 。自1 9 9 6 年美国斯坦福 大学第一次提出片上多处理器( c m p ) 的思想和首个多核结构原型。2 0 0 1 年,i b m 推 出了第一个商用多核处理器p o w e r 4 。然而至今,多核处理器还没形成一套成熟的体系, 多核处理器的技术并未成熟,多核的潜力尚未完全展现出来。 大连理工大学硕士学位论文 1 9 9 6 年,美国斯坦福大学研制出一个h y d m 处理器,它是一个集成了4 个核心的处 理器,是一个新型的处理器结构。h y d r a 处理器在一个芯片上集成了4 个核心,核心间 通过总线结构共享片上二级缓存、存储器端口和i 幻访问端口,整体结构如图1 1 所示。 总线仲裁 c p u oilc p u llc p u 2l f c p u 3i +千千 i l oi c a c h e f l od c a c h dll 1 l c a c h el l ld c a c h d i l 2 l c a c h el 2 d c a c h d i l 31 c a c h el 3d c a c h d c p u o 内存iic p u l 内存iic p u 2 内存iic p u 3 内存 t 。 lj lj l +牟 o st 。 土l ll 1 r l 片 一绥li丰存拷口i ll ,oj 淑缱椿口i d r a m 主存i o 设备 图1 1h y d r a 处理器结构 f i g 1 1 pr o c e s s 0 ra r c h j t e c n l o fh y d 仡 目前,大家比较关注的并行处理技术主要有s m p 【4 】技术、m p p 【5 】技术、c o m a 【6 】技 术、机群【7 】技术和mm a 【8 】技术等。 s m p 的全称是对称多处理( s y h 衄e t r i c a lm u l t i p r o c e s s i n g ) 技术,就是指在一个计 算机上汇集一组处理器( 多c p u ) ,各c p u 之间共享内存子系统以及总线结构。它是相 对非对称多处理技术而言应用十分广泛的并行技术。在这种架构中,一台电脑不再由单 个c p u 组成,而是由多个处理器运行操作系统的单一复本,并且共享内存和这台计算 机的其他资源。虽然处理器同时使用多个c p u ,但是从管理的角度,它们就像一台单机 一样。系统把任务队列对称地分布于多个c p u 之上,通过并行的方法极大地提高了整 个系统的数据处理能力。所有的处理器都可以平等地访问内存、i o 和外部中断。在对 称多处理系统中,系统资源被系统中所有c p u 共享,工作负载能够均匀地分配到所有 可用处理器之上。但是一般来讲,s 结构的机器可扩展性较差,很难做到1 0 0 个以上 多处理器,常规的一般是8 个到1 6 个。 在s m 系统中增加更多处理器的难点是系统不得不消耗资源来支持处理器抢占内 存,以及内存同步两个主要问题。抢占内存是指当多个处理器共同访问内存中的数据时, 它们并不能同时去读写数据,虽然个c p u 正读一段数据时,其他c p u 可以读这段数 据,但当一个c p u 正在修改某段数据时,该c p u 将会锁定这段数据,其他c p u 要操 作这段数据就必须等待。 n o c 上的多核间通信策略研究 集群( c l u s t e r ) 技术是近几年兴起的发展高性能计算机的一项技术。它是一组相互 独立的计算机,利用高速通信网络组成一个单一的计算机系统,并以单一系统的模式加 以管理。其出发点是提供高可靠性、可扩充性和抗灾难性。一个集群包含多台拥有共享 数据存储空间的服务器,各服务器通过内部局域网相互通信。当一台服务器发生故障时, 它所运行的应用程序将由其它服务器自动接管。在大多数模式下,集群中所有的计算机 拥有一个共同的名称,集群内的任一系统上运行的服务都可被所有的网络客户使用。采 用集群系统通常是为了提高系统的稳定性和网络中心的数据处理能力及服务能力。 现今的6 4 位l 刀q 并行计算服务器可分为两类:分布式共享存储结构( d s m ) 和 集群系统。非均匀存储访问( m m a ) 是一种并行模型,属于d s m 这一类。n u m a 的物理内存分布在不同节点上,在一个处理器存取远程节点的数据,比存取同一点的局 部数据路径长,耗时多,所以是非均匀存储访问。 对称多处理也是一种共享存储器的多处理机结构。它的单一寻址空间、简单的编程 方式、操作方便是其容易普及的主要原因。大规模并行处理( m p p ) 属于机群系统这一 类体系结构,它的优势是可扩展性好,但需要并行编程和并行编译环境的支持,使用不 方便。n u m a 系统把s m 与集群的优势结合在一起,它既有s 御的可编程性,又具 有机群的可扩展性。实际上,这一优势的结合实为一种折衷,其中关键是寻求结合的途 径并确定结合点。 但是,总体而言,多核技术的应用在未来是一种不可阻挡的趋势。人们对性能要求 的最大化决定多核必将取代单核。 随着半导体工艺进入纳米时代,s o c ( s y s f t e mo nc l l i p ) 【州逐渐发展成熟。按照不同 的片上互连方式,多核s o c 可分为两大类:传统的基于总线的互连和基于网络的互连。 前者是现有s o c 的扩展,通过多总线及层次化总线等技术使得片上集成更多的处理器 核,从而实现高复杂度和高性能;而后者是近些年提出新的概念,即多处理器核之间采 用分组路由的方式进行片内通信,从而克服了由总线互连所带来的各种瓶颈问题,这种 片内通信方式称为片上网络( n 幽v o r k0 nac l l i p ,n o c ) l 川。 1 3本论文的内容和结构 本文在开源组织o p e nc o r e s 提供的处理器核o p e n s c l 2 0 0 的基础上,在f p g a 开 发板配套的i s e 模拟器上构建了一个片上多核系统,多核间实现了中间节点的单点和多 点通信问题,同时对其进行了调试与验证。在多处理器系统的中间网络中提出了一种有 效的基于局部标识符的路由算法,针对此自适应路由算法在传输过程中产生的死锁问 大连理工大学硕士学位论文 题,轮询转发策略有效的解决了这一难题。3 倍带宽的内存在同一时间内提高了对内存 的访问量。信号量机制解决了消息通信过程中的同步问题。然后对其进行了算法、内存、 消息同步进行实验。实验结果表明,在通信交付上,此路由算法的通信效率高。 论文结构如下: 第一章介绍了课题背景及研究意义、多核系统间通信的研究现状,说明论文结构及 内容安排;在第二章总结了多核间通信的基本概念、设计方法和0 r 1 2 0 0 的基本原理: 第三章详述0 r 1 2 0 0 的单核的实现过程、片上多核搭建、多核间的通信模式和、死锁方 法、共享内存和消息同步;第四章模拟多核间通信过程中中间节点的功能部件,验证多 核间通信的正确性和存储器的并行存储,验证消息在多核间正确传输。通过对死锁算法 的比较,进一步验证轮询转发策略的高效性;最后一章进行了总结,分析了目前设计中 存在的不足,以及未来应该继续开展的研究。 n o c 上的多核间通信策略研究 2 单核原理和片网络介绍 2 1 单核处理器的基本原理 o p e n s c l o o o 代码是开源的融s c 指令处理器簇。o r l 2 0 0 是一个3 2 位2 进制宽 度的实现,它的指令集被设计为g n u 软件开发工具和行为仿真器支持的c p u 硬件和软 件的接口。它是3 2 6 4 位位存储( s t o r e ) s c 架构,强调执行时间的效率、简单、低功 耗、可测量性以及多样性等特点,特别适合高高执行效率的网络及嵌入便携高计算机环 境。下面具体介绍o p e n r j s c l o o o 的原理。 2 1 1 0 p e n r i s c l 0 0 0 架构 o p e n 砌s c l o o o 包含执行的特征有:3 2 6 4 位架构、向量、d s p 和浮点指令、虚拟内 存支持、一致的高速缓存,能够支持s m p 和s m t ,以及支持快速的上下文切换等。它 较突出的特征是有几个指令扩展,提供可配置的通用寄存器、可配置的高速缓存和t l b 尺寸,而且支持动态电源管理,以及有用户提供的指令空间。 o p e i 埘s c l 0 0 0 架构的主要特征如下。 ( 1 )完全自由并且开放的系统架构。 ( 2 )用特定的物理地址空间提供线性、3 2 位或6 4 位逻辑地址空间。 ( 3 )简单的和长度一致的指令格式,不同的指令集扩展,指令集包括以下内 容。具有3 2 位宽度指令的o p e i 埘s c 基本指令集,它在内存的3 2 位边界对齐,并且在 3 2 位和6 4 位数据上进行操作。o p e i l i u s c 向量d s p 扩展,它有3 2 位位宽指令可操作 8 、1 6 、3 2 、6 4 位数据。 ( 4 )两种简单内存地址模式,内存地址计算方式可以表示为:寄存器操作数加上 一个有符号1 6 位立即数得到有效地址。寄存器操作数和有符号1 6 位立即数相加,这个 1 6 位立即数被存有计算过的有效地址的寄存器操作数更新。 ( 5 )大多数指令的两个寄存器操作数( 或一个寄存器和一个常量) 执行结构放在 第3 个寄存器中。 ( 6 )单个3 2 条目或窄1 6 条目通用寄存器文件。 ( 7 )保持尽可能全流水线运行的分枝延迟槽。 ( 8 )支持分开的指令和数据高速缓存m m u 或统一的指令和数据高速缓存 m 7 。 ( 9 )允许某一功能被执行的弹性构架定义。 大连理工大学硕士学位论文 ( 1 0 ) 不同且分开的例化简化了例外模型。 ( 11 ) 在寄存器集、高速缓存和m 仉,中支持快速上下文切换。 o p e n 融s c lo o o 命名规则是第1 个数字 1 表示的是o p e n 融s c l o o o 架构序列,第 2 个数字”0 表示的是具体应用的架构,后2 位数字表示实际应用中的具体配置。 2 1 20 r 12 0 0 介绍 o p e n 砒s c l 2 0 0 处理器是o p e nc o r e s 组织提供的一款基于g p l 的s c 处理器,它 属于o p e l l 砒s c l o o o 序列的一种。o r l 2 0 0 主要用于嵌入、简单处理和网络设备应用中, 并可以运行任何一种现代操作系统。其通用框架由c p u d s p 核心、直接映射的数据 c a c h e 、直接映射的指令c a c h e 、基于d t l b 的h a s h 表的数据m m u 和指令m m u 、电 源管理单元及接口、t i c k 定时器,调试单元及开发接口、中断控制器和中断端口、指令 及数据w i s 耶o n e 主机接口组成。 o r l 2 0 0 是基于o r b i s 3 2 的指令集,包括有3 2 位整数指令、基本的d s p 指令、3 2 位的l o a d 和s t o r e 指令、程序流程控制指令和特殊指令。p u 核心是o r l 2 0 0 砒s c 处 理器的核心,它接收程序流的指令,并以流水的方式先解码,然后后执行各种指令,读 取操作数据,存储后的数据结果和c p u 的各种状态。 o r l 2 0 0 指令集体现了对流水结构的支持。指令集中的所有指令长度相同,以简化 指令逻辑和译码逻辑,便于取指令i f 周期和译码i d 周期可以快速执行。指令集包括r 类型、i 类型和j 类型等较少的指令集,目的是简化指令周期。指令集中绝大多数指令 都是寄存器操作指令,只有l o a d 和s t o r e 指令涉及存储器操作,由此减少访问存储器的 时间。存储器中3 2 位对齐,一次就可以读入一条指令字,减少指令的读取时间。 o r l 2 0 0 中解决控制相关的方法如下:虽然程序有很多分分支,但多数情形下只能 选择一个条分支预测。条件分支是在条件满足的情形下才会发生跳转。根据这些条件, 分支预测技术在在跳转之前需要先预测下一条指令并执行并判断其正确性。在预测错误 的情形时,c p u 必须清理整条流水线,然后才回到先前的分支节点。这样一来,会损失 很多时钟周期,因此,预测性的正确与否,对流水线的效率起到关键的作用。 处理器还可以按完成的功能划分,c p u 的核心由指令单元( i i l s 仃i l c t i o nu i l i t ) 、通 用寄存器( g e n e r a l i p u 甲o s er e g i s t e r s ,g p 风) 、l o a d s t o r e 单元( l s u ) 、整数执行流 水线( i n t e g e re x e c u t i o np i p e l i l l e ) 、m a c 单元、系统单元( s y s t e mu 血) 及例外 ( e x c e p t i o n s ) 组成。c p u 核心与外部的接口有与指令高速缓存及指令m m u 的接口、 与数据告诉缓存及数据m i 、仉,的接口和系统控制总线接口。其中系统接口包括调试接口、 中断接口和s p r 接口,c p u 核心的功能模块如图2 1 所示。 n o c 上的多核间通信策略研究 图2 1 c p u 核心的功能模块 f i g 2 1 k e n 据l 胁c t i o nm o d u l ei nc p u c p u 核心模块逻辑电路由i f 、i d 、e x 、m a 以及w b 5 级流水线组成,:通过指令 集来控制c p u 的行为,使用特殊寄存器记录执行的状态,使用大量通用寄存器暂存数 据。c p u 核心使用的特殊寄寄存器有版本号寄存器v r 、单位出现寄存器u p r 、c p u 配 置寄存器c p u c f g r 、p c 配置寄存器p c c f g r 、n p c ( 下一个p c ) 寄存器、s r 、p p c ( 前一个p c ) 寄存器、e p c r ( 例外p c ) 寄存器、e b 恹( 例外有效地址) 寄存器及 e s r ( 例外s r ) 寄存器。 单元出现寄存器u p r 的作用是说明哪些单元模块目前是可用的,如幽c h e 、i c a c h e 、 i m m i l 、d i 】 1 1 1 1 u 、乘法( m a c ) 单元、电源管理及调试单元是否可用。c p u 配置寄存器 说明了c p u 的配置,如3 2 位还是6 4 位、通用寄存器数以及是否支持浮点运算。s r 寄 存器反映了c p u 运行的状态,如哪些例外和中断激活、各种标志位及c p u 用户模式等。 当c p u 执行例外处理时,需要保护c p u 运行的现场,这样从例外返回后可接着执 行原来的程序。o p e n o r 3 2 s 使用了寄存器n p c 、p p c 、e p c r 、e s r 、及e e a r ,当例外 发生时,e p c r 用来存储程序计数器值;e e a r 存储出错指令产生的有效地址,即例外 有效地址。e s r 用来拷贝存储当前的s r 寄存器,p p c 存储刚执行过的指令地址,n p c 存储下一个将执行的指令地址,p p c 和n p c 仅用于调试目的,被外部调试模块使用。 一8 一 大连理工大学硕士学位论文 2 1 3 w ls h b o n e 总线协议 w i s h b o n e 最早是由s i l i c o r e 公司提出的,o p e nc o r e s 组织现在负责维护,其i p 核可免费供用户使用。w i s 册o n e 采用主端和从端的架构。主端模块发出数据传送请 求,然后通过一个互联网络和从端进行数据交换。连接形式有点对点,数据流,共享总 线和交叉总线。 所有的s h b o n e 信号接口都是高电平有效的,并且都是以i 或者o 结束( i 表示输入,o 表示输出) 。( ) 表示该信号为总线信号,总线的宽度可以为l ,也可以 为大于1 的任何值。图2 2 所示为w i s h b 研屺总线规范中使用的主要信号。 系统信号 r s ti c l ki a d ro ( ) d a t i ( ) d a t ao ( ) v i eo ( ) s e lo ( ) s t bo a c ki c y co t a g no t a g ni 交换线路 r s tl c l kl a d ri ( ) d a tl ( ) d a t ao ( ) w ei ( ) s e ll ( ) s t bl a c ko c y ci t a g no t a g ni 图2 2w i s 衄0 n e 总线规范中使用的主要信号 f i g 2 2 m a i ns i 印a j si nw i s h b o n eb u s 下面具体介绍这些信号的基本功能。 ( 1 ) c l k - i c l l 凹:时钟信号,由s y s t e m 模块产生,并送入各个主设备和从 设备。s y s t e m 内部通常存在一个锁相环,将来源于芯片外的晶体振荡器或者时钟输入 信号整形、分频或者倍频为芯片内所需要的时钟信号。所有的w i s h b o n e 信号都被同 步到时钟信号上,包括复位信号。 一9 一 n o c 上的多核间通信策略研究 ( 2 )r s to 瓜s ti :同步复位信号,高电平有效。复位信号由s y s t e m 模块产 生,并送入各主设备及从设备。 ( 3 ) d a to ( ) d a ti ( ) :主设备和从设备的之间的数据信号,数据既可以 由主设备传给从设备,也可以由从设备传给主设备。一对主设备和从设备之间最多有两 条数据总线,一条用于主设备向从设备传输数据,另外一条用于从设备向主设备传输数 据。w i s h b o n e 规定数据总线的最大宽度为6 4 位,这一规定实际上时考虑到目前商用 处理器的最大位数为“,实际上数据总线的宽度可以使任意值。 ( 4 ) a d ro ( n m ) a d ri ( n m ) :地址信号,主设备输出地址到从设备。n 取决于p 核的地址宽度,m 取决于数据总线d a t o ( ) d a ti ( ) 的宽度和粒度。其 中,数据总线的粒度指的是数据总线能够一次传送的最小位数。在传送数据时,具体哪 些字节有效通过s e lo ( ) s e li ( ) 信号控制。 ( 5 )t g do ( ) 厂r g di ( ) 和t g ao ( ) 厂r g ai ( ) :t g do t g di ( ) 为 数据标签;其实就是讲附加于数据总线d a to ( ) d a ti ( ) 的标签。该标签可以用 于传送关于数据总线的额外信息,如奇偶校验信息和时间戳信息等;t g a o ( ) 厂r g ai ( ) 为地址标签,具体讲是附加在地址总线a d ro ( ) a d ri ( ) 的标签。该标签可 以用于传送关于地址总线的额外信息,如地址总线奇偶校验信息和存储器保护信息等。 ( 6 )t g co ( ) 厂r g ci ( ) :t g co 厂r g ci ( ) 为总线周期标签,该标签可以 用于传送关于当前总线周期所进行操作的描述,如操作类型、中断应答类型和缓存操作 类型等。 ( 7 ) a c ko a c ki 、e r ro e r ri 和r t y o 瓜t yi :主从设备间的操作结束方 式信号,a c k 表示成功,e r r 表示错误,i 州表示重试。由于操作总是在某一总线周 期内完成的,因此操作方式也称为”总线周期结束方式”。成功是操作的正常结束方式, 错误表示操作失败,造成失败的原因可能是地址或者数据校验错误,写操作或者读操作 不支持等。重试表示从设备当前忙,不能及时处理该操作,该操作可以稍后重新发起。 接收到操作失败或者重试后,主设备如何响应完全取决于主设备的设计者。 ( 8 ) s e lo ( ) s e li ( ) :有效数据总线选择信号,用来标识当前操作中数据 总线上哪些位是有效的,以总线粒度为单位。s e lo ( ) s e li ( ) 的宽度为数据总线 宽度除以数据总线粒度。 ( 9 )c y co c y ci :总线周期信号c y co c y ci 有效代表一个主设各请求总 线使用权或者正在使用总线,但是不一定正在执行总线操作。只有该信号有效时, s 船o n e 主设备和从设备其他信号才有意义。 大连理工大学硕士学位论文 ( 1 0 ) s t bo s 1 1 3i :选通信号,选通有效代表主设备发起一次总的操作。只有 当选通信号有效时,a d r - o 几i u ( ) 、d a t - o d a t - j ( ) 及s e l _ - o ( ) s e 【j ( ) 才有意义。 ( 1 1 ) 、) l ,eo 愚,eo :写使能信号,代表当前周期中进行的操作时写操作还是读 操作。l 代表写,o 代表读。 2 。2 片上网络的基本概念 片上网络( n o c ) 指的是在一个芯片上集成大量的可供计算的计算资源以及连接这 些资源的片上通信网络,具体如图2 3 所示。n o c 包括计算和通信两个子系统,计算子 系统( 图中由p e ,p r o c e s s i n ge 1 e m e n t 构成的子系统) 和通信子系统。其中,计算子系 统完成广义的计算任务,p e 既可以是现有意义上的c p u 、s o c ,也可以是各种专用功 能的口核或存储器阵列j 可重构硬件等;通信子系统( 图中由s 谢t c h 组成的子系统) 负责连接p e ,实现计算资源之间的高速通信。通信节点及其间的互连线所构成的网络 被称为片上通信网络( o n c l l i pn 嘶o r k ,o c n ) ,它用路由和分组交换技术替代传统 的片上总线来完成通信任务,其实是采用了分布式计算系统的通信方式。 图2 3 典型的n o c 结构示意图 f i g 2 3 c l 嬲s i cn o ca r c h i t e 曲山e n o c 上的多核间通信策略研究 下面具体分析一下n o c 的特点。基于分组路由方式进行通信的n o c 在片上通信方 式、功耗、基于重用的设计方法学、解决单一时钟全局同步等方面都具有优越性。 首先有利于提高通讯带宽。总线结构是现有成熟芯片架构的通信方式,随着半导体 工艺进入纳米时代,片上网络发展逐步成熟并克服了总线的各种瓶颈。虽然总线可以有 效地连接多个通信方,但总线是不易扩展的。虽然总线可被多用户交互使用,但一条总 线在某一时刻只能在两个用户间使用,其余的必须等待。等待机制导致了通信的瓶颈。 此外,片上通信是功耗的主要来源于庞大的时钟消耗与总线的功耗将占据芯片总功耗的 绝大部分。n o c 的网络拓扑结构提供了良好的并行通信能力和可扩展性,从而使得通信 带宽大幅度增加。此外,n o c 将长的互连结构变成交换开关之间互相连接的短连线,这 对功耗控制变得极为有利。另外,n o c 借鉴了通信协议中的分层思想,提供了从物理级 到应用级的功耗。 其次,有利于提升可重用设计。总线架构可扩展性和可重用性非常差,芯片计算能 力演变时需要跟随着处理能力的需求而变更设计( 如更高的内存宽度、更高的频率、更 灵活的同步或异步设计等等) ,每一代芯片的推出都伴随着程度不等的设计变更,这对 于开发人员而言是相当大的负担。若是将通信架构独立设计,并且运用更具弹性的技术, 对于缩短设计周期、减少开发成本都有很大的帮助。由于n o c 所使用的通信协议层本 身属于独立的资源,因而提供了支持高效率可重用设计方法学的体系结构。现有规模的 s o c 可以基于片上通信协议作为计算节点即插即用于n o c 的网络节点,给定的互连拓 扑结构使得芯片集成可以采用基于片上通信的设计方法( c o 衄u 1 1 i c a t i o n b a s e dd e s i 辨, c b d ) 来完成。通信和计算完全分离的技术( 也就是通信与计算的正交设计) 将重用范 围从计算单元可重用扩展到计算与通信单元皆可重用的层次,从而大大提升了重用设计 的水平。 再次,有利于解决全局同步的难题。纳米工艺所带来的各种物理效应使得片上全局 同步越来越困难。当采用5 0 衄工艺,时钟频率为1 0 g h z 时,全局线延迟会有6 1 0 个 时钟周期,时钟偏斜( s k e w ) 变得难以控制,而时钟树又是影响芯片功耗和成本的一个 主要因素。这些问题,随着集成器件水平的提高,时钟频率越来越高,将变得越来越突 出。n o c 内的片内网络通信方式,资源之间的短线互连和天然的全局异步局部同步 ( g a l s ) 时钟策略等特性是解决这些问题有效的途径。 总而言之,研究n o c 设计方法和设计技术是满足纳米工艺条件下高集成度芯片发 展的必然需求。 大连理工大学硕士学位论文 片上网络互连技术的研究内容主要有:拓扑结构、交换机制、路由算法、服务质量、 拥塞控制和路由器结构等6 部分,下面予以介绍。 2 2 。1拓扑结构 n o c 的拓扑结构,是指n o c 中各个节点的连接方式,即并行计算机互连网络的结 构。n o c 拓扑结构包括规则拓扑和非规则拓扑( 定制拓扑) 两大类,如图2 4 所示。 规则拓扑 非规则( 定 制) 拓扑 接网络 间接网络 网络 多维环绕 超立方 其他拓扑:线性阵列等 网络 多维环绕 超立方 l 广一专用拓扑 l 卜_ 一基于规则拓扑 卜_ 一分层网络 l 网络总线混合拓扑 图2 4n o c 拓扑结构分类 f 噜2 4c l 鹬s i f i c a t i o no f n o ct o p o l o g y 规则拓扑主要用在并行计算机互连网络中。主要可分为两大类:直接网络和间接网 络。直接网络内任一交换机节点都与p 核直接相连。流行的直接网络主要包括有二维 网络( 2 dm e s h ) 【1 1 】,二维环绕( 2 dt o m s ) 和超立方体【1 2 1 ,而k 元n 立方体【1 3 】则是 这三种网络的通用形式。此外,直接网络还包括一维线性阵列、环网、全连接、星形网 等。间接网络是节点处理器( i p ) 直接地通过网络彼此连接。主要包括树、蝶网【1 4 】、b e n e s 网【l 引、c 1 0 s 网1 1

温馨提示

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

评论

0/150

提交评论