超越硅元素:ARM发布塑料芯片,研究登上Nature

真正的物联网芯片,连材质都给你改成塑料的。

在光计算芯片、量子计算实用化之前,Arm 的塑料处理器可能会更早一步来到我们的身边。

近日,著名半导体设计公司 Arm 与 PragmatIC 合作,生产出了全球应用最广泛的处理器架构 Cortex-M0 的非硅版本,其研究还发表在了《自然》杂志上。

塑料版的 M0 由聚酰亚胺基板构建,由薄膜金属氧化物晶体管组成,就像 IGZO TFT 屏幕一样。

Arm 等机构的研究人员在最近的一项研究中表示,他们尝试将芯片电路和组件打印在塑料基板上,就像打印机在纸上打印墨水一样。

论文链接:https://www.nature.com/articles/s41586-021-03625-w

这种芯片可以通过将电路直接印刷到纸张、纸板甚至布料上来实现,大幅降低了生产成本。据介绍,该技术可以让数以亿计的日常生活用品(如衣服和食品容器)连接上互联网,以收集、处理和传输数据——对于商家来说可以成倍提高效率,对于隐私保护也有重要意义。

近几十年来,摩尔定律的发展让芯片不断接近「沙子价」,出现在电视、洗衣机、手表等各种电器和可穿戴设备上。然而这种应用范围的拓展是存在极限的。如今几乎所有的芯片都需要在高度专业化且精密的晶圆工厂中制造,经历数十个复杂的化学和机械过程,从原材料到出厂需要长达八周的时间。

现在,随着 Arm 提出的 32 位 PlasticARM 处理器出现,一切将会发生变化。

Arm 的研究工程师 James Myers 表示,这种柔性芯片可以运行一系列程序,但目前它使用的是只读处理器,因此只能运行内置代码。未来的版本将使用完全可编程的、灵活的内存。

「这个芯片不会很快,也不会很节能,但我可以把它放在生菜上记录保质期,这就是它的用途,」他表示。

「我们还在寻找应用,就像 20 世纪 70 年代那些研发处理器的人一样。它能用来支持智能包装吗?能用作气体传感器来检测食物可食用性吗?还是说我们可以把它做成可穿戴健康贴片?这些问题目前都处在探索阶段。」

在柔性芯片领域,Arm 并不是第一个吃螃蟹的人,但他们的芯片却是迄今为止所公布的成果中最强大的一个。它在不到 60 平方毫米的芯片上集成了 56340 个组件,这个数量相当于之前最好的柔性芯片组件数的 12 倍,其计算性能大大提高。

打印在塑料薄膜上的计算机处理器

柔性处理器:真正的 IoT 芯片?

与传统硬质的半导体器件不同,柔性芯片构建在纸张、塑料或金属箔等基板上,并使用有机物、金属氧化物或非晶硅等有源薄膜半导体作为材料。与晶体硅相比,它们具有许多优势,包括厚度、一致性和制造成本。薄膜晶体管 (TFT) 可以在柔性基板上制造,其加工成本比在晶体硅晶片上制造的金属氧化物半导体场效应晶体管 (MOSFET) 要低得多。

不过,TFT 技术的目标不是取代硅。随着这两种技术的继续发展,硅晶片很可能会在性能、密度和功耗效率方面保持优势。而 TFT 会使电子产品具有多变的外形尺寸和硅无法实现的低成本,从而显著扩展「芯片」这一概念的应用范围。

随着物联网技术的发展,我们身边越来越多的设备正在走向智能化,但还有很多日常物品还面临着关键挑战,如水杯、食品包装、衣服、贴纸、绷带等。成本是阻碍传统硅技术在日常用品中可用的最重要因素。尽管芯片制造规模化有助于降低单位成本,但对于这些应用更加广泛的物件来说仍然相去甚远。更不用说硅芯片本身并不轻薄。

塑料芯片为我们打开了可观的未来,在过去的 20 年中,柔性电子产品技术已经发展到可以提供成熟的低成本、薄型、柔性和高适应性设备,输出包括传感器、存储器、电池、发光二极管、能量收集器、近场通信 / 射频识别等成型产品。这些组件是大多数电子设备的基础,但微处理器仍然是个问题。

柔性微处理器难以制造的原因在于,我们需要在柔性基板上集成相对大量的 TFT 以执行有意义的计算,这在新兴的柔性 TFT 技术出现之前是不可能的。

此前,人们尝试使用折中的方法,将基于硅的微处理器管芯集成到柔性基板上(这也称为混合集成)。尽管这是一种短期的解决方案,但仍然依赖于传统的高成本制造工艺,不是一个长久的解决方案。

Arm 的柔性芯片是如何打造的?

Arm 柔性芯片的微处理器是采用柔性电子制造技术制造的,该技术也被称为「天生灵活的处理引擎(natively flexible processing engine)」。他们使用的技术包含金属氧化物 TFT。金属氧化物 TFT 成本很低,而且可以缩小,方便大规模集成。

