[发明专利]运算装置和运算方法无效
申请号: | 98800698.7 | 申请日: | 1998-04-08 |
公开(公告)号: | CN1231038A | 公开(公告)日: | 1999-10-06 |
发明(设计)人: | 冈正昭 | 申请(专利权)人: | 索尼计算机娱乐公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06F9/38;G06F7/00 |
代理公司: | 柳沈知识产权律师事务所 | 代理人: | 马莹 |
地址: | 日本*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 运算 装置 方法 | ||
技术领域
本发明涉及一种运算装置和一种运算方法,用于执行使用CPU的算术逻辑运算。
背景技术
CPU(Central Processing Unit,中央处理单元)就是用于计算机等的运算单元(算术逻辑单元),其中,有一些运算单元具有一组被称为多媒体指令的指令(下文称之为MM指令或简单地称之为指令)。该MM指令用于划分CPU具有的运算元素区,以便同时执行多个操作。
图1示出常规CPU的结构的一个例子。该常规CPU包括:算术逻辑单元(ALU)130,用作执行数据处理的算术逻辑装置;移位处理单元(SHT)140,用作按向左和向右的方向移动数据的移位处理装置;以及寄存器单元(REG)150,例如累加器等,其中,上述各单元连接到,例如64位总线160、170、180,以便相互传送数据。
图2示出上述常规CPU中的64位×64位乘法器的乘法运算。也就是说,将寄存器A的64位的字s和寄存器B的64位的字t相乘,产生128位的乘积s*t,并将该乘积存储到寄存器C中。
图3示出将上述的64位的字s和t分别分割成4个字段,从而形成相应的4个位字段,以便执行确认字段(ack(acknowledge)field)的位的乘法,即16位×16位的乘法的情况。也就是说,将寄存器A的相应的16位的s0、s1、s2、s3和寄存器B的相应的16位的t0、t1、t2、t3相乘,产生分别由32位构成的乘积s0*t0、s1*t1、s2*t2以及s3*t3,并将乘积存储到寄存器C中。
通过四分CPU具有的乘法器,以构成四个并行的乘法器,可实现上述的四路并行乘法运算。此外,与上述类似,还可将CPU具有的加法器四分,以便构成四路并行加法器。
图4示出上述常规CPU中的128位+128位的加法器的加法运算。也就是说,将寄存器A的相应的32位的s与寄存器B中的相应的32位的t相加,产生128位的和s+t,并将该和存储到寄存器C中。
图5示出将上述相应的字分割为四份,以便执行相应的32位+相应的32位的加法的情况。也就是说,将寄存器A的相应的32位的s0、s1、s2、s3与寄存器B的相应的32位的t0、t1、t2、t3相加,产生分别由32位构成的和s0+t0、s1+t1、s2+t2、s3+t3,并将该和存储到寄存器C中。
当参加操作的数据的宽度为如上所述的16位或32位左右时,如果使用由分割单个的运算元素而形成的并行的运算元素,则有可能高速地执行运算处理。用于执行图3和图5所示的并行操作的指令就是为此使用的多媒体(MM)指令的一部分。
下面简要地说明使用MM指令的常规的并行操作的一个更加实际的例子。
一开始,说明通过使用克莱姆(Cramer)公式来求解由如下公式(1)所示的n个联立线性方程的情况。
a00X0+a01X1+…+a0nXn=b0
a10X0+a11X1+…+a1nXn=b1 …(1)
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于索尼计算机娱乐公司,未经索尼计算机娱乐公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/98800698.7/2.html,转载请声明来源钻瓜专利网。