当前位置: 首页 > 编程日记 > 正文

从AI、加密货币到火星任务,一种更强大、更稳定的存储设备

作者:贺佳

来源:数据实战派

所研究器件之一的显微镜图像,由两个尺寸相同的十字架组成,其中一个具有 IrMn3 柱,第二个仅由 Pt 组成。(来源:西北大学和墨西拿大学)

美国西北大学和意大利墨西拿大学(University of Messina)的一个联合研究小组开发了一种新型磁存储设备,可引领更快、更强大的人工智能 (AI) 系统。这种由反铁磁性材料组成的存储技术,可不受外部磁场的干扰,进而对包括人工智能硬件、加密货币挖掘和太空探索程序在内各种计算系统性能进行优化。

6 月 22 日,一篇题为 “通过差分电压测量对非共线反铁磁 IrMn3 中的电流感应开关的观察”( Observation of Current-induced Switching in Non-collinear Antiferromagnetic IrMn3 by Differential Voltage Measurements)的研究,在 Nature Communications 杂志上发表。麦考密克工程学院电气和计算机工程副教授 Pedram Khalili 主持此项研究。

从 Siri 这样的数字语音识别平台到医疗保健领域的医学图像处理,再到 Netflix 这样的交互式内容平台,AI 应用程序所使用的数据变得越来越大,这也致使现有的内存硬件技术效率低下且不可持续。

基于磁性材料的存储器天生速度快且耐用性高(在重复写入周期中不容易磨损),是应对这一挑战的最佳解决方案。在过去的十年中,为满足这一需求,半导体行业投入巨资开发磁性随机存取存储器 (MRAM)。

然而,现有的 MRAM 是建立在铁和钴等铁磁(ferromagnetic,FM)材料上的,这并不能满足高性能 AI 应用程序的需求。为了快速运行,MRAM 需要装配大型晶体管,以防止其密度过高,耐用性降低。

此外,MRAM 的尺寸也不能缩得更小,这同样也会导致其密度过高;并且由于其由铁磁材料制成的存储位会表现出磁场相互作用,如果将他们彼此靠近,则会影响其有效运行。

于是,研究人员将目光投向了反铁磁体(AFM)。这是一类具有比 FM 材料更快动力学特性的材料,且没有宏观磁极,这就使得 AFM 材料能够避免不必要的磁相互作用。有了这一特性,再加上其尺寸可以缩得很小,意味着基于 AFM 的存储器能够不被外部磁场擦除,安全优势明显。

“反铁磁材料可以应对 MRAM 的铁磁性挑战,”Khalili 说,“反铁磁体显示出了可扩展性、高写入速度及不受外部磁场干扰的潜力,这些都是制造更快速设备,以支持计算、网络和数据存储行业的快速增长的必要条件。”

站在 “成功” 的肩膀上

这项新的研究是对其 2020 年一项研究的拓展。当时的研究中,该团队率先演示了硅兼容的反铁磁(AFM)存储器件中信息的电写入。该器件由铂锰(PtMn)组成,比以前基于 AFM 的器件小得多,并且可在创纪录的低电流条件下运行。该器件也是第一个与现有半导体制造实践兼容的 AFM 存储器设备。

器件示意图,显示其中一个开关实验的电流源和纳伏表 (V) 连接。(来源:西北大学和墨西拿大学)

“这是个至关重要键的里程碑。我们证明了想要采用反铁磁 MRAM 技术,公司并不需要新的成本投入,”Khalili 说,“但是,我们觉得,我们还可以再进行改进,并且能解决几个有关器件物理的关键缺点和目前仍未解决的问题。”

该团队采用了一种新的叫做铱锰(IrMn3)的制造友好型反铁磁材料系统,开发了一种新的存储设备,并在多个方面对其此前的成果进行了改进。

除了能够写入数据外,研究人员的系统还提供了一种更简单、更可靠的方法:一旦材料被写入,即可通过电子方式读出其中的信息。这对 AFM 材料来说是个挑战,因为 AFM 材料读出的信号通常比 FM 材料对应的要更小,这使得在某些应用中,很难将 AFM 开关与非磁性效应区分开来,如电迁移(原子对高电流的响应)。

Khalili 说:“一个功能正常的存储器件需要通过电来完成数据的写入和读取,而这项新研究正好可以同时满足了这两个要求。”

