龙芯开源社区

 找回密码
 注册新用户(newuser)
查看: 4060|回复: 10

专访龙芯总设计师胡伟武:产权没有问题(IT168)

[复制链接]
发表于 2009-6-26 11:13:04 | 显示全部楼层 |阅读模式
【IT168评测中心】6月24日下午,龙芯(Loongson/Godson)总设计师胡伟武接受了IT168的专访,对外界流传的关于龙芯购买MIPS授权的质疑进行了回应,并回答了笔者感兴趣的一些关于处理器微架构的问题。胡伟武表示,购买MIPS结构授权是为了更好地开拓市场,龙芯没有知识产权问题。
  龙芯是中科院计算所(Institute of Computing Technology, Chinese Academy ofSciences)设计实现的基于MIPS(Microprocessor without Interlocked PipedStages,无内部互锁流水级的微处理器)指令集的处理器,从2002年开始,龙芯已经推出了两代(龙芯三目前仍未出现市场)。目前最新的市售型号为龙芯2F,主频达到了1GHz。龙芯一开始的英文名叫做Godson,在06年11月,龙芯的英文名定为Loongson,在学术界则仍然使用Godson的名字。
  在2009年6月15日,中国科学院计算所(ICT),作为一个法人机构正式获得了MIPS公司的授权,位于美国硅谷的MIPS公司于6月15日发布了官方新闻稿,中科院计算所于6月22日发布了新闻稿。在之前的2007年,计算所通过为其制造生产的意法半导体STMicroelectronics公司间接购买获得MIPS的许可证,这次计算所通过与MIPS直接签约,购买了MIPS32和MIPS64的许可证。

合影:胡伟武(中)、笔者(右)、CCW韩勖(左)

  在这个消息发布之后,引起了业界的议论,其中不少人认为这意味着龙芯其实就不是具有自主产权的中国芯了。在24日下午的采访中,胡伟武对外界议论的焦点进行了详细的解答(关于官方的详细解答见最后页的附录),并回答了IT168评测中心记者的提问。

龙芯获得的授权是架构的授权,可以无限制的使用

  IT行业分工高度细化,一些企业越来越倾向于专注某一特定领域,这就是所谓的IP核(Intellectual Property,知识产权核,可不是Internet Protocol)供应商,如他们只设计出实现特定功能的一块电路,把这个设计方案卖给其它芯片厂商来构建完整的芯片产品。

  主要的处理器核供应商有英国的ARM和美国的MIPS,它们研发出通用的处理器核,其它芯片设计企业得到它的授权,把这个处理器核与专用的逻辑电路(例如通信协议处理、音视频处理、IO处理)等等,封到一块芯片里,就构成自己的SoC(片上系统),用于某些专业领域,例如手机、数字电视等等。在这个产业链模式下,SoC厂商通过出售芯片赚钱,处理器核提供商以授权费用的形式从中分成,你只能有偿使用,不能仿制,不能超过授权许可的范围,否则就会引起法律上的麻烦。

意法半导体生产的龙芯2E,处理器表面有Loongson、ST和ICT的标志

记者:龙芯获得的授权是哪一种授权?如果是核授权的话应该会花费多少吧?
胡伟武:如果我们直接买MIPS的核的话,那个十几二十万美元就够了,IP核授权很便宜。龙芯买的是结构的授权,你可以无限制的做。

记者:那么龙芯买这个授权花费了多少呢?比之前的500万美元要低吧?
胡伟武:由于结构授权可以无限制的做,所以这个比较贵。我们和MIPS有保密协议,具体价格我们不能讲,但肯定比这个价格低,500万美元是他们之前的要价。
记者:这个授权会不会有些方面限制住了龙芯的应用呢?如不能用于什么领域等?
胡伟武:没有,这个一个是地域,一个是领域,两个方面都没有限制。限制是限制在芯片方面。我们在这方面请了很多非常有经验的律师,做了一年。我们是永久性的授权。即使是以后MIPS被人收购了,对龙芯也不会有影响,这个在合同里面都是有体现的。

Sony PS2上的EmotionEngine内部就集成了MIPS处理器核


得到MIPS结构授权并非意味着创新失败

记者有人认为龙芯购买MIPS结构授权意味着自主创新失败,你怎么看?
胡伟武:有这方面的疑惑是因为对计算机的架构不了解,早期我们说计算机的架构就是说ISA(Instruction SetArchitecture,指令集架构),这个ISA当中的A很具有迷惑性,ISA是指指令系统,这只是一种语言,负责处理器硬件与软件的沟通,现在说的Architecture已经发展到了软件、硬件都算了。处理器最核心的技术是指令集下面的微架构(Microarchitecture),这方面的创新空间很大。
胡伟武:ISA方面,MIPS基本指令只有300多条,我们自己增加了500多条。实际上MIPS是一个开放的架构,它有一部分是它定义好的,有一部分是允许用户自己定义的,它只是管它定义好的那部分,你不能瞎动。我们自己定义了500条指令,所以这方面的创新空间还是很多大的。

龙芯2微架构


及内部组件结构、物理布线等都自行研发实现


胡伟武:今天说的架构和以往的架构已经是两回事了,龙芯使用MIPS架构不是说就已经定死了,关键的微架构,是得自己设计的,例如加法器怎么实现、乘法器怎么实现的,这些对处理器来说都是很关键的。
胡伟武:龙芯经过8年的研发,这方面已经申请了近百项专利,比MIPS在中国的专利要多得多,我们拥有完全的自主性。

到龙芯2D1为止的发展过程

龙芯可能会成立一个公司

