能写程序的芯片是怎么做的 芯片内部结构构是什么

【CSDN编者按】随着设备扩展带来的效益越来越少人们开始设计内置AI的系统,以在本地处理更多数据芯片制造商正在研究一种新的结构,这种结构能够显著增加每能耗和烸个时钟周期上可以处理的数据量并为未来几十年内芯片架构的重大改变打下基础。

所有主要的芯片厂商和系统厂商都在改变方向

所有主要的芯片厂商和系统厂商都在改变方向他们引发了一场架构方面的竞赛,包括了从向内存中读取数据的方法到数据的处理和管理方式以及最终各种元素如何打包到单个芯片中等方方面面。尽管节点的缩小依然会持续但没有人会为了应对随着各种传感器和越来越多的機器间通信的爆炸式数据增长而把一切赌在扩展性上。

在这些改变之中有一些值得我们注意:

新的处理器架构专注于在每个时钟周期内處理大块数据,根据应用程序的不同需要有时可以选择较低的精确度,或让一些操作有更高的优先级新的内存架构正在开发,它将改變数据的存储、读取、写入和访问方式更多定向的处理元素被分散到系统中的各个部分,以配置到距离内存最近的地方以后会根据数據类型和应用程序来选择加速器。AI方面也有许多研究以期将不同数据类型混合在一起组成模式,从而有效地增加数据密度并将数据间嘚差异降低到最低。封装(packaging)现在是架构中的核心组成部分而且越来越强调修改设计的方便性。Rambus的杰出发明家Steven Woo说:“有几个趋势促使人們希望从已有方案中获得最大的收益在数据中心,人们希望压榨硬件和软件的一切性能这使得人们重新认识数据中心的经济模式。创噺的代价非常高但技术切换才是瓶颈,所以我们才会看到专用芯片才会看到许多提高计算效率的方式。如果能减少内存和输入输出之間的数据交换就能带来重大影响。”

边缘设备的改变尤为明显

这种改变在边缘设备上尤为明显而系统厂商们突然发现,几百亿的设备會将它们生成的一切数据都发到云端处理这数据量显然太大了。但在边缘设备上处理巨大的数据量又提出了新的难题必须在不显著提高能量消耗的前提下提高处理性能。

Nvidia的Tesla产品线的首席平台架构师Robert Ober说“现在的关注点是降低精确度。这不仅仅是要求更多的计算周期而苴要求在内存中放入更多数据,而且只能使用16比特的指令格式因此并不能通过将数据放到缓存中的方式来提高效率。从统计上来说两種方式的结果是一样的。”

Ober预测通过一系列架构上的优化,在可预见的未来完全可能做到每两年处理速度提高一倍。“我们会看到最尖端的变化”他说。

“为做到这一点我们需要解决突破三个瓶颈。第一是计算第二是内存。某些型号中是内存访问其他型号则是計算问题。第三就是宿主带宽和I/O带宽我们需要做很多工作来优化存储和网络。”

其中一些已经实现了在Hot Chips 2018会议上的一次演说中,三星Austin研發中心的核心架构师Jeff Rupley指出了三星的M3处理器的几个主要架构变化其中之一可以在每个时钟周期中执行更多指令,与它的前身M2的四条相比M3能执行六条。再加上分支预测功能(大致是几个神经网络像执行搜索中的预读取一样的功能)以及一个两倍深的指令队列,已经有望解決这些问题

从另一个角度来看,这些改变将创新的重心从制造和处理技术上转移到前端架构和设计以及后端的制造后的封装过程上。盡管处理技术上依然会有创新但每个新的节点增加15%~20%的性能是非常复杂的,而且很难跟得上目前飞速增长的数据的速度

Xilinx的总裁和CEO Victor Peng在Hot Chips的┅次演讲中说,“变化正在以指数的速度出现每年都会产生10ZB(1021字节)的数据,其中绝大部分是无结构的数据”

处理这么多数据需要重噺思考系统中从处理数据的方式到存储方式的每个组件。

eSilicon EMEA的高级创新总监Carlos Maciàn说“在建立新的内存架构方面有过虚度欧尝试。问题是你需要读取所有行,并从每行中选出一个比特一种可选的方式是建立一种可以从左到右、从上到下读取的内存。还可以更进一步将计算汾布在距离各个内存最近的地方。”

这些改变包括改变内存的读取方式、内存的位置、处理元素的类型以及使用AI来优化整个系统中数据嘚存储方式、位置、处理和移动的方法。

“如果对于稀疏数据的情况我们能从内存阵列中一次只读取一个字节,或者从同一个字节的通噵中一次读取连续的8个字节而不用将能量耗费在其他我们不感兴趣的字节或字节通道上,会怎么样”Cadence的产品市场总监Marc Greenberg说。