为此,研究人员设计了一种新的器件结构。不同于之前的模型中的四个电气端子,这次器件的电气端子增加到了六个,这使得研究人员能够将器件开关读出信号与非磁性信号分开,并可测量两者电压的差异。该方法使研究团队能够确认,其器件是基于 AFM 开关在不同电流和电压下运行的。

“这可以帮助我们更清楚地认识这些器件的基础物理性及其操作机制,进而帮助我们进行未来更可靠的设备开发和优化,”Khalili 说。

广泛应用,从加密货币到火星

虽然该团队还在继续完善其技术以适应实际应用场景,包括制造尺寸更小的存储设备和可读出更大信号的材料系统等,但 Khalili 表示,其研究最终将可走进所有高性能计算中涉及使用内存之处。

例如,加密货币可以从更强大、密度更高的内存中受益。目前,加密货币的挖掘常常受制于有限的内存带宽,大大增加了处理所需的时间和精力,导致 “采矿” 耗能高、进度慢;而将该新器件嵌入同一芯片进行挖矿,则可以有助于克服这些问题。

太空旅行也能让该器件一展身手。

许多当前的太空系统(比如在火星上使用的漫游车),都需要强大的计算系统来进行大量的视觉、导航及自主决策,但由于着陆点附近缺乏 GPS 等导航工具,使得这一问题更加棘手。

而由功能更强大、带宽更宽的内存设备支持的升级系统则可加速解决此问题。含有基于 AFM 器件的磁性存储设备,对空间中存在的电离辐射具有与生俱来的抵抗力,使其非常适合以可靠性和辐射硬度为基本要求的太空应用场景。

“虽然应用场景千差万别,但其背后的底层硬件和内存芯片基本相同,”Khalili 说,“而我们的技术是通用的,当今高性能计算系统中使用内存的任何地方都适用。”

References:

1、https://www.nature.com/articles/s41467-021-24237-/

2、https://techxplore.com/news/2021-06-antiferromagnetic-based-memory-device-bolster-applications.html

更多精彩推荐
实地走访阿里云张北数据中心,揭秘“零碳”野心AI 能匹敌程序员了吗?OpenAI 新研究展示 NLP 大模型的局限性英特尔公布新技术路线图,将为 AWS、高通代工芯片

相关文章:

CSDN - 进程结束后new出的内存会回收吗?

http://blog.csdn.net/stanjiang2010/article/details/5386647 关键词:内存回收

服务器ldap认证配置

1、yum -y install openldap-clients nss-pam-ldapd openldap 2、vim /etc/openldap/ldap.conf进入此配置文件添加如下2行 URI ldap://ldap.shuyun.com:389 BASE dcshuyun,dccom 3、配置自动创建家目录 authconfig --enableldap --enableldapauth --enablemkhomedir --…

使用 .NET 实现 Ajax 长连接

作者:http://www.cnblogs.com/cathsfz/Ajax的长连接,或者有些人所说的Comet,就是指以XMLHttpRequest的方式连接服务器,连接后服务器并非即时写入相应并返回。服务器会保持连接并等待一个需要通知客户端的事件,该事件发…

全员编程时代,人类高质量程序员应具备哪三大特质?

在美国公布的《新兴科技趋势报告》里,2045年,最保守预测也认为将会有超过1千亿的设备连接在互联网上,这些设备包括了移动设备、可穿戴设备、家用电器、医疗设备、工业探测器、监控摄像头、汽车,以及服装等。不久的将来&#xff0c…

[Linux] ubuntu 格式化u盘

$sudo fdisks -l 基本功,格式化命令,以格式化 /dev/sdb4 分区为例: $ sudo umount /dev/sdb4 # 必须先卸载该分区 # 格式化为 FAT 分区 $ sudo mkfs.vfat -F 32 /dev/sdb4 # -F 参数必须大写,参数有 12,16 和…

搭建Mantis 缺陷管理系统(转)

转自 什么是Mantis MantisBT is a free popular web-based bugtracking system (feature list). It is written in the PHP scripting language and works with MySQL, MS SQL, and PostgreSQL databases and a webserver. MantisBT has been installed on Windows, Linux, Mac…

Http环境下的保持连接方式

Http环境本身是一种无连接状态的架构,在这种架构下服务器只能是被动的接受客户端的请求,返回结果,而无法主动的给客户端发送数据。而在很多需要实时数据交互(比如Web IM)的场景中,我们却希望能及时得到服务器给我们返回…

22岁专访库克、B站3天涨粉百万,他将毕设树莓派扫描仪升级,繁星散落在校空!...