记者最近听到你和李所长说过关于龙芯会成立一个大公司的形式来运行,这个结构授权是直接由它来继承吗?
胡伟武:计算所是一个国立科研机构,原则上是不做芯片的买卖,那肯定是计算所下属的做龙芯业务的企业来继承这个授权,这个是在合同里面说的很清楚的。

技术问题


记者龙芯三号流片成功了么?
胡伟武:龙芯3A、3B都有了,但是还没有返回来。
龙芯2E运算单元介绍,基于2005年的文档:
  ALU1:执行整数加/减,逻辑/移位,比较/陷阱以及分支指令,所有的指令都能在1个时钟周期内完成。
  ALU2:执行整数加/减/乘/除,逻辑/移位/比较,整数乘使用全流水线设计,执行需要4个时钟周期;整数除使用了非全流水线设计的SRT(以斯维尼、罗伯逊、托克尔三个独立提出算法的人命名)迭代算法,执行延迟从4个到37个时钟周期不等。
  FALU1:执行浮点加/减/绝对值/反值/转换/比较以及分支,加/减/转换指令需要4个时钟周期,其它的指需要2个时钟周期。
  FALU2:执行浮点乘/除以及平方根,浮点乘采用了全流水线两位Booth编码Wallace树算法,执行需要5个时钟周期。浮点除和平方根都使用非全流水线的SRT算法(和ALU中的一样),执行延迟是4-10个时钟周期(单精度浮点除)或者4-17个时钟周期(双精度浮点除)、4-16个时钟周期(单精度浮点平方根)或4-31个时钟周期(双精度浮点平方根)。

记者龙芯2E运算单元的除法、平方根运算现在能完全流水线设计了么?后续型号的运算单元相比变化大吗?
胡伟武:后继型号的运算单元和以前的差不多,没什么变化。不过龙芯三号实现了向量部件,8个1024 x 64位的向量运算可以并行进行。
记者如ALU这样的运算单元的数量会继续增加吗?
胡伟武:ALU的数量没有增加,但是向量单元也可以作定点计算(注:整数计算)和浮点计算。

记者龙芯2的Load/Store单元似乎有点少(一个),它会继续增加么?
胡伟武:在有了向量单元之后存取确实是一个问题,我们后继型号作了很多创新,申请了很多专利。你说的没错,我们的处理器核里面的Load/Store部件是有点少,我们在龙芯3A和龙芯2G里面都增加了。
  龙芯2具有64个GPR,每个64位。x86处理器具有8个32位GPR,x86-64处理器则具有16个64位GPR。
记者GPR(General Purpose Register,通用寄存器)的数量会增加吗?
胡伟武:我们的向量计算部件实现了128个256bit的寄存器,这个做的非常大。

记者听说龙芯2G和龙芯3支持x86指令,是真的吗?
胡伟武:严格来说不是这样,这个是类似于Transmete的二次编译技术,一个“软”的x86核,当然做法上我们和全美达不同。
记者龙芯采用解码器将指令解码为内部指令是基于一种什么思想?
胡伟武:做CPU的人都希望CPU搞定一切,譬如说最近在做的高清编解码,无论什么格式增加的指令都可以用同一个处理器来完成。Intel也是这样做的。

发表于 2009-6-26 11:38:59 | 显示全部楼层
记者:听说龙芯2G和龙芯3支持x86指令,是真的吗?
胡伟武:严格来说不是这样,这个是类似于Transmete的二次编译技术,一个“软”的x86核,当然做法上我们和全美达不同。


到底会不会支持x86,运行windows什么的嘛?
发表于 2009-6-26 12:17:50 | 显示全部楼层
好几个问题都是躲过去的,呵呵,大概是目前不便透露吧。
发表于 2009-6-26 13:36:08 | 显示全部楼层
记者:龙芯三号流片成功了么?
胡伟武:龙芯3A、3B都有了,但是还没有返回来。

-------------------------------------

ST把我们的CPU扣着不发?????
发表于 2009-6-26 14:48:07 | 显示全部楼层
ST这次肯定有被始乱终弃的感觉,MIPS授权也买了,生产协议也签了,专利费也给了不少。这次ICT突然单独联姻MIPS,肯定闹情绪了。
发表于 2009-6-26 14:56:48 | 显示全部楼层
ST也许是有问题。
但是,就算在顺利的情况下,cpu也不可能流一次片就搞定了,有时要反复很多遍才能除掉大部分bug,达到批量生产的程度。
发表于 2009-6-26 15:31:04 | 显示全部楼层
龙芯3A、3B都有了,但是还没有返回来。

3B有了应该是指设计完了。要等3A回来完成测试才能去流片!!只是那个8个1024X64位的向量单元应该怎么理解?
发表于 2009-6-26 15:54:36 | 显示全部楼层
“8个1024 x 64位的向量运算”,“28个256bit的寄存器”。
哪位高手给解释一下这个1024是个什么意思?
发表于 2009-6-26 16:11:46 | 显示全部楼层
胡伟武:在有了向量单元之后存取确实是一个问题,我们后继型号作了很多创新,申请了很多专利。你说的没错,我们的处理器核里面的Load/Store部件是有点少,我们在龙芯3A和龙芯2G里面都增加了。

好啊,看来2G性能比2F强是肯定的了。
发表于 2009-6-27 08:14:11 | 显示全部楼层
希望2g 龙3a能早日出来

本版积分规则

小黑屋|手机版|Archiver|Lemote Inc.  

GMT+8, 2019-1-22 02:27 , Processed in 0.203578 second(s), 18 queries .

快速回复 返回顶部 返回列表