我们(IEEE)最近与 Bunny Huang 进行了有趣的交流,他是硬件大师以及 Chumby,NetTV 和 Novena Laptop 等的创造者。他还是 Hacking the Xbox,The Essential Guide to Electronics in Shenzhen 两篇文章的作者,在 IEEE Spectrum 中有两篇专题文章。 

 


我们感兴趣的是 Huang 的意见,一个小的资金适中的团队,比如大学宿舍的初创公司,是否可以生产一个定制的芯片,就像现在这样的团队轻松创建板级产品和软件一样。 软件企业可以从可用于构建商业产品的大量开源代码中受益。

 

(一项研究发现,商业应用程序平均包含 35%的开源代码。)我们想了解芯片设计人员是否也能享受开源构建模块的丰富生态系统。 还是芯片设计仍然是如此封闭,如此具有挑战性,这实际上只适用于大型,成熟的公司? IEEE Spectrum:为什么一家小型创业公司想要首先生产自己的专用集成电路(ASIC)?难道它做任何产品孵化的时候不能使用现场可编程门阵列(FPGA)? Huang:FPGA 通常会有很大的封装,消耗太多的电力。 

 

对于制造诸如助听器,可植入或可食用的医疗设备,由动物携带的 GPS 跟踪器,移动无线电设备,RFID 设备,电子贺卡或其他单一用途的一次性电路来说,ASIC 是绝对必要的。 另外一个例子是 WS2812 芯片内部的驱动器 IC - 通过嵌入一个微型 ASIC 和 LED,可以创建一个内置串行协议的单封装 RGB LED,从而彻底改变了照明。 

 

所以肯定有一系列真正有用的改变行业的产品,这些产品是 FPGA 所无法触及的,主要是您可能称之为“便宜,低功耗的东西”。 

 

您将如何决定何时使用 FPGA 以及何时创建 ASIC?那要看与 ASIC 相比,FPGA 浪费了大量的硅,所以成本底板(这在很大程度上取决于芯片所需的硅片表面积)通常比您希望的要高一个数量级。但是制造 ASIC 也不便宜。 

 

我现在正处于这个陷阱当中:我试图构建下一代 NeTV,这是一个基于 FPGA 的视频处理引擎。能够完成这种视频处理的 ASIC 成本不到 FPGA 的一半,并且可以做得更好(因为他们可以处理 4K 视频,而我的 FPGA 解决方案最大达到 1080p)。但现有的 ASIC 没有我需要的全部功能。但是,由于其他一些限制,我根本无法为这个产品创建一个我自己的 ASIC。 

 

ASIC 的另一个重要价值在于其相反的一面:真正的高端产品。让我用一个简短的轶事来解释。 前一段时间,我阅读了 Google 的 TPU 的文章,我想,“该死,我想要那个。”于是我开始研究 FPGA,看看如何构建等效功能。 我发现可开始为 Google 的 TPU 工作的 FPGA 每个花费数千美元,而且他们需要超级昂贵的软件许可证。一些大公司(如微软)能够与 FPGA 制造商合作,可能微软收到了相当高的折扣。所以它可以创建一些使用 FPGA 的有趣硬件来与 Google 的 TPU 竞争。但是用这种功能强大的 FPGA,至少对于大多数人或公司来说,单芯片就是 17,000 美元。 

 

Spectrum:从零开始创建 ASIC 最少花费是多少?假设芯片非常简单。我想象一小部分成本可能是软件来设计它的,不是吗?而且你必须知道哪些设计规则可以满足。这些信息是否公开可用? 黄:我曾经对此做过一点研究。有一些开源工具可能能够让你实现。 “SCMOS”设计规则是最可行的。我认为这些是 Open-V 试图使用的设计规则。 至于设计软件,您可以使用基于 Magic 的开源工具链(Xcircuit,IRSIM,NetGen,Qrouter 和 Qflow)。或者,如果您负担得起,您可以使用像 Cadence 那样的商业产品。 

 

我用过 Magic 和 Cadence 的设计流程。我个人更喜欢使用 Magic 的芯片布局编辑器,但是 Cadence 的软件更多地是用来设计这么多芯片的。并且 Cadence 用来模拟寄生电阻和电容效应的工具是经过很好的审查的。 这并不是说你需要使用 Cadence 之类的东西。我认为你可以用 Magic 来制造一些容差很大的集成电路 - 你可能会在 LED 驱动器中发现一些集成电路,甚至像助听器那样的东西。对射频设计来说,这可能是一个挑战,因为模拟寄生效应的开源工具可能无法胜任。但有一种方法可以改进模型,使您可以在两到三个芯片运行中开发出成功的设计。 与 ASIC 相比,FPGA 会浪费大量硅,所以成本底限往往比您希望的要高一个数量级。 

 

总而言之,在 180 纳米左右以下的技术节点,你可以放弃使用开源工具。比这还要小的,就需要用掩模成像和使用不仅仅是简单多边形的形状来做一些真正有趣的事情。而来自不同厂商的设计套件也越来越封闭。 

 

按照今天的标准,180nm 非常“大”。但是如果你真的想在一个硅芯片上放置一些特殊的电路组合,你可以这样做。这可能会产生一些新颖的产品,在离散设计是不可能的产品。但请注意,晶圆级芯片尺寸封装(WL-CSP)允许印刷电路板集成可能与您定制 ASIC 所能达到的效果相当接近。 

 

定制 ASIC 需要多少成本?估算掩模和芯片制造的成本是困难的,因为价格清单是保密的。但是我听说的消息表明,一个简单的 ASIC(比如说一个尺寸为几平方毫米,使用 250-nm 技术节点制造的 ASIC)可能花费数千美元来购买几十个样品。 

 

这个价格很吸引人,我曾经动过制造一个完全可以检查的 8 位或 16 位 CPU 的想法。这可能会吸引那些真正意识到安全意识的人,他们想要确保他们使用的微处理器中没有什么有趣的东西。 

 

Spectrum:好的,我们假设一家小型创业公司使用免费的设计工具,并找到足够的资金做至少几个芯片生产运行。设计人员能否像软件开发人员经常做的那样,像构建模块一样进行开源电路设计? Huang:目前,在 register-transfer level(RTL)中有一个非常合理的自由开放电路模块库,这是数字芯片设计中常用的。

 

这包括 RISC-V 微处理器,也包括像 lm32,mor1kx 等设计。 还有相当数量的“wishbone-compatible”设计,包括以太网桥和 UART 等。 OpenCores 项目已经是一个非常合理的模块列表,其中有些模块甚至已经被纳入到了 ASICs 中(但大部分都是针对 FPGA 的)。 

 

至于混合信号和模拟信号,开放式设计相当缺乏。关于 Open-V 的激动人心的部分是他们愿意开放和共享模拟和混合信号模块。虽然这些设计不能应用于更先进的制造技术节点,但至少在“SCMOS”范围内,存在一些机会使设计可以变成工作芯片。 

 

不过,遗憾的是可能要很长一段时间,直到出现一套很好的已经在 ASIC 中测试过了的模拟和混合信号设计模块。还有一些可能永远无法通过开放式设计获得的东西,包括 SRAM,DRAM,FLASH 和电可编程熔丝等存储器块。这是因为这些东西需要工艺知识来执行 - 知道制造芯片的代工厂可能永远不会发布。 

 

总而言之:一个小型玩家当然可以设计自己的 ASIC,并且只需要一些独创性和几千美元就可以制造出它。 但它无法创造出复杂的设计或使用最先进的技术节点。