整理 | 禾木木出品 | AI科技大本营(ID:rgznai100)近日,#何同学毕业#冲上了热搜,4 亿网友阅读词条,1.7 万讨论为他送上毕业祝福,最新毕业视频燃爆朋友圈。过去几个月,要说B站网友苦苦等待的UP主是…

Database Appliance并非Mini版的Exadata-还原真实的Oracle Unbreakable Database Appliance

Oracle甲骨文系统有限公司在北京时间9月23日发布了一款Oracle数据库机即Oracle Database Appliance。Oracle Database Appliance是一款面向中小型企业的使用简单、用得起的高可用数据库专用服务器,该数据库机基于Sun Fire服务器、Oracle Enterprise Linux和Oracle D…

一款基于jquery和css3的响应式二级导航菜单

今天给大家分享一款基于jquery和css3的响应式二级导航菜单&#xff0c;这款导航是传统的基于顶部&#xff0c;鼠标经过的时候显示二级导航&#xff0c;还采用了当前流行的响应式设计。效果图如下&#xff1a; 在线预览 源码下载 实现的代码。 html代码&#xff1a; <div i…

基于PyTorch,如何构建一个简单的神经网络

本文为 PyTorch 官方教程中&#xff1a;如何构建神经网络。基于 PyTorch 专门构建神经网络的子模块 torch.nn 构建一个简单的神经网络。完整教程运行 codelab→https://openbayes.com/console/open-tutorials/containers/OgcYkLjKw89torch.nn 文档→https://pytorch.org/docs/s…

C#语言的几个层次

作者&#xff1a; 李建忠 接到一位前不久C#培训学员的来信&#xff0c;这位学员虽然以前功底欠缺&#xff0c;但学习劲头很足&#xff0c;在培训中成长很快。即便基本吃透《.NET框架&#xff08;修订版&#xff09;》还嫌不够过瘾&#xff0c;一心要成为高手中的高手。来信的目…

确定安全威胁与漏洞-A

1、社会工程学攻击是一种使用欺骗和诡计说服不知情的用户提供敏感信息或做出违背安全准则行为的攻击类型。通常通过人、电子邮件、电话等方式表现出来。 2、社会工程学攻击类型主要有电子欺骗、冒名顶替、骗局、网络钓鱼、电话钓鱼、大型网络钓鱼&#xff08;鱼叉式网络钓鱼&am…

C# 特性(Attribute)学习。

特性&#xff08;attribute&#xff09;是被指定给某一声明的一则附加的声明性信息。 在C#中&#xff0c;有一个小的预定义特性集合。在学习如何建立我们自己的定制特性&#xff08;custom attributes&#xff09;之前&#xff0c;我们先来看看在我们的代码中如何使用预定义特性…

JMeter学习(二十三)关联

话说LoadRunner有的一些功能&#xff0c;比如&#xff1a;参数化、检查点、集合点、关联&#xff0c;Jmeter也都有这些功能&#xff0c;只是功能可能稍弱一些&#xff0c;今天就关联来讲解一下。 JMeter的关联方法有两种&#xff1a;后置处理器&#xff0d;正则表达式提取器与X…

程序员千万不要选全栈开发

作者 | 千鸟&#xff08;网名&#xff09; 小路助手开发者责编 | 晋兆雨出品 | CSDN&#xff08;ID&#xff1a;CSDNnews&#xff09;对于大多数人来说&#xff0c;大学毕业后选择一家满意的公司&#xff0c;一路升职加薪才是正解&#xff0c;但他却偏偏选择了一条鲜有人知的…

手动初始化设置3PAR存储系统

准备工作 1. 具备串口的终端电脑&#xff08;USB to serial&#xff09;. 2. 使用标记为“180-055”灰色适配器(3par自带). 3. 标准RJ45网线. 4. 下载HP 3par OS及SP Patch包. 5. PuTTY软件&#xff08;或其他串口软件&#xff09; 其他说明 手动设置存储系统&#xf…

C# 里怎样得到当前执行的函数名,当前代码行,源代码文件名。

得到函数名&#xff1a; System.Diagnostics.StackTrace st new System.Diagnostics.StackTrace(); this.Text st.GetFrame(0).ToString(); 得到代码行&#xff0c;源代码文件名&#xff1a; StackTrace st new StackTrace(new StackFrame(true));Consol…

特斯拉Model 3国内起售价下调至23.59万元

