hls是干嘛的 hlsl是什么( 二 )


然而 , 时代总是在前进的 , 随着无人驾驶、大数据分析、物联网、人工智能等行业的发展 , 嵌入式平台的应用范围得到了极大的扩展 , 但这些应用场景对算力提出了新的要求 , 单片机这种传统的嵌入式平台的算力就显得捉襟见肘 。Xilinx开始意识到 , 与其自己开发软核 , 来为FPGA打辅助;不如反过来让FPGA给CPU打辅助 , 直接在FPGA集成ARM的Cortex-A系列处理器 。这样 , FPGA就实际意义上成了CPU的外设 , 专门用于计算 , 除此之外的所有事 , 都由强大的Cortex-A系列处理器来完成 。在2010年4月硅谷举行的嵌入式系统大会上 , Xilinx发布了ZYNQ 7000系列FPGA , 它由双核A9+Xilinx 7系列FPGA组成 。严格意义上 , 它其实不算是FPGA , 更像是嵌入式开发平台 。然而 , 它又和传统的嵌入式开发平台不一样 , 它又需要使用FPGA搭建定制电路 , 这就需要开发者掌握较高的硬件开发能力 。这款产品推出时 , 受到了很大的质疑 , 很多人都觉得它实用性并不会太高 , 只是Xilinx推出的一个实验性产品 。
图3 ZYNQ7000开发板
但是 , ZYNQ却取得了巨大的成功 , 成为了Xilinx最著名的FPGA开发板系列之一 。Xilinx的判断是正确的 , 在随后的10年内 , 解决嵌入式平台的算力瓶颈成为了行业发展的主流方向 。就拿人工智能来说 , 在ZYNQ推出后 , 很多大学研究小组用它完成了卷积神经网络在FPGA平台上的部署 , 实现了对卷积神经网络的硬件加速 。FPGA平台相对于GPU有更低的功耗 , 相比于ASIC有可编程性 , 使得对FPGA加速器的研究一度成为人工智能领域的热门方向 。当然 , 这时的FPGA不是传统的FPGA了 , 而是CPU+FPGA 。这种模式也被Altera迅速跟进 , 它们也推出了双核A9+Altera FPGA的开发平台 , 比如DE1-SoC等 。严格来说 , Cortex-A9处理器不是单片机(即微控制器 , MCU) , 而是微处理器(MPU) , 但是它们都是CPU 。因此 , 在上文中 , 我们并没有说单片机和FPGA进行“联姻” , 而是直接说的是CPU和FPGA进行联姻 , 这主要是为了保证文章的“严谨性” 。在这一时期 , 虽然两者的“联姻”主要还是由FPGA开发商推动的 , 但FPGA却成为了CPU的一个大型外设 , 由主角变为了配角 。
三.ARM DesignStart计划的推出
在PC时代 , 英特尔+Windows组成的“Wintel联盟”长期处于绝对的统治地位 , 在这一时期ARM的存在感其实很低 。但是 , 随着智能手机、智能导航仪等移动端平台的发展 , ARM开始成长为移动市场的行业巨头 。关于ARM为何能在移动端击败英特尔 , 有很多种不同的说法 , 但主要原因总结起来有3点 。第一 , 英特尔低估了移动端的发展潜力 , 没有及时进场 。第二 , ARM处理器采用的是RSIC指令集 , 而英特尔采用的是CSIC指令集 , 虽然CSIC指令集性能更占优 , 但功耗往往会非常高 , 因此不适用于移动端产品;而RSIC指令能做到低功耗 , 这在移动端是绝对的优势 。第三 , ARM采用IP授权的商业模式 , 和谷歌、苹果、高通、三星等公司形成了联盟 , 组建起了以ARM为核心的生态圈 。总的来说 , ARM的崛起主要还是由于移动端市场的发展 , 因此ARM注定不会漠视在物联网时代会大放异彩的嵌入式平台 。
在2010年 , ARM正式推出ARM DesignStart计划 , 开源了1000多个物理IP , 为用户提供了快速获得ARM IP的方式 。客观来说 , 这一时期的DesignStart计划实际上没有产生多大的行业影响 , 因为它开源得还不够 。在2015年10月15日 , ARM终于决定开源自己的Cortex-M0核 。讲道理 , 这是一枚行业的重磅炸弹 , Cortex-M系列处理器早就在MCU领域实现了绝对统治 。ARM此举非常明确 , 就是希望大家使用Cortex-M0核自主搭建SoC , 实现定制化的物联网终端芯片的设计 , 让Cortex-M系列处理器在物联网领域得到更多的应用 。这次开源引起了巨大的行业反响 , 掀起了一波超高能效定制化SoC的开发热潮 。随后 , ARM又在2017年6月20日开源了Cortex-M3核 , 并在2018年10月22日开源了Cortex-A5核 。DesignStart计划的不断推进 , 使得ARM在物联网领域也逐渐建立起优势 。