价值8.624亿美元的专利

来源:深圳立中  |   发布于:2016/10/27 16:33:07  |   浏览:  |   文字: 【】  【】  【

 

      今年 10 月 13 日,美国威斯康辛州法院判决苹果公司侵权威斯康辛大学校友研究基金会持有的一件美国专利(US5781752),裁定苹果需赔偿威斯康辛大学校友研究基金会 8.624 亿美元。

      这件专利由威斯康辛大学校友研究基金会于 1996 年12 月 26 日提交,并于 1998 年 7 月 14 日获得授权。威斯康辛大学校友研究基金会于 2014 年 1 月 31 日针对苹果 A7 处理器提出该专利诉讼。今年 9 月 25日,该基金会又针对 iPhone6s 等产品再次提起针对苹果公司的专利诉讼。此外,该基金会还在 2008 年利用该专利提起对英特尔的专利诉讼,不过该诉讼以和解告终。

      那么,这件价值 8.6 亿美元的天价专利究竟有什么神奇之处呢?

      基于威斯康辛大学的介绍,这件专利的技术被认为计算机微处理器架构设计上的「重大里程碑」。由于这件专利的技术,主要发明人 Gurindar Sohi 入选了美国国家工程院,并于 2011 年获得「艾克特.莫奇利奖」,这是计算机架构领域最负盛名的奖项。另一位发明人 Andreas Moshovos,也因为这件专利的技术,获得国际计算机协会最有声望的「莫里斯.威尔克斯奖」。

      从专利引用角度来看,这件专利仅引用了 2 件专利,确被 117 件专利引用。引用这件专利的公司主要是计算机处理器设计公司,包括英特尔、IBM、AMD等。最为有趣的是,如威斯康辛大学校友研究基金会在诉讼中所指出的,苹果公司还引用这件专利,以该专利作为在线技术,申请了多达 32 件专利。而在 2012 年申请的一件专利,更被认为这件专利的从属专利。

      介绍了这么多,想必这件专利的技术一定很复杂吧?其实不然,这件专利其实并不复杂。该专利技术是基于无序执行指令(out—of—order)运算架构下的处理器设计方式。为了更好的说明该专利技术,先介绍一下计算机指令执行模式。

计算机处理指令包括两种模式,即顺序执行指令模式和无序执行指令模式。顺序执行指令模式中,按照程序中设定的指令顺序执行指令,只有在调度指令的输入数据可用时,处理器才执行指令,否则处理器暂停等待数据可用。而无序执行指令模式中,当调度指令的输入数据不可用时,处理器不必等待,而直接执行那些输入数据可用的指令,并对执行完成的结果按照程序的指令顺序排序。

      随着处理器处理和内存读取数据差异越大,无序执行指令模式的优势就越来越明显。现在的计算机中,处理器的处理速度远远超过内存读取速度,也就是说顺序执行指令模式中处理器等待数据可用的时间增多,而无序执行指令模式正好可以利用等待时间执行其他指令。因此,无序执行指令模式可以大大提升计算机处理速度。

      由于数据之间存在依赖关系,为了强化无序执行指令模式下的指令效率,必须增加特殊的处理单元来预测数据之间的依赖关系,而这正是威斯康辛大学校友研究基金会的这件专利要解决的问题,这几乎牵连到所有基于无序执行指令模式的处理器的基本设计逻辑。

      也就是说,从技术上来讲,包括 Intel、AMD 以及所有采用 ARM 无序执行指令架构的公司,几乎都逃不过这件专利。从前面的引用分析也可以看出,Intel、AMD 以及苹果公司几乎都是基于该专利技术来改进处理器设计。这件专利的技术价值是显而易见的,8.6 亿美元可以说「物有所值」。

      从专利申请的角度,该专利不但经受住了苹果公司提出的专利无效。并且,在权利要求解释中,通过权利要求上下文、详尽的说明书,经受住了苹果公司的质疑。比如“prediction”、“data speculation circuit”、“mis—speculation”等技术特征,均通过说明书中的详尽描述驳回了苹果公司的解释,而采纳了威斯康辛大学校友研究基金会的解释。

      基于以上分析,一件专利之所以有价值,其技术方案的价值是根本,而优秀的专利申请文件也是不可或缺的。不过能不能拿到 8.6 亿美元,那就要看被告是不是像苹果公司这样财大气粗了。

__________________

附 US5781752 权利要求 1:

In a processor capable of executing program instructions in an execution order differing from their program order, the processor further having a data speculation circuit for detecting data dependence between instructions and detecting a mis-speculation where a data consuming instruction dependent for its data on a data producing instruction of earlier program order, is in fact executed before the data producing instruction, a data speculation decision circuit comprising:

a) a predictor receiving a mis-speculation indication from the data speculation circuit to produce a prediction associated with the particular data consuming instruction and based on the mis-speculation indication; and

b) a prediction threshold detector preventing data speculation for instructions having a prediction within a predetermined range.