7月30日11:00&#xff0c;特斯拉官方微博宣布&#xff0c;即日起&#xff0c;特斯拉Model 3标准续航升级版的价格下调15000元人民币&#xff0c;调整后的价格为235900元人民币&#xff08;此为补贴后起售价&#xff09;。此次价格调整反映了成本波动的实际情况。特斯拉一直秉承…

Maven内置变量

1、Maven内置变量说明&#xff1a; ${basedir} 项目根目录${project.build.directory} 构建目录&#xff0c;缺省为target${project.build.outputDirectory} 构建过程输出目录&#xff0c;缺省为target/classes${project.build.finalName} 产出物名称&#xff0c;缺省为${proje…

在客户端调用MOSS的搜索服务,实现更加灵活的搜索控制

MOSS中提供了很多web services的服务&#xff0c;都放在http://<Site>/_vti_bin下 我们可以在其他地方&#xff0c;比如winForm&#xff0c;webForm中调用&#xff0c;对MOSS的对象进行灵活操作。 下面我简单列一下调用一个MOSS中的搜索服务的方法&#xff1a; 1、在VS…

年收入百万美元AI科学家的烦恼与思考

AI 研究科学家 Alexis Conneau 只需敲击了几下键盘&#xff0c;包含数千亿字的信息洪流&#xff0c;就能在他的电脑屏幕窗口中滚动起来。多年来&#xff0c;自动化 “爬虫” 用 100 种语言将互联网中的古老诗歌、愤怒的评论、甜点食谱和其他一切信息吸进庞大的数据库中。作为人…

web架构设计经验分享

本人作为一位web工程师&#xff0c;着眼最多之处莫过于 性能与架构&#xff0c;本次幸得参与sd2.0大会&#xff0c;得以与同行广泛交流,于此二方面&#xff0c;有些心得&#xff0c;不敢独享&#xff0c;与众博友分享&#xff0c;本文是这次参会与众同撩交流的心得&#xff0c;…

BOM和DOM的区别

为什么80%的码农都做不了架构师&#xff1f;>>> BOM 浏览器对象模型提 供了独立于内容而与浏览器窗口进行交互的对象。描述了与浏览器进行交互的方法和接口&#xff0c;可以对浏览器窗口进行访问和操作&#xff0c;譬如可以弹出新的窗口&#xff0c;改变状态栏 中的…

C#编码简单性之语义篇(如何编写简短的C#代码,随时更新)

以前写C的时候曾经在自己网站上发表过一个编码“简单性”之文章&#xff0c;现在编写C#了才发现自己无意之间就会写下一些浪费屏幕的代码。下面是自己编码中偶然发现的一些案例&#xff0c;欢迎中等水平的编程者参考。因为要积累案例&#xff0c;所以随时更新。---------------…

网站性能越来越差怎么办?

新的一年&#xff0c;你的老板或客户&#xff0c;是否曾和你抱怨公司的网站性能愈来愈差&#xff1f;网站大家都会写&#xff0c;自从有了 Visual Studio 之后&#xff0c;连你家楼下的正妹小喵和隔壁的王大婶都会写 ASP.NET。但同样的一个画面&#xff0c;背后的性能却可能是天…

如何设计一个高性能CPU?

任何一种技术都会经历从阳春白雪到下里巴人的过程&#xff0c;就像我们对计算机的理解从“戴着鞋套才能进的机房”变成了随处可见的智能手机。在前面20年中&#xff0c;大数据技术也经历了这样的过程&#xff0c;从曾经高高在上的 “火箭科技&#xff08;rocket science&#x…

Python包管理工具Distribute的安装

Python包管理工具Distribute的安装Python的包管理工具常见的有easy_install, setuptools, 还有pip, distribute&#xff0c;那麽这几个工具有什么关系呢&#xff0c;看一下下面这个图就明白了&#xff1a;可以看到distribute是setuptools的替代方案&#xff0c;pip是easy_insta…

如何用 Graylog 管理日志?- 每天5分钟玩转 Docker 容器技术(93)

上一节已经部署好了 Graylog&#xff0c;现在学习如何用它来管理日志。 首先启动测试容器。 docker run -d \ --log-drivergelf \ --log-opt gelf-addressudp://localhost:12201 \ --log-opt tag"log-test-container-A" \ b…

php调用C代码的方法详解

在php程序中需要用到C代码&#xff0c;应该是下面两种情况&#xff1a; 1 已有C代码&#xff0c;在php程序中想直接用2 由于php的性能问题&#xff0c;需要用C来实现部分功能针对第一种情况&#xff0c;最合适的方法是用system调用&#xff0c;把现有C代码写成一个独立的程序。…