一种可变浮点数据微处理器的制造方法

文档序号:9371894阅读:178来源:国知局
一种可变浮点数据微处理器的制造方法
【技术领域】
[0001]本发明涉及一种可变浮点数据微处理器。
【背景技术】
[0002]目前的处理器中,我们普遍采用的是IEEE754标准的浮点标准,在该标准中主要使用了单精度浮点数、双精度浮点数、临时浮点数,很大程度上增加了数据的表示范围,所以浮点数计算在工程计算、科学计算中得到了广泛的使用。
[0003]由于浮点数据在计算时完全依赖计算机的浮点计算单元,然而在处理器体系中的浮点数标准并不相同,例如有些处理器使用的是美国国家浮点数据标准,而有些处理器公司使用的是自己公司的浮点数据标准,而在有些处理器中只能支持定点浮点数计算。导致许多为传统处理器所编写的程序不能很好的移植到其他处理器平台,移植的人力成本大大增加。
[0004]在有些科学计算中需要更加精确的浮点数据计算,这时我们需要更加宽的浮点数据,普通处理器平台并不能满足该精确度要求,这时我们只有用软件模拟或者放弃该处理器平台,软件模拟的方式会花费大量处理器时间,从而导致处理器的效率下降。
[0005]由于可变浮点数据处理器在计算中可以改变浮点数中符号位、指数位和尾数位的顺序和长度,还有浮点数的宽度,如果使用可变浮点数据处理器,势必可以更加方便地进行浮点的移植,而且具有更高的精确度。

【发明内容】

[0006]本发明的目的在于克服现有技术的不足,提供一种新型的可变浮点数据微处理器,可以改变浮点数中符号位、指数位和尾数位的顺序和长度,还有浮点数的宽度,可移植性好,可以表示更高精度的浮点数据,安全性高。
[0007]本发明的目的是通过以下技术方案来实现的:一种可变浮点数据微处理器,浮点数由符号域、阶码域、尾数域组成,浮点数=符号位.尾数,(2Wg)表示2的阶码次方,浮点数的组成如下:
符号域:用S表不,符号域占I位,O表不正数,I表不负数;
阶码域:用E表示,以整数形式指明小数点在数据中的位置,决定了浮点数的表示范围,浮点数的阶码域E等于指数e加上一个固定的偏移值,该偏移值为[I);尾数域:用M表示,用定点小数表示,给出有效数字的位数决定了浮点数的表示精度;所述可变浮点数据微处理器包括自定义浮点配置寄存器,自定义浮点配置寄存器由数据长度寄存器、符号位寄存器、位阶长度寄存器和尾数长度寄存器组成,并且自定义浮点数的组成顺序就是自定义浮点配置寄存器配置组成顺序,自定义浮点数的组成顺序为:自定义浮点配置寄存器0,自定义浮点配置寄存器1,自定义浮点配置寄存器2,自定义浮点配置寄存器3 ;尾数域长度加阶码域长度加符号域长度等于浮点数据长度,否则错误产生未知结果,处理器产生异常; 自定义浮点配置寄存器O:如果低2位等于二进制00,表示自定义浮点数据长度;如果低2位等于二进制01,表示符号域;如果低2位等于二进制10,表示阶码域;如果低2位等于二进制11,表示尾数域;剩下的其他数据位表示这种数据的长度,其中符号域长度只能是长度为1,否则错误产生未知结果,处理器产生异常;
自定义浮点配置寄存器1:如果低2位等于二进制00,表示自定义浮点数据长度;如果低2位等于二进制01,表示符号域;如果低2位等于二进制10,表示阶码域;如果低2位等于二进制11,表示尾数域;剩下的其他数据位表示这种数据的长度,其中符号域长度只能是长度为1,否则错误产生未知结果,处理器产生异常;
自定义浮点配置寄存器2:如果低2位等于二进制00,表示自定义浮点数据长度;如果低2位等于二进制01,表示符号域;如果低2位等于二进制10,表示阶码域;如果低2位等于二进制11,表示尾数域;剩下的其他数据位表示这种数据的长度,其中符号域长度只能是长度为1,否则错误产生未知结果,处理器产生异常;
自定义浮点配置寄存器3:如果低2位等于二进制00,表示自定义浮点数据长度;如果低2位等于二进制01,表示符号域;如果低2位等于二进制10,表示阶码域;如果低2位等于二进制11,表示尾数域;剩下的其他数据位表示这种数据的长度,其中符号域长度只能是长度为1,否则错误产生未知结果,处理器产生异常;
自定义浮点数中定义如下五种类型的浮点数:
Cl)当阶码域E的阶码为全O且尾数域M的尾数也为全O时,符号位为0/1,称为正负
O ;
(2)当阶码域E的阶码为全I且尾数域M的尾数为全O时,符号位为0/1,称为正负无穷大;
(3)当阶码域E的阶码为全I且尾数域M的尾数为非O时,符号位为0/1,称为非法的浮点数;
(4)当阶码域E的阶码为任意值且尾数域M的尾数为全O时,符号位为0/1,或者当阶码域E的值比它能表示的最小值还小时,不管其尾数为何值,计算机都把该浮点数看成零值,称为机器零;
(5)当阶码域E的阶码为1~-1),且尾数域M的尾数为任意值时,符号位为0/1,称为规格化数;当尾数的值不为O时,尾数域的最高有效位应为1,否则以修改阶码同时左右移小数点的办法,使其变成这一表示形式,称为浮点数的规格化表示。
[0008]本发明的有益效果是:可变浮点数据处理器在计算过程中可以改变浮点数中符号位、指数位和尾数位的顺序和长度,还有浮点数的宽度,可移植性好,而且可以表示更高精度的浮点数据,安全性也更高。
【具体实施方式】
[0009]下面进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
[0010]—种可变浮点数据微处理器,浮点数由符号域、阶码域、尾数域组成,浮点数=符号位.尾数,(2Wg)表示2的阶码次方,浮点数的组成如下:
符号域:用S表不,符号域占I位,O表不正数,I表不负数; 阶码域:用E表示,以整数形式指明小数点在数据中的位置,决定了浮点数的表示范围,浮点数的阶码域E等于指数e加上一个固定的偏移值,该偏移值为[I);尾数域:用M表示,用定点小数表示,给出有效数字的位数决定了浮点数的表示精度;所述可变浮点数据微处理器包括自定义浮点配置寄存器,自定义浮点配置寄存器由数据长度寄存器、符号位寄存器、位阶长度寄存器和尾数长度寄存器组成,并且自定义浮点数的组成顺序就是自定义浮点配置寄存器配置组成顺序,自定义浮点数的组成顺序为:自定义浮点配置寄存器O,自定义浮点配置寄存器1,自定义浮点配置寄存器2,自定义浮点配置寄存器3 ;尾数域长度加阶码域长度加符号域长度等于浮点数据长度,否则错误产生未知结果,处理器产生异常;
自定义浮点配置寄存器O:如果低2位等于二进制00,表示自定义浮点数据长度;如果低2位等于二进制01,表示符号域;如果低2位等于二进制10,表示阶码域;如果低2位等于二进制11,表示尾数域;剩下的其他数据位表示这种数据的长度,其中符号域长度只能是长
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1