“未来可能對这种改变更感兴趣拿HBM2的架构作例子,HBM2的晶圆堆叠组织为16个虚拟通道每个通道为16比特宽,这样不论访问哪个通道只需要拿到4个连续嘚64比特字即可。所以完全有可能构建1024比特宽的数据阵列并水平写入同时在垂直方向上一次读取四个64比特的字。”

内存是冯诺依曼架构中嘚核心部件之一但也成了最大的试验领域。AMD的客户产品首席架构师Dan Bouvier说“最大的报应之一就是虚拟内存系统,它用许多不正常的方式移動数据你需要不断进行地址转换。而我们早已习惯了这一点但如果能在DRAM中消除bank冲突,就能进行更有效的数据传输所以,离散的GPU能将DRAM利用到90%的有效范围这已经非常不多了。但如果数据传输能更流畅那么APU和CPU也能达到80%~85%的有效范围。”

IBM在研究另一种类型的内存架构本質上是一种现代版的磁盘分割(disk striping)。这种架构不再限制于单一内存而是利用一种连接技术适时地利用一切可以利用的内存。

这种连接技術被IBM的系统硬件架构师Jeff Stuecheli称为连通性的“瑞士军刀”这种方法的有点是能使用不同种类的数据。

Stuecheli说“CPU更像是坐镇中央的高性能信号接口。如果修改了微架构那么无需提高时钟频率,核心就能在每个时钟周期内做更多事情”

连通性和吞吐量对于这些架构处理不断生成的數据极其重要。Rambus的Woo说“现在的瓶颈位于数据移动中。整个行业在计算方面做得很出色但如果不得不等待数据,或等待某种数据模式那内存的速度就得加快。所以对于DRAM和NVM来说,性能取决于数据流动的模式对于流式访问,内存的效率就非常高而跳来跳去的随机访问僦没那么快了。而且不论如何随着数据量越来越大,我们能做的只有提高速度”

更复杂的问题是,边缘设备会生成多种不同类型的数據这些数据以不同的速度和频率生成。为了让数据能在各种处理元素之间更流畅地移动数据就必须以更有效的方式管理。

Janac说“有四種主要的配置——多对多,内存子系统低功耗输入输出,以及网格和环状拓扑这四个部分可以放在同一个芯片内,这就是在制造物联網芯片时的做法或者,可以增加一个高吞吐量的HBM子系统但复杂度会大大提高,因为一部分负载依赖于具体的芯片而每种芯片都会有哆种特别的负载和针脚。比如一些物联网芯片能处理海量的数据特别是比如汽车中的雷达和LiDAR芯片。没有某种特别的高级连通功能这些芯片就不可能实现。”

其中的难题是要尽可能减少数据移动同时在不得不进行数据移动时,将数据的流量最大化还要在本地处理和中央处理之间达成平衡,又不能消耗太多能量

Ramanujam说,“一方面是带宽问题你会尽一切可能不移动数据,所以会将数据移动到尽量靠近处理器的位置但如果必须移动数据,你会尽可能亚索数据但这一切都不是天上掉下来的。这一切都要从系统的高度去审视每一步都要从哆个角度考虑,并要决定是按照传统的读写方式使用内存还是使用更新的内存科技。一些情况下你必须改变存储数据的方式本身。如果想要更快的性能那这通常意味着更高的区域开销,这会影响到能耗接下来就得考虑安全性,还得考虑数据过载的问题”

这也是为什么许多人关心在边缘设备上进行处理以及多种处理元素之间的吞吐量问题。AI引擎可以在固态存储上自行进行分析

Marvell的主工程师Ned varnica说,“你鈳以在SSD控制器上直接将模型加载到硬件中并进行硬件处理。今天云服务中的主机就在这么做。如果每个驱动器都要向云端发送数据僦会造成大量的网络流量。所以最好让边缘设备自行处理数据这样主机只需要发送包含元数据的命令即可。这样存储设备越多,处理能力就越强大降低网络流量带来的好处是巨大的。”

这种方式中非常值得一提的是它强调了不同应用程序的数据移动的灵活性。因此主机可以产生任务并发送给存储设备记性处理,之后只返回元数据或计算结果还有一种场合是,存储设备可以存储数据、预处理数据並生成元数据、标签和索引这些数据由主机获取,用于未来的分析

这只是其中一种选项。还有其他选择三星的Rupley特别强调了乱序执行囷混合惯用指令方式,后者可以一次解码两条指令并混合为一个操作。

贯穿这一切的就是人工智能它是芯片架构领域中的最新特性。功能不再由操作系统和中间件管理而是在系统层次上分布在芯片内各个地方,以及分布在不同的芯片之间某些情况下还可以在芯片内蔀内置神经网络。

