(微电子学与固体电子学专业论文)高密度计算与多核系统设计技术研究.pdf_第1页
(微电子学与固体电子学专业论文)高密度计算与多核系统设计技术研究.pdf_第2页
(微电子学与固体电子学专业论文)高密度计算与多核系统设计技术研究.pdf_第3页
(微电子学与固体电子学专业论文)高密度计算与多核系统设计技术研究.pdf_第4页
(微电子学与固体电子学专业论文)高密度计算与多核系统设计技术研究.pdf_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

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

文档简介

高密度计算与多核系统设计技术研究 摘要 随着人们对计算机产品性能的要求越来越高,特别是对于工程上的高密度 计算,单处理器系统已不能满足人们的要求。伴随着集成电路工艺技术的发展, 多核技术已成为下一代集成电路设计的趋势。其中,如何提高多个核之间的通 讯效率成为片上多处理器系统( m u l t i p r o c e s s o r ss y s t e m o n c h i p 。m p s o c ) 设计的 关键。在中小规模的多核系统设计中,多以总线架构作为其片上通讯架构。传 统的总线架构无法满足并行通讯的要求,随着处理器数目的增多,通讯效率更 是随着降低,进而成为制约整体性能提升的瓶颈。本文在r t l 级设计并实现了 基于a x i 总线协议的通讯架构,在对a x i 总线通讯架构研究的基础上,对多核 系统进行高密度计算的潜能进行了挖掘,并对如何发挥多核系统的并行性以及 系统优化等问题进行了一些基础性的探索。论文的主要工作如下: 首先,本文设计并实现了基于a x i 总线架构多核系统平台,重点阐述了总 线架构中的各个子模块的设计。 其次,以矩阵运算为例对高密度计算进行了一些研究,探索不同工作负载、 通讯架构对多核系统性能的影响。大量的实验结果表明,在中小规模的设计中, 基于a x i 总线架构的多核系统具有优异的加速比性能。 最后,论文以m p e g - 4 视频解码为实际应用案例,就复杂计算问题在m p s o c 系统中的实现与优化问题进行了探索。直接将一个复杂计算问题在m p s o c 系统 中实现并不能达到理想的效果,必须根据硬件及算法特征,对算法进行优化, 使负载均衡才能发挥多核并行计算的优势。 关键字:m p s o c ,高密度计算,a x i ,加速比, r e s e a r c ho i lh i g h d e n s i t yc o m p u t i n ga n dd e s i g n t e c h n o l o g yo fm u l t i - c o r es y s t e m a b s t r a c t a sp e o p l eb e c o m i n gi n c r e a s i n g l yd e m a n d i n go np e r f e r m e c e ,e s p e c i a l l yf o r e n g i n e e r i n gh i g h d e n s i t yc o m p u t i n g ,s i n g l e p r o c e s s o rs y s t e mh a sn o t s a t i s f i e d p e o p l e sr e q u i r e m e n t se n o u g h a l o n g w i t ht h ed e v e l o p m e n to fi cp r o c e s s t e c h n o l o g y , m u l t i p l ep r o c e s s o r st e c h n o l o g y h a sb e c o m et h et r e n do fn e x t g e n e r a t i o ni cd e s i g n t h ek e yo fm p s o cd e s i g ni sh o w t oi m p r o v et h ee f f i c i e n c y o fc o m m u n i c a t i o nb e t w e e nm u l t i p l ep r o c e s s o r s i nt h es m a l la n dm e d i u m - s c a l e m u l t i c o r es y s t e md e s i g n ,w eu s u s l l yc h o o s eo n - c h i pb u sa si t sc o m m u n i c a t i o n s a r c h i t e c t u r e t r a d i t i o n a lb u sa r c h i t e c t u r e sc a n tm e e tt h er e q u i r e m e n t so fp a r a l l e l c o m m u n i c a t i o n s ,a n dw i t ht h en u m b e ro fp r o c e s s o r si n c r e a s e s ,c o m m u n i c a t i o n e f f i c i e n c y e v e nr e d u c e s ,a n db e c o m e sab o t t l e n e c kr e s t r i c t i n g t h eo v e r a l l p e r f o r m a n c e i n t h i s p a p e r ,w ed e s i g n a n di m p l e m e n tt h ec o m m u n i c a t i o n a r c h i t e c t u r eb a s e do na x ib u sp r o t o c o li nr t l - l e v e l o nt h eb a s i so fr e s e a r c ho n a x ib u sc o m m u n i c a t i o na r c h i t e c t u r e ,t h ep a p e rd i ds o m eb a s i ce x p l o r a t i o no f h i g h d e n s i t yc o m p u t i n g ,p a r a l l e l i s m e x o l o i t i n g a n dh o wt oo p t i m i z et h e p e r f o r m a n c eo fm u l t i c o r e t h em a i nj o bo f t h i sp a p e ri sa sf o l l o w s : f i s r t ,t h i sp a p e rd e s i g n sa n di m p l e m e n t sm u l t i c o r es y s t e m sp l a t f o r mb a s e d o n a x ib u sa r c h i t e c t u r e ,f o c u s e so nv a r i o u ss u b - m o d u l ed e s i g no ft h eb u s s e c o n d ,w i t hm a t r i xo p e r a t i o n s a sa ne x a m p l e ,w es t u d yo nh i g h d e n s i t y c o m p u t i n g ,e x p l o r e t h ei n f l u e n c eo fd i f f e r e n tw o r k l o a d a n dc o m m u n i c a t i o n a r c h i t e c t u r e e x p e r i m e n t a lr e s u l t s s h o wt h a ts m a l la n dm e d i u m s c a l ed e s i g n , m u l t i c o r es y s t e mb a s e do na x ib u sa r c h i t e c t u r eh a se x c e l l e n tp e r f o r m a n c eo f s p e e d u pr a t i o f i n a l l y , t h i sp a p e rc h o o s e sm p e g 一4v i d e od e c o d e ra sap r a c t i c a la p p l i c a t i o n c a s et oe x p l o r et h ei m p l e m e n ta n do p t i m i z a t i o no fc o m p l e xc o m p u t i n gi s s u ei n m p s o c i fw er e a l i z eac o m p l e xc o m p u t i n gd i r e c t l yi nm p s o c ,i tc a n n o ta c h i e v e d e s i r e dr e s u l t s a c c o r d i n gt ot h ec h a r a c t e ro fh a r d w a r ea n da r i t h m e t i c ,w em u s t o p t i m i z et h es y s t e mt ob a l a n c et h ew o r k l o a da n db r i n gt h ea d v a n t a g eo fp a r a l l e l c o m p u t i n gi n t op l a y k e yw o r d s :m p s o c ,h i g h d e n s i t yc o m p u t i n g ,a x i ,s p e e d u pr a t i o v 插图目录 图2 1 同构多核与异构多核4 图2 - 2 典型的n o c 结构图5 图2 - 3 传统的总线型多核结构一7 图2 4 基于a x i 总线的多核结构7 图3 - 1 四核m p s o c 系统平台9 图3 2 本地子系统1 0 图3 3 总线的基本结构1 l 图3 4r e a db u r s t 1 5 图3 5o v e r l a p p i n gr e a db u r s t 1 5 图3 - 6w r i t eb u r s t 1 6 图3 7 乱序传输示意图1 7 图3 - 8i d 信息结构1 7 图3 - 9 写数据互连结构框图1 8 图3 - 1 0 写数据通道互连框图2 0 图3 一l l 从设备读数据通道控制状态机2 1 图3 - 1 2s a g o 总线结构2 2 图3 - 1 3m a m d 结构2 2 图3 - 1 4s a m d 的互连结构2 3 图3 - 1 5 固定优先级2 4 图3 - 1 6 仲裁器优先权轮转示意图2 5 图3 - 1 7 仲裁器实现的伪码2 6 图3 - 1 8 写地址通道多路选择器2 7 图3 - 1 9 译码器实现伪码2 7 图3 - 2 0 总线桥结构图一2 9 图3 - 2 1 主设备地址通道控制状态机3 0 图4 - i 任务分配方式一示意图3 6 图4 - 2 任务分配方式二示意图3 7 图4 - 3 两种任务分配方式下矩阵求逆的执行的周期数3 8 图4 - 4 两种任务分配方式下矩阵求逆执行的加速比3 9 图4 - 5 矩阵流水乘法通讯示意图4 0 图4 - 6 不同维数矩阵实验的加速比4 1 图4 - 7 不同的构架下执行矩阵乘法需要的周期数( 四核) 4 3 图4 - 8 三种构架下四核m p s o c 执行矩阵乘法的加速比4 3 图4 - 9a x i 架构下执行不同维数的矩阵乘法的加速比( 八核) 4 5 图4 - 1 0 三种构架下八核m p s o c 执行4 x 4 维矩阵乘法的加速比4 5 图4 - 1 1 三种构架下八核m p s o c 执行8 x 8 维矩阵乘法的加速比4 6 图4 - 1 2 三种构架下八核m p s o c 执行1 6 x 1 6 维矩阵乘法的加速比4 7 图4 - 1 3 执行不同的维数矩阵乘法时处理器的效率4 7 图5 1m p e g - 4 视频解码流程5 0 图5 - 2 三种扫描方式5 2 图5 3m p e g - 4 解码的硬件平台框图5 5 图5 4m p e g - 4 在m p s o c 中实验结果。5 8 i x 图5 - 5 两个一维i d c t 6 0 图5 - 6m p e g - 4 流水结构框图6 l x 表格清单 表3 - 1 写地址通道信号一 表3 - 2 写数据通道信号 表3 - 3 写响应通道信号一 表3 - 4 低功耗接口信号一 表3 - 5a x i 与a h b 的差异一 表4 - 1n i o si i 处理器系列型号 表4 - 2 四核m p s o c 的f p g a 资源利用( s t r a t i xi if p g a ) 表4 - 3 八核m p s o c 的f p g a 资源利用( s t r a t i xi if p g a ) 表5 - 1 各个子任务执行周期数及占用比率 表5 - 2 优化前后性能对照表一 3 3 5 9 x l 6 0 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的研究成果。据我所 知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研究成果, 也不包含为获得 金丝些厶堂或其他教育机构的学位或证二砖而使用过的材料。与我一同 :i :作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文作糍:街冬峨 签字嗍年月日 学位论文版权使用授权书 本学位论文作者完全了解金起王些太堂有关保留、使用学位论文的规定,有权保留并向国 家有关部门或机构送交论文的复印件和磁盘,允许论文被查阅和借阅。本人授权金壁些盔堂可 以将学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手 段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 学位论文作者毕业斤去向: 工作单位: 通讯地址: 导师签名: 签字目期:年月日 电话: 邮编: 求 日 一砖 工启q 1分月 名 年 签者作 : 文 期 沧 日 位 字 学 签 致谢 首先感谢我的导师高明伦教授。一个人最大的幸运莫过于在他的青年时代 遇到一位品德高尚而又睿智的老师。高老师不仅是一位爱国爱校、学识渊博、 治学严谨的学者,而且是一位待人诚恳、平易近人的慈爱长者。能成为高老师 的学生是我一生的骄傲,高老师是我永远学习的榜样。 感谢李东生教授,宋宇鲲老师在我论文选题,架构的确定,修改以及最终 定稿的过程中给予的极大鼓励、指导和帮助。 感谢张多利老师,杜高明老师,耿罗锋博士,候宁博士在我日常学习、项 目实践和论文写作中给予的巨大帮助。感谢林微老师,邓红辉老师,贾靖华老 师对我的关心和热情帮助。感谢尹勇生老师,王晓蕾老师在课程上的指导,使 我受益匪浅。 感谢n o c 项目组的马亮、翟元杰、王白露、杜福慧、张云、付强等师兄 师姐的帮助。 感谢温海华、陈迎春、刘艳、何莹莹等同学与我的长期合作和对我的帮助。 感觉程贤文、吴腊狗、胡学权、黄俊俏、覃春平等同学在学习上的交流与帮助。 感谢范阿姨、胡剑、木子一在实验室日常事务中的辛勤劳动。 最后,感谢我的父母所给予我学业和生活上的关心、帮助和支持。 作者:肖福明 2 01 0 年4 月 第一章绪论 1 1 技术背景 随着计算规模的迅速增长,传统单核处理器结构已经不能满足成几何级数 增长的计算需求,特别是在复杂电磁信号处理、航天信息系统、移动通信、普 适计算等具有高实时性、高密度计算的领域。在上述应用中,采用多核系统芯 片( m u l t i p r o c e s s o r ss y s t e m o i l c h i p ,m p s o c ) 代替传统的单核处理器系统是 一个很好的选择。 工艺技术的不断进步,解决了在单颗芯片上集成多个处理器的难题,为多 核技术的发展提供了充分条件。另一方面,单纯依靠提高c p u 的频率来提升系 统性能的方法已经走到了尽头,纳米级半导体物理效应带来了诸如功耗、寄生 电容、漏电流等一系列复杂而难以解决的问题。由于这两方面的原因,多核技 术得以快速发展,并已成为新一代集成电路的主导趋势。 多核技术解决了很多单核系统的瓶颈问题,但在一颗芯片上集成如此多的 资源,在硬件和软件上都对设计人员提出了新的挑战。硬件上,核心问题是如 何设计实现最大限度的并行通讯架构;软件上,如何实现任务的调度以及在各 个核上负载的均衡【2 1 成为人们研究重点。受软硬件的限制,当前多核系统尚不 能完全发挥其应有的性能,本文以高密度计算为目标,从软硬件两方面就如何 提高多核系统性能进行了一些初步探索。 1 2 多核技术 多核技术指将多个处理器核集成在单颗芯片上的技术。多个处理器核之间 可通过共享存储器、路由等方式进行通讯,共同完成项任务。对于一个m p s o c 系统,可以从两个方面去评估它的性能:绝对性能和多各处理器并行计算所带 来的性能改进,后者通常称为加速比【3 】。加速比可以反映出采用多核并行执行 所带来的性能改进的程度。在相同频率下,把执行时间作为性能指标,在一个 处理器核和多个( 可以假设为n 个) 处理器核上运行具有相同输入配置的程序, 完成一个相同的任务,它们所需要的时间的比即为加速比。加速比除以一个多 核系统的处理器核数即得平均每个处理器核的效率n 剖。当以时钟周期数为时间 单位时,加速比可以简单的定义为: 。 单处理器系统总执行时钟周期数d 3 p eu p = 药砸醺泵菊甄淆面雨溉 平均每个处理器核的效率e f f 可以定义为: e f f 二面甄s p 蕊e e d 丽u p 加速比是评估多核系统性能的一个重要指标。由于各个处理器核之间的通 讯需要消耗部分时间,因而,加速比不会等于核数量,只会接近处理器核的数 量。所以每个处理器核的效率也不会达到1 0 0 。平均每个处理器核的效率能达 到7 5 ,就是一种非常理想的情况了。 在硬件上,有两种途径可以提高多核系统的性能:一种是提高处理器核的 性能;另种是改进多核系统通讯架构,提高系统架构的并行性。前一种途径 主要是提高处理器的频率,现代处理器的频率已经达到了半导体物理效应的瓶 颈,这一种方法目前已经走到了尽头。所以第二种途径,改进通讯架构的方式 提高多核系统的性能更具有实践意义。 对多核通讯架构的设计与优化成为多核技术研究的关键部分。目前,多核 片上通讯方式主要分两大类:一种是路由通讯,即片上网络h 副( n e t w o r ko i l c h ip ,n o c ) ;另一种是共享存储器通讯,就是通常用的总线架构。在n o c 中, 每个处理器可以通过n i ( n e t w o r ki n t e r f a c e ,n i ) 和路由器与其他处理器之间进 行通讯,能够实现全局异步本地同步机制】 7 】,被认为是未来复杂系统芯片的 发展方向。在总线架构下,所有处理器核通过总线相互连接,这种总线架构的 m p s o c 设计简单,硬件资源消耗少,成本低,是中小规模多处理器系统的经典 方案引。 1 3 多核系统的应用问题 解决了设计与制造问题后,软件问题成为制约m p s o c 发挥其应有性能和灵 活性的最大挑战阳1 0 1 。未来所有的软件开发都将以多核芯片为硬件平台,从 汇编语言到软件工程学的整个软件领域都遭遇了多核技术的冲击。 虽然理论上多核系统能够最大限度地发挥程序的并行计算能力,但事实却 并非如此简单。要充分地发挥多核系统的性能,就必须对多核系统的编程模型, 以及各种底层软件的算法与实现技术进行相应的研究。因为传统的程序都是基 于单核编程模型开发的,如果这些程序直接运行在多核系统中,往往会出现效 率低于单核的现象,甚至会出现错误的现象。 i n t e l 公司2 0 0 6 年发表的研究报告指出必须改进软件算法以适应多核架 构,达到充分发挥其并行性的目的。针对这个问题,一些国际著名大学也相继 开展了相关的研究工作,比较著名的有b e r k e le y 大学的r a m p ( r e s e a r c h a c c e l e r a t o rf o rm u l t i p l ep r o c e s s o r s ) 、s t a n f o r d 大学的f l a s h ( f 1 e x i b l e a r c h i t e c t u r ef o rs h a r e dm e m o r y ) 等等。以上研究工作得出个共同结论是, 并行算法是解决多核系统应用窘境的有效方法。 并行算法仅仅解决了多核应用中编程问题,而真正发挥多核系统的并行能 力,还需解决任务调度问题,确保各个处理器核的负载均衡。u cg a t e c h 大学 和u cd e l a w a r e 大学研究以c e l l 和c y c l o p s 为对象的多核系统研究结果表明, 2 通过算法并行化和调度优化,f f t 算法映射能够在多核系统上获得理想的加速 比。 目前,国内多核系统应用的研究已经取得了一些显著的成果n 。但与国外 相比,国内的研究工作还处于起步阶段。因此,需要进一步开展多核体系下均 衡负载为目标的任务方法研究。本文中以矩阵运算和多媒体解码过程为研究对 象,对多核的负载均衡问题进行一些基础性的探索。 1 4 课题来源 本论文的研究工作受到了下列基金的部分资助: 8 6 3 计划”基于n o c 的片上多处理器系统结构及实现方法研究”( 项目编号: 2 0 0 8 a a 0 1 2 1 3 5 ) : 教育部博士点基金资助项目“集成电路n o c 体系结构中o c n 关键技术研究 ( 项目编号:2 0 0 5 0 3 5 9 0 0 3 ) 。 1 5 论文主要研究内容和结构 全文共分五章,组织结构如下: 第一章绪论。介绍了多核技术的发展以及面临的挑战,同时阐述了为提 高多核系统的性能,在硬件和软件上需要解决的问题。 第二章多核系统平台介绍。介绍了常见的多核平台、片上总线以及本文 中所使用的多核平台。 第三章基于a x i 总线的m p s o c 平台研究。首先对本文的m p s o c 平台进行 了概述,然后详细介绍了该平台使用的a x i 总线协议以及基于a x i 的通讯架构 的设计与实现。 第三章基于m p s o c 系统的高密度计算研究。以高密度运算中的矩阵运算 为研究对象,通过实验的数据分析,对影响多核性能的因素进行了一些探索。 第四章复杂问题在m p s o c 系统中的实现与优化。本文以h p e g 一4 为例,尝 试性地对复杂计算问题在m p s o c 系统中的实现与优化问题进行了探索。 第五章总结与展望。总结了本文所做的工作,并对未来需要进一步研究 的工作进行了展望。 3 第二章多核系统平台介绍 2 1 常见的多核系统 遵循不同的分类标准,可以将多核系统分成多种不同的类型。常见的有处 理器分类方法、通讯形式分类方法以及系统架构分类方法等模式。在不同的分 类标准中,有重叠的部分。 2 1 1 处理器分类 按其用途,处理器可分为通用处理器和嵌入式处理器。以不同类型处理器 构建的多核芯片,其设计目标与用途都有很大的差异。以通用处理器组成的多 核芯片称之为片上多处理器( c h i pm u l t i p r o e e s s o r ,c m p ) ;以嵌入式处理器构建的 多核芯片称之为多处理器系统芯片( m u l t i p r o c e s s o rs y s t e mo nc h i p m p s o c ) 。前 者主要以i n t e l 和a m d 的通用处理器为代表,如c o r e2d u o 等,主要应用在服 务器、台式机和笔记本等通用场合。后者主要是在单个芯片上集成多个嵌入式 处理器,如a r m 等,主要应用在嵌入式应用领域。 同构多核 主 从核 核 异构多核 图2 - 1 同构多核与异构多核 从多核芯片组成的角度来看,又可以将多核分成同构多核与异构多核,如 图2 1 所示。同构多核是指芯片内部集成的所有内核其结构、地位完全相同。 每个内核都与单核的通用处理器结构相近,并且可以独立地执行任务。异构多 核是指芯片内部集成多中功能不同的内核,有负责调度的主核与负责计算的从 核构成。从核中有负责定点、浮点以及特殊计算的多种不同的内核。目前,异 构多核主要集成通用处理器、d s p 、媒体处理器、网络处理器等类型的内核。 通用处理器作为主核,其他处理器作为特定加速应用的从核。 4 2 1 2 按通讯形式分类 多核芯片的主要通讯架构形式有总线和片上网络n o c 两种。所以按照通讯 架构形式分类,多核系统也可以分成以上两种类型。 ( 1 ) 片上网络型多核芯片 图2 - 2 典型的n o c 结构图 通讯节点 计算节点 基于o c n ( o p e nc o m p u t e rn e t w o r k ) 的m p s o c 即n o c 。它借鉴了分布式计算 系统的通讯方式,用路由和报文交换技术实现多核之间的通讯。图2 2 是一个 典型的n o c 结构,其中,计算节点又称处理单元( p r o c e s s i n ge l e m e n t ,p e ) , 通讯节点又称路由器( r o u t e r ) 。计算节点一般是处理器,但可以是s o c ,也可 以是存储器,可重构单元等。通讯节点根据给定的路由算法,比如x y 路由算 法,负责计算节点之间的高速通讯。n o c 解决了很多s o c 中难以解决的问题。 但n o c 还是一个新生事物,理论上还有很大的探索空间,所以当前多核芯片仍 以总线架构的为主。 ( 2 ) 总线型多核芯片 总线型多核芯片多个处理器内核以总线的方式互连在一起,通过访问共享 存储器实现核间通讯。基于总线的连接方式是一种最简单的连接和通讯方式。 它有以下优点: 结构简单,代价低廉; 协议简明,实现简单; 总线优先级设置灵活,尤其适用于有明确设备优先级排序的系统; 虽然基于总线的通讯架构有以上这么多的优点,但传统的总线也有自己的 缺点。主要的缺点有: 扩展性不强。 并行性差。传统的总线不支持多个设备间同时通讯,对多核的并行性有着 5 困 巨大的不利影响。 传统总线连接具有并行性差等缺点。a x i 总线很好地解决了传统总线并行 性差的问题,对于多核系统的并行计算,更是非常适合。本文中介绍的多核系 统平台就是基于a x i 总线架构的。 2 2 常见的片上总线 常用的片上总线标准有c o r e c o n n e c t 、w h i s b o n e 、a m b a2 0 总线等,下面 简要地介绍下这几种总线标准。 c o r e c o n n e c t 口副是由i b m 公司开发的片上总线,它能将多个i p 互连成一个 功能完整的芯片。c o r e c o n n e c t 总线架构包括处理器局部总线,片上外围总线, 1 个总线桥,2 个仲裁器及1 个设备控制寄存器。 s i l i c o r e 的w is h b o n e 总线采用的是主9 , 构架,主设备和从设备通过内部 网络进行互连。值得一提的是,为实现i p 核重用,w i s h b o n e 定义了i p 核的接 口信号和总线周期标准。对主从设备的互连,它定义了点到点 ( p o in t 。t o p o in t ) 、数据流( d a t af l o w ) 、共享总线( s h a r e db u s ) 、交叉开 关( e r o s s b a rs w i t c h ) 四种不同的互连形式,用户可以根据需要进行灵活地 选择。同时用户还可以用两条w is h b o n e 总线进行复杂系统的集成。 a m b a ( a d v a n c e dm i c r o c o n t r o l l e rb u sa r c h i t e c t u r e ) 2 0 总线是a r m 公司 设计的一种用于高性能嵌入式系统的总线标准。它独立于处理器和制造工艺, 增强了各种应用中的外设和系统宏单元的可重用性。a m b a2 0 协议定义了三类 总线u 刮:a h b ( a d v a n c e dh ig h p e r f o r m a n c eb u s ) 、a s b ( a d v a n c e ds y s t e mb u s ) 和a p b ( a d v a n c e dp e r i p h e r a lb u s ) 。其中高性能总线a h b 用于连接高性能系 统模块,它支持数据的b u r s t 传输和s p l i t 传输,同一使用时钟上升沿为基准; a s b 总线用于连接高性能的系统模块,适用于不必要选择a h b 总线的场合;a p b 适用于性能要求较低的外围部件,为其提供了简单的接口n 刀n 刚n 引。 以上三种总线标准,是目前已经形成的较有影响力的三种总线标准。然而, 选择合适的通讯架构对于芯片的性能、功耗、设计开销有很大的影响乜叫晗1 2 纠。 在传统的系统总线下,所有的主设备和从设备都挂接在同一个系统总线下,根 据协议,在任何时刻都只能有一个主设备对从设备发出访问,应用在m p s o c 中 将造成十分严重的总线冲突,降低通讯效率,破坏系统的并行性,严重影响整 个系统性能的发挥。 在这种情况下,需要一种新的总线协议来解决多核通讯架构的问题。a m b a 3a x i ( a d v a n c e de x t e n s i b l ei n t e r f a c e ,a x i ) 总线协议是a r m 公司联合多家 有影响力的公司共同推出的下一代系统总线。a x i 总线协议是a m b a 总线协议的 一部分,它的出现不仅丰富了a m b a 总线的内容,更重要的是它的突出的性能 表现,一出现就受到了业界的广泛关注,已经获得了包括p h i 1i p ,n e c , s y n o p s y s ,c a d e n c e 等3 0 多家公司的支持。 6 2 3 基于总线架构的多核芯片 ( 1 ) 传统的总线型多核 图2 3 传统的总线型多核结构 图2 - 2 是传统的总线型多核系统结构图。多个处理器核可以同时挂在一个 总线上,它们通过访问共享内存进行通讯。但是在同一时刻只能允许一个处理 器访问共享内存,严重降低了通讯的并行性。由于其实现简单,在小规模的设 计中,仍然有实际应用的价值。 ( 2 ) 基于a x i 总线的多核 a r m 公司2 0 0 3 年推出的a m b aa x i 协议乜3 3 适用于高带宽设计,不使用复杂 的桥就能够进行高频率操作,可以满足大范围部件接口的需要,提供弹性的互 连架构实现,并同a h b 和a p b 信号后向兼容。a x i 协议允许多个主设备任意时 刻同时访问总线,这一点突破了传统总线在同一时刻只允许一个主设备访问总 线的限制,为多核的高密度并行计算提供了良好的通讯平台。 图2 - 4 基于a x i 总线的多核结构 图2 - 3 是基于a x i 总线的多核结构。多个主设备和从设备可以同时挂在a x i 总线上,它们也通过访问从设备中的共享存储器而通讯。然而,与传统总线不 7 同的是,主从设备之间通过管道连接,多个主设备可以同时访问多个不同的 从设备。 a x i 总线协议的推出,相对于传统总线而言是拓宽了高速公路,把原来的 单行道变成了多条车道同时行使。通道概念的引入,是一个重大的突破,使得 a x i 架构与以前的a m b a 协议有很大的不同,并且单向的通道架构,能够有效地 使用寄存器分段实现更高速的管道连接。凭借其自身对许多特性的支持,以及 对读、写和地址控制通道的有效利用,它能使系统获得更好的性能和效率, 增强并行通讯的能力,尤其适用于多核的并行计算。本文中设计并实现了基于 a x i 架构的多核系统。 8 第三章基于a x i 总线m p s o c 平台研究 本章首先对基于a x i 总线的m p s o c 系统平台进行了概述。然后在介绍a m b a3a x i 总线协议的基础上,详细地介绍了a x i 总线的各个模块的r t l 设计与实现过程。最后 介绍a v a l o n 总线协议的基础上,详细介绍了a v a l o nt oa x i 的总线桥的r t l 设计与 实现。 3 1 系统平台概述 本小节首先简要介绍基于a x i 的m p s o c 组成结构。图3 一l 是一个四核的 m p s o c 系统平台,包括四个作为主设备的本地子系统( l o c a l l p r o c e s s i n g s y s t e m s ,l p s ) ,它们通过总线桥( b r i d g e ) 与a x i 总线相连。每个本地子系 统都包括一个r o m 和一个r a m 。五个从设备通过从设备接口( s l a v ep o r t ) 与 a x i 总线相连。根据a x i 协议,主设备和从设备的数量都可以扩展至任意数量。 在本设计中,能支持扩展的主设备和从设备的数量都最多能达到1 6 个。 图3 - i 四核m p s o c 系统平台 如图3 1 所示,平台中四个主设备和五个从设备通过全局通讯总线a l l 相 互连接。每个主设备都能访问任意一个从设备。五个从设备包括一个旗语控制 器和四个数据存储器。其中,旗语控制器用于控制各个处理器核之间的数据同 步,防止处理器核对共享存储器内容误读和误写。四个数据存储器被所有处理 器核共享。这种结构相对于只有一个共享数据存储器的传统总线是一个很大的 改进。传统的总线在一个时刻只允许一个主设备访问从设备,而a x i 协议允许 所有的主设备都能同时访问不同的共享数据存储器,而互不影响,实现真正意 义上的全局并行通讯,为并行处理创造了有利条件。 9 图3 2 本地子系统 如图3 2 是一个本地子系统结构框图。图中本地r a m 和r o m 以及总线桥都通过 a v a l o n 总线与一个处理器内核( n i o si i ) 相连。本地r o m 用于存放处理器的操作系 统或应用程序。本地r a m 用于存放本地临时计算结果。本地n i o si i 可以通过a v a l o n 总线独占性地访问本地存储器。本地存储系统一方面提高了存储器访问的速度,有利 于发挥本地子系统性能。另一方面减轻了全局通讯的压力。 3 2a x i 总线协议简介 随着s o c 设计复杂性的增加,总线结构会成为系统性能的瓶颈,在m p s o c 中尤其 明显。综合考虑成本、功耗和面积,s o c 设计中选用何种高效的总线结构是一个困难 的决定,同时总线结构对系统所要求达到的性能又是非常重要的。为满足下一代高性 能s o c 的需要,比如多处理器核、多重存储器结构、d m a 控制器等,a r m 决定开发新 一代灵活性更强的总线结构a m b a3 0a x i 总线。 3 2 1 a m b a 总线的历史 英国a r m 公司推出的高性能微处理器在业界得到了广泛的应用,高级控制器总线 构架( a d v a n c e dm i c r o c o n t r o l l e rb u sa r c h i t e c t u r e ,a m b a ) 也成为一种重要的总线 标准。早期的a m b a2 0 协议定义了三类总线:a h b ( a d v a n c e dh i g h p e r f o r m a n c eb u s ) 、 a s b ( a d v a n c e ds y s t e mb u s ) 和a p b ( a d v a n c e dp e r i p h e r a lb u s ) 。它们为传统s o c 的发 展提供了良好的片上通讯能力,但a m b a2 0 并不能满足m p s o c 的需求,所以需要开 发适应下一代s o c m p s o c 需要的新型总线协议。 a m b a3 0a x i 是1 9 9 9 年发布的a m b a2 0 的继承和提升,是a r m 公司与其他的 芯片制造商,包括高通、东芝和爱立信等公司共同研发的。a x i 总线协议是a r m 公司 提出的a m b a 3 0 协议中最重要的部分。它面向高性能、高带宽、低延迟的片内总线。 新协议的发布,为新一代高性能s o c 的设计铺平了道路。相对于a h b ,a x i 做出了许 多巨大的改进,它定义了单向的通道构架,能够有效地使用寄存器实现更高速的管道 连接。再加上其对通道的合理控制利用,它能使系统获得更高的性能和效率。 3 2 2 基本结构及信号描述 a m b a3 0a x i 总线的基本结构如图3 - 3 所示,它最显著的特点就是定义了五个独 立的通道读地址通道、写地址通道、写数据通道、读数据通道、写响应通道。每 个通道都有自己独立的控制信号和相应的握手信号,各个通道之间相互独立,并且都 是单向传输。每个通道都有自己独立的控制信号,v a l i d 表示来自源的数据这个时候 是有效的;r e a d y 表示接收端现在此时可以接收数据。当这个两个信号都是高电平时, 一个数据项的传输完成。如果v a l i d 信号为高电平,而r e a d y 信号为低电平,则v a l i d 信号需要持续保持高电平,直到r e a d y 信号拉高,即接收设备准备好,此时一个数据 项的传输完成。 地址通道传输的数据是每次读写操作的首地址,所以通道里的每个地址还对应 一个表示数据长度的信号( a w l e n a r l e n ) ,表示此次操作对应的数据长度。在读写 数据通道,有r l a s t w l a s t 信号,表示本次传输的最后一个数据。 、 r e a da d d r e s s c o n t r o l j d d e r 、v w ,i 把a d d 陀。c 。n 。,。l r t i ,d p r 、, 丝 薯 。 笙 w w w r e a d y 加d a a 8 罄 若 - _ 暑 2 r e a d d a t y a 8 wbrit=e r e s p o ne 图3 3 总线的基本结构 在a x i 协议中,五个通道,每个通道都有自己独立的信号,且每个通道的信号的 命名都有自己的特点。全局信号都以“a ”开头,读写地址通道分别以“a r ”和“a w 开头,读数据和写数据通道信号分别以“r 和“w 开头。由于读地址通道与写地址 通道,它们的信号都是对应的,只是开头的字母不同,下面只给出写地址通道、写数 据通道、写响应通道信号描述,以及低功耗接口信号描述,而对于读地址和读数据通 道的信号描述不再给出。 表3 一l 写地址通道信号 信号源描述 a w i d 3 :0 m a s t e r 写地址i d 。写地址信号组身份标签 a w a d d r 3 1 :0 m a s t e r 写地址。一次b u r s t 传输中的第一次传输的地址,相应的控制 信号决定本次b u r s t 中的剩下的传输。 a w l e ne 3 :o m a s t e r 猝发长度。给出本次传输中准确的传输长度,决定属于本次传 输的地址的数据项的多少。 a w s i z e 2 :0 m a s t e rb u s r ts i z e 。这个信号指示一次b u s r t 中每次传输的数据大小。 字节过滤准确地指示更新哪一个字节 a w b u r s t 1 :0 m a s t e r b u r s t 类型。b u r s t 类型和b u s r ts i z e 一起共同描述每次猝发 传输中地址的计算方法。 a w l o c k 1 :0 m a s t e rl o c kt y p e 。这个信号为传输原子特性提高额外的信息。 a w c a c h e 3 :o lm a s t e rc a c h et y p e 。这个信号指示对于c a c h e 访问的类型。 a w p r o t 2 :o m a s t e rp r o t e c t i o nt y p e 。这个信号指示传输中的正常、特权、安全保 护级别,是数据访问还是指令访问。 心a l d im a s t e r 写地址有效。这个信号指示写地址和控制信息是有效的: 1 = 地址和控制信息是可用的。 0 = 地址和控制信息不可用。

温馨提示

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

评论

0/150

提交评论