




已阅读5页,还剩79页未读, 继续免费阅读
(微电子学与固体电子学专业论文)基于fpga的mips_cpu的设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 本文完成了对m i p s c p u 的指令集确定,流水线与架构设计,代码编写,并 且在x 8 6 计算机上搭建了称为g c c m i p se l f 的仿真系统,完成了对m i p s c p u 硬 件系统的模拟仿真,最终完成f p g a 芯片的下载与实现。 本文完成了包含3 4 条指令的m i p s c p u 指令集的制定,完成了整个 m i p s c p u 的架构设计与5 级流水线级数的确定。制定了整个c p u 的主控制模 块的状态转移图;根据m i p s c p u 的指令集的模式,完成了对不同模式下的指令 的分析,给出了相应的取指,译码,产生新的程序存储器寻址地址,执行,数据 存储器与寄存器文件回写的控制信号,完成取指令模块,译码模块,执行模块, 数据回写等模块代码的编写,从而完成了流水线模块的代码设计。 重点分析了由于流水线设计而引入的竞争与冒险,分析了在不同流水线阶段 可能存在的竞争与冒险,对引起竞争与冒险的原因进行了确定,并通过增加一些 电路逻辑来避免竞争与冒险的发生,完成了竞争与冒险检测电路模块以及数据回 写前馈电路模块的代码编写,从而解决了竞争与冒险的问题,使设计的5 级流水 线得以畅顺实现。 完成了m i p s c p u 的仿真系统平台的搭建,该仿真器用来对应用程序进行编 译,链接与执行,生成相应汇编语言程序以及向量文件( 1 6 进制机器码) ;并且同 时产生相关的m o d e l s i m 仿真,及q u a r t u si i 下载验证的文件。本设计利用该仿真 系统来评估设计的m i p s c p u 的硬件系统,模拟仿真结果证明本文设计的 m i p s c p u 可以实现正常功能。本论文课题的研究成功对今后从事专用 r i s c c p u 设计的同行提供了有益的参考。 最终将设计的m i p s c p u 下载到a l t e r a 公司的f p g a e p l c 6 q 2 4 0 芯片, 并且借助a l t e r a 公司提供的q u a r t u si i 软件进行了编译与验证,对设计的 m i p s c p u 的资源使用,关键路径上的时序,布线情况进行了分析,最终完成各 个指标的检查,并且借助q u a r t u si i 软件内嵌的s i g n a lt a p 软件进行软硬件联合 调试,结果表明设计的m i p s c p u 功能正常,满足约束,指标正确。 关键词m i p s ;流水线;竞争与冒险;仿真器;f p g a 北京丁业人学丁学硕l :学位论文 a b s tr a c t t h i sp a p e rh a sf i n i s h e ds e t t i n gu pt h em i p s - c p u si n s t r u c t i o ns e t ,t h e5s t a g e p i p e l i n ea n dt h em i p s c p u sa r c h i t e c t u r e ,o fc o u r s eh a sf i n i s h e dt h ec o d ew r i t i n ga n d c o n s t r u c t e dt h es i m u l a t i o ns y s t e mc a l l e dg c c m i p s _ e l fo nt h ex 8 6s y s t e m sc o m p u t e r w i t hw h i c ht os i m u l a t et h em i p s c p u sh a r d w a r es y s t e m a tl a s t ,h a sf i n i s h e d d o w n l o a d i n gt h em i p s c p ut ot h ef p g ac h i ps u c c e s s f u l l y t h ei n s t r u c t i o ns e to ft h ed e s i g n e dm i p s c p uh a s3 4i n s t r u c t i o n si na 1 1 t h i s p a p e rh a sf i n i s h e ds e t t i n gu pt h ew h o l em i p s c p u sa r c h i t e c t u r ea n dh a sd e c i d e dt o u s e5s t a g ep i p e l i n i n g h a sf i n i s h e ds e t t i n gu pt h em i p s - c p u sm a s t e rs t a t et r a n s f e r m a c h i n e a c c o r d i n gt ot h ei n s t r u c t i o ns e t t i n gm o d eo ft h em i p s c p u ,c o m p l e t i n gt h e a n a l y s i so ft h ei n s t r u c t i o n si nd i f f e r e n ti n s t r u c t i o ns e tm o d e s ,a n dh a sg i v e nt h e r e s p o n d i n g c o n t r o ls i g n a l si nt h ei n s t r u c t i o nf e t c h ,i n s t r u c t i o n d e c o d i n g ,n e x t i n s t r u c t i o na d d r e s sg e n e r a t i o n ,i n s t r u c t i o ne x e c u t i o n ,d a t am e m o r ya c c e s sa n dw r i t e b a c kt ot h er e g i s t e rf i l es t a g e s a n df i n a l l y , h a sf i n i s h e dt h ef e t c h ,d e c o d i n g ,e x e c u t i o n , d a t aw r i t eb a c ka n do t h e rc o n t r o lm o d u l e sc o d ew r i t i n g ,s oh a sf i n i s h e dt h e5s t a g e p i p e l i n ec i r c u i tm o d u l e sd e s i g n t h i sp a p e rh a sa n a l y z e dt h eh a z a r d sa n dc o m p e t i t i o n st h a tm a y b ei n t r o d u c e db y t h em i p s - c p u sp i p e l i n ea r c h i t e c t u r e ,a n dh a sa n a l y z e dt h er e a s o n st h a tl e a d i n gt o t h eh a z a r d sa n dc o m p e t i t i o n sd u r i n gt h em i p s c p u sp i p e l i n es t a g e s b ya d d i n g s o m ec i r c u i tl o g i ct op r e v e n tt h eh a z a r d sa n dc o m p e t i t i o n sf r o mh a p p e n i n g ,a n dh a s f i n i s h e dt h eh a z a r dd e t e c t i o nc i r c u i ta n dd a t af o r w a r dw r i t i n gb a c kc i r c u i tm o d u l e s c o d ew r i t i n g ,i no r d e rt os o l v et h eh a z a r da n dc o m p e t i t i o np r o b l e m s ,a n di no r d e rt o m a k et h e5s t a g ep i p e l i n e sm i p s - c p uw o r k i n g b e a u t i f u l l y t h i sp a p e rh a ss e r i n gu pt h em i p s c p u ss i m u l a t i o np l a t f o r mc a l l e dg c c m i p s _ e l f t h i ss i m u l a t i o n s y s t e mc a ne x e c u t et h ec o m p i l a t i o n ,l i n ka n dc a ng e n e r a t et h e r e s p o n d i n ga s s e m b l e rl a n g u a g ea n dt h ev e c t o rf i l e ( m a c h i n el a n g u a g ei nt h eh e x s y s t e m ) ,a n da tt h es a m et i m eg e n e r a t et h er e s p o n d i n gm o d e l s i ma n dq u a r t u si i s s i m u l a t i o nf i l e t h e d e s i g nh a s u s e dt h i ss i m u l a t i o ns y s t e mt o a n a l y s i st h e m i p s c p u sh a r d w a r es y s t e m a n dt h es i m u l a t i o nr e s u l ts h o wt h a tt h em i p s c p uc a n e x e c u t es u c c e s s f u l l y d e s i g n i n gt h em i p s c p us u c c e s s f u l l yh a sp r o v i d e db e n e f i c i a l r e f e r e n c ef o rt h ec r a f tb r o t h e rt od e s i g nd e d i c a t e dr i s c c p ui nt h ef u t u r e a tl a s t ,d o w n l o a d i n gt h ed e s i g n e dm i p s - c p u sp r o g r a m m a b l ef i l et ot h e a l t e r ac o m p a n y se p1c 6 q 2 4 0 cf p g ac h i p ,a n d s i m u l t a n e o u s l yu s i n gt h e a l t e r ac o m p a n y sq u a r t u si is o f t w a r et oc o m p i l ea n dv e r i f yt h ed e s i g n ,a n dt o i i a n a l y z em em i p s c p u - sr c s o u r c e su s a g ec a s e ,t i m i n g c l o s u r e 。ft h ec r i t i c a lp a t h s , r o u t i n gc o n g e s t i 。n ,a n dh a sf i n i s h e dt h ec h e c k 。ft h e s ed e s i g n r e q u i r e m e n t s ,a n d 嘶d u 曲t h es i g n a l t a p s 。f l w a r ee m b e d d e di n t h eq u a r t u si is 。胁a r et 0h e l p a n a l y z i n gt h ef p g a i n t e r n a lr e g i s t e rv a l u e ,a n dt h ed e b u g g i n gr e s u l ts h 。wm a tt h e 如n c t i o no ft h ed e s i g n e dm i p s c p ui sr i e , h t ,s a t i s f i e st h ed e s i g n sr e q u i r e m e n t s k e y w 。r d sm i p s ;p i p e l i n e ;h a z a r da n dc o m p e t i t i o n ;s i m u l a t i o ns y s t e m ;f p g a i i i 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽 我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的 研究成果,也不包含为获得北京工业大学或其它教育机构的学位或证书而使用过的材料。与 我一同上作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示t n 意。 签名:日期:呈71 兰:笙 关于论文使用授权的说明 本人完全了解北京- 业大学有关保留、使用学位论文的规定,即:学校有权保留送交 论文的复印件,允许论文被查阅和借阅:学校可以公布论文的全部或部分内容,可以采用影 印、缩印或其他复制手段保存论文。 ( 保密的论文在解密后应遵守此规定) 同期: 第1 章绪论 第1 章绪论 1 1 处理器背景与课题意义 按照指令集的结构特点,将处理器分为复杂指令系统( c i s c :c o m p l e x i n s t r u c t i o ns e tc o m p u t e r ) 和精简指令系统处理机( r i s c :r e d u c e di n s t r u c t i o ns e t c o m p u t e r ) ,复杂指令系统计算机使用了大量复杂的指令,这些指令长度可变并 有多种寻址方式,大大增加了解码难度。目前除了个人p c 还在用x 8 6 指令集外, 其他系统己不使用。x 8 6 仍然存在的原因是为了兼容大量的x 8 6 平台上的软件。 在c i s c 微处理器中,程序的各条指令是按顺序串行执行的,每条指令中的 各个操作也是按顺序串行执行的。顺序执行的优点是控制简单,但计算机各部分 的利用率不高,执行速度慢。 r i s c 只将最常用的指令在r i s c 处理器中实现,其他指令由编译器综合实 现。指令集的简化是指令的传递机制简化,减少了处理器对存储器进行指令的读 与写操作。 m i p s 是世界上很流行的一种r i s c 处理器。m i p s 的意思是“无内部互锁流 水级的微处理器”( m i c r o p r o c e s s o rw i t h o u ti n t e r l o c k e dp i p e ds t a g e s ) ,其机制是尽量 利用软件办法避免流水线中的数据相关问题【l 2 】。它最早是在8 0 年代初期由斯坦 福( s t a n f o r d ) 大学h e n n e s s y 教授领导的研究小组研制出来的。m i p s 公司的r 系 列就是在此基础上开发的r i s c 工业产品的微处理器。这些系列产品为很多计算 机公司采用构成各种工作站和计算机系统。m i p s 处理器是八十年代中期r i s c c p u 设计的一大热点。m i p s 是卖的最好的r i s cc p u ,可以从任何地方,如s o n y , n i n t e n d o 的游戏机,c i s c o 的路由器和s g i 超级计算机,看见m i p s 产品在销售。 目前随着r i s c 体系结构遭到x 8 6 芯片的竞争,m i p s 有可能是起初r i s cc p u 设计中唯一的一个在本世纪盈利的。和英特尔相比,m i p s 的授权费用比较低, 也就为除英特尔外的大多数芯片厂商所采用。 中国”龙芯”已与m i p s 公司合作,并且据权威人士估计中国”龙芯 将在5 年 内改变世界处理器格局。因而,研究与设计m i p s c p u 具有很重要的学术价值与 市场价值,中国也不会再是无”芯”的国家。 本文设计的m i p s c p u 指令集中只有3 4 个指令,并且相对于c i s c c p u ( 指 令多达数百条) 而言,其方便了编程与调试,在一般的工业控制场所,娱乐场所 等均可以使用,并且指令与功能扩充后可以应用于服务器与工作站,其可以方便 的进行指令升级与优化,具有实际的应用价值与光明的发展前景。 北京t 业人学t 学硕l j 学位论文 1 2 国内外研究现状 1 2 1 处理器研究现状 c i s c 微处理是英特尔生产的x 8 6 系列( 也就是i a 一3 2 架构) c p u 及其兼容 c p u ,! t h a m d 、v i a 的。即使是现在新起的x 8 6 6 4 ( 也被成a m d 6 4 ) 都是属于 c i s c 的范畴。c i s c 趋向于使用较少的寄存器,而且通常是使用受到限制的特殊 寄存器。另夕b c i s c 指令集需要使用微指令解码。i n t e l 公司仍然是该领域的老 大,2 0 0 7 年英特尔公司推出了i n t e lq x 9 7 7 0 四核至强4 5 n m 处理器,采用先进的 先进制程,使功耗大大降低。2 0 0 8 年英特尔公司推出了i n t e la t o m “凌动”处 理器,其功耗低至0 6 w ,带给大家的是难以想象的节能与冷静。i n t e l 已经研制 出集成3 8 0 核( 不是说处理器正好拥有8 0 个物理核心,而是指处理器拥有大量规 模化并行处理能力的核心) 的却仅有指甲大小的超级c p u ,运算速度达到每秒数 万亿次,可见摩尔定律( 1 集成电路芯片上所集成的电路的数目,每隔18 4 月就翻 一番1 仍然有效。 r i s c 概念已经引领了微处理器设计的一个更深层次的思索。设计中必须考 虑到:指令应该如何较好的映射到微处理器的时钟速度上( 理想情况下,一条指 令应在一个时钟周期内执行完) ;体系结构需要多“简单”;以及在不诉诸于软件 的帮助下,微芯片本身能做多少工作等等。除了性能的改进,r i s c 的一些优点 以及相关的设计改进还有:如果一个新的微处理器其目标之一是不那么复杂,那 么其开发与测试将会更快:使用微处理器指令的操作系统及应用程序的程序员将 会发现,使用更小的指令集使得代码开发变得更加容易;r i s c 的简单使得在选 择如何使用微处理器上的空间时拥有更多的自由;比起从前,高级语言编译器能 产生更有效的代码,因为编译器使用r i s c 机器上的更小的指令集【3 7 】。 r i s c 是在c i s c 指令系统基础上发展起来的,纽约约克镇i b m 研究中心的 j o h nc o c k e 证明,各种指令的使用频度相当悬殊,计算机中约2 0 的指令承担了 8 0 的工作,于1 9 9 4 年,他提出r i s c 的概念。复杂的指令系统必然增加微处理 器的复杂性,使处理器的研制时间长,成本高。并且复杂指令需要复杂的操作, 必然会降低计算机的速度。基于上述原因,2 0 世纪8 0 年代r i s c 型c p u 诞生了, 第一台得益于这个发现的电脑是1 9 8 0 年i b m 的p c x t 。再后来,i b m 的r i s c s y s t e m 6 0 0 0 也使用了这个思想。相对于c i s c 型c p u ,r i s c 型c p u 不仅精简了 指令系统,还采用了一种叫做“超标量和超流水线结构”,大大增加了并行处理 能力。r i s c 指令集是高性能c p u 的发展方向。它与传统的o s c ( 复杂指令集) 相对。相比而言,r i s c 的指令格式统一,种类比较少,寻址方式也比复杂指令 集少。当然处理速度就提高很多了【8 1 2 1 。 第1 章绪论 r i s c 典型范例如:m i p sr 3 0 0 0 、h p - - p a 8 0 0 0 系列,m o t o r o l am 8 8 0 0 0 等均 属于r i s c 微处理器。由于r i s c 处理器指令简单、采用硬布线控制逻辑、处理能 力强、速度快,世界上绝大部分u n i x t 作站和服务器厂商均采用r i s c 芯片作 c p u 用。如原d e c 的a 1 p h a 2 1 3 6 4 、i b m 的p o w e rp c ( 3 4 、l i p 的p a - - - 8 9 0 0 、s g i 的 r 1 2 0 0 0 a 和s u nm i c r o s y s t e m 公司的u l t r as p a r c1 1 。r i s c 处理器是当今u n 领 域“位多处理机的主流芯片。下图是一款用基于m i p s c p u 设计的d s p 传感器芯 片,下图1 - i - a ) 是整个芯片系统电路模块。图1 一l - b ) 足3 级流水线的基- 于m i p s 架构 的c p u 核模块。 醋龌 遵霎霹翻;曼是型熹型蚓。j 町d s p 传感器系统模块b ) 内嵌的m i p s c p u 的流水线的架构 “d s p8 # l l s o rs y s t e m m o d u l e t h e p i p e l i n ea r c h i t e c t u r e o f t h e 啪b e d d e d m i p s - c p u 图1 - 1 基t m i p s 架构的超低功耗d s p 传搏器 f i g u r e l - 1 m i p s m i c r o p e w e r d s ps e n s o ra p p l i e a t l o n m i p s 技术公司则是一家设计制造高性能、高档次及嵌 式3 2 位和6 4 位处理器 的厂商。在通用方面,m i p s r 系列微处理器用于构建s g i 的高性能工作站、服务 器和超级计算机系统。在嵌入式方面,m i p sk 系列微处理器是目前仅次于a r m 的用得最多的处理器之一( 1 9 9 9 年以目i i m i p s 是世界上用得最多的处理嚣) ,其应 用领域覆盖游戏机、路由器、激光打印机、掌上电脑等各个方面。在r i s c 处理 器方面占有重要地位。中国龙芯2 和前代产品采用的都是6 4 位m i p s 指令架构,它 与大家平常所知道的x 8 6 指令架构互不兼容,m i p s 指令架构由m i p s 公司所创, 属于r i s c 体系。过去,m i p s 架构的产品多见于工作站领域,索尼p s 2 游戏机所 用的 e m o t i o ne n g i n e 也采用m i p s 指令,这些m i p s 处理器的性能都非常强劲,而 龙芯2 1 1 “也属于这个阵营,在软件方面与上述产品完全兼容。据权威人士预测, 中国”龙芯”五年以内将会改变世界处理器格局。 北京i n 学t 学碘i 学位论史 1 2 2f p g a 技术发展现状 目前,基于f p g a ( f i e l d - - p r o g r a m m a b l e g a t e a r r a y 的缩写,即现场可编程门 阵列1 芯片的嵌入式系统的开发已经很流行,全球4 大f p g a 生产厂商有: x i l i n x a l t e r a l a t t i c e , a c t e l 。x i l i n x 公司最近推出的v i r t e x ,5 系列采用6 5 m n 工艺,可提供高达3 3 万个逻辑单元、1 ,2 0 0 个i o 和大量硬i p 块。超大容量和密度 使复杂的怖线变得更加不可预测,由此带来更严重的时序收敛问题。此外,针对 不同应用而集成的更多数量的逻辑功能、d s p 、嵌入式处理和接口模块,也让时 钟管理和电压分配问题变得更加困难。因此对于f p g a 生产是个挑战。我国的 f p g a 设计技术里这4 家公司有不小的差距,更有很大的发展潜力u 7 1 9 o 同a s l c 技术相比基于f p g a 的嵌入式具有设计周期短、设计成本和风险 低、集成度高、维护和升级方便、可靠性高等特点。同时,随着系统设计引入”片 上可编程系统”( s o p c :s y s t e m o i l a - p r o g r a m m a b l e - c h i p ) ,f p g a 具有了作为嵌入 式处理器的能力,在嵌入式系统设计领域已占据越来越重要的地位,并且其朝着 高密度,强的运算能力,集成了大量模拟电路,因而得到广泛的应用,如图1 2 所示。f p g a 设计是以软核的设计和使用为主的,因此随着基于f p g a 的嵌入式 系统的设计技术和市场的成熟,嵌入式c p u 软核的大量应用成为可能,如图1 _ 2 所示。目前,全球f p g a 市场绝大多数市场份额被a l t e r a 公司与x i l i n x 公司2 家公司所占有,国内f p g a 芯片的设计起步较晚,因而距离国外有较大差距幽 。 詈! : = l 斟訾i 【心颦 崮l 之采用f p g a 的视额与幽像处理 f i g u m l - 2v i d e oa n d c m m p r o c e s s u s e d t h e f p g a c h i p t a g 是1 9 8 5 年制定的检测p c b 和i c 芯片的一个标准1 9 9 0 年被修政后 成为i e e e 的一个标准,即i e e e l l 4 91 - 1 9 9 0 ”圳l 。通过这个标准,可对具有j t a g 接口的芯片的硬件电路进行边界扫描和故障检测。具有j t a g 接f i 的芯片,相关 j t a g 引脚的定义为:t c k 为测试时钟输入;t d i 为测试数据输入,数据通过 t d i 引脚输入j t a g 接口;t d o 为测试数据输出,数据通过t d o 引脚从j t a g 接口输出;t m s 为测试模式选择,t m s 用来设置3 t a g 接口处于某种特定的测 试模式;t r s t 为测试复位,输入引脚,低电平有效。 第l 章绪论 j t a g 最初是用来对芯片进行测试的,基本原理是在器件内部定义一个t a p ( t e s t a c c e s sp o r t ,测试访问口) 通过专用的j t a g 测试工具对内部节点进行测 试。j t a g 测试允许多个器件通过j t a g 接口串联在一起,形成一个j t a g 链, 能实现对各个器件分别测试。现在,j t a g 接口还常用于实现i s p ( i n - s y s t e m r o g r a m m a b l e 在线编程) ,对f l a s h 等器件进行编程。 j t a g 编程方式是在线编程,传统生产流程中先对芯片进行预编程再装到板 上因此而改变,简化的流程为先固定器件到电路板上,再用j t a g 编程,从而大 大加快工程进度。j t a g 接口可对p s d 芯片内部的所有部件进行编程,如图1 - 3 所示。 图1 3j t a g 系统调试示意图 f i g u r e l - 3 t h ej t a gs y s t e m d e b u g g i n g 1 2 3 本文的设计目标 本论文需要完成m 1 p sc p u 的代码设计与分析b ”7 i ,以及c p u 架构制定, 指令集制定与分析,流水线分析与制定。通过设计本文相对较复杂的m i p s ,_cpu 实现m i p s c p u 一些常见的设计思路,比如c p u 内部模块划分,状态机的状态 转移与控制理论,多级流水线原理消除竞争与冒险来避免流水线阻塞的途径 口w 1 1 需要完成m i p sc p u 仿真器( 含编译器) 的选择,在x 8 6 计算机平台上实现基 于g n u 标准的仿真开发平台,对应用程序进行仿真,编译及分析与评估。 需要完成m o d e l s i m 的功能仿真;完成f p g a 的芯片选型,完成基于f p g a 的软件与硬件平台的构建以及设计验证。 1 3 本章小结 本章介绍了课题的背景与意义,国内外处理器的发展研究现状,以及本文设 计的m i p s c p u 的e l 标、方法以及设计意义。 亭型 第2 章微处理器概述 第2 章微处理器概述 2 1 微处理器指令简介 微处理器的功能取决于指令集,指令集结构( i n s t r u c t i o ns e ta r c h i t e c t u r e ,i s a ) 提供了软件与硬件之间的接口。汇编语言,指令格式,地址模式和编程模型都围 绕着指令集结构展开,他们构成了c p u 的体系结构。由于有大量的程序建立在 指令集上,指令集的更新变化会影响这些程序的运行,因此指令的更新是缓慢的。 每种c p u 体系结构可以有不同的逻辑实现,实现方法有流水线,c a c h e 存储器和分支预测器等。逻辑实现常用r t l 级描述方法进行描述,提高指令执 行速度的方法如下: ( 1 ) 提高处理机的工作主频。 ( 2 ) 采用更好的算法和设计更好的功能部件。 ( 3 ) 采用指令集并行技术。 ( 4 ) 流水线处理机和超流水线处理机。 ( 5 ) 超标量处理机。 ( 6 ) 超长指令字处理机。 精简指令系统计算机的最大特点是指令长度固定,指令格式种类少,寻址方 式种类少,大多数是简单指令且都能够在一个时钟周期内完成,因而易于设计超 标量与流水线,寄存器数量多,大量操作在寄存器之间进行,容易实现更高的并 行性 3 2 ,3 3 1 。 指令长度固定( 为一个处理器字) ,格式少,支持高效率的定点控制操作,便 于实现快速的流水线。固定格式的简单指令使得译码过程仅需要硬线连接,并使 用简单的逻辑电路来实现。高效的编译器可以通过简单指令序列来代替复杂的指 令执行,从而消除了微程序。 由于对主存储器的读与写速度比较慢且代价昂贵,因此r i s c 指令仅对处理 器片内的寄存器堆进行操作,只有l o a d s t o r e 指令才直接访问存储器。并且指令 装载操作运用了c a c h e ,这样大大减少了对主存储器的访问操作,才可以获得 较高的执行效率。 多端口寄存器堆和在主存储器与处理器之间的各种高速缓存c a c h e 避免 了流水线的冲突,提高了流水线的使用效率。 现代的存储器通常通过快速爆发模式加速数据传输的速度,使得存储器单时 钟周期可以装载2 条指令。这样需要两个并行的流水线,如并行的a l u ( 超标量 系统) 共同执行指令,因而增加了硬件控制逻辑的复杂性。 北京t 业人学丁学硕l :学位论文 2 2 处理器的性能度量 处理器性能是通过由执行一段特殊代码所需要的时问来衡量的( 时间程序) , 计算公式如下: 1 性能= 时间程序= 指令程序宰周期数肘旨令宰时间周期 公式的第一项为特定的程序需要执行的动态指令数;第二项为平均执行每条 指令需要花费的时间周期数,由c p i ( c y c l e sp e ri n s t r u c t i o n ) 表示;第三项为每个时 间周期所需要的时间。 r i s c 减少指令复杂性,从而减少每条指令执行所需要的时钟周期数。r i s c 还通过流水线技术,c a c h e 存储器,分支预测,以及指令并行执行等技术减少 c p i ,以提高c p u 性能。 流水线技术是减少时钟周期的关键技术,流水线可以重叠执行多条指令。尽 管完成一条指令需要多个时钟周期,但是流水线可以重叠执行多条指令,他可以 降低每条指令执行所需要的时钟周期数c p i ,最大可以降低到c p i = i , i p c ( i n s t r u c t i o np e rc y c l e ,每周期执行的指令数) 1 的处理器称为”超标 量处理器”。 流水线是指令集处理器设计中广泛应用的技术,当前高端c p u 可能使用超 过2 0 级的超深度流水线。同时,深度流水线也是获得高速时钟频率的必要条件。 并且指令流水线要尽量减少因条件分支造成的”堵塞”和”断流”,操作部件的流 水线通过编译技术尽量提供连续的同类操作。在流水线的每一个流水线段中都要 设置一个流水锁存器,各流水段的时间应该尽量相等。流水线处理机的基本时钟 周期等于时间最长的流水段的长度,流水线需要有“装入时间和“排空时间”。 加入流水线的目的是提高数据吞吐率,即提高处理速度。流水线缩短了在一个时 钟周期内指令经过的通路长度,因而便于提高时钟频率。 ”超标量处理器”c p u 集成了多个a l u ,多个f p u ,多个译码器和多条流水 线的c p u ,以并行处理的方式来提高性能。超标量流水线由3 个参数来衡量, 其中指令执行所需要的周期数为1 ,发射两条连续的指令之间所需要的时钟周期 数为1 。每个时钟周期进入流水线的指令数为n ,n 又称为”超标量的度数目 ( s u p e r s c a l a rd e g r e e ) ,超标量流水线度数n 表明每个流水线段中驻留n 条指令。 这样超标量流水线同时并行执行的最大指令数为流水线度数n 乘以流水线数k 超标量流水线在一个基准的时钟周期内有m 个次时钟周期,一个流水线( 一个 周期) 分为m 个子段,流水线的操作在m 各子段内完成。超标量流水线的参 数是指指令执行所需要的时钟周期数为l ,又为m 个次时钟,发射两条连续指 令之间所需要的周期数是l 。例如,流水线中取指流水线段将取指令操作又分 第2 章微处理器概述 为2 个子流水线段,一个基时钟周期又分为2 个次时钟周期,取指操作由2 个字 流水线段完成。这样,超流水线度数为2 。 超长指令字( v e r y l o n gl o n gw o r d ,v l i w ) 是指由编译器决定哪n 条指令被当 作一条指令同时发射到执行段,并将这n 条指令作为一个超长指令存放到程序 存储器中。这样,当c p u 执行这个程序存储器中的指令时,就执行了n 条指令。 这要求程序存储器有处理超长指令字的能力【3 7 1 。 本文设计的m i p s c p u 是基于可编程门阵列f p g a 实现的,f p g a 是一种可 重复变成很多次的芯片,用户可对f p g a 内部的逻辑模块和i 0 模块重新配置, 以实现用户的逻辑,因而也被用于对c p u 的模拟。用户对f p g a 的编程数据放 在f l a s h 芯片中,通过上电加载到f p g a 中,对其进行初始化。也可在线对其编 程,实现系统在线重构。 2 3r i s c c p u 的结构 c p u 核心主要分为运算器和控制器,运算器包括a l u ( a r i t h m e t i ca n d l o g i cu n i t , 算数逻辑运算单元) ,f p u ( f l o a t i n gp o i n tu n i t ,浮点运算单元) ,通用 寄存器组和专用寄存器:控制器用于控制c p u 各个模块的运行,其中包括指令 控制器,时序控制器,总线控制器和中断控制器等。c p u 性能表现的决定因素 在于其核心的设计,现代r i s c 使用了流水线与超标量技术。 2 3 1 运算器介绍 a l u 主要完成二进制数据的定点算数运算( 加减乘除) ,逻辑运算( 与,或,非 及异或) ,以及以为操作。通常a l u 有两个输入和一个输出端。整数单元有时也 称为“i e u ”( i n t e g e re x c u t i o nu n i t ) 。 f p u 主要负责浮点运算和高精度整数运算,有些f p u 还具有向量运算的功 能,另外一些则有专门的向量处理单元。 通用寄存器组是一组最快的存储器,用来保存参加运算的操作数和中间结 果。r i s c 系统往往具有非常多的通用寄存器,并采用了重叠寄存器窗口和寄存 器堆等技术来使寄存器资源得到充分利用。 专用寄存器通常是一些状态寄存器,不能通过程序改变。它们由c p u 控制, 表明某种状态。 北京t 业人学丁学硕,l j 学位论文 2 3 2 控制器介绍 指令控制器是控制其中的主要部分,它完成取指令和分析指令等操作。然后 交给执行单元( a l u ) 来执行,同时完成下一条指令地址的计算。 时序控制器的作用是为每条指令按照时间顺序提供控制信号。 总线控制器主要用于控制c p u 的内外部总线,包括地址总线,数据总线和 控制总线。 中断控制器根据优先级的高低对中断请求进行排队,逐个交给c p u 来处理。 2 3 3 流水线分类 流水线按照不同的分类方法,可以分为不同的类型。 ( 1 ) 按功能划分 按照功能可以将流水线分为单功能流水线和多功能流水线,单功能流水线 只能完成一种固定功能;多功能流水线的各段可以进行不同的连接,从而使流水 线在不同的时间或者在同一时间内完成不同的功能。 ( 2 ) 按反馈回路功能划分 按照是否有反馈回路功能分为线形流水线和非线形流水线,线形流水线的各 段串行连接,没有反馈回路,每个流水段仅流过一次;非线形流水线除有串行连 接的通路外,还有反馈回路,非线形流水线必须用流水线连接图以及流水线预约 等共同表示。 ( 3 ) 按照级别划分 按照流水线的级别分为部件级流水线( 运算操作流水线) ,处理机级内流水线 和处理机间流水线。 ( 4 ) 按照连接方式划分 分为静态流水线,动态流水线。 ( 5 ) 按照处理数据结构划分 按照处理数据结构分为标量流水处理机和向量流水处理机。 ( 6 ) 按照控制方式划分 分为同步流水机与异步流水机。 2 3 4 二进制数的大小及计算结果的溢出判断 在计算机中,指令与数据均使用二进制表示,一般存储器地址用无符号数 表示,由符号数用二进制的补码表示,m i p s 中有2 条指令,s l tr d ,r s ,r t 与s l t u 第2 章微处理器概述 r d ,r s ,r t ,其中r d ,r s ,r t 是整数数据,s l t u 把r s ,r t ,r d 当作补码来看待,如果r s 中的 数据小于r t 中的数据,则把1 存入寄存器r d 中,否则把0 存入寄存器r d 中;s l t u 完成相同的功能,只不过把寄存器r s ,r t 中的数据当作无符号数来看待。 当计算结果超出了n 位二进制所表示的位数时,称之为溢出。比如m i p s 中 的两条加法指令:a d dr d ,r s ,r t 与a d d ur d ,r s ,r t 其中a d d 指令对两个补码表示 的数据进行相加,结果溢出时,进行例外处理,即转入系统程序去执行;a d d u 指令对两个无符号数进行处理,结果溢出时,则忽略。 2 3 5 数据对齐格式 根据二进制位数不同,分为字节( 8 位) ,半字( 1 6 位) ,字( 一般为3 2 位) ,双 字( 6 4 位) ,数据存储在存储器中,一次访问存储器最小单位是一个字节,即存储 器地址给出的是字节地,一个3 2 位字要占用4 个连续的字节:b 3 ,b 2 ,b 1 ,b 0 ,其 中b 3 是最高有效字节,b 0 是最低有效字节。在以字节为单位的存储器中存放的 次序有大端与小端两种方式。 如果地址n ( 3 2 位) 的最低2 位是0 0 ,则说字数据在存储器中的存放是对 齐的,如果n 的最后一位是0 ,则说明半字数据在存储器中是对齐的,字节的存 放永远是对齐的。 , 对齐存放的好处是一次存储器访问便可以取到所有的数据,例如m i p s 指 令:1 w 指令可以一次取到3 2 位数据。读取一个没有对齐的数据需要2 次访问存 储器。m i p s 指令集中提供了对于未对齐的数据的访问指令,例如1 w l ( 1 0 a dw o r d l e f t ) ,1 w r ( 1 0 a dw o r dr i g h t ) 两条指令可以把没有对齐的存储器字取到存储器中。 2 3 6m i p s 指令与寻址方式介绍 ( 1 ) l o a d s t o r e 指令:所有的计算类型的指令均从寄存器堆中读取数据, 只有l o a d s t o r e 指令访问存储器。 ( 2 ) 易于流水线的设计,m i p s 指令集的指令均为3 2 位,而且指令操作码的 位置固定。 ( 3 ) 寻址方式简单,每条指令的操作简单,便于编译器的开发。 m i p s 有3 2 个通用寄存器,这些通用寄存器称之为寄存器堆( r e g i s t e r f i l e ) ,m i p s 还有3 2 个浮点寄存器,还有专用寄存器,比如p c ( p r o g r a mc o u n t e r ) m i p s 只有3 种指令格式,r - t y p e ,j t y p e ,i t y p e ;如图2 1 所示。其中r t y p e , 类型的指
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河北省蠡县2025年上半年公开招聘城市协管员试题含答案分析
- 河北省广宗县2025年上半年公开招聘村务工作者试题含答案分析
- 2025年地震监测测绘合同书模板
- 2025版食堂承包合同补充协议范本(含节假日特殊服务)
- 2025版事业单位教职工合同制聘用规范范本
- 2025年度生态旅游用地地基买卖合同范本
- 2025年度成都二手房交易税费计算及缴纳指导合同
- 2025年度电子劳动合同智能语音服务合同
- 2025年度城市绿化养护与植物保护合同范本
- 2025房地产剩余价值抵押与养老产业投资合同
- 园区招聘活动方案
- 罐式专用运输管理制度
- 产科危急重症管理制度
- 2025届上海市金山区高三下学期二模英语试题(解析版)
- 【生物 安徽版】2025年普通高等学校招生选择性考试(原卷版)
- 2025年《数字孪生与虚拟调试技术应用》课程标准
- T/CCS 033-2023煤矿智能化水处理系统建设技术规范
- GoodsFox-2025年全球电商营销趋势报告
- 2025年人造粉云母制品行业深度研究报告
- 医工交叉培养提升医疗人才的综合能力
- 以诺书999中英对照
评论
0/150
提交评论