eSilicon的市场副总裁Mike Gianfagna说“实际上我们要做的就是把更多东西封装在一起,改变传统的方式通过AI和机器学习,我们可以把这┅切分散在系统各个地方获得更有效、更可预测的处理。一些情况下可以使用系统中独立的不同芯片另一些情况下可以使用同一个封裝。”

Arm发布了它的第一个机器学习芯片计划于今年晚些时候在多个市场上发售。Arm的接触工程师Ian Bratt说“这是一种新的处理器。它有个基础模块是一个计算引擎、MAC引擎和DMA引擎,再加上一个控制和广播网络整体上一共有16个这样的计算引擎,利用7纳米技术能以1GHz的频率处理4万億条指令。”

由于Arm与生态系统合作伙伴合作因此与仍在开发中的其他AI/ML芯片相比,它的芯片更具通用性和可配置性

Arm并没有将一切都放到宏内核架构中,它按照功能将处理分类这样各个计算引擎可以负责不同的功能。Bratt说有四个关键功能分别是静态任务调度、有效卷积、帶宽减少机制和为应对未来的设计而出现的可编程机制。

同时Nvidia采用了不同的路径,他们在GPU旁边建立了一个独立的深度学习引擎来优化處理图像和视频时的流量。

通过实现这些方法中的一部分或全部芯片厂商说他们可以每两年将芯片的性能提高一倍,从而跟上数据的爆炸式增长同时保持芯片的功耗在一定范围之内。

这实现绝不仅仅是更多的计算机它是整个芯片设计和系统工程的改变的起点,从此芯爿开始跟随数据的增长而不是受限于硬件和软件。

Synopsys的主席和副CEO Aart de Geus说:“当计算机进入公司时许多人感到整个世界发展得太快了。他们当時还在一摞纸上进行会计工作从那时就开始了指数级别的增长,而现在我们又会见到同样的事情

现在发展的东西,你可以认为就是当姩由会计账本向穿孔卡片的演化在农田里,你必须在正确的日期、气温上升的时候浇水施肥这就是为什么以前机器学习没有带来明显進步的原因。”

并不只他一个人给出了这种评价西门子的子公司Mentor的总裁和CEOWally Rhines说,“人们最终会接受新架构新架构最终会被设计出来。多數情况下这些架构会包含机器学习就像你的大脑能从经验中学习一样。我见过20多家公司利用他们自己特质的AI处理器每一种都有特定的鼡途。但你现在会在越来越多的应用中看到他们最终他们会挑战传统的冯诺依曼架构。神经元计算会成为主流这是我们在提高计算效率、降低成本并提高移动性和互联性方面的一大步。”

原标题:芯片内部构造是怎样的

声明:该文观点仅代表作者本人,搜狐号系信息发布平台搜狐仅提供信息存储空间服务。

第一个芯片造出来就是为了在计算器上放是这样的么怎么把这个没有基层程序的芯片里写入编程的,用什么工具... 第一个芯片造出来就是为了在计算器上放是这样的么?怎么把这个没有基层程序的芯片里写入编程的用什么工具?

我想我可能理解你的意思了你的意思是世界上第一块芯片的固件是怎么寫进去的?对吧

据我所了解的,计算机的产生早于芯片那时候用的是电子管,意思也就是说晶体管芯片产生时,电子管计算机已经產生了这个时候,已经可以利用电子管计算机向芯片中烧写程序至于你所提到的二进制代码怎样写入。可以搜一下单片机与PC通讯提礻一下,就是以固定的频率向芯片中发送01代码

总算有人理解我的意思,一直我得到的答案就是c语言和C++只有你回答的很完美,谢谢 谢谢
 怹们所说的C已经相当高级了,二进制和C的关系大概是这样的。一些公司像IntelIBM等他们生产了一批更加复杂的芯片,这些芯片内部具有复雜的结构能够识别指定长度二进制。接着只要输入只定二进制,这个芯片中的指定晶体管被导通从而在其他顺序上读写二进制,之後那些公司制作了软件,只要向这个软件中输入MOV等等指令编译成二进制就会自动把这些MOV指令翻译成特定的指定长度二进制,从而实现繁琐的二进制输入
而C,有空可以调试一下C可以看到C会被转成MOV等指令。也就是说C——指令——二进制——芯片而这些指令建立在这些芯片的物理结构上,这些指令集被称为X86指令集

你对这个回答的评价是?

你给我写一个我看看不你用计算机写也行,
我不会写现在已經不学这个了,早期的确实是写的二进制10你不信也没办法
我就是不明白,这个国家发明了芯片那个国家发明了硬盘,那个国家发明了 屏幕他们是怎么不约而同的走到一起的,
额…建议你百度一下冯诺依曼就知道计算机的体系构成了

你对这个回答的评价是

我要回帖

更多关于 芯片内部结构 的文章

 

随机推荐