15年6月,intel正式宣布167亿美元收购FPGA生产商Altera。此交易为该公司有史以来涉及金额最大的一次收购案例。167亿美金不是小数目,intel 为啥花这么高的代价收购一家FPGA厂商?对x86架构的计算机系统结构会带来什么影响?看我们慢慢分析。
FPGA是什么?
FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输入输出模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。 现场可编程门阵列(FPGA)是可编程器件,与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的结构。FPGA利用小型查找表(16×1RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输入端,触发器再来驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O间的联接方式,并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程。
FPGA并行运行的原理
FPGA最大的特点除了可编程之外,还有一个非常重要的是指令是并行运行的。
CPU是在同一时刻只能执行一个任务,单片机是cpu,cpu里基本的单元是逻辑控制单元来执行程序。但是fpga不是cpu,许多的逻辑单元构成的它们的内部结构不一样,就是说它不是执行程序的,可以把fpga看成是一推与门,非门,查找表,触发器的组合。对fpga编的程序其实不是让它用来执行的,也就是说在出厂之前,FPGA内部元件之间的连线已经完全固定,我们的编程也只是在此基础上选择哪些相连、哪些断开罢了。而是fpga的内部结构,也就决定它内部这些与门非门触发器的连接方式。与门非门触发器根据外部引脚决定输出,引脚同时变化,FPGA就有不同的输出,所以可以说是并行运行的。
FPGA适合场景
FPGA已被证明是在搜索、排序以及字母配对算法等方面能带来显著加速效果的产品,微软和百度此前都曾表示已在旗下数据中心里使用了FPGA。
1、微软公司的基本设计思路是将FPGA纳入输入请求与输出数据的直接通路,这意味着不再需要经由网卡将数据分流至FPGA,再通过内部系统总线接收返回结果。阵列能够自行处理任务,或者将信息传递给主机的英特尔x86处理器以进行必要操作。另外,FPGA还能够在传输过程中对数据执行更多附加操作。
举例来说,FPGA能够在数据触及运行于设备上的应用之前,对其进行加密与解密。
这一设计方案的结果在于,全部云服务皆借此实现了显著的延迟削减效果。“通过让FPGA与网络交换机直接通信,每套FPGA皆能够直接同数据中心内的其它FPGA经由网络实现通信,且无需涉及任何CPU软件。
2、在今年9月份召开的百度世界大会上,百度高级副总裁王劲在接受采访时曾透露,百度已经打造了FPGA版的百度大脑,性能远超此前的版本。百度目前主要将FPGA应用在在线服务商,性能提升3~4倍。
人工智能的应用场景,包括云(数据中心)和端(智能设备)两部分;其中,云端又包括离线训和在线服务。离线训练是指利用海量数据,选择合适的训练方法,训练出一个模型。在线服务是指,利用训练出来的模型来响应在线响应用户的请求。端部分也对人工智能有着很大的需求:很多终端设备,也都需要能运行人工智能的算法,能智能地响应外部请求,如无人车、智能摄像头等。
在离线训练上,GPU可以阶段性地满足要求;智能设备虽然炒得火,但时机仍未成熟。而在在线服务方面,对提升计算能力的需求是客观存在且比较急迫的。但GPU因为功耗、成本等原因,不适合线上大规模部署。
通过不断地创新、优化,FPGA版百度大脑迭代了许多版本,大脑的计算能力不断提升,功耗不断下降:最终版本比第一个版本功耗下降了约50%。
FPGA版百度大脑逐步应用在百度产品中,包括语音识别、广告点击率预估模型等。据了解,应用了该版本百度大脑后,语音在线服务、广告点击率预估模型等的计算性能皆提升了3~4倍。
INTEL的胶水芯片
回到intel的收购动作,intel肯花167亿美元收购Altera公司绝不是冲动的爱情,Altera不仅是Intel的代工合作伙伴,而且Intel很早就考虑处理器与FPGA电路的集成了,早在2014年6月份Intel高级副总、数据中心级连接系统部门总经理Diane Bryant就对外提到了他们会推出定制化的至强处理器,客户可以根据自己的需要定制两种不同的FPGA芯片,一种是Intel把FPGA芯片指令集成到Xeon处理器中,另外一种就是Intel推出FPGA+Xeon处理器双芯片封装的芯片,充分发挥FPGA可编程的优势。
当时Intel并没有提到他们合作用的FPGA芯片来自哪家公司,现在可以公布了,这家公司就是被Intel收购的Altera公司,如今变成子公司了,各种合作也更方便了。指令集成是不容易实现的,最快的方法就是将FPGA和CPU封装在一起。
前面说到这种处理器将采用双芯片封装,Intel对这种封装其实也很熟悉了,还记得Intel推出的第一代Pentium D双核处理器吗?Intel当时为了尽快拿出产品,Presler架构的PD双核并不是原生的,而是两个单核处理器封装在一个芯片内,被玩家戏称为胶水双核,未来的处理器大体上也会是这种结构。
未来发展判断
1、巨头intel的推进,预计CPU+FPGA可能会有一个大的发展。
2、FPGA由于其可编程行,并行能力加上和CPU深度集成,计算机体系结构,如网络/内存的作用都可能发生变化。
3、FPGA在人工智能领域的发展还刚起步,还有更广空间。
参考文档:
http://www.d1net.com/server/vendor/437324.html
http://ee.ofweek.com/2015-12/ART-8110-2801-29035307_3.html
个人新作《大数据架构详解:从数据获取到深度学习》一书,已由电子工业出版社出版,京东(现货),淘宝,当当,亚马逊全网开售/预定,有兴趣的同学可以详细了解:
微信扫一扫
关注该公众号
相关推荐
新能源汽车行业在最近几年经历了快速发展,特别是在智能电动技术的推动下,行业变革步伐加速,市场上也涌现出一批新势力车企。本篇报告主要分析了2021年7月新能源汽车新势力的销售情况,探讨了智能电动化技术的发展...
随着技术的进步和产业的发展,信创产业的生态逐渐完善,从过去偏重应用软件逐渐向硬件和基础软件领域延伸,形成更全面的产业结构。 三、 产业化进程加速,电子政务有望率先实现全面替代 随着国产操作系统整合的加速...
通信工程应届生求职简历.docx
c++课程设计-产品入库管理操作系统 此 C++ 课程设计的产品入库管理操作系统,可实现产品信息录入、修改、查询与统计等功能,助力高效精准管理产品入库。
IMG_20250416_154837.jpg
处理器知识_RISC-V_简单启动流程_教学演示用途_1744731373.zip
文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!
CNC_嵌入式_高性能_低成本控制器_GRBL
智能婴儿床系统是基于STM32微控制器设计的一款全方位监测和互动系统,旨在提供全面的婴儿关怀解决方案。系统涵盖了体温、环境温度、湿度、光照、哭闹检测、音乐播放、烟雾浓度检测、自动摇篮模拟、WiFi通信以及云服务器连接等功能。
内容概要:本文详细介绍了机器视觉通用软件的工作原理、功能特点及其广泛应用。机器视觉通用软件通过图像采集、预处理、特征提取与分析、决策与输出四个核心步骤,模拟人类视觉系统,使机器具备“看懂”图像并作出决策的能力。其功能涵盖图像识别、测量、检测、定位和分类等多个方面,能够满足不同行业的需求。文章还回顾了机器视觉技术从20世纪50年代至今的发展历程,展望了未来在技术突破、应用拓展以及与其他技术融合方面的潜力。; 适合人群:对机器视觉技术感兴趣的工程师、
22020-9KZB_改封装-.pdf
全球6G技术大会2024年5G6G天地一体化技术探索与实践白皮书87页.pdf
内容概要:本文围绕计算机二级考试的复习与做题心得展开,首先介绍了计算机二级考试的性质及其对不同人群的价值,接着详细对比了各科目的内容、适用人群和难度,推荐了适合不同基础考生的选择。文章还给出了以Python为例的复习计划,分为基础学习、真题练习和模拟练习三个阶段,并针对选择题、填空题、改错题和编程题提供了具体的做题技巧。最后,指出了备考中的常见误区,强调了实际操作的重要性,并鼓励考生不要因背景限制而畏惧考试,指出通过考试不仅能在简历上加分,还能提升个人能力。 适合人群:正在准备或考虑参加计算机二级考试的学生,特别是应届毕业生、希望获得学分或奖学金的同学,以及想进入国企、事业单位或公务员系统的求职者。 使用场景及目标:①帮助考生了解计算机二级考试的内容和价值;②为考生提供科目选择的指导;③制定合理的复习计划并掌握有效的做题技巧;④避免备考中的常见错误,提高通过率。 阅读建议:本文内容详实,语言轻松易懂,适合在备考初期阅读,以制定整体复习规划。考生可以根据自身情况,重点参考科目选择和复习计划部分,并结合做题技巧进行针对性练习。
全球6G技术大会2024年6G未来电视视频应用场景需求与技术解析白皮书33页.pdf
文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!
内容概要:本文介绍了通过C语言实现反转加法构造回文数的方法,能够处理1000位的大整数。文中详细展示了如何定义字符数组存储大整数,通过自定义函数而非调用现成函数来提高效率,实现对输入数字的反转、判别是否为回文以及最优字符大整数加法等操作。核心代码包括字符串指针反序判回文、字符串指针反转赋值、高效字符串指针反转赋值判回文等函数,利用goto语句实现循环,确保当数字不是回文时,将原数与其反转后的数相加,得到的新数继续判断,直到构造出回文数或达到设定的最大迭代次数(如10次)。 适合人群:有一定C语言编程基础的学习者,尤其是对大整数运算、字符串操作感兴趣的读者。 使用场景及目标:①理解C语言中字符数组表示大整数、字符串指针操作等底层机制;②掌握通过反转加法构造回文数的算法思想,熟悉goto语句控制流程的应用。 其他说明:此代码示例强调了自定义函数在处理特定任务时的高效性,读者可以在此基础上进一步优化算法,探索更多关于大整数运算的知识。
文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!
文档支持目录章节跳转同时还支持阅读器左侧大纲显示和章节快速定位,文档内容完整、条理清晰。文档内所有文字、图表、函数、目录等元素均显示正常,无任何异常情况,敬请您放心查阅与使用。文档仅供学习参考,请勿用作商业用途。 你是否渴望高效解决复杂的数学计算、数据分析难题?MATLAB 就是你的得力助手!作为一款强大的技术计算软件,MATLAB 集数值分析、矩阵运算、信号处理等多功能于一身,广泛应用于工程、科学研究等众多领域。 其简洁直观的编程环境,让代码编写如同行云流水。丰富的函数库和工具箱,为你节省大量时间和精力。无论是新手入门,还是资深专家,都能借助 MATLAB 挖掘数据背后的价值,创新科技成果。别再犹豫,拥抱 MATLAB,开启你的科技探索之旅!
STM32F103C8T6-基于FreeRTOS系统实现步进电机控制
西电周佳社老师的微机原理课笔记,本节内容主要是二进制十进制之间转换的几种方法