在这里还需要指出一个认识误区,经常有人说设计一个通用指令集不难,难的是如何构建生态。这句话更准确的表述是,模仿一个已有的通用指令集的设计不难,但是设计一个全新的、可构建强大商业生态的多功能通用指令集非常难。当然,构建生态更难。
四年之后,ARM再次从软银集团“转手”英伟达
三问:华夏芯自研指令集的创新性体现在哪里?
李科奕:基于对异构计算发展趋势的预判,华夏芯在公司成立之初就提出了用一套统一的指令集和工具链来支撑异构计算的构想。目前ARM等传统处理器IP设计公司都是采用不同的指令集来设计CPU、GPU、DSP等不同的计算单元。华夏芯采用新一代统一处理器架构设计理念和全新的指令集来支持异构计算,虽然距建立一个强大的生态还需时日,但多年的实践已经证明了基于统一指令集设计多种处理器的可行性和技术优势。
由于无历史包袱,华夏芯统一指令集的后发优势明显,在指令集设计上高度精简且规整,具有高可扩展性。通过采用基于同一指令集的IP,即使一个小规模的芯片设计团队也可以设计复杂的异构芯片,而且可以通过设计创新而非完全依赖新的工艺来提升计算性能,降低了芯片设计的投入;同时,用同一套基础工具链来支持异构的计算单元,避免了为每一类计算单元开发一套不同的工具链,减低了开发和维护工具链的成本。
四问:华夏芯的指令集需要与国际巨头同场竞技,能成功吗?
李科奕:确实有很多人对华夏芯的指令集持怀疑态度,因为在华夏芯之前还没有过成功案例。就像马斯克的SpaceX在起步阶段,也被首位登月的人类宇航员阿姆斯特朗质疑一样。
其实,一个新的指令集走向成功的先决条件是新兴应用和市场的发展对处理器指令集提出了新的要求。以ARM的成功为例,本世纪初,ARM很好地利用了英特尔的指令集不擅长低功耗处理技术的短板,抓住了智能终端的市场需求。今天,人工智能、5G通讯、边缘计算等新兴应用领域要求各种类型的处理器集成在一起并高效协同工作。这些应用领域,一方面对新的处理器架构提出了强烈的需求;另一方面,很多像物联网、无人驾驶、机器视觉等这样的单一应用场景对指令生态的要求不高,或者像赛灵思推出的自适应计算加速平台(ACAP)等新物种,属于全新的生态。
华夏芯不是在传统市场上与已经形成垄断的指令集进行争夺,而是在新兴应用需要新指令集的契机下,在全新赛道上比国际巨头更早地起跑。现在的华夏芯如同在黑暗中举烛衔光,但今天的烛光就是明天隧道尽头的光明。
就像20年前的通讯领域,谁也无法想象有哪一家中国的通讯产品公司能挑战并战胜摩托罗拉和诺基亚这样的国际巨头。中国已经是全球最大的芯片市场,在异构计算这一新的赛道出现由中国公司的指令集构建的生态,为什么不可能呢?
五问:华夏芯的异构计算与英特尔这类巨头相比有何不同?
李科奕:异构计算的使用面临两个主要的挑战。一个是编程开发极其复杂,另外就是异构计算需要解决碎片化生态的问题。最近,英特尔在业界率先针对不同的计算体系架构推出了统一的编程环境——OneAPI。华夏芯的Unity与OneAPI都是为了简化编程环境,但两者的实现方式和代价有显著的区别:
1、OneAPI是面向不同体系架构的统一编程环境;Unity是面向不同微架构的统一体系架构和统一编程环境;