




已阅读5页,还剩69页未读, 继续免费阅读
(微电子学与固体电子学专业论文)32位浮点dsp处理器alu研究及其ip核设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 浮点运算是高性能计算研究中的一个重要领域。为了满足应用程序的需求,某些微 处理器及高档显卡中,设计实现了超高精度浮点运算部件。 本文结合中国电子科技集团第五十八研究所预研项目中的f a l u ( 浮点算术逻辑运 算部件) 的设计工作,从延迟、面积、结构复杂性等方面系统地研究了浮点算术逻辑运 算的各个过程。由于浮点算术逻辑运算单元所实现的操作比较多,其核心为浮点加法器, 需要在此基础上充分利用浮点加法的各个功能模块,完成其他功能,并达到时序要求, 因此设计上较复杂。本文在研究了定点加法算法,浮点加法算法的基础上,分析比较各 种不同实现方法,选择了基于l o p 算法的浮点加法器,并在此基础上,延伸了该浮点 加法器的功能,设计了一个可以完成2 2 种算术逻辑运算的4 0 位浮点算术逻辑运算单元, 所有的算术逻辑运算均在一个时钟周期内完成。定点加法和前导0 1 判断并行运算,缩 短了关键路径;使其达到设计要求。验证部分采用基于特征向量和大量随机向量结合的 验证方法保证了设计的正确性;包含本f a l u 的d s pi p 己通过软件、硬件验证。 本文设计的浮点算术逻辑单元,采用s m i c0 1 8 u m 工艺进行综合,计算机的模拟结 果显示该f a l u 具有高速、低复杂度的良好性能。在1 8 v 工作电压,t y p i c a l 情况下的 延时为6 7 n s 。 关键词:d s p , i p 核,f a l u ,浮点加法器,定点加法器,前导判断电路。 a b s t r a c t f 1 0 a t i n gp o i n t 撕t l n l e t i ci so n eo f t h em o s ti m p o r t a n to n ei nh i g hp e r f o r m a n c ea r i t h m e t i c h lo r d e rt os a t i s f yt h er e q u i r e m e n to fa p p l i c a t i o n s ,s o m eo ft h em i c r o p r o c e s s o ra n dh 1 班 p e 雨m a n c e v i s i o l lc a r dh a v et h ep e r f o r m a n c et od e a lw i t hs u p e rp r e c i s i o n a r i t h m e t i c b u tf o r t h em e t h o d so fh o wt or e a l i z es u p e rp r e c i s i o na r i t h m e t i c ,t h e r ei sn o m o r ei n f o r m a t i o n b a s e do nt h ew o r ki nd e s i g n i n gaf a l u ( f l o a t i n g - p o i n ta r i t h m e t i cl o g i cu n i 0i n t h e4 0b i t f l o a t i n gp o i n td s p , t h i sd i s s e r t a t i o ng i v e sas y s t e m a t i cr e s e a r c ho nt h ee v e r ys t a g e so f t h e f a l uc o n s i d e r i n gd e l a y , a r e aa n dc o m p l e x s i n c ef l o a t i n g - p o i n ta l g o r i t h m i cw h o s ec o r e 1 s f l o a t i n gp o i n ta d d e r , w i l ll e a d t om o r eo p e r a t i o n s ,8 0i t i se s s e n t i a lt om a k ef u l lu s eo f f l o a t i n g p o i n ta d d i t i o no ft h ev a r i o u sf u n c t i o n a lm o d u l e s i no r d e r t or e a l i z eo t h e rf u n c t i o n s a 1 1 dt oa c h i e v et i m i n gr e q u i r e m e n t s ,t h ed e s i g nw i l lb em o r ec o m p l e x b a s e do nt h es t u d yo f a d d e ri n c l u d i n gf l o a t i n g p o i n ta d d e ra l g o r i t h m ,a n a l y z i n gt h e s ek i n d ss t r u c t u r e s ,w e c h o o s e t h el o pf l o a t i n g - 1 9 0 i n ta d da st h em a i na s s e m b l yo ff a l u t h i sf a l uc o u l dd e a lw i t h2 2 k i n d sa n t h m e t i ca n dl o g i co p e r a t i o n s ,a l lt h e s eo p e r a t i o n sa r ed o n e i no n ec l o c kc y c l e t h ef i x a d d e ra n dl e a d i n go n ep r e d e t e c t i o na lei np a r a l l e lw a y , t h i sc o u l dr e d u c et h ed a t a 。p a t hd e l a y , ma _ k es u r et h ep e r f o r m a n c eo ft h i sf a l ui sf i t t e dw i t hd e s i g ns p e c c h a r a c t e rv e c t o r sa n d m d o mv e c t o r sa r eu s e dt ot e s tt h ef a l u ,t h ed s pi pc o r ei n c l u d e st h i sf a l u h a sp a s s e dt h e s o f t w a r ea n dh a r d w a r et e s t t h ef l o a t i n g - p o i n ta r i t h m e t i cl o g i cu n i ts y n t h e s i sw i t hs m i co 18 u mt e c h n i q u e ,t h e r e s u l ts h o wt h eh i g hp e r f o r m a n c e ,u n d e rt h e1 8 vt y p i c a lc o n d i t i o n ,t h ec r i t i c a lp a t ho f t h e m u l t i p l i e ri s6 7 n s k e y w o r d s :d s p , i pc o r e ,f a l u ,f l o a t i n ga d d e r , l e a d i n g o n ep r e d e t e c t i o n i l 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工 作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地 方外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含 本人为获得江南大学或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明 确的说明并表示谢意。 签名: 关于论文使用授权的说明 本学位论文作者完全了解江南大学有关保留、使用学位论文的规 定:江南大学有权保留并向国家有关部门或机构送交论文的复印件和 磁盘,允许论文被查阅和借阅,可以将学位论文的全部或部分内容编 入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存、 ;1 2 编学位论文,并且本人电子文档的内容和纸质论文的内容相一致。 保密的学位论文在解密后也遵守此规定 签名: 导师签名:期: 第一章绪论 1 1 研究意义 第一章绪论 随着微电子技术的不断进步、计算机技术的不断发展,集成电路经历了小规模、中 规模、大规模的发展过程,目前已经进入超大规模( v l s i ) 和甚大规模集成电路( u l s i ) 阶段。超大规模集成电路工艺在2 1 世纪初得到了高速的发展,目前商业化半导体芯片 制造技术的主流已经达到0 1 3 u m 的线宽,今后发展的趋势是o 0 9 u m 甚至0 0 6 5 u m 以下 【1 1 。集成电路技术j 下迅速向更高集成度、超小型化、高性能、高可靠性的方向发展。 微处理器的发展也随着集成电路的迅猛发展而日新月异。目前微处理器的发展速度 一直遵循i n t e l 公司的创始人之一g o r d o nm o o r e 于1 9 6 4 年提出的摩尔定律【2 】:处理器的 性能三年翻两番。由于可使用的芯片面积增加,为了进一步提高运算性能,已经有越来 越多的处理器包含多个运算单元,算术运算单元已经成为处理器结构中的一个重要组成 部分。作为数字处理器中重要的部分,浮点运算部件通常都是整个设计中需要重点考虑 的对象:浮点运算通常需要多个时钟周期才能完成;为了得到接近实际值的运算结果, 某些数值计算领域如流体动力、计算物理学、气象模型等等,需要很高精度( 如1 2 8 位 字长) 的浮点运算【3 】。而高精度浮点运算的固有特性决定了它具有面积大、功耗大的特 点。速度、成本和功耗成为集成电路设计中目前最受关注的几个问题。 浮点算术逻辑单元是数字信号处理器中的核心部件【4 】,数字信号处理( d i g i t a ls i g n a l p r o c e s s i n g ,简称d s p ) 是- - 1 7 涉及许多学科而又广泛应用于许多领域的新兴学科。2 0 世 纪6 0 年代以来,随着计算机和信息技术的飞速发展,数字信号处理技术应运而生并得 到迅速的发展。在过去的二十年时间里,数字信号处理已经在通信等领域得到极为广泛 的应用【5 1 。 1 2 研究现状与研究背景 1 2 1 研冗现状 随着深亚微米制造技术和设计技术的迅速发展,集成电路已进入片上系统 ( s o c :s y s t e mo nac h i p ) 时代。片上系统又可称为系统级芯片,它是在单一芯片上实 现信号的采集,转换,存储,处理和i o 等功能,即实现一个系统的功能。然而在s o c 中芯片的密度和设计的复杂性也越来越明显,试想对于一个上百万甚至上亿个晶体管的 芯片,很难采用自底向上的设计方法来实,现取而代之的是采用自顶向下的系统级设计 方法。p 核( i n t e l l e c t u a lp r o p e r t yc o r e ) 是具有自主知识产权的模块( 核) ,i p 核设计是 i c 设计的一个独立技术,它已经成为s o c 设计的主要途径。 从设计流程上看,由于今天p 模块的集成规模已经很大,达到了系统级的水平, 江南人学硕+ 学位论文 按照a s i c 设计方法学的要求需要完成行为,结构,和物理三个设计域的设计,因此这 些模块子系统也就在这三个层次上分别为i p 软核,p 固核及i p 硬核。 1 软核( s o f t c o r e ) :软核设计投入最少,只完成r t l 级的行为设计,以h d l 描述 文本的形式提交,使用这个h d l 描述一定要经过仿真验证,使用者可以用它 综合出正确的门级网表。软核的优点是有最大的灵活性,不受实现条件的限制, 同时也为后续设计留有更大的创新空间,使用者根据单元库的条件可以完成更 具创意的结构设计;缺点是对模块的预测性太低增加了设计的风险。 2 固核( f i r m c o r e ) 介于软核与硬核之间,是完成了逻辑综合的功能块,比软核有 更大的设计深度,已经完成了门级综合,时序仿真等设计阶段,以门级网表的 形式提交用户。 3 硬核( h a r d c o r e ) i p 模块是最深层次,优点是易于实现,可集成到单片系统设 计,且功能可优化,具有较小的面积,易于大量生产;缺点是用户难于修改, 灵活性小。 在过去几十年里,我国i c 设计业一直相对落后,i p 产业的建立为打破这种局面提 供了一个适合我国国情的切入点,必将从国内和国际两个方面拉动我国的i c 设计水平。 从国内方面看,我国屡次冲击高端i c 设计都不很成功,原因之一是高端芯片的电路过 于庞大和复杂;i p 库的建立则把“系统集成”与“功能模块设计分丌,分散了设计规 模和难度。从国际方面看,i p 产业是进入国际市场的最好切入点;这是因为采用h d l 进行电路设计具有以下几个特点: 1 采用自上而下t o p d o w n 的设计方法。 2 降低了电路的设计难度,加快了设计周期。 3 系统硬件描述能力强,h d l 具有多层描述系统硬件功能的能力,可以从系统的 数学模型直n i - 级电路。此外,高层次的行为描述可以与低层次的r t l 描述和 结构描述混合使用。 4 主要设计文件是用h d l 语言编写的源程序,便于存档,共享和复用,具有较好 的继承性。 因此,建立我们自己的i p 库,对于提高我国集成电路的发展水平是极为重要的。 运算逻辑部件( a r i t h m e t i cl o g i cu n i t ,简称a l u ) 的设计是d s p 芯片设计中重要的一环【6 】。 据资料显示,目前国外大多数处理器的运算部件都是定浮点分开的,即分别设计有定点 运算部件和浮点运算部件【7 】,有关定浮点运算部件合并设计的资料和报道相对较少。 对于定点加法操作,其原理很简单,但随着加法操作数的增加,从l s b ( l e a s t s i g n i f i c a n tb i t ) 到m s b ( m o s ts i g n i f i c a n tb i t ) 的进位传播花费将很大,如r c a ( r i p p l e c a l t ya d d e r ) 行波进位加法器【8 1 。对此,国外进行了很多的研究,采取许多措施来加速 进位信号的传播,最典型的有先行进位加法器c l a ( c a r r y 1 0 0 k a h e a da d d e r ) 、进位选择 加法器c s l a ( c a r r y - s e l e c ta d d e r ) 、跳跃进位加法器c s k a ( c a r r y - s k i pa d d e r ) 、并行先 2 第一章绪论 行加法器p p a ( p a r a l l e l p r e f i xa d d e r ) 、条件和加法器c o s a ( c o n d i t i o n a l s u ma d d e r ) 等 竺【9 ,l o 】 可 。 随着工艺尺寸的进一步缩小及其嵌入式应用的发展,有关面积、速度及功耗的折衷 考虑的研究现在也很多。 浮点加法器的实现与浮点数据格式和选择的算法有密切的关系。目前研究较多的是 如何通过将串行的操作转化为并行操作,从而减小浮点加法器的关键路径的长度【1 1 1 2 】。 该方面研究所取得的成果较多,显著的有以下几个方面: 前导0 1 的预判断:它通过使用两个被操作数的对应位的状态,在尾数进行加减法 的同时进行结果可能会出现的前导0 1 个数的预判断,而不用等结果运算出来后再进行 判断,从而可以减少关键路径上的逻辑深度【13 1 。 减少尾数运算流程中可能要通过的加法器的个数,从而减少关键路径上的逻辑深度 【1 4 ,15 1 。1 9 8 1f a r m w a l d 提出了著名的t w o p a t h 算法,随后,q u a c h 和f l y n n 对t w o p a t h 算法进行了进一步的并行优化;它采用浮点数尾数进行加减法操作时固有的特点( 即对 位右移多位的规格化时必定不用左移多位;对位右移小于1 位的规格化时可能左移多 位) ,设计两条路径,再将结果的舍入步进行合并处理,可以保证每条路径上只有一个 加法器、一个移位器,从而缩短了浮点加法器的关键路径长度,它的缺点是两条路径上 的尾数加法器不能进行合并设计,因此,这样设计的浮点加法器的面积较大。 对数据路径进行流水线操作,将浮点加法分为几个周期完成,这样由于要插入寄存 器,面积可能会较大一些,但它每一周期所走的路径较短可以让周期时间缩短,同时, 由于寄存器的隔离作用,使得同时翻转的门的个数减少,这对降低加法器的动态功耗很 有利【1 6 ,17 1 。 设计可变周期的浮点加法器。通过对不同的操作数情况,动态的优化流水线所需的 级数,从而可以降低浮点加法操作所需的平均延迟及功耗【12 1 。 国内虽然对微处理器设计方面的研究起步较晚,但国内在定点加法器的设计方面进 行了较多的研究,位宽大都是8 位、1 6 位或更宽的,主要应用于m c u 中或i c 卡、加 密芯片等。 1 2 2 研究动态及发展趋势: 国际上对高性能算术逻辑部件的研究已经有多年的历史并且一些研究已经达到较 高的水平。一些具有代表性的研究主要有: d e c 1 9 9 2 年,美国d e c 公司推出的a l p h a2 1 0 6 4 处理器中,率先采用单周期延迟的算 术辑部件,该部件为6 4 结构,采用o 7 5 u m 的c m o s 工艺实现,用于时钟频率为2 0 0 m h z 的处理器。该设计在当时堪称一流水平。 c u h k 香港中文大学( c u h k ) 电子工程系曾研究出1 6 位流水线结构的算术逻辑部件, 江南入学硕士学位论文 该部件采用了一种新颖的异步流水线技术。采用0 6 u r n 的c m o s 工艺制造,可应用在 3 7 0 m h z 的处理器中。 h i t a e h i 1 9 9 3 年,同本同立公司( c e n t r a lr e s e a r c hl a b o r a t o r y ,h i t a c h i ,l t d ) 研制出采用 双传输管逻辑( d p l ) 实现的3 2 位逻辑部件,使用0 2 5 u m 工艺线,2 5 v 电压,该部件 延迟为1 5 n s 。 i b m 2 0 0 4 年,r e n e s a s 公司( r e n e s a st e c h n o l o g yc o r p y ) 和i b m 公司研究出一种双阱双 电压的6 4 位算术逻辑部件,由于采用双阱和双电源电压的技术,延迟和功耗大大降低。 该部件可达到1 1 6 g h z 的频率。 i n t e l 2 0 0 6 年,i n t e l 公司推出的新一代处理器的算术逻辑部件,采用9 0 n m 工艺,在进行 6 4 位运算时频率可以达到4 g h z 。同时,它还可以进行3 2 位运算,频率高达7 g h z 。 国内对于高性能算术逻辑部件的研究还不是很多,研究水平也不高。采用全定制对 算术逻辑部件进行专门设计的单位较少,大多数设计都是采用半定制的方法,因此性能 较低。 1 3 课题来源与研究方法 1 3 1 课题来源 本文研究的课题来源于中国电子科技集团第五十八所的研究项目,项目要求设计出 高可靠性的,速度要求在1 0 0 m h z 以上的浮点d s p 软核。浮点a l u 作为其中必不可少的 组成部分,成为项目设计的重要内容,根据浮点d s p 性能要求,浮点a l u 的一次运算 时间必须控制在8 0 n s 以内。 因为需要设计的是f a l u 软核,所以电路的速度优化主要从系统级实现,如:选择 高速算法;数据并行处理等。而不考虑从晶体管级、版图级与物理级进行优化。 1 3 2 本文的研究方法: f a l u 的基本核心结构为浮点加法器,而在此基础上,复用浮点加法电路的各个模 块,尽可能降低资源消耗而增加其所能实现的功能,且各个数据通路没有冲突,是f a l u 的一大难点,而由于额外增加了些电路,其关键路径上的延时势必会增加,因此,还需 要结合各方面的考虑,使其达到设计规格。 本文的研究方法如下: 首先,由于浮点加法器是f a l u 的关键路径,因此研究浮点加法器常见的算法与电 路结构,根据各种不同算法与电路结构特点,及性能要求,选择相应的浮点加法器。 其次,根据所选择的加法器,同时集成其他的算术逻辑运算功能,并确定f a l u 的 4 第一章绪论 整体架构。 进而,在考虑功耗面积等情况下,重点在算法与结构方面来优化f a l u 的性能; 最后,采用多种结构来进行浮点a l u 的r t l 级设计,前仿真验证其功能的正确性, 门级仿真验证其性能在特定工艺与电压下是否达到要求,若没有达到要求,重新设计 f a l u 的算法与结构,直到性能达到要求。 1 4 本文内容及章节安排 本文在全面研究浮点a l u 整体架构及浮点加法器各种结构的基础上,正向设计了 一种可以处理d s p 数据格式的4 0 位浮点与3 2 位定点的算术逻辑单元。该a l u 完成了 以浮点加减法为核心的2 2 种算术逻辑操作。 1 4 1 本文结构如下: 第一章,介绍了浮点a l u 的研究意义、研究背景与研究现状,进而给出本文的研 究方法与本文的内容结构。 第二章,介绍了f a l u 中的数据类型;同时说明在d s p 中数据的表示方法,浮点 a l u 需要处理的数据类型;并介绍了f a l u 的定点浮点的运算操作与操作流程。 第三章,研究了浮点加法器的算法与结构。介绍当前高性能浮点加法器的实现方法, 其中包括l o p 算法,t w o p a t h 算法等实现方法。 第四章,基于标准单元库设计浮点a l u 。然后定义a l u 的结构,划分a l u 的模 块,并对各个模块进行了说明,最后采用v e r i l o g h d l 描述了各个模块。 第五章,对a l u 进行验证。首先设定a l u 的验证向量,包括特征向量与随机向量, 然后通过大量的数据验证以验证a l u 的正确性,最后完成a l u 的门级仿真,给出延时 模型。而包含本文设计的d s pi p 已通过了软件、硬件验证,并完成交付。 第六章,对全文进行总结,并展望未来的研究方向。 江南大学硕+ 学位论文 第二章f a l u 的数据格式 本文设计的浮点a l u 将应用于浮点d s p i p 核中。所以有必要对d s p 中的数据格式与 数据运算进行必要的说明。在d s p 中,数据格式有两种基本类型:整数类型( 也称定点类 型,包括有符号整数和无符号整数) ,浮点数类型。d s p 可处理整数的短数据格式和单精 度格式,也可以处理浮点数的短数据格式、单精度格式和扩展精度格式。 当要求高精度运算时,浮点数是最佳的运算格式。d s p 芯片可以以整数运算速度实 现浮点运算。浮点处理能力可以防止整数运算中的溢出问题、操作数调整问题和其他通 常超过整数运算能力的问题。 本章将详细讨论d s p 芯片支持的浮点数据格式,本章首先介绍计算机中数的表示方 法,紧接着介绍d s p 中数据类型与舍入,规格化操作,最后给出定点数与浮点数的运算 流程。 2 1 数的表示方法 计算机中常用的数据的表示方法有:带符号数值表示法、基数反码表示法、基数补 码表示法。 正数的三种表示方法相同,负数的表示方法入下: l 、带符号数值表示法:a = ( s m 川m 柚m 。m 。) 在原码的基础上增加一位符号位来表 示。其中s 表示数据的符号,l 表示负数,0 表示正数。 2 、基数的反码表示( 1 补表示法) :a = ( s m 川一m 肫一m 。一m 。) ,即在不改变符号位的 基础上,将其它数据位取反。 3 、基数的补码表示( “2 ”补表示法) :a = ( ( s m 。一i m 。2 m l m o ) - 6 1 ) ,原码取反加1 得 到。 2 2d s p 中的数据类型 在浮点d s p 中有三种最基本的数据类型,整型,无符号整型和浮点型,其中所说 的整型就是有符号的整型,浮点d s p 中还有短整型,单精度整型,短浮点型,单精度 浮点型和扩展精度浮点型数据类型。本文将对上述的数据类型作详细说明。 2 2 1 无符号整数格式 无符号短整型格式中,因为没有符号位,所以只能表示正数。无符号格式是处理器 中最基本的表示方法,无符号整型又包括了无符号短整型,无符号扩展短整型与无符号 单精度整型格式。 6 第二章f a l u 的数据格式 1 、无符号短整型格式: 无符号短整型有1 6 位,每一位都是有效数据位。 表示范围:0 s 2 m l 图2 - 1 无符号短整型格式数据 f i g 2 - 1s h o r tu n s i g n e d - i n t e g e rf o r m a t 2 、无符号扩展短整型格式: 无符号扩展整型格式中,0 1 5 位是有效数据位,1 6 3 l 位全部扩展为0 。 表示范围:0 s 2 1 6 一l 气 : 1 61 50 图2 2 无符号扩展短整型格式数据 f i g 2 - 2z e r of i l lo fas h o r tu n s i g n e di n t e g e r 3 、无符号单精度整型格式: 无符号单精度整型数据格式中,每一位都是有效数据位。 表示范围:0 研2 3 2 1 图2 - 3 无符号单精度整型格式数据 f i g 2 - 3s i n g l e - p r e c i s i o nu n s i g n e d - i n t e g e r 2 2 2 有符号整数格式 有符号整数是采用二进制补码形式的数据格式,也是处理器中数据运算最常用的数 据格式,主要有短整型格式,扩展短整型格式与单精度整型格式。 1 短整型格式: 短整型格式中,1 6 位的有符号数字,二进制补码格式,最高位为这个数值的正负。 表示范围:一2 1 5 s 2 ”一l 图2 _ 4 短整型格式数据 f i g 2 4s h o r t - i n t e g e rf o r m a t 7 江南大学硕士学位论文 2 扩展短整型格式: 扩展整型格式中,3 2 位有符号数字,采用二进制的补码表示,其中1 6 - 3 1 位为扩 展符号位。扩展只是为了计算的需要,扩展后不改变原数据的值与表示范围。 表示范围:一2 1 5 & 2 ”一l :一一一:! 垦堕一一鱼l sssssssssssssssss 图2 5 扩展短整型格式数据 f i g 2 5s i g n - e x t e n s i o no fas h o r ti n t e g e r 3 单精度整型格式: 单精度整型格式中,采用二迸制的补码表示,最高位为符号位,表示数值的正负。 表示范围:一2 3 1 s 23 1 一l 3 1 0 图2 - 6 单精度整型格式数据 f i g 2 - 6s i n g l e - p r e c i s i o ni n t e g e r 2 2 3 浮点格式数据 浮点格式数据包括三个组成部分:指数区( e x p o n e n t ) ,符号区( s i g n ) ,分数区 ( f r a c t i o n ) 。如图2 7 所示。其中将符号区和分数区统称为尾数区( m a n t i s s a ) 浮点数 b 卜一m a n t i s s a 一 图2 7 浮点格式数据 f i g 2 7g e n e r a lf l o a t i n g - p o i n tf o r m a t 计算数值的方法是:x = s ;厶2 。= j 一2 川+ ;2 9 + f 2 一,s 是数据的符号位, s 是隐含位,在数据传输过程中并不出现,f 是分数区的数据( 二进制) ,e 表示指数区 数据( 等价到十进制) ,尾数区是一个规格化的二进制补码,小数点在隐含位与分数位 之间,如果符号位为1 的话,尾数的最高两位是1 0 ,如果符号位为0 的话,尾数的最高 两位为0 l ,而x - o 时,f = 0 ,s = 0 ,e = 1 0 0 0 0 ( 负的最大值) 。 1 短浮点格式 短浮点格式的数据由4 位指数位,l 位符号位和1 1 位分数位组成。 第二章f a l u 的数据格式 15 1 21 1100 图2 - 8 短浮点格式数据 f i g 2 - 8s h o r tf l o a t i n g - p o i n tf o r m a t 短浮点格式中,二进制浮点数x 为: x = 0 1 。f x 2 es = 0 x = 1 0 。f x 2 es = 1 x = 0e = - 8s = 0 f = 0 其范围为: 最大正数:x = f 2 2 。1 11 x 2 7 = 2 5 5 9 4 x 1 0 2 最小正数:x = 1 2 = 7 8 1 2 5 x 1 0 。3 最小负数:x = f 一1 2 _ 1 11 2 - 7 = 一7 8 1 6 3 x 1 0 - 3 最大负数:x = 一2 2 7 = 一2 5 6 0 0 x 1 0 2。 2 单精度浮点格式 单精度浮点格式由8 位指数位,l 位符号位与2 3 位分数位组成,是d s p 中常用的浮 点数据表示格式。 在位2 3 和位2 2 之间隐含一个二进制小数点来进行计算。当隐含的非符号最高有效 位显示时,它是在紧靠二进制小数点的左方。 3 12 4 2 3 2 20 卜一m a n t i s 强一 图2 - 9 单精度浮点格式数据 f i g 2 9s i n g l e p r e c i s i o nf l o a t i n g - p o i n tf o r m a t 单精度浮点格式中,浮点数x 表示为: x :0 1 f 2 s = 0 x :1 0 f x 2 s = l x = 0e = - 1 2 8 ,s = o f = 0 其范围为: 最大正数:x = ( 2 2 彩) 2 1 2 7 = 3 4 0 2 8 2 3 4 x 1 0 3 8 最小正数:x = l x 2 q 2 7 = 5 8 7 7 4 7 1 7 x 1 0 - 3 9 最小负数:x = ( 一1 2 3 ) x 2 - 1 ”= 一5 8 7 7 4 7 2 4 x 1 0 3 9 最大负数:x = - 2 2 1 ”= - 3 4 0 2 8 2 3 6 x 1 0 3 8 3 扩展精度浮点格式 扩展精度浮点数由8 位指数位,l 位符号位和3 2 位二进制补码的尾数区组成,尾数 区隐含一位非符号最高有效位。是d s p 中输入数据的常见表示方式。 在位3 1 和位3 0 之间隐含一个二进制小数点来进行计算。当隐含的非符号最高有效 9 江南人学硕士学位论文 位明显表示时,它是在紧靠二进制小数点的左方。 3 93 23 13 0 0 曼苎旦里翌皇里!i 墨i 曼璺i ! ! 竺! i 竺望 k l _ 一m a n t i s s a 一 图2 1 0 扩展精度浮点格式数据 f i g 2 10e x t e n d e d - p r e c i s i o nf l o a t i n g p o i n tf o r m a t 扩展精度浮点格式中,浮点数x 表示为: x :0 1 f 2 s = 0 x = 1 0 f 2 s = 1 x = 0e = - 1 2 8 ,s = 0 ,f = 0 其范围为: 最大正数:x = f 2 2 3 1 1 x 2 1 ”= 3 4 0 2 8 2 3 4 x 1 0 3 8 最小正数:x = 1 2 - 1 ”:5 8 7 7 4 7 1 7 5 4 1 x 1 0 - 3 9 最小负数:x = f l 一2 - 3 1 1 2 卅”= 一5 8 7 7 4 7 1 7 5 6 9 x 1 0 - 3 9 最大负数:x = _ 2 2 1 2 7 = 一3 4 0 2 8 2 3 6 6 9 1 x l o 3 9 4 浮点格式之间的转换 对于输入和输出,浮点运算有几种不同的格式,经常要求从一种浮点格式转换为另 一种( 即短浮点格式到扩展精度浮点格式) ,格式转换作为浮点运算的一部分,不再需 要花费另外的时间而在硬件中自动完成。当一个浮点格式零转换为较高精度格式时,它 始终被转换为较高精度格式中零的表示形式。 a ) 短浮点格式转换为单精度浮点格式,指数区符号扩展,尾数区充零。 b ) 短浮点格式转换为扩展精度浮点格式,指数区符号扩展,尾数区充零。 c ) 单精度浮点数格式转换为扩展精度浮点格式,尾数区充零。 d ) 扩展精度浮点格式转换为单精度浮点格式,尾数区截尾。 2 3f a l u 中的数据格式 f a l u 中主要用到的数据格式为3 2 位的单精度整数格式,3 2 位的无符号单精度整 数格式,及4 0 位的扩展精度浮点格式。 f a l u 中的逻辑操作,其操作数均为3 2 位的无符号单精度整数格式。在移位指令中, 除了算术移位指令外,其他移位指令的移位操作数均为无符号的单精度整数格式,而其 移位位数及算术移位指令中的移位操作数则为3 2 为的单精度整数格式。 对于本文设计的f a l u 中,在处理浮点数时,只要指数部分为1 2 8 ( 单精度浮点数 及扩展精度浮点数) ,就视其值为o 。使用浮点格式的操作有浮点加减法、规格化操作、 定点化浮点,浮点化定点操作、浮点取绝对值操作及浮点精度转换操作。而对于精度转 换操作而言,其输入的操作数为扩展精度浮点格式,输出的结果则为单精度浮点格式。 1 0 第二章f a l u 的数据格式 本文设计的f a l u 中的2 2 中操作,除上述几种操作外,其他操作的数据格式均为 3 2 位的单精度整数格式。 2 4 小结 本章从二进制数据的表示方法出发,首先介绍了数据的原码、反码、补码的表示, 并采用一组数据作为例证进行说明,然后介绍了在浮点d s p 中数据的表示方法,数据 的格式是运算单元设计的重要基础,在这里做了详细说明,最后重点说明了浮点算术逻 辑运算单元中各种操作所使用到的数据格式。 江南入学硕十学位论文 第三章f a l u 的算法研究 f a l u 中包括两大类运算:算术运算、逻辑运算。 由于逻辑运算是按位进行操作,各位之间不存在进位问题,彼此独立。所以在实现 时不需要特殊的算法研究,只是需要根据不同的应用场合选择是否独立设计逻辑路径或 与算术路径合并设训1 8 】。 而算术路径则不同,算术运算各位之间相互关联,结果的产生经常都依赖于低位向 高位的进位。而如何降低这样的关联性就需要我们特别去关注。在算术运算中,研究的 重点是定点数加法算法,和浮点数加法算法。并在此基础上,复用浮点加法的各个模块, 将其他的算术运算操作也结合在该f a l u 中【1 9 , 2 0 】。 3 1 定点数加法算法研究 定点数加法算法的研究即定点加法器的研究。现今人们设计了多种类型的加法器 【1 们,如先行进位加法器( c l a :c a r r y - l o o k a h e a d a d d e r ) 、进位选择加法器c s l ( c a r r y - s e l e c t a d d e r ) 、跳跃进位加法器c s k a ( c a r r y - s k i pa d d e r ) 、条件和加法器c o s ( c o n d i t i o n a l s u m a d d e r ) 、进位保留加法器c s a ( c a t t y等。它们都是利用各位之间的状态( 进s a v e a d d e r ) 位传递状态p 、进位产生状态g ) 来预先产生高位的进位信号从而减少进位从低位向高 位传递的时间及关联性。下面将对各种定点加法器作简单介绍。 3 1 1 一位加法器 一位加法器主要是用来将m 个权值相同的l 位数进行求和操作,又叫( m ,k ) 计数 器,因为它对m 个数( a m - l ,a m - 2 ,a o ) 进行加法操作,形成k 位的结果( s k 1 ,s k - 2 , s o ) ,其中k = l 0 9 2 ( m + 1 ) 。 它们满足关系式: a ) 半加器 最基本的加法器模块是半加器,半加器只有两个1 位的输入a 和b ,它们的和s 可以 通过简单的异或操作得到。和输出信号s 可以表示如b 两输入信号四种组合中的三种, 对于a = l 、b = l 则不能表示,还需要一个权值较s 高的一位,我们命名为c o m ,这一信号 为1 表示二者的和发生了溢出。 其对应的算术操作及其逻辑表达式如下所示;其电路实现方式如图3 1 所示。 ( 1 ) 算术操作: 2 c o u t + s = a + b3 - 2 1 2 - 3 q 州础 = 2 瑚 第三章f a l u 的算法研究 ( 2 ) 逻辑表达式 s = a o b c o 2ab c a6 s 3 3 3 - 4 图3 - 1 半加器逻辑图 f i g h a l fa d d e rl o g i cd i a g r a m b 1 全加器 一位的全加器比较半加器,增加了一个进位输入信号c i n ,这就使得多个全加器可 以串联起来形成多位的加法器。其真值表如表3 1 。 表3 - 1 一位全加器真值表 t a b 1 1o n eb i tf u l la d d e rt r u t ht a b l e 对应的算术操作、逻辑表达式如下所示。 ( 1 ) 算术操作 2 c o i 吐+ s = a + b + c i 3 - 5 ( 2 ) 逻辑表达式( 其中g 为进位产生信号,p 为进位传递信号,c o 为预先计算的 进位为零时的进位输出信号,c 1 为进位为1 的进位输出信号) g = a b p = a o b c o = a b c 1 = a 岫 3 6 3 7 3 - 8 3 9 江南大学硕士学位论文 s = 口0 6 0 g = p o c i l l c o u t = a b + a c i l l + b c i i l = a b + ( a + b ) c i n = a b + ( a 0 6 ) g = g + p c i n = p g + p c i n = 励+ p g = 己c o + 巳c 1 3 1 0 3 1 1 由于全加器是使用最多的基本运算单元,因此,对于如何有效的实现全加器的研究 很多,从真值表中可以看出,关键的操作是异或操作,因此,出现了很多种异或逻辑的 c m o s 实现电路,根据上述的逻辑表达式可以得到很多种的实现方法,如图3 2 。 c c a6 s 加 a6 ab c c a6 c s 囊6 s s s 图3 - 2 几种不同结构的全加器 f i g 3 2s e v e r a lk i n d sf u l la d d e r s 1 4 第三章f a l u 的算法研究 3 1 2 串行进位加法器 对串行进位加法器进一步按照进位信号的产生及其传播方法分类,又可以分为行波 进位加法器和曼彻斯特进位加法器【2 1 1 。 a ) 行波进位加法器( r c a :r i p p l ec a r r ya d d e r ) 用n 个一位的全加器可以计算两个n 位数据的加法操作( 准确的说应是n 1 个全加 器和1 个半加器,由于最低位的数据没有进位输入) 。这r 1 个全加器的c o m 与相邻高位 的c i n 相连,即在第i 位的位置,操作数a 和b 的第i 位与从前一级加法器的进位信号 用于产生和的第i 位s i ,以及向下一级加法器的进位信号c i + 1 。由于进位信号从最低有 效位“波状传递 到最高位,因此这种加法器称为行波进位加法器。 行波进位加法器是最紧凑的加法器,它所使用的硬件最少,布线最少,而且结构也 最规则,特别适合于v l s i 版图实现。但由于最低位的进位信号会从最低位一直传递到 最高位,因此,它的延迟时间较长,相关性太高。最坏的情况发生在第1 位产生的进位 信号使得所有高位的和信号均发生翻转时( a = 0 0 0 0 0 0 1 ,b = 1 1 1 1 1 1 1 ) 。 c a n ,b 僵a ,b f a 0b o s n 1 s 1s o , 图3 - 3 行泼加法器结构 f i g 3 - 3r i p p l ec a r r ya d d e r b ) 曼彻斯特进位加法器( m c c ) 为了减少进位从低位向高位的传递时间,当采用m o s 工艺的时候,一种简单但是 很常用的加法方案是曼彻斯特进位链( m c c ) 。m c c 也可以看作是r c a ,只是它用传 输管逻辑实现开关代替了r c a 中的逻辑门,由于开关的速度要比逻辑门的速度快很多, 因此m c c 的速度非常快。 由于采用n m o s 单管进行传输,当传输逻辑l 时会有电压的损耗,如图3 4 所示, 如无补偿电路,a 点将会有电压损耗。所以m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 辽宁政法职业学院《中国语言文学经典文献导读》2023-2024学年第一学期期末试卷
- 临夏现代职业学院《图像分析与处理》2023-2024学年第二学期期末试卷
- 天津音乐学院《商务英语谈判》2023-2024学年第一学期期末试卷
- 2025年语言学与外语教育考试试题及答案
- 2025年注册建筑师职业资格考试试卷及答案
- 2025年中级工程师考试试题及答案
- 2025年图书馆与信息学考试试题及答案
- 2025年职业健康安全管理考试试题及答案
- 四川幼儿师范高等专科学校《工程控制基础》2023-2024学年第二学期期末试卷
- 江西省新余市第六中学2025届5月高三模拟试卷含解析
- 托幼机构安全应急预案制度
- 酒店执行力培训
- 企业合规之内控与风险管理
- 广东省水利水电建筑工程预算定额(上册)
- 住建部建设工程施工劳务分包合同(2024版)
- 老年人支气管哮喘诊断与管理中国专家共识2020
- 铁杵磨针儿童故事绘本
- 2024年江苏高考数学试题及答案
- 08D800-6民用建筑电气设计与施工室内布线
- DL∕T 1938-2018 垃圾发电厂炉渣处理技术规范
- 基于源流梳理及名词考据的仲景微汗法应用阐释与实证研究
评论
0/150
提交评论