已阅读5页,还剩80页未读, 继续免费阅读
(计算机科学与技术专业论文)高性能vim向量协处理器体系结构研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
国防科学技术大学研究生院学位论文 摘要 p m ( p r o c e s s o r - i n - m e m o r y ) 是一门新兴的技术,它为解决计算机系统的存储瓶颈问题带 来新的思路,正越来越受到业界的重视并且已经产生了巨大的效益。向量( v e c t o r ) 是科学 计算领域十分有效的模型,但由于其实现代价相对较高凶而通常只被大型计算机系统采 用。p i m 技术与向量技术相结合,产生t v i m ( v e c t o r - i n - m e m o r y ) 体系结构1 。基于v i m 体系结 构的向量微处理器可为科学计算、多媒体处理等领域提供性能高、功耗低、性价比高的解决 方案。 m 体系结构下向量协处理器体系结构与传统的向量处理器有所不同。传统的顺序执 行( i n o r d e r ) 体系结构不能充分利用p i m 技术提供的高存储带宽,并且实现相对复杂,系统 造价高,因而迫切需要研究基于v i m 体系结构新的向量协处理器体系结构。 本文研究了基于p 1 m 技术的向量微处理器相关关键技术。在对己提出的顺序、分离及乱 序执行等体系分析比较的基础上,提出了m 向量协处理器的体系结构并实现了基于v i m 体 系结构的向量微处理器k d v i m - 1 。k d - v i m 1 向量处理器对已有的分离体系结构做了改进, 引入了分布式寄存器的概念,降低了造价,有效支持了短向量类型的指令。存储系统是向量 微处理器的重要部分,本文对m 体系结构下存储系统做了相关的研究,并根据基于p i m 技 术存储器特点,改进了r o g e r 提出的d r a m 访问调度算法,在存控中引入了动态调度的机制, 有效提高了存储系统的带宽。在以上关键技术研究的基础上,本文还研究了v i m 体系结构下 向量协处理器的实现技术,包括标量指令集的扩展方式,多端口寄存器文件的实现,向量执 行单元的流水线设计等。 最后,根据以上的研究结果,本文采用硬件描述语言v h d l 实现了k d - v l m - 1 向量微处 理器,完成在a l t e r as t r a t i x 系歹j f p g a 芯片上的综合,并在p r o c s u p e r s t a r 开发板上对k d - v i m - 1 处理器进行了系统级的验证。 关键词:p i m ;v i m ;向量处理器;分离结构:调度算法;k d - v i m - 1 1 基于国防学技术大学校预研项目:高性能v i m 体系结构研究与实现 第1 页 国防科学技术大学研究生院学位论文 a b s t r a c t p i m ( p r o e e s s o r - i n - m e m o r y ) m e r g e sp r o c e s s i n ga n dm e n l o r yi n t oas i n g l ec h i pt ol o w e rm e m o r y l a t e n c y ,i n c r e a s em e m o r yb a n d w i d t hw h i c hb r i n g san e ww a ys o l v i n gt h ew e l lk n o w n ”m e m o r y w a l l p r o b l e m p i mp l a y sa ni m p o r tr o l ei nm o d e r na r c h i t e c t u r ed e s i g n v e c t o rm o d e li sn a t u r a l l y s u i t a b l ef o rs c i e n c ec o m p u t i n g ,b u ti t si m p l e m e n t a t i o nc o s tk e e p sh i g hs oi ti su s u a l l ya d o p t e db y s o m em a i nf r a m e s v i m ( v e c t o r - i n - m e m o r y ) a r c h i t e c t u r ei sb a s e do np i ma n dv e c t o rt e c h n o l o g y v e c t o rp r o c e s s o rb a s e do nv i ma r c h i t e c t u r ei sac o s te f f e c t i v es o l u t i o ni ns c i e n c ec o m p u t i n ga n d m e d i ap r o c e s s i n ge t cd o m a i n s t h e r ea r es o m ed i i r e r e n c e si na r c h i t e c t u r eb e t w e e nt r a d i t i o n a lv e c t o rp r o c e s s o ra n dv e c t o r p r o c e s s o rb a s e do np i mt e c h n o l o g y s t u d i e sh a v es h o w nt h a tt h o u g hm e m o r ys y s t e mi st h em a i n b o t t l e n e c ki nv e c t o ra r c h i t e c t u r e ,t r a d i t i o n a li n o r d e ra r c h i t e c t u r ec a nn o tk e e pt h em e m o r ys y s t e m a l w a y sb u s ya n di tu s u a l l yh a sh i g hi m p l e m e n t a t i o nc o s t t h i st h e s i sh a sf o c u s e do nk e yt e c h n o l o g i e so fv e c t o rp r o c e s s o rb a s e do nv i m b a s e do i l o u rs t u d yo ft r a d i t i o n a li n - o r d e r ,d e c o u p l e da n do u t 0 5 0 r d e ra r c h i t e c t u r e s ,w ep r o p o s e dt h ev i m v e c t o rp r o c e s s o ra r c h i t e c t u r e ,w h i c ha d o p t sa ni m p r o v e dd e c o u p l e da r c h i t e c t u r ea n dd i s t r i b u t e d r e g i s t e rf i l e v i mv e c t o rp r o c e s s o rk e e p si m p l e m e n t a t i o nc o s tl o wa n da d d ss u p p o r lt os h o r tv e c t o r i n s t r u c t i o n s v l e m o r ys y s t e mh a sa l w a y sb e e nt h ei m p o r tp a r to fv e c t o ra r c h i t e c t u r ea n dw eh a v e s t u d i e dt h en e wc h a r a c t e r so fm e m o r ys y s t e mb a s e do np i mt e c h n o l o g y w ep r o p o s e da ni m p r o v e d d r a ma c c e s ss c h e d u l i n gm e t h o d ,w h i c hi n t r o d u c e sd y n a m i cs c h e d u l i n gs c h e m ei nd r a m m e m o r y c o n t r o l l e rt oi m p r o v ed r a mm e m o r yb a n d w i d t h a n da l s oi nt h i st h e s i s ,w eh a v ei m p l e m e n t e d av e c t o rm i c r o p r o c e s s o rk d v i m lb a s e do nt h ev i ma r c h i t e c t u r e t h i st h e s i sa l s of o c n s e do n i m p l e m e n t a t i o nt e c h n o l o g yo fv e c t o rm i c r o p r o c e s s o rb a s e do n ma r c h i t e c t u r e i n c l u d i n gk d v i m 一1i s ad e f i n a t i o n ,m u l t i p o r t e dr e g i s t e rf i l ea n dv e c t o re x e c u t i o np i p e l i n ee t c o u rk d - v i m - 1v e c t o rm i c r o p r o c e s s o rw si m p l e m e n t e di nv h d lh a r d w a r ed e s c r i p t i o nl a n - g u a g ea n df i n i s h e ds y n t h e s i z e di n t oa l t e r as t r a t i xs e r i e sf p g ac h i p s k d - v i m 一1m i c r o p r o c e s s o r s v e r i f i c a t i o nw a sb a s e do nt h ep r o c s u p e r s t a r d e v e l o p i n gb o a r d k e yw o r d s :p i m ,v i mv e c t o rp r o c e s s o r ,d e c o u p l e da r c h i t e c t u r e ,a c c e s ss c h e d u l - i n g k d v i m - 1 第1 i 页 国防科学技术大学研究生院学位论文 图目录 m 系统结构图, l e o n 2 标量核结构, l a n e 内部结构图 , s p a r c t 旨令集格式 向量核寄存器文件 s p a r c 协处理器指令格式 k d v i m 一1 系统指令流水线结构 向量指令集的用户编程模型 向量体系结构的虚拟处理器视角。, 顺序执行模型下各部件的忙闲情况 分离向量微体系结构 理想情况下d e c o u p l e d 结构的性能测试 实际情况下d e c o u p l e d 结构的性能测试, 乱序执行的向量体系结构 o u t o f - o r d e r 结构对顺序执行结构的性能提升 多l a n e 的向量体系结构 分离结构的多l a n e 扩展方法 k d - v i m - 1 向量协处理器微体系结构框图 功能单元内部结构图 一些向量机的寄存器文件配置 多体的寄存器结构 对称多体寄存器结构, 南e l e m e n t p a r t i o n 弓f 起的停顿 由r e g i s t e r - p a r t i o n 弓i 起的停顿 i n t e r l e a v i n g 访问模式 s k e w i n g 体交叉方式 传统向量机存储系统结构 c o m m a n d 存储系统 i m p u l s e 存储控制器对稠密矩阵对角元素访问方式 i m p u l s e 的地址翻译过程 i m p u l s e 存储控制器结构、 d r a m 访存调度算法示例, d r a m 的“3 d ”结构 第i v 页 8 9 9 n 坞埒h 培拇虬蛆勰孔拍弱拍”站弘曲蚰虬姐蛇姓蛎盯勰 叭纰粥拟蛳 叭船鹳似舶”弘蛐|;州蛐|跏瓣湖沁耋|蚴泓|曼|曼 国防科学技术大学研究生院学位论文 3 2 7d r a m 操作对接口的占用情况, 3 2 8 支持d r a m 动态访存调度算法存控实现 3 2 9 指令间一致性示例, 3 3 0 数据真相关下的一致性, 4 1k d v i m - 1 处理器标量核流水线及功能单元结构 4 2 屏蔽指令与非屏蔽指令 4 3 向量指令扩展的形式 4 ,4 向量指令m a i n o p 域含义 , 4 5 分离流水线结构示意图 4 6 指令队列的设计示意图 4 ,向量流水线中互锁电路结构图 4 8 向量指令缓冲器结构 4 9 标量核与向量核信号传输时序图 4 1 0 向量l a n e 与存储器接口设计 4 1 1s t r a t i x 系列存储模块实现多端口寄存器方式 4 1 2k d v i m - 1 向量寄存器文件访问时序, 4 1 3 p r o c s u p e r s t a r 开发板结构框图 第v 页 鲫翮n 驼 弱弱弱弱船舛晡g钾 国防科学技术大学研究生院学位论文 表目录 1 1 基于p i m 技术的研究项目 3 1 d i g t a la l p h a s e r v e r 多级存储系统的带宽 3 2 指令问冲突类型, 4 1 标量核与向量核接口信号 4 2 向量核与c r o s s b a r 接口信号, 4 3 8 5 2 6 4 6 5 第v i 页 独创性声明 本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得 的研究成果。尽我所知,除文中特别加以标注和致谢的地方外,论文中不包含其 他人已经发和撰写过的研究成果,也不包含为获得国防科学技术大学或其他 教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的 任何贡献均已在论文中作了明确的说明并表示谢意。 学位论文题目 高性自g v l m 向量协处理器体系结构研究与实现 学位论文作者签名:立笠丑旦且一 日期:2 牛年工月矽日 学位论文版权使用授权书 本人完全了解国防科学技术大学有关保留、使用学位论文的规定。本人授权 国防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电子 文档,允许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据 库进行检索,可以采用影印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密学位论文在解密后适用本授权书。) 学位论文题目 高性能m 向量协处理器体系结构研究与实现 学位论文作者签名 作者指导老师签名 日期:) 旧l 7 l 年7 2 月矽日 日期:娜妒年f 月彳日 国防科学技术大学研究生院学位论文 第一章绪论 1 1 背景 伴随着大规模集成电路技术的飞速发展,在一块芯片内可以集成的晶体管数目越来越 多。摆在体系结构设计人员面前的是拥有l o 亿个以上晶体管的芯片。如何有效地利用如此丰 富的硬件资源? 以及如何将硬件资源的极大丰富转化成为系统性能的提高? 是体系结构设 计人员面临的首要课题。目前的体系结构( s u p e r s c m a r ,v l l w ,s u p e r p i p e l i n e ) 都没有很好 的规模扩展性,越来越多的硬件资源换来的只是很低的性能提升。 与此同时,处理器与存储器分别封装在不同的芯片内,两者之间通过片外总线相连。这 种连接的方式在计算机发展的初期,处理器与存储器能够协调地工作,随着集成电路技术的 发展,处理器芯片追求的是更高的速度,而存储器( 通常指d r a m ) 追求更大的容量,而在 带宽方面却提升的很少。现在处理器大约以每年6 0 的速度提高性能,而存储器却只有7 的 性能改善。从处理器来看,c p u 不得不花费越来越多的时间等待从存储器中访问的数据,存 储器相对于处理器越来越远。 为了弥补处理器与存储器之间性能差距,目前所采用的方法是在处理器和存储器之问 加一层高速的缓冲,a , c a c h e 1 1 。在引入c a c h e 后,存储器的平均访问时间可表示为 t 。口= p t 。十( 1 一p ) m( 1 1 ) 式子中的p 表示c a c h e 的命中率,t 。表示c a c h e 的访问时间,t 。表示存储器的访问时间。c a c h e 位 于处理器的芯片内因而我们可以假设t 。随着处理器工艺水平的提高而不断降低,事实上也 是如此,即访问c a c h e 只需要一个时钟周期。我们总希望p 越大越好,因而处理器都将大量的 硬件资源用于实现c a c h e ,片c a c h e 的容量也越来越大,例如,a l p h a2 1 1 1 6 4 处理器几乎 半的面积是c a c h e ,而i a 6 4 处理器c a c h e 所占的比例更达到8 0 。与此同时,体系结构设计人 员采用了很多有效地c a c h e 技术,减少访问延迟,以及增自f l c a c h e 的命中率,这其中包括l l o i l b l o c k i n gc a c h e 和l o o k - u pf r e e 等的c a c h e 改进技术、软硬件预取、流缓冲、推断加载以及推断执 行和多线程技术 2 1 。 l p 虽然比较小,但并不为0 ,工艺的发展使得t 。与之问的差距越来越大,t a v g 的时问 也相应增加,因而,即使c a c h e 存在,处理器与存储器的性能差距也会越来越大,即所谓的“存 储墙” 1 问题。 然而,问题还不仅如此,减少存储器访问延迟的技术都增加了对存储带宽的要求2 1 ,尤 其是片间引脚数远远不能满足要求。b u r g e r 所进行的量化分析表明,未来的处理器由于引 脚数有限而引起的处理器停顿将大大超过由于访存延迟而引起的停顿。最终,虽然c a c h e 技 术在解决处理器与存储器之间叶沟”发挥了一定的作用,但它并不是最终的解决方案。 第1 页 国防科学技术大学研究生院学位论文 1 2体系结构发展现状 在过去的二十年中,微处理器设计人员为了提高处理器的速度,开发出了超标量( s u p e r s c a l a r ) 、超流水( s u p e rp i p e l i n e ) 和超长指令字v l i w ( v e r yl o n gi n s t r u c t i o nw o r d ) 体系结构, 通过开发细粒度的并行以提高处理器的性能,这些结构都可以使处理器同时执行几条指令。 超标量每个时钟周期流出的指令数不定,它既可以通过编译器的静态调度,也可以通过硬 件的动态调度调节,将前后不相关且满足某些限定条件的指令同时在处理器中执行3 卜超 长指令字与之不同,每个时钟周期流出的指令数是固定的,它们构成一条长指令,或说是一 个混合指令包。超长指令字的处理器目前只能通过编译来进行静态调度。超流水就是将每 个功能部件进一步流水化,使得一个功能部件在一拍中可以处理多条指令。 增加超标量处理器的指令流出数量及增加超流水线的深度,是超标量与超流水体系结 构提高性能的主要途径,同时,需要程序提供更多的不相关的指令以使处理器工作。动态调 度的机器部件,如指令窗口( i n s t r u c t i o nw i n d o w s ) ,重排序缓冲( r e o r d e rb u f f e r ) ,重命名寄存 器文件( r e n a m er e 西s t e rf i l e s ) 必须能够容纳所有已经流出的指令,为了确定指令窗口中的某 条指令能否流出,必须检测其是否与正在执行的指令及同时将流出的指令存在的相关性。由 于超标量处理器动态调度策略固有的复杂性,使得硬件资源的开销与指令并行性成二次方 指数级的增长。超长指令字的结构虽然编译器完成大部分的调度工作,也需要更多的寄存 器,更多的寄存器读写端口,更复杂的互锁逻辑。因而,随着指令并行度的增加,其复杂度 及所需要的硬件资源也成二次方的增长。由于以上的原因,事实上很难制造出并行度很高 的机器。 向量处理器早于指令级并行机器而成功地被商业化,它采用另一种方法来控制功能部 件执行指令。其指令处理的数据是向量( v 酏t o r ) ,即数据的线性阵列。一条向量指令对一组 数据定义了相同的操作,数据之间相互独立,不存在相关性,就相当于一个循环。 向量指令有以下的特点f 3 l : 一条向量指令指定了大量的操作,就相当于一个循环。取指部件和译码部件的工作相对 简单。 编译器将相互独立,并且相同的操作合成一条向量指令。因而,硬件在执行向量指令时, 不需要检测指令内部操作之间是否存在相关性,简化了硬件的执行复杂度。为了加速向 量指令的执行,可设置多个相同的功能部件,或采用更长的流水线。 硬件只需检测向量指令间是否存在相关性,相关性检测的复杂度相当于2 发射的超标量 结构。但却指定了比超标量更多的操作。 向量的访存指令一般都有比较明显的访问模式,例如,一条向量指令很可能顺序地访问 存储器中的某个区域,或者跳跃式地访问存储器。多体交叉的存储器能够加速访问,存 储控制部件实现数据预取也比较简单。 向量指令替代了标量程序中的一段循环,减少了指令的数目,并且消除了控制相关。 向量机一直以来是大型计算机的首选体系结构,1 9 7 6 年诞生的c r a y 1 使向量机的发展 进入了“黄金时期”,这个时期大约持续了1 5 年的时间4 1 ,直至1 1 9 9 1 年的a l p h a 系列处理器诞 第2 页 国防科学技术大学研究生院学位论文 生。其主要表现为这个时期的向量机在性能上相对于其它体系结构的机器有着兀可比拟的 优势。然而,随着大规模集成电路的发展,微处理器的处理速度越来越快,而且其价格低廉, 使用大量微处理器设计大型计算机有着更高的性能价格比,市场上的s m p ( s y m m e t r i cm u l t i p r o c e s s o r ) 及m p p ( m a s s i v ep a r a l l e ls y s t e m s ) 等系统也获得了巨大的成功。而向量机为了加速 向量的访问,一般采用高交叉度的片外存储器,或高速的s r a m 片内存储器,这也是向量机 造价昂贵的主要原因。虽然向量机因其很难降低的价格而受到人们的质疑,但我们应该把 向量机与向量指令集( i s a ) 体系结构区分开来。向量指令集有着先天的优点,是其它指令 集体系结构所没有的。因而,我们可以期待技术及工艺的发展,向量机将不再是高不可攀。 例如,本文的项目所涉及到的p 1 m ( p r o c e s s o r - l n - m e m o r y ) 技术,便给我们指出新的方向。 1 3 并行处理 处理器性能上的提高除了由于工艺的进步之外,还归功于体系结构设计人员开发了程序 中所存在的各种并行性,并行已经成为提高系统性能最重要的手段之一。流水线( p i p e l i n i n g ) 是最简单的并行方式,几条指令同时在流水线上执行。除了流水线以外,还有以下几种并行 方式: 指令级并行( i l p ) 是一个指令流内的多条指令同时执行,超标量的处理机动态地从指令 流中获取i l p 。 线程级并:f t ( t l p ) 是多条指令流同时执行,多处理器的计算机通过将一条指令流分派在 一个处理器上执行。 数据级并行( d p ) 是一个操作同时作用于一组数据,向量机通过一条向量指令指定向量 内的元素同时执行相同的操作。 指令级并行有着最高的灵活性,数据级并行则最低,数据级并行都可以用其它的并行来 表示,例如,一条数据级并行的向量指令可以通过几条互不相关的标量指令来完成。而一个 多处理器的系统可以通过将数据分派到各个处理器的指令流上来实现。但是数据级并行的 实现与控制最简单,数据级并行处理的流水线只需要对一条指令取指和译码就能实现并行。 并且由于编译器告知硬件向量的各个元素之间互相独立,因而可以节省超标量机器复杂的 相关性检测电路,将更多的资源使用到运算部件。 1 4p i m 技术 处理器与存储器之间越来越大的性能差距以及存储器越来越大的容量使人们开始考虑 将逻辑单元与存储单元集成在一块芯片内,即所谓的p i m ( p r o c e s s o r - i n - m e m o r y ) ,或i r a m ( i n t e l l i g e n tr a m ) ,m e r g e dl o g i ca n dm e m o r y ,或者e m b e d d e d r a mp a t t e r s o n 9 7 e a s e 。将d r a m 和处理器集成在一块芯片内而非扩充片内的s r a m 存储器的原因在于,d r a m 存储器的存 储密度l g s r a m 高得多,当前工艺下嵌入式的d r a m 一般是片内的c a c h e 存储密度的2 0 一 5 0 倍6 1 。一般说来,处理器与d r a m 存储器集成在一块芯片内主要有下列优点: 第3 页 国防科学技术大学研究生院学位论文 项目研究机构 h y p e x d r a m 9 】 m i t s u b i s h i 大学 b l u eg e n e 1 0 、i b m i n t e l l i g e n t 渔m 5 】b e r k e l y 大学 c i 认m l n 】加拿大a l b e r t a 大学 f l e x - r a m 1 2 u i u c p r o c e s s - i n - m e m o r y ( p i m ) 1 3 n o t r ed a m e s m a r tm e m o r i e s 1 4 】s t a n f o r d 大学 e m b e d d e dm e m o r y哈佛大学 裹1 1 :基于p i m 技术的研究项目 高带宽:二者集成在一块芯片内使得原来片间通过芯片间引脚的连接方式变为直接片 内连接,因而逻辑单元部分可以直接访问到d r a m 的敏感放大器s e n s ea m p l i f i e r ) 内的数 据。 低延迟:片内直接连接替代了片间总线的连接,使得访存的延迟大大降低。 低功耗:消除片间总线的平板电容带来的能耗【7 】。由于片内的d r a m 存储器可以采用更 加灵活的多体方式,访存时可以只激活对应的体而减少系统能耗。嵌入式存储器也可以 部分省略c a c h e ,因而相对减少了由于c a c h e 电路所带来的能耗。 低造价:例如采用o 1 8 # m 的工艺【6 l ,一块商用处理器大小的芯片( 2 0 0 r a m 2 ) 也能够集 成相当复杂的逻辑电路和超过l o m b y t e 8 的嵌入式存储器f 8 1 。采用p i m 工艺使得整个系统 的造价降低。 近年来,基于p i m 技术体系结构的研究成为热点,由于集成度提高,使得存储器访问不 再是整个系统的瓶颈,当前的主要问题是:什么样的体系结构能有效地利用嵌入式存储器 所带来的高带宽。p 1 m 技术在最新开发研制的系统内也被广泛采用,当前开展的基于p i m 技 术的研究项目主要由表1 ,1 所示。 p i m 存储器具有高带宽、低延迟、高交叉度的特点刚好符合向量机对存储系统的要求f 5 1 。 例如,加州b e r k e l e y 大学已经开发出的v i b a m - 1 处理a 1 5 1 。它基于p i m 工艺技术,主要应 用于嵌入式多媒体处理。本文所基于的项目v i m ( v e c t o r - i n - m e m o r y ) 将向量处理与嵌入式 的d r a m 结合起来,主要应用于科学计算等领域。有关v i m 的体系结构将在第二章详细介 绍。 1 5课题研究的主要工作 随着大规模集成电路水平的发展,原来只能用在大型计算机上的体系结构技术已经慢 慢地在微处理器的设计卜得到采用,并且将一直是微处理器发展的种趋势。p i m 技术的相 对成熟,并且其先天的适合向量体系结构所采用的特点使向量微处理器更加成熟。本文将 第4 页 国防科学技术大学研究生院学位论文 主要研究v i m 系统向量协处理器体系结构及其相关关键技术与实现,这其中包括: 向量微处理器微体系结构 v i m 系统标量指令集的扩展向量指令集 向量流水线的结构、执行、控制 寄存器文件配置及实现 存储系统结构及一致性协议研究 m 系统应用 本文的第二章主要对基于m 体系结构的k d - v l m 1 向量微处理器做介绍,基于p i m 技术的d r a m 存储器能够提供十倍与目前片夕 d r a m 芯片所能提供的带宽,因而给体系结 构设计人员带来新的设计思路,一个好的基于p i m 技术的体系结构应当能够充分发挥p i m 技 术的优势彻底改变存储器一直以来都是系统性能瓶颈的状况。但是,传统的微处理器的体 系结构却不能很充分地利用高带宽的存储器,主要原因是微处理器在存储器带宽受限的情 况下采用了低数据级并行的设计,一条指令通常只能执行一个字宽度的操作。当存储系统 的带宽充分提高后,指令流水线并不能提供足够的指令来利用带宽,因而在传统的体系结 构下,p i m 技术并不能发挥其优势f 16 】。 基于以上的原凶,我们提出了( v i m ) v e c t o r - h i - m e m o r y 体系结构,即p i m 与向量相结合的 体系结构,并详细介绍了k d v i m 一1 处理器的结构。一条向量指令指定了多个数据元索的操 作,有很高的数据并行性。由于向量体系结构需要高带宽的存储器支持,其存储系统要采用 大量的存储体交叉结构,因而其造价昂贵,一般大型机中采用向量体系结构较多。p i m 技术 的出现使微型机中采用向量体系结构成为可能,p i m 的特点天生适合于向量体系结构5 1 。 文章的第三章主要给出了本文基于p 1 m 技术的向量体系结构及相关关键技术研究结果。 向量体系结构一直以来为大型机采用,因而系统造价并不是最主要考虑的因素,其采尉 了大量向量运算功能部件,即是相同的功能部件也采用了资源重复的方法以增加同时可 以操作的元素个数,并且每个功能单元采用超流水的方式执行,其存储系统采用数量庞大 的d r a m 或s r a m 交叉存储体。在基于p i m 及向量技术的微型机中,一方面要利用向量技术 的特点,尽可能高效地利用存储系统的高带宽,提升应用的执行效率:另一方面也要考虑 性价比的问题。本章主要研究了向量微处理器所采用的体系结构,其中包括分离体系结构, 乱序执行体系结构,多l a n e 体系结构,分析了其体系结构特点,分别建立了以上体系结构 和p 1 m 技术结合系统模型,并完成了相应的系统评测,并讨论了其与p i m 技术结合的可行 性。在基于以上工作的基础卜,我们设计了基于p i m 技术的向量协处理器微体系结构。基 于p i m 技术的存储系统也是v i m 的重要组成部分,本文研究了向量微处理器的访存特点,并 根据访问特点提出了改进动态的d r a m 访存调度算法及其存储控制器的实现,算法将乱序 访问引入存储控制器的控制中,能够在保证数据相关的基础上最大限度的提高多体问的访 问并行性,基于动态d r a m 访存调度算法的存储器控制器对软件透明,硬件实现简单。 本文的第四章给出了基于v i m 体系结构的向量处理器k d m 一1 的验证及实现技术。k d v i m - 1 处理器的实现基于顺序执行、分离的流水线,其主要优点是对访存的延迟有较好的 第5 页 国防科学技术大学研究生院学位论文 隐藏。分离的流水线将一条向量指令的执彳亍分成地址产生阶段及数据运算阶段,在流水线的 两段之间设置数据缓冲区。分离的流水线在当向量运算指令等待访存指令返同数据时,不 必暂停向量指令的流出。本章还讨论了v i m 向量协处理器分离流水线的异常控制,以及互锁 及链接的执行方式。 1 6课题研究的主要创新点 本文的主要研究重点是向量微处理器的体系结构,由于成本的原因,目前只开发出了 t o r r e n t 和v i r a m 向量微处理器,基于微处理器的向量体系结构主要研究的有顺序( i n o r d e r ) , 分离( d e c o u p l e d ) ,以及乱序执行( o u t o f - o r d e r ) 体系结构,k d - v i m 一1 向量协处理器中采用 了改进的分离微体系结构,这种微体系结构对短向量类型的指令提供了很好的支持,提高 了功能部件的利用率,并具有功耗小的特点。 目前的d r a m 存储系统般是由一种”3 d ”( 体,行,列) 的结构组成,多体之间共享存 储系统对外的接口( 地址,数据,操作指令) ,多体可以并行被访问,存储系统的性能很大程 度上依赖于多体间的并行度,研究表明,多体并行访问与单体访问的性能差距可达到一个 数量级,本文提出一种改进的存储访问调度策略:能够保证存储访问相关性并能够最大限 度地提高多体间访问的并行度,并给出其存控实现。策略不需要软件支持,硬件实现简单。 在g i d e l 公司的p r o c s u p e r s t a r 开发板上验证了k d - v i m - 1 系统,扩展了基于s p a r e 指令的 标量核,使其支持向量指令,设计了基于s p a r c 扩展指令集的向量协处理器,并由v h d l 语言 实现,并完成在a l t e r af p g a 上的综合。 第6 页 国防科学技术大学研究生院学位硷文 第二章k d v i m 一1 系统体系结构 随着微处理器技术的发展,其性能越来越高。传统的超标量处理器比较适合于桌面应 用处理等领域,在科学计算、多媒体处理等方面则表现不够理想。同时,随着“后p c ”时代 的到来,嵌入式多媒体的处理也是不可忽视的应用需求,迫切需要开发出新的处理器以适 应以上的需求。p i m 技术及与向量计算的结合为我们提供了一种很好的解决方案,因而就诞 生了v i m ( v e c t o r - i n - m e m o r y ) 的体系结构。v i m 系统的目标是:作为一种向量微处理器体系结 构,在科学计算、多媒体领域提供性价比较高的解决方案。 2 1v i m 体系结构 v i m 系统主要基于两种技术:向量和嵌入式的d r a m 。向量能够有效地加速科学计算 ( 矩阵运算等数据级并行的计算) 及多媒体等应用,可以同时对多个元素进行处理,同时,由 于元素之间的运算相互独立,其控制逻辑相对简单,更易于进行模块化的设计。 嵌入式的d r a m 技术允许处理器的芯片内集成相当容量的d r a m 存储器,它满足了向 量处理器高带宽的存储要求,同时具有很高的性能价格比 17 j 。一条向量访存指令要访问大量 的元素,并且其访问的模式相对简单,因而适合于流水线的执行,当向量的第一个元素被访 问到后,其后的每个周期都能够访问一个元素,最终访存的初始延迟将被一个向量内的多 个元素均分,因而向量处理器对存储系统的访问延迟没有很高的要求。嵌入式的d r a m 也有 功耗低的优点。基于嵌入式d r a m 的存储系统其组织方式灵活,很容易的组成由大量体组成 的交叉访问存储系统,有效地提高了存储系统的性能。 图2 1 给出了m 系统的结构图,它主要由四部分组成:标量指令集的标量处理器、向量 协处理器、嵌入式的d r a m 存储系统、对外接口。我们将再以下的小节中分别详细介绍。 2 2k d v i m 1 系统结构 2 2 1 基于s p a r c 指令集标量核 k d v i m 一1 系统的标量处理器基于s p a r cv 8 指令集【1 8 】,s p a r e 指令提供标准的协处理器扩 展指令,向量协处理器指令集就是通过对标准的协处理器扩展指令进行扩展而获得的。g a i s l e r 提供标准的基于s p a r cv 8 处理器软核l e o n 2 1 0 1 ,并且在互联网上可以免费下载以供科学研 究使用。l e o n 2 标量核是3 2 位的,符合皿e b l 7 5 4 浮点标准。其主要有以下特点:分离的指令 及数据c a c h e ,硬件实现的乘法器和除法器,整数部件主要有5 阶的流水线,a m b aa h b a p b 及p c i 总线等。l e o n 软核实现了丰富的接口及其硬件支持,可以灵活地配置使用。l e o n 2 软 核基于v h d l 语言,并可使用大部分的综合工具实现在f p g a 或者a s l c s 上的综合。 标量核与向量协处理器之间主要通过向量协处理器接口进行通讯,并且也是它们之间 通讯的唯一方式。由于向量协处理器无法直接访问标量核的寄存器,因而向量协处理器设 第7 页 国防科学技术大学研究生院学位论文 一 向量核 向量向量 l a n el a n e 1 扛粤由 标量 r i s c 核 控制信+ v c 9 7 j “ j 9l 8卜。p “ ic r o s s b a r ( 4 钟 “t 。n 一乒m 存储体( 四个体,体界面为3 2 - b i t ) 图2 1 :m 系统结构图 置了自己的标量寄存器,必须通过显式的标量核与向量核传递数据指令来访问标量核寄存 器。标量核与向量核各自独立的访问共享存储器,存储系统的一致性主要由显式的同步指 令来保证,关于存储系统一致性的问题,我们将在以后的章节介绍。由以上的介绍可知, k d v i m l 系统最大限度的简化了标量部分与向量部分的接口,其好处是标量核和向量协处 理器可以分别进行设计及验证,加速系统的实现。 2 2 2 向量协处理器 图2 1 中也给出了向量协处理器的结构。向量协处理器负责执行s p a r c 协处理器扩展指 令所扩展出的向量指令,向量指令的取指、译码由标量核完成,当标量核发现某条指令是一 条向量指令时,通过标量与向量的接口发送到向量协处理器的指令缓冲队列,向量核从指 令缓冲队列中取指进行处理。指令缓冲队列分离了标量部分与向量部分,两部分可以并行 地执行。 向量协处理器内部采用多个l a n e 的结构,每个l a n e 都可以看作是一条数据通路,完成对 特定宽度的数据处理,多个l a n e 之间町以并行执行。向量计算元素间操作相对独立的特点, 使l a n e 之间的通信很少,因而采用多l a n e 的结构有很好的可扩展性。图2 3 给出了l a n e 内部的 结构示意图,每个l a n e 都有自己的标志( f l a g ) 寄存器和向量寄存器,这些寄存器的总和构成 第8 页 国防科学技术大学研究生院学位论文 厂一一一一1 e 五品品,一一一一 图2 2 :l e o n 2 标量核结构 图23 :l a n e 内部结构图 了向量协处理器的寄存器文件。f l a g 部件主要负责处理向量的f l a g 操作,每个l a n e 共有两个 算术运算单元:单元1 和单元2 。算术运算单元1 及单元2 都可处理整数、定点数、单精度浮点 数,算术运算单元2 除不能处理浮点运算外,其余与算术运算单元l 相同。向量协处理器每 第9 页 国防科学技术大学研究生院学位论文 个l a n e 数据通路的宽度都是6 4 位,单独一个l a n e 可以同时处理1 个6 4 位的元素,或2 个3 2 位的元 素,或4 个1 6 位的元素。向量元素的宽度主要由向量协处理器的虚拟处理器长度v p w ( v i r t u a l p r o c e s s o rw i d t h ) 来指定,有关v p w 的概念将在以下的章节中介绍。 存储部件主要负责处理向量的访存指令。在每个周期,每个l a n e h j 以与存储器交换6 4 位 的数据。k d 一m 1 向量协处理器中共有2 个l a n e ,每周期总共可产生2 个访存请求。向量核 部分的访存模式主要有顺序的( u n i ts t r i d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 江苏省南师附中2026届化学高二上期末学业质量监测模拟试题含答案
- 短期员工劳动聘用合同
- 私搭乱建合同
- 肝硬化腹水合并静脉曲张的护理与健康促进
- 供汽运维合同
- 新闻传播的真实性保障机制
- 少儿编程竞赛组织提质项目推进进度、问题及解决方案
- 无人机物流配送试点项目推进进度、问题及解决方案
- 2025年周口市鹿邑县保安员招聘考试题库附答案解析
- 部编版小学语文二年级上册反义词对对碰游戏试卷
- 药品经营企业岗前培训-复核员试题含答案
- 2025年南昌市消防救援支队水上大队招聘勤务及宣传勤务文员3人考试笔试备考试题及答案解析
- 富士康的ESG课件
- 医院消毒灭菌培训课件
- 四羊方尊课件
- 2025年常用非金属材料检测培训试题题库及答案
- 生物防治技术整合-洞察与解读
- 《老年人护理》课程操作评分标准
- 学堂在线人工智能原理(北大)章节测试答案
- 数据中心弱电系统培训
- 330kV升压站及联络线项目投标书
评论
0/150
提交评论