早期的原生柔性处理器相关工作是基于使用低温多晶硅 TFT 技术开发 8 位处理器,这种技术制造成本高,横向可扩展性差。最近,基于二维材料的晶体管被用于开发处理器,例如使用二硫化钼(MoS2)晶体管的 1 位 CPU 以及由碳纳米管场效应晶体管构造的 16 位 RISC-V CPU。

然而,这两项工作都是在传统的硅片上进行的,而不是在柔性基板上。

构建基于金属氧化物 TFT 的处理元件的首次尝试是一个 8 位算术逻辑单元,它是 CPU 的一部分,与印制在聚酰亚胺基板上的可编程 ROM 耦合。在最近的一系列研究中,Ozer 等人提出了用在金属氧化物 TFT 中的原生柔性机器学习硬件。尽管该硬件拥有由金属氧化物 TFT 构造的最复杂的柔性集成电路(FlexIC),逻辑门数达到 1400,但 FlexIC 不是微处理器。

可编程处理器方法比机器学习硬件更通用,支持丰富的指令集,还可用于编程广泛的应用程序,从控制代码到数据密集型应用程序,包括机器学习算法。

总体来看,Arm 的处理器以三层方式构建:1)一个 32 位 CPU;2)一个 32 位处理器,包含一个 CPU 和 CPU 外围设备;3)一个 SoC,包含处理器、存储器和总线接口,它们都是在柔性基板上用金属氧化物 TFT 构造的。

32 位处理器源自支持 Armv6-M 架构(拥有丰富的 80 多个指令集)的 Arm Cortex-M0 + 处理器,以及现有的软件开发工具链(例如编译器、调试器、连接器、集成开发环境等等)。整个 SoC(PlasticARM)能够从它的内存储器运行程序。PlasticARM 包含 18334 个 NAND2 等价门,这使其成为最复杂的 FlexIC,复杂程度至少是之前同类集成电路的 12 倍。

PlasticARM 的芯片架构如下图 1a 所示。

它是一个由 32 位处理器组成的 SoC。该处理器完全支持 Armv6-M 指令集架构,这意味着为 Cortex-M0 + 处理器生成的代码也可以在它所派生的处理器上运行。

图 1b 是 PlasticARM 与 Arm Cortex-M0 所用的 CPU 的对比。

PlasticARM 是使用工业标准芯片实现工具,采用 PragmatIC 的 0.8 μm 工艺实现的。

下图 1c 展示了 FlexIC 的布局,从中可以看出 Cortex-M 处理器、RAM 和 ROM 的分布。PlasticARM 是使用一条名为「FlexLogIC」的商业「fab-in-a-box」生产线制造的,其 die 显微图像如下图 1d 所示。

更多细节请参考论文。

参考内容:

https://www.anandtech.com/show/16837/plasticarm-get-your-next-cpu-without-silicon

https://www.theverge.com/2021/7/23/22590001/arm-plasticarm-cheap-flexible-plastic-microchip-internet-of-everything

Windows装不上Wordcloud?看这里

如果你是一个写Python,且又喜欢做词云的朋友。

你应该遇到过Windows上跑不动你词云程序的情况,比如你可能在装Wordcloud时候会遇到如下情况:

虽然网上也有一些教程,但好像都不是很清晰。

有的教程,干脆让我们先去下载一个微软的Visual Studio……

其实,就差一个C++生成工具。

而这个工具包含在了Build tools这么个套件里面。

下载地址:

https://visualstudio.microsoft.com/zh-hans/thank-you-downloading-visual-studio/?sku=BuildTools&rel=16

打开以后不要慌,选中这个勾就行。

如果你的硬盘不富裕,就别全选了,继续往后边看。

我一般是选这几个。

然后,该程序会提醒你。要下载4.4GB左右的组件包。

管你要不要,反正它要下载。

好的一点是,它可以边下边安装,总算能节约一点时间。

下载完成后要重启生效。

然后,你的wordcloud就可以装上了。

下面写段代码测试一下:

from wordcloud import WordCloud

f = open('text.txt','r',encoding='utf8').read()
wordcloud = WordCloud(background_color="white",width=800, height=600, margin=2).generate(f)

# width,height,margin可以设置图片属性
wordcloud = WordCloud(font_path = r'simsun.ttf').generate(f)
# 你可以通过font_path参数来设置字体集
#background_color参数为设置背景颜色,默认颜色为黑色

import matplotlib.pyplot as plt
plt.imshow(wordcloud)
plt.axis("off")
plt.show()

wordcloud.to_file('test.png')

能生成词云了,只是不够好看,得再调整一下。

更多精彩内容,欢迎关注“IoT前哨站”的微博和公众号。我